[-]
[+]
|
Changed |
libmemcached.changes
|
|
[-]
[+]
|
Changed |
libmemcached.spec
^
|
|
[-]
[+]
|
Deleted |
libmemcached-1.0.7.tar.bz2/libtest/stats.h
^
|
@@ -1,61 +0,0 @@
-/* vim:expandtab:shiftwidth=2:tabstop=2:smarttab:
- *
- * Data Differential YATL (i.e. libtest) library
- *
- * Copyright (C) 2012 Data Differential, http://datadifferential.com/
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are
- * met:
- *
- * * Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the following disclaimer
- * in the documentation and/or other materials provided with the
- * distribution.
- *
- * * The names of its contributors may not be used to endorse or
- * promote products derived from this software without specific prior
- * written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- */
-
-#pragma once
-
-struct Stats {
- int32_t collection_success;
- int32_t collection_skipped;
- int32_t collection_failed;
- int32_t collection_total;
-
- uint32_t success;
- uint32_t skipped;
- uint32_t failed;
- uint32_t total;
-
- Stats() :
- collection_success(0),
- collection_skipped(0),
- collection_failed(0),
- collection_total(0),
- success(0),
- skipped(0),
- failed(0),
- total(0)
- { }
-};
-
|
[-]
[+]
|
Deleted |
libmemcached-1.0.7.tar.bz2/tests/parser.h
^
|
@@ -1,115 +0,0 @@
-/* vim:expandtab:shiftwidth=2:tabstop=2:smarttab:
- *
- * Libmemcached
- *
- * Copyright (C) 2011 Data Differential, http://datadifferential.com/
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are
- * met:
- *
- * * Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the following disclaimer
- * in the documentation and/or other materials provided with the
- * distribution.
- *
- * * The names of its contributors may not be used to endorse or
- * promote products derived from this software without specific prior
- * written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- */
-
-#pragma once
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-LIBTEST_LOCAL
-test_return_t server_test(memcached_st *memc);
-
-LIBTEST_LOCAL
-test_return_t servers_bad_test(memcached_st *memc);
-
-LIBTEST_LOCAL
-test_return_t behavior_parser_test(memcached_st*);
-
-LIBTEST_LOCAL
-test_return_t parser_number_options_test(memcached_st*);
-
-LIBTEST_LOCAL
-test_return_t parser_distribution_test(memcached_st*);
-
-LIBTEST_LOCAL
-test_return_t parser_hash_test(memcached_st*);
-
-LIBTEST_LOCAL
-test_return_t parser_boolean_options_test(memcached_st*);
-
-LIBTEST_LOCAL
-test_return_t parser_key_prefix_test(memcached_st*);
-
-LIBTEST_LOCAL
- test_return_t libmemcached_check_configuration_test(memcached_st*);
-
-LIBTEST_LOCAL
- test_return_t memcached_create_with_options_test(memcached_st*);
-
-LIBTEST_LOCAL
- test_return_t memcached_create_with_options_with_filename(memcached_st*);
-
-LIBTEST_LOCAL
- test_return_t libmemcached_check_configuration_with_filename_test(memcached_st*);
-
-LIBTEST_LOCAL
- test_return_t random_statement_build_test(memcached_st*);
-
-LIBTEST_LOCAL
-test_return_t test_include_keyword(memcached_st*);
-
-LIBTEST_LOCAL
-test_return_t test_end_keyword(memcached_st*);
-
-LIBTEST_LOCAL
-test_return_t test_reset_keyword(memcached_st*);
-
-LIBTEST_LOCAL
-test_return_t test_error_keyword(memcached_st*);
-
-LIBTEST_LOCAL
-test_return_t server_with_weight_test(memcached_st *);
-
-LIBTEST_LOCAL
-test_return_t test_hostname_port_weight(memcached_st *);
-
-LIBTEST_LOCAL
-test_return_t regression_bug_71231153_connect(memcached_st *);
-
-LIBTEST_LOCAL
-test_return_t regression_bug_71231153_poll(memcached_st *);
-
-LIBTEST_LOCAL
-test_return_t test_parse_socket(memcached_st *);
-
-LIBTEST_LOCAL
-test_return_t test_namespace_keyword(memcached_st*);
-
-#ifdef __cplusplus
-}
-#endif
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/ChangeLog
^
|
@@ -1,3 +1,7 @@
+1.0.8 Tue May 22 15:06:04 EDT 2012
+* Added support for setting options via ENV variable LIBMEMCACHED
+* Fix corner case on last used result.
+
1.0.7 Sat Apr 28 00:48:29 PDT 2012
* Add API call for exist calls.
* Update all license files to be BSD.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/Makefile.in
^
|
@@ -155,6 +155,16 @@
# All paths should be given relative to the root
# vim:ft=automake
+# Copyright (C) 2012 Data Differential
+# All rights reserved.
+#
+# Use and distribution licensed under the BSD license. See
+# the COPYING file in the parent directory for full text.
+#
+# included from Top Level Makefile.am
+# All paths should be given relative to the root
+
+# vim:ft=automake
# DataDifferential Utility Library
# Copyright (C) 2011 Data Differential
# All rights reserved.
@@ -209,14 +219,15 @@
tests/libmemcached-1.0/testsocket$(EXEEXT) \
tests/libmemcached-1.0/sasl$(EXEEXT) \
tests/atomsmasher$(EXEEXT) tests/testudp$(EXEEXT) \
- tests/testplus$(EXEEXT) tests/failure$(EXEEXT) \
- tests/testhashkit$(EXEEXT) tests/hash_plus$(EXEEXT) \
- tests/memcapable$(EXEEXT) tests/memstat$(EXEEXT) \
- tests/memcp$(EXEEXT) tests/memflush$(EXEEXT) \
- tests/memrm$(EXEEXT) tests/memexist$(EXEEXT) \
- tests/memtouch$(EXEEXT) tests/memcat$(EXEEXT) \
- tests/memerror$(EXEEXT) tests/memslap$(EXEEXT) \
- tests/memdump$(EXEEXT) memcached/memcached$(EXEEXT)
+ tests/testplus$(EXEEXT) tests/parser$(EXEEXT) \
+ tests/failure$(EXEEXT) tests/testhashkit$(EXEEXT) \
+ tests/hash_plus$(EXEEXT) tests/memcapable$(EXEEXT) \
+ tests/memstat$(EXEEXT) tests/memcp$(EXEEXT) \
+ tests/memflush$(EXEEXT) tests/memrm$(EXEEXT) \
+ tests/memexist$(EXEEXT) tests/memtouch$(EXEEXT) \
+ tests/memcat$(EXEEXT) tests/memerror$(EXEEXT) \
+ tests/memslap$(EXEEXT) tests/memdump$(EXEEXT) \
+ memcached/memcached$(EXEEXT)
check_PROGRAMS = libtest/unittest$(EXEEXT) libtest/skiptest$(EXEEXT) \
libmemcached-1.0/t/c_test$(EXEEXT) \
libmemcached-1.0/t/cc_test$(EXEEXT) \
@@ -226,14 +237,14 @@
tests/libmemcached-1.0/testapp$(EXEEXT) \
tests/libmemcached-1.0/testsocket$(EXEEXT) \
tests/libmemcached-1.0/sasl$(EXEEXT) tests/testudp$(EXEEXT) \
- tests/testplus$(EXEEXT) tests/failure$(EXEEXT) \
- tests/testhashkit$(EXEEXT) tests/hash_plus$(EXEEXT) \
- tests/memcapable$(EXEEXT) tests/memstat$(EXEEXT) \
- tests/memcp$(EXEEXT) tests/memflush$(EXEEXT) \
- tests/memrm$(EXEEXT) tests/memexist$(EXEEXT) \
- tests/memtouch$(EXEEXT) tests/memcat$(EXEEXT) \
- tests/memerror$(EXEEXT) tests/memslap$(EXEEXT) \
- tests/memdump$(EXEEXT)
+ tests/testplus$(EXEEXT) tests/parser$(EXEEXT) \
+ tests/failure$(EXEEXT) tests/testhashkit$(EXEEXT) \
+ tests/hash_plus$(EXEEXT) tests/memcapable$(EXEEXT) \
+ tests/memstat$(EXEEXT) tests/memcp$(EXEEXT) \
+ tests/memflush$(EXEEXT) tests/memrm$(EXEEXT) \
+ tests/memexist$(EXEEXT) tests/memtouch$(EXEEXT) \
+ tests/memcat$(EXEEXT) tests/memerror$(EXEEXT) \
+ tests/memslap$(EXEEXT) tests/memdump$(EXEEXT)
DIST_COMMON = README $(am__configure_deps) $(include_HEADERS) \
$(nobase_include_HEADERS) $(noinst_HEADERS) \
$(srcdir)/Makefile.am $(srcdir)/Makefile.in \
@@ -259,8 +270,9 @@
$(srcdir)/poll/include.am $(srcdir)/support/include.am \
$(srcdir)/tests/cli.am $(srcdir)/tests/include.am \
$(srcdir)/tests/libmemcached-1.0/include.am \
- $(srcdir)/util/include.am $(srcdir)/win32/include.am \
- $(top_srcdir)/configure $(top_srcdir)/docs/conf.py.in \
+ $(srcdir)/tests/parser.am $(srcdir)/util/include.am \
+ $(srcdir)/win32/include.am $(top_srcdir)/configure \
+ $(top_srcdir)/docs/conf.py.in \
$(top_srcdir)/libhashkit-1.0/configure.h.in \
$(top_srcdir)/libmemcached-1.0/configure.h.in \
$(top_srcdir)/libmemcached-1.2/configure.h.in \
@@ -769,15 +781,15 @@
$(libmemcachedinternal_libmemcachedutilinternal_la_CXXFLAGS) \
$(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
am__libtest_libtest_la_SOURCES_DIST = libtest/binaries.cc \
- libtest/cmdline.cc libtest/comparison.cc libtest/core.cc \
- libtest/cpu.cc libtest/dream.cc libtest/fatal.cc \
- libtest/framework.cc libtest/has.cc libtest/drizzled.cc \
- libtest/http.cc libtest/is_local.cc libtest/killpid.cc \
- libtest/libtool.cc libtest/main.cc libtest/port.cc \
- libtest/runner.cc libtest/server.cc \
+ libtest/cmdline.cc libtest/comparison.cc libtest/collection.cc \
+ libtest/core.cc libtest/cpu.cc libtest/dream.cc \
+ libtest/fatal.cc libtest/framework.cc libtest/has.cc \
+ libtest/drizzled.cc libtest/http.cc libtest/is_local.cc \
+ libtest/killpid.cc libtest/libtool.cc libtest/main.cc \
+ libtest/port.cc libtest/runner.cc libtest/server.cc \
libtest/server_container.cc libtest/signal.cc \
- libtest/socket.cc libtest/strerror.cc libtest/tmpfile.cc \
- libtest/vchar.cc libtest/memcached.cc \
+ libtest/socket.cc libtest/strerror.cc libtest/timer.cc \
+ libtest/tmpfile.cc libtest/vchar.cc libtest/memcached.cc \
libtest/blobslap_worker.cc libtest/gearmand.cc \
util/instance.cc util/operation.cc
@BUILDING_LIBMEMCACHED_TRUE@am__objects_17 = libtest/libtest_libtest_la-memcached.lo
@@ -794,6 +806,7 @@
libtest/libtest_libtest_la-binaries.lo \
libtest/libtest_libtest_la-cmdline.lo \
libtest/libtest_libtest_la-comparison.lo \
+ libtest/libtest_libtest_la-collection.lo \
libtest/libtest_libtest_la-core.lo \
libtest/libtest_libtest_la-cpu.lo \
libtest/libtest_libtest_la-dream.lo \
@@ -813,6 +826,7 @@
libtest/libtest_libtest_la-signal.lo \
libtest/libtest_libtest_la-socket.lo \
libtest/libtest_libtest_la-strerror.lo \
+ libtest/libtest_libtest_la-timer.lo \
libtest/libtest_libtest_la-tmpfile.lo \
libtest/libtest_libtest_la-vchar.lo $(am__objects_17) \
$(am__objects_18) $(am__objects_19) $(am__objects_20)
@@ -1146,6 +1160,11 @@
$(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CXXLD) \
$(tests_memtouch_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) \
$(LDFLAGS) -o $@
+am_tests_parser_OBJECTS = tests/tests_parser-parser.$(OBJEXT)
+tests_parser_OBJECTS = $(am_tests_parser_OBJECTS)
+tests_parser_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \
+ $(LIBTOOLFLAGS) --mode=link $(CXXLD) $(tests_parser_CXXFLAGS) \
+ $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
am_tests_testhashkit_OBJECTS = tests/hashkit_functions.$(OBJEXT)
tests_testhashkit_OBJECTS = $(am_tests_testhashkit_OBJECTS)
am_tests_testplus_OBJECTS = clients/tests_testplus-execute.$(OBJEXT) \
@@ -1242,8 +1261,9 @@
$(tests_memerror_SOURCES) $(tests_memexist_SOURCES) \
$(tests_memflush_SOURCES) $(tests_memrm_SOURCES) \
$(tests_memslap_SOURCES) $(tests_memstat_SOURCES) \
- $(tests_memtouch_SOURCES) $(tests_testhashkit_SOURCES) \
- $(tests_testplus_SOURCES) $(tests_testudp_SOURCES)
+ $(tests_memtouch_SOURCES) $(tests_parser_SOURCES) \
+ $(tests_testhashkit_SOURCES) $(tests_testplus_SOURCES) \
+ $(tests_testudp_SOURCES)
DIST_SOURCES = $(clients_libutilities_la_SOURCES) \
$(am__libhashkit_libhashkit_la_SOURCES_DIST) \
$(am__libhashkit_libhashkitinc_la_SOURCES_DIST) \
@@ -1278,8 +1298,9 @@
$(tests_memerror_SOURCES) $(tests_memexist_SOURCES) \
$(tests_memflush_SOURCES) $(tests_memrm_SOURCES) \
$(tests_memslap_SOURCES) $(tests_memstat_SOURCES) \
- $(tests_memtouch_SOURCES) $(tests_testhashkit_SOURCES) \
- $(tests_testplus_SOURCES) $(tests_testudp_SOURCES)
+ $(tests_memtouch_SOURCES) $(tests_parser_SOURCES) \
+ $(tests_testhashkit_SOURCES) $(tests_testplus_SOURCES) \
+ $(tests_testudp_SOURCES)
man1dir = $(mandir)/man1
man3dir = $(mandir)/man3
NROFF = nroff
@@ -1499,8 +1520,9 @@
# includes append to these:
SUFFIXES = .d
.PHONY =
-CLEANFILES = tmp_chroot/var/drizzle/* tmp_chroot/var/log/* \
- tmp_chroot/var/run/* tmp_chroot/var/tmp/* $(am__append_30)
+CLEANFILES = tmp_chroot/etc/* tmp_chroot/var/drizzle/* \
+ tmp_chroot/var/log/* tmp_chroot/var/run/* tmp_chroot/var/tmp/* \
+ $(am__append_30)
DISTCLEANFILES = libmemcached/csl/parser.output config/top.h
# vim:ft=automake
@@ -1510,7 +1532,7 @@
# vim:ft=automake
# included from Top Level Makefile.am
# All paths should be given relative to the root
-noinst_HEADERS = libtest/binaries.h libtest/cpu.hpp \
+noinst_HEADERS = libtest/timer.hpp libtest/binaries.h libtest/cpu.hpp \
libtest/blobslap_worker.h libtest/callbacks.h \
libtest/cmdline.h libtest/collection.h libtest/common.h \
libtest/comparison.hpp libtest/core.h libtest/dream.h \
@@ -1520,28 +1542,28 @@
libtest/is_pid.hpp libtest/is_local.hpp libtest/killpid.h \
libtest/libtool.hpp libtest/memcached.h libtest/port.h \
libtest/runner.h libtest/server.h libtest/server_container.h \
- libtest/signal.h libtest/socket.hpp libtest/stats.h \
- libtest/stream.h libtest/strerror.h libtest/string.hpp \
- libtest/test.h libtest/test.hpp libtest/tmpfile.hpp \
- libtest/vchar.hpp libtest/visibility.h libtest/wait.h \
- clients/client_options.h clients/execute.h clients/generator.h \
- clients/ms_atomic.h clients/ms_conn.h clients/ms_memslap.h \
- clients/ms_setting.h clients/ms_sigsegv.h clients/ms_stats.h \
- clients/ms_task.h clients/ms_thread.h clients/utilities.h \
- example/byteorder.h example/memcached_light.h \
- example/storage.h libhashkit/aes.h libhashkit/common.h \
- libhashkit/is.h libhashkit/rijndael.hpp libhashkit/string.h \
- libmemcached/csl/common.h libmemcached/csl/context.h \
- libmemcached/csl/parser.h libmemcached/csl/scanner.h \
- libmemcached/csl/server.h libmemcached/csl/symbol.h \
- libmemcached/array.h libmemcached/assert.hpp \
- libmemcached/backtrace.hpp libmemcached/byteorder.h \
- libmemcached/common.h libmemcached/connect.hpp \
- libmemcached/continuum.hpp libmemcached/do.hpp \
- libmemcached/encoding_key.h libmemcached/error.hpp \
- libmemcached/initialize_query.h libmemcached/internal.h \
- libmemcached/io.h libmemcached/io.hpp libmemcached/is.h \
- libmemcached/key.hpp libmemcached/libmemcached_probes.h \
+ libtest/signal.h libtest/socket.hpp libtest/stream.h \
+ libtest/strerror.h libtest/string.hpp libtest/test.h \
+ libtest/test.hpp libtest/tmpfile.hpp libtest/vchar.hpp \
+ libtest/visibility.h libtest/wait.h clients/client_options.h \
+ clients/execute.h clients/generator.h clients/ms_atomic.h \
+ clients/ms_conn.h clients/ms_memslap.h clients/ms_setting.h \
+ clients/ms_sigsegv.h clients/ms_stats.h clients/ms_task.h \
+ clients/ms_thread.h clients/utilities.h example/byteorder.h \
+ example/memcached_light.h example/storage.h libhashkit/aes.h \
+ libhashkit/common.h libhashkit/is.h libhashkit/rijndael.hpp \
+ libhashkit/string.h libmemcached/csl/common.h \
+ libmemcached/csl/context.h libmemcached/csl/parser.h \
+ libmemcached/csl/scanner.h libmemcached/csl/server.h \
+ libmemcached/csl/symbol.h libmemcached/array.h \
+ libmemcached/assert.hpp libmemcached/backtrace.hpp \
+ libmemcached/byteorder.h libmemcached/common.h \
+ libmemcached/connect.hpp libmemcached/continuum.hpp \
+ libmemcached/do.hpp libmemcached/encoding_key.h \
+ libmemcached/error.hpp libmemcached/initialize_query.h \
+ libmemcached/internal.h libmemcached/io.h libmemcached/io.hpp \
+ libmemcached/is.h libmemcached/key.hpp \
+ libmemcached/libmemcached_probes.h \
libmemcached/memcached/protocol_binary.h \
libmemcached/memcached/vbucket.h libmemcached/memory.h \
libmemcached/namespace.h libmemcached/options.hpp \
@@ -1563,24 +1585,25 @@
tests/libmemcached-1.0/all_tests.h \
tests/libmemcached-1.0/callback_counter.h \
tests/libmemcached-1.0/dump.h \
+ tests/libmemcached-1.0/encoding_key.h \
tests/libmemcached-1.0/fetch_all_results.h \
tests/libmemcached-1.0/generate.h \
- tests/libmemcached-1.0/encoding_key.h \
tests/libmemcached-1.0/haldenbrand.h \
tests/libmemcached-1.0/mem_functions.h \
tests/libmemcached-1.0/memcached_get.h \
+ tests/libmemcached-1.0/parser.h \
tests/libmemcached-1.0/setup_and_teardowns.h \
- tests/libmemcached-1.0/stat.h tests/namespace.h tests/parser.h \
- tests/pool.h tests/print.h tests/replication.h \
- tests/server_add.h tests/string.h tests/touch.h \
- tests/virtual_buckets.h util/daemon.hpp util/instance.hpp \
- util/logfile.hpp util/log.hpp util/operation.hpp \
- util/signal.hpp util/string.hpp util/pidfile.hpp \
- win32/wrappers.h memcached/assoc.h memcached/cache.h \
- memcached/hash.h memcached/items.h memcached/memcached.h \
- memcached/protocol_binary.h memcached/sasl_defs.h \
- memcached/slabs.h memcached/stats.h memcached/trace.h \
- memcached/util.h
+ tests/libmemcached-1.0/stat.h tests/namespace.h tests/pool.h \
+ tests/print.h tests/replication.h tests/server_add.h \
+ tests/string.h tests/touch.h tests/virtual_buckets.h \
+ tests/libmemcached-1.0/parser.h util/daemon.hpp \
+ util/instance.hpp util/logfile.hpp util/log.hpp \
+ util/operation.hpp util/signal.hpp util/string.hpp \
+ util/pidfile.hpp win32/wrappers.h memcached/assoc.h \
+ memcached/cache.h memcached/hash.h memcached/items.h \
+ memcached/memcached.h memcached/protocol_binary.h \
+ memcached/sasl_defs.h memcached/slabs.h memcached/stats.h \
+ memcached/trace.h memcached/util.h
lib_LTLIBRARIES = libhashkit/libhashkit.la \
libmemcached/libmemcached.la libmemcached/libmemcachedutil.la \
libmemcached/libmemcachedprotocol.la
@@ -1659,9 +1682,11 @@
docs/man/memcached_strerror.3 docs/man/memcached_touch.3 \
docs/man/memcached_touch_by_key.3 \
docs/man/memcached_verbosity.3 docs/man/memcached_version.3 \
- docs/man/memcapable.1 docs/man/memcat.1 docs/man/memcp.1 \
- docs/man/memdump.1 docs/man/memerror.1 docs/man/memflush.1 \
- docs/man/memrm.1 docs/man/memslap.1 docs/man/memstat.1
+ docs/man/memcapable.1 docs/man/memexist.1 docs/man/memparse.1 \
+ docs/man/memping.1 docs/man/memcat.1 docs/man/memcp.1 \
+ docs/man/memdump.1 docs/man/memtouch.1 docs/man/memerror.1 \
+ docs/man/memflush.1 docs/man/memrm.1 docs/man/memslap.1 \
+ docs/man/memstat.1
# library used for testing
@@ -1760,13 +1785,14 @@
$(am__append_2) $(am__append_8) $(am__append_12) \
$(am__append_15) $(am__append_20)
libtest_libtest_la_SOURCES = libtest/binaries.cc libtest/cmdline.cc \
- libtest/comparison.cc libtest/core.cc libtest/cpu.cc \
- libtest/dream.cc libtest/fatal.cc libtest/framework.cc \
- libtest/has.cc libtest/drizzled.cc libtest/http.cc \
- libtest/is_local.cc libtest/killpid.cc libtest/libtool.cc \
- libtest/main.cc libtest/port.cc libtest/runner.cc \
- libtest/server.cc libtest/server_container.cc \
- libtest/signal.cc libtest/socket.cc libtest/strerror.cc \
+ libtest/comparison.cc libtest/collection.cc libtest/core.cc \
+ libtest/cpu.cc libtest/dream.cc libtest/fatal.cc \
+ libtest/framework.cc libtest/has.cc libtest/drizzled.cc \
+ libtest/http.cc libtest/is_local.cc libtest/killpid.cc \
+ libtest/libtool.cc libtest/main.cc libtest/port.cc \
+ libtest/runner.cc libtest/server.cc \
+ libtest/server_container.cc libtest/signal.cc \
+ libtest/socket.cc libtest/strerror.cc libtest/timer.cc \
libtest/tmpfile.cc libtest/vchar.cc $(am__append_3) \
$(am__append_9) $(am__append_16) $(am__append_21)
@@ -2125,6 +2151,10 @@
tests_testplus_CXXFLAGS = $(AM_CXXFLAGS) $(NO_EFF_CXX)
tests_testplus_DEPENDENCIES = $(TESTS_LDADDS)
tests_testplus_LDADD = $(tests_testplus_DEPENDENCIES)
+tests_parser_SOURCES = tests/parser.cc
+tests_parser_CXXFLAGS = $(AM_CXXFLAGS) $(NO_EFF_CXX)
+tests_parser_DEPENDENCIES = $(TESTS_LDADDS)
+tests_parser_LDADD = $(tests_parser_DEPENDENCIES)
tests_failure_SOURCES = tests/failure.cc clients/execute.cc \
clients/generator.cc \
tests/libmemcached-1.0/callback_counter.cc \
@@ -2199,7 +2229,7 @@
.SUFFIXES: .d .c .cc .cpp .lo .o .obj
am--refresh:
@:
-$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(srcdir)/libtest/include.am $(srcdir)/libhashkit-1.0/include.am $(srcdir)/libmemcached-1.0/include.am $(srcdir)/libmemcached-1.0/struct/include.am $(srcdir)/libmemcached-1.0/types/include.am $(srcdir)/libmemcached-1.0/t/include.am $(srcdir)/libmemcachedprotocol-0.0/include.am $(srcdir)/libmemcachedutil-1.0/include.am $(srcdir)/clients/include.am $(srcdir)/docs/include.am $(srcdir)/example/include.am $(srcdir)/example/t/include.am $(srcdir)/libhashkit/include.am $(srcdir)/libmemcached/include.am $(srcdir)/libmemcached/csl/include.am $(srcdir)/libmemcached/csl/parser.am $(srcdir)/libmemcachedutil/include.am $(srcdir)/libmemcachedprotocol/include.am $(srcdir)/libmemcachedinternal/include.am $(srcdir)/libmemcachedinternal/util/include.am $(srcdir)/poll/include.am $(srcdir)/support/include.am $(srcdir)/tests/include.am $(srcdir)/tests/libmemcached-1.0/include.am $(srcdir)/tests/cli.am $(srcdir)/util/include.am $(srcdir)/win32/include.am $(srcdir)/memcached/include.am $(am__configure_deps)
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(srcdir)/libtest/include.am $(srcdir)/libhashkit-1.0/include.am $(srcdir)/libmemcached-1.0/include.am $(srcdir)/libmemcached-1.0/struct/include.am $(srcdir)/libmemcached-1.0/types/include.am $(srcdir)/libmemcached-1.0/t/include.am $(srcdir)/libmemcachedprotocol-0.0/include.am $(srcdir)/libmemcachedutil-1.0/include.am $(srcdir)/clients/include.am $(srcdir)/docs/include.am $(srcdir)/example/include.am $(srcdir)/example/t/include.am $(srcdir)/libhashkit/include.am $(srcdir)/libmemcached/include.am $(srcdir)/libmemcached/csl/include.am $(srcdir)/libmemcached/csl/parser.am $(srcdir)/libmemcachedutil/include.am $(srcdir)/libmemcachedprotocol/include.am $(srcdir)/libmemcachedinternal/include.am $(srcdir)/libmemcachedinternal/util/include.am $(srcdir)/poll/include.am $(srcdir)/support/include.am $(srcdir)/tests/include.am $(srcdir)/tests/libmemcached-1.0/include.am $(srcdir)/tests/parser.am $(srcdir)/tests/cli.am $(srcdir)/util/include.am $(srcdir)/win32/include.am $(srcdir)/memcached/include.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
@@ -2963,6 +2993,8 @@
libtest/$(DEPDIR)/$(am__dirstamp)
libtest/libtest_libtest_la-comparison.lo: libtest/$(am__dirstamp) \
libtest/$(DEPDIR)/$(am__dirstamp)
+libtest/libtest_libtest_la-collection.lo: libtest/$(am__dirstamp) \
+ libtest/$(DEPDIR)/$(am__dirstamp)
libtest/libtest_libtest_la-core.lo: libtest/$(am__dirstamp) \
libtest/$(DEPDIR)/$(am__dirstamp)
libtest/libtest_libtest_la-cpu.lo: libtest/$(am__dirstamp) \
@@ -3001,6 +3033,8 @@
libtest/$(DEPDIR)/$(am__dirstamp)
libtest/libtest_libtest_la-strerror.lo: libtest/$(am__dirstamp) \
libtest/$(DEPDIR)/$(am__dirstamp)
+libtest/libtest_libtest_la-timer.lo: libtest/$(am__dirstamp) \
+ libtest/$(DEPDIR)/$(am__dirstamp)
libtest/libtest_libtest_la-tmpfile.lo: libtest/$(am__dirstamp) \
libtest/$(DEPDIR)/$(am__dirstamp)
libtest/libtest_libtest_la-vchar.lo: libtest/$(am__dirstamp) \
@@ -3644,6 +3678,11 @@
tests/memtouch$(EXEEXT): $(tests_memtouch_OBJECTS) $(tests_memtouch_DEPENDENCIES) tests/$(am__dirstamp)
@rm -f tests/memtouch$(EXEEXT)
$(AM_V_CXXLD)$(tests_memtouch_LINK) $(tests_memtouch_OBJECTS) $(tests_memtouch_LDADD) $(LIBS)
+tests/tests_parser-parser.$(OBJEXT): tests/$(am__dirstamp) \
+ tests/$(DEPDIR)/$(am__dirstamp)
+tests/parser$(EXEEXT): $(tests_parser_OBJECTS) $(tests_parser_DEPENDENCIES) tests/$(am__dirstamp)
+ @rm -f tests/parser$(EXEEXT)
+ $(AM_V_CXXLD)$(tests_parser_LINK) $(tests_parser_OBJECTS) $(tests_parser_LDADD) $(LIBS)
tests/hashkit_functions.$(OBJEXT): tests/$(am__dirstamp) \
tests/$(DEPDIR)/$(am__dirstamp)
tests/testhashkit$(EXEEXT): $(tests_testhashkit_OBJECTS) $(tests_testhashkit_DEPENDENCIES) tests/$(am__dirstamp)
@@ -4133,6 +4172,8 @@
-rm -f libtest/libtest_libtest_la-blobslap_worker.lo
-rm -f libtest/libtest_libtest_la-cmdline.$(OBJEXT)
-rm -f libtest/libtest_libtest_la-cmdline.lo
+ -rm -f libtest/libtest_libtest_la-collection.$(OBJEXT)
+ -rm -f libtest/libtest_libtest_la-collection.lo
-rm -f libtest/libtest_libtest_la-comparison.$(OBJEXT)
-rm -f libtest/libtest_libtest_la-comparison.lo
-rm -f libtest/libtest_libtest_la-core.$(OBJEXT)
@@ -4177,6 +4218,8 @@
-rm -f libtest/libtest_libtest_la-socket.lo
-rm -f libtest/libtest_libtest_la-strerror.$(OBJEXT)
-rm -f libtest/libtest_libtest_la-strerror.lo
+ -rm -f libtest/libtest_libtest_la-timer.$(OBJEXT)
+ -rm -f libtest/libtest_libtest_la-timer.lo
-rm -f libtest/libtest_libtest_la-tmpfile.$(OBJEXT)
-rm -f libtest/libtest_libtest_la-tmpfile.lo
-rm -f libtest/libtest_libtest_la-vchar.$(OBJEXT)
@@ -4301,6 +4344,7 @@
-rm -f tests/tests_memslap-memslap.$(OBJEXT)
-rm -f tests/tests_memstat-memstat.$(OBJEXT)
-rm -f tests/tests_memtouch-memtouch.$(OBJEXT)
+ -rm -f tests/tests_parser-parser.$(OBJEXT)
-rm -f util/daemon.$(OBJEXT)
-rm -f util/libtest_libtest_la-instance.$(OBJEXT)
-rm -f util/libtest_libtest_la-instance.lo
@@ -4561,6 +4605,7 @@
@AMDEP_TRUE@@am__include@ @am__quote@libtest/$(DEPDIR)/libtest_libtest_la-binaries.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@libtest/$(DEPDIR)/libtest_libtest_la-blobslap_worker.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@libtest/$(DEPDIR)/libtest_libtest_la-cmdline.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@libtest/$(DEPDIR)/libtest_libtest_la-collection.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@libtest/$(DEPDIR)/libtest_libtest_la-comparison.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@libtest/$(DEPDIR)/libtest_libtest_la-core.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@libtest/$(DEPDIR)/libtest_libtest_la-cpu.Plo@am__quote@
@@ -4583,6 +4628,7 @@
@AMDEP_TRUE@@am__include@ @am__quote@libtest/$(DEPDIR)/libtest_libtest_la-signal.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@libtest/$(DEPDIR)/libtest_libtest_la-socket.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@libtest/$(DEPDIR)/libtest_libtest_la-strerror.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@libtest/$(DEPDIR)/libtest_libtest_la-timer.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@libtest/$(DEPDIR)/libtest_libtest_la-tmpfile.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@libtest/$(DEPDIR)/libtest_libtest_la-vchar.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@libtest/$(DEPDIR)/libtest_unittest-unittest.Po@am__quote@
@@ -4616,6 +4662,7 @@
@AMDEP_TRUE@@am__include@ @am__quote@tests/$(DEPDIR)/tests_memslap-memslap.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@tests/$(DEPDIR)/tests_memstat-memstat.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@tests/$(DEPDIR)/tests_memtouch-memtouch.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@tests/$(DEPDIR)/tests_parser-parser.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@tests/libmemcached-1.0/$(DEPDIR)/atomsmasher.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@tests/libmemcached-1.0/$(DEPDIR)/callback_counter.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@tests/libmemcached-1.0/$(DEPDIR)/debug.Po@am__quote@
@@ -6386,6 +6433,14 @@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libtest_libtest_la_CXXFLAGS) $(CXXFLAGS) -c -o libtest/libtest_libtest_la-comparison.lo `test -f 'libtest/comparison.cc' || echo '$(srcdir)/'`libtest/comparison.cc
+libtest/libtest_libtest_la-collection.lo: libtest/collection.cc
+@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libtest_libtest_la_CXXFLAGS) $(CXXFLAGS) -MT libtest/libtest_libtest_la-collection.lo -MD -MP -MF libtest/$(DEPDIR)/libtest_libtest_la-collection.Tpo -c -o libtest/libtest_libtest_la-collection.lo `test -f 'libtest/collection.cc' || echo '$(srcdir)/'`libtest/collection.cc
+@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) libtest/$(DEPDIR)/libtest_libtest_la-collection.Tpo libtest/$(DEPDIR)/libtest_libtest_la-collection.Plo
+@am__fastdepCXX_FALSE@ $(AM_V_CXX) @AM_BACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='libtest/collection.cc' object='libtest/libtest_libtest_la-collection.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libtest_libtest_la_CXXFLAGS) $(CXXFLAGS) -c -o libtest/libtest_libtest_la-collection.lo `test -f 'libtest/collection.cc' || echo '$(srcdir)/'`libtest/collection.cc
+
libtest/libtest_libtest_la-core.lo: libtest/core.cc
@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libtest_libtest_la_CXXFLAGS) $(CXXFLAGS) -MT libtest/libtest_libtest_la-core.lo -MD -MP -MF libtest/$(DEPDIR)/libtest_libtest_la-core.Tpo -c -o libtest/libtest_libtest_la-core.lo `test -f 'libtest/core.cc' || echo '$(srcdir)/'`libtest/core.cc
@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) libtest/$(DEPDIR)/libtest_libtest_la-core.Tpo libtest/$(DEPDIR)/libtest_libtest_la-core.Plo
@@ -6538,6 +6593,14 @@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libtest_libtest_la_CXXFLAGS) $(CXXFLAGS) -c -o libtest/libtest_libtest_la-strerror.lo `test -f 'libtest/strerror.cc' || echo '$(srcdir)/'`libtest/strerror.cc
+libtest/libtest_libtest_la-timer.lo: libtest/timer.cc
+@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libtest_libtest_la_CXXFLAGS) $(CXXFLAGS) -MT libtest/libtest_libtest_la-timer.lo -MD -MP -MF libtest/$(DEPDIR)/libtest_libtest_la-timer.Tpo -c -o libtest/libtest_libtest_la-timer.lo `test -f 'libtest/timer.cc' || echo '$(srcdir)/'`libtest/timer.cc
+@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) libtest/$(DEPDIR)/libtest_libtest_la-timer.Tpo libtest/$(DEPDIR)/libtest_libtest_la-timer.Plo
+@am__fastdepCXX_FALSE@ $(AM_V_CXX) @AM_BACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='libtest/timer.cc' object='libtest/libtest_libtest_la-timer.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libtest_libtest_la_CXXFLAGS) $(CXXFLAGS) -c -o libtest/libtest_libtest_la-timer.lo `test -f 'libtest/timer.cc' || echo '$(srcdir)/'`libtest/timer.cc
+
libtest/libtest_libtest_la-tmpfile.lo: libtest/tmpfile.cc
@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libtest_libtest_la_CXXFLAGS) $(CXXFLAGS) -MT libtest/libtest_libtest_la-tmpfile.lo -MD -MP -MF libtest/$(DEPDIR)/libtest_libtest_la-tmpfile.Tpo -c -o libtest/libtest_libtest_la-tmpfile.lo `test -f 'libtest/tmpfile.cc' || echo '$(srcdir)/'`libtest/tmpfile.cc
@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) libtest/$(DEPDIR)/libtest_libtest_la-tmpfile.Tpo libtest/$(DEPDIR)/libtest_libtest_la-tmpfile.Plo
@@ -8242,6 +8305,22 @@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tests_memtouch_CXXFLAGS) $(CXXFLAGS) -c -o tests/tests_memtouch-memtouch.obj `if test -f 'tests/memtouch.cc'; then $(CYGPATH_W) 'tests/memtouch.cc'; else $(CYGPATH_W) '$(srcdir)/tests/memtouch.cc'; fi`
+tests/tests_parser-parser.o: tests/parser.cc
+@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tests_parser_CXXFLAGS) $(CXXFLAGS) -MT tests/tests_parser-parser.o -MD -MP -MF tests/$(DEPDIR)/tests_parser-parser.Tpo -c -o tests/tests_parser-parser.o `test -f 'tests/parser.cc' || echo '$(srcdir)/'`tests/parser.cc
+@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/tests_parser-parser.Tpo tests/$(DEPDIR)/tests_parser-parser.Po
+@am__fastdepCXX_FALSE@ $(AM_V_CXX) @AM_BACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='tests/parser.cc' object='tests/tests_parser-parser.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tests_parser_CXXFLAGS) $(CXXFLAGS) -c -o tests/tests_parser-parser.o `test -f 'tests/parser.cc' || echo '$(srcdir)/'`tests/parser.cc
+
+tests/tests_parser-parser.obj: tests/parser.cc
+@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tests_parser_CXXFLAGS) $(CXXFLAGS) -MT tests/tests_parser-parser.obj -MD -MP -MF tests/$(DEPDIR)/tests_parser-parser.Tpo -c -o tests/tests_parser-parser.obj `if test -f 'tests/parser.cc'; then $(CYGPATH_W) 'tests/parser.cc'; else $(CYGPATH_W) '$(srcdir)/tests/parser.cc'; fi`
+@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) tests/$(DEPDIR)/tests_parser-parser.Tpo tests/$(DEPDIR)/tests_parser-parser.Po
+@am__fastdepCXX_FALSE@ $(AM_V_CXX) @AM_BACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='tests/parser.cc' object='tests/tests_parser-parser.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tests_parser_CXXFLAGS) $(CXXFLAGS) -c -o tests/tests_parser-parser.obj `if test -f 'tests/parser.cc'; then $(CYGPATH_W) 'tests/parser.cc'; else $(CYGPATH_W) '$(srcdir)/tests/parser.cc'; fi`
+
clients/tests_testplus-execute.o: clients/execute.cc
@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tests_testplus_CXXFLAGS) $(CXXFLAGS) -MT clients/tests_testplus-execute.o -MD -MP -MF clients/$(DEPDIR)/tests_testplus-execute.Tpo -c -o clients/tests_testplus-execute.o `test -f 'clients/execute.cc' || echo '$(srcdir)/'`clients/execute.cc
@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) clients/$(DEPDIR)/tests_testplus-execute.Tpo clients/$(DEPDIR)/tests_testplus-execute.Po
@@ -9054,9 +9133,12 @@
libtest_tmp_dir: tmp_chroot/var/log tmp_chroot/var/tmp tmp_chroot/var/run tmp_chroot/var/drizzle
-tmp_chroot:
+tmp_chroot: tmp_chroot/etc
@$(mkdir_p) tmp_chroot
+tmp_chroot/etc:
+ @$(mkdir_p) tmp_chroot/etc
+
tmp_chroot/var: tmp_chroot
@$(mkdir_p) tmp_chroot/var
@@ -9086,6 +9168,9 @@
drd-unittest: libtest/unittest
@$(DRD_COMMAND) libtest/unittest
+test-skip: libtest/skiptest
+ @libtest/skiptest
+
test-start-server:
clients/memflush --servers=localhost
clients/memcp --servers=localhost /etc/services
@@ -9255,6 +9340,21 @@
test-udp: tests/testudp
@tests/testudp
+test-parser: tests/parser
+ @tests/parser
+
+valgrind-parser: tests/parser
+ $(VALGRIND_COMMAND) tests/parser
+
+test-failure: tests/failure
+ @tests/failure
+
+gdb-failure: tests/failure
+ @$(DEBUG_COMMAND) tests/failure
+
+test-hash: tests/testhashkit
+ @tests/testhashkit
+
test-memstat: tests/memstat
tests/memstat
@@ -9287,9 +9387,6 @@
test-plus: tests/testplus
@tests/testplus
-test-hash: tests/testhashkit
- @tests/testhashkit
-
test-hashplus: tests/hash_plus
@tests/hash_plus
@@ -9323,9 +9420,6 @@
gdb-cycle: tests/cycle
@$(DEBUG_COMMAND) tests/cycle
-gdb-failure: tests/failure
- @$(DEBUG_COMMAND) tests/failure
-
valgrind-cycle: tests/cycle
$(VALGRIND_COMMAND) tests/cycle
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/config.in
^
|
@@ -675,12 +675,14 @@
+#ifndef __STDC_FORMAT_MACROS
+# define __STDC_FORMAT_MACROS
+#endif
+
#if defined(__cplusplus)
-#include CSTDINT_H
-#include CINTTYPES_H
+# include CINTTYPES_H
#else
-#include <stdint.h>
-#include <inttypes.h>
+# include <inttypes.h>
#endif
#if !defined(HAVE_ULONG) && !defined(__USE_MISC)
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/configure
^
|
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.68 for libmemcached 1.0.7.
+# Generated by GNU Autoconf 2.68 for libmemcached 1.0.8.
#
# Report bugs to <http://libmemcached.org/>.
#
@@ -570,8 +570,8 @@
# Identity of this package.
PACKAGE_NAME='libmemcached'
PACKAGE_TARNAME='libmemcached'
-PACKAGE_VERSION='1.0.7'
-PACKAGE_STRING='libmemcached 1.0.7'
+PACKAGE_VERSION='1.0.8'
+PACKAGE_STRING='libmemcached 1.0.8'
PACKAGE_BUGREPORT='http://libmemcached.org/'
PACKAGE_URL=''
@@ -1449,7 +1449,7 @@
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures libmemcached 1.0.7 to adapt to many kinds of systems.
+\`configure' configures libmemcached 1.0.8 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1520,7 +1520,7 @@
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of libmemcached 1.0.7:";;
+ short | recursive ) echo "Configuration of libmemcached 1.0.8:";;
esac
cat <<\_ACEOF
@@ -1674,7 +1674,7 @@
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-libmemcached configure 1.0.7
+libmemcached configure 1.0.8
generated by GNU Autoconf 2.68
Copyright (C) 2010 Free Software Foundation, Inc.
@@ -2900,7 +2900,7 @@
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by libmemcached $as_me 1.0.7, which was
+It was created by libmemcached $as_me 1.0.8, which was
generated by GNU Autoconf 2.68. Invocation command line was
$ $0 $@
@@ -3832,7 +3832,7 @@
# Define the identity of the package.
PACKAGE='libmemcached'
- VERSION='1.0.7'
+ VERSION='1.0.8'
cat >>confdefs.h <<_ACEOF
@@ -6315,7 +6315,7 @@
# Define the identity of the package.
PACKAGE='libmemcached'
- VERSION='1.0.7'
+ VERSION='1.0.8'
cat >>confdefs.h <<_ACEOF
@@ -9128,19 +9128,6 @@
fi
- if test "x${gl_LIBOBJS}" != "x"; then :
-
- if test "$GCC" = "yes"; then :
-
- AM_CPPFLAGS="-isystem \${top_srcdir}/gnulib -isystem \${top_builddir}/gnulib ${AM_CPPFLAGS}"
-
-else
-
- AM_CPPFLAGS="-I\${top_srcdir}/gnulib -I\${top_builddir}/gnulib ${AM_CPPFLAGS}"
-
-fi
-
-fi
AM_CPPFLAGS="-I\$(top_srcdir) -I\$(top_builddir) ${AM_CPPFLAGS}"
@@ -24995,7 +24982,7 @@
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by libmemcached $as_me 1.0.7, which was
+This file was extended by libmemcached $as_me 1.0.8, which was
generated by GNU Autoconf 2.68. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -25061,7 +25048,7 @@
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
-libmemcached config.status 1.0.7
+libmemcached config.status 1.0.8
configured by $0, generated by GNU Autoconf 2.68,
with options \\"\$ac_cs_config\\"
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/configure.ac
^
|
@@ -7,7 +7,7 @@
# Use and distribution licensed under the BSD license. See
# the COPYING file in this directory for full text.
-AC_INIT([libmemcached],[1.0.7],[http://libmemcached.org/])
+AC_INIT([libmemcached],[1.0.8],[http://libmemcached.org/])
AC_CONFIG_AUX_DIR(config)
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/include.am
^
|
@@ -16,120 +16,123 @@
.PHONY: help clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest
-man_MANS+= \
- docs/man/hashkit_clone.3 \
- docs/man/hashkit_crc32.3 \
- docs/man/hashkit_create.3 \
- docs/man/hashkit_fnv1_32.3 \
- docs/man/hashkit_fnv1_64.3 \
- docs/man/hashkit_fnv1a_32.3 \
- docs/man/hashkit_fnv1a_64.3 \
- docs/man/hashkit_free.3 \
- docs/man/hashkit_functions.3 \
- docs/man/hashkit_hsieh.3 \
- docs/man/hashkit_is_allocated.3 \
- docs/man/hashkit_jenkins.3 \
- docs/man/hashkit_md5.3 \
- docs/man/hashkit_murmur.3 \
- docs/man/hashkit_value.3 \
- docs/man/libhashkit.3 \
- docs/man/libmemcached.3 \
- docs/man/libmemcached_examples.3 \
- docs/man/libmemcachedutil.3 \
- docs/man/memaslap.1 \
- docs/man/memcached_add.3 \
- docs/man/memcached_add_by_key.3 \
- docs/man/memcached_analyze.3 \
- docs/man/memcached_append.3 \
- docs/man/memcached_append_by_key.3 \
- docs/man/memcached_behavior_get.3 \
- docs/man/memcached_behavior_set.3 \
- docs/man/memcached_callback_get.3 \
- docs/man/memcached_callback_set.3 \
- docs/man/memcached_cas.3 \
- docs/man/memcached_cas_by_key.3 \
- docs/man/memcached_clone.3 \
- docs/man/memcached_create.3 \
- docs/man/memcached_decrement.3 \
- docs/man/memcached_decrement_with_initial.3 \
- docs/man/memcached_delete.3 \
- docs/man/memcached_delete_by_key.3 \
- docs/man/libmemcached_check_configuration.3 \
- docs/man/libmemcached_configuration.3 \
- docs/man/memcached.3 \
- docs/man/memcached_destroy_sasl_auth_data.3 \
- docs/man/memcached_dump.3 \
- docs/man/memcached_exist.3 \
- docs/man/memcached_exist_by_key.3 \
- docs/man/memcached_fetch.3 \
- docs/man/memcached_fetch_execute.3 \
- docs/man/memcached_fetch_result.3 \
- docs/man/memcached_flush_buffers.3 \
- docs/man/memcached_free.3 \
- docs/man/memcached_generate_hash.3 \
- docs/man/memcached_generate_hash_value.3 \
- docs/man/memcached_get.3 \
- docs/man/memcached_get_by_key.3 \
- docs/man/memcached_get_memory_allocators.3 \
- docs/man/memcached_get_sasl_callbacks.3 \
- docs/man/memcached_get_user_data.3 \
- docs/man/memcached_increment.3 \
- docs/man/memcached_increment_with_initial.3 \
- docs/man/memcached_lib_version.3 \
- docs/man/memcached_mget.3 \
- docs/man/memcached_mget_by_key.3 \
- docs/man/memcached_mget_execute.3 \
- docs/man/memcached_mget_execute_by_key.3 \
- docs/man/memcached_pool.3 \
- docs/man/memcached_pool_behavior_get.3 \
- docs/man/memcached_pool_behavior_set.3 \
- docs/man/memcached_pool_create.3 \
- docs/man/memcached_pool_destroy.3 \
- docs/man/memcached_pool_fetch.3 \
- docs/man/memcached_pool_pop.3 \
- docs/man/memcached_pool_push.3 \
- docs/man/memcached_pool_release.3 \
- docs/man/memcached_pool_st.3 \
- docs/man/memcached_prepend.3 \
- docs/man/memcached_prepend_by_key.3 \
- docs/man/memcached_quit.3 \
- docs/man/memcached_replace.3 \
- docs/man/memcached_replace_by_key.3 \
- docs/man/memcached_last_error_message.3 \
- docs/man/memcached_sasl_set_auth_data.3 \
- docs/man/memcached_server_add.3 \
- docs/man/memcached_server_count.3 \
- docs/man/memcached_server_cursor.3 \
- docs/man/memcached_server_list.3 \
- docs/man/memcached_server_list_append.3 \
- docs/man/memcached_server_list_count.3 \
- docs/man/memcached_server_list_free.3 \
- docs/man/memcached_server_push.3 \
- docs/man/memcached_servers_parse.3 \
- docs/man/memcached_set.3 \
- docs/man/memcached_set_by_key.3 \
- docs/man/memcached_set_memory_allocators.3 \
- docs/man/memcached_set_sasl_callbacks.3 \
- docs/man/memcached_set_user_data.3 \
- docs/man/memcached_stat.3 \
- docs/man/memcached_stat_execute.3 \
- docs/man/memcached_stat_get_keys.3 \
- docs/man/memcached_stat_get_value.3 \
- docs/man/memcached_stat_servername.3 \
- docs/man/memcached_strerror.3 \
- docs/man/memcached_touch.3 \
- docs/man/memcached_touch_by_key.3 \
- docs/man/memcached_verbosity.3 \
- docs/man/memcached_version.3 \
- docs/man/memcapable.1 \
- docs/man/memcat.1 \
- docs/man/memcp.1 \
- docs/man/memdump.1 \
- docs/man/memerror.1 \
- docs/man/memflush.1 \
- docs/man/memrm.1 \
- docs/man/memslap.1 \
- docs/man/memstat.1
+man_MANS+= docs/man/hashkit_clone.3
+man_MANS+= docs/man/hashkit_crc32.3
+man_MANS+= docs/man/hashkit_create.3
+man_MANS+= docs/man/hashkit_fnv1_32.3
+man_MANS+= docs/man/hashkit_fnv1_64.3
+man_MANS+= docs/man/hashkit_fnv1a_32.3
+man_MANS+= docs/man/hashkit_fnv1a_64.3
+man_MANS+= docs/man/hashkit_free.3
+man_MANS+= docs/man/hashkit_functions.3
+man_MANS+= docs/man/hashkit_hsieh.3
+man_MANS+= docs/man/hashkit_is_allocated.3
+man_MANS+= docs/man/hashkit_jenkins.3
+man_MANS+= docs/man/hashkit_md5.3
+man_MANS+= docs/man/hashkit_murmur.3
+man_MANS+= docs/man/hashkit_value.3
+man_MANS+= docs/man/libhashkit.3
+man_MANS+= docs/man/libmemcached.3
+man_MANS+= docs/man/libmemcached_examples.3
+man_MANS+= docs/man/libmemcachedutil.3
+man_MANS+= docs/man/memaslap.1
+man_MANS+= docs/man/memcached_add.3
+man_MANS+= docs/man/memcached_add_by_key.3
+man_MANS+= docs/man/memcached_analyze.3
+man_MANS+= docs/man/memcached_append.3
+man_MANS+= docs/man/memcached_append_by_key.3
+man_MANS+= docs/man/memcached_behavior_get.3
+man_MANS+= docs/man/memcached_behavior_set.3
+man_MANS+= docs/man/memcached_callback_get.3
+man_MANS+= docs/man/memcached_callback_set.3
+man_MANS+= docs/man/memcached_cas.3
+man_MANS+= docs/man/memcached_cas_by_key.3
+man_MANS+= docs/man/memcached_clone.3
+man_MANS+= docs/man/memcached_create.3
+man_MANS+= docs/man/memcached_decrement.3
+man_MANS+= docs/man/memcached_decrement_with_initial.3
+man_MANS+= docs/man/memcached_delete.3
+man_MANS+= docs/man/memcached_delete_by_key.3
+man_MANS+= docs/man/libmemcached_check_configuration.3
+man_MANS+= docs/man/libmemcached_configuration.3
+man_MANS+= docs/man/memcached.3
+man_MANS+= docs/man/memcached_destroy_sasl_auth_data.3
+man_MANS+= docs/man/memcached_dump.3
+man_MANS+= docs/man/memcached_exist.3
+man_MANS+= docs/man/memcached_exist_by_key.3
+man_MANS+= docs/man/memcached_fetch.3
+man_MANS+= docs/man/memcached_fetch_execute.3
+man_MANS+= docs/man/memcached_fetch_result.3
+man_MANS+= docs/man/memcached_flush_buffers.3
+man_MANS+= docs/man/memcached_free.3
+man_MANS+= docs/man/memcached_generate_hash.3
+man_MANS+= docs/man/memcached_generate_hash_value.3
+man_MANS+= docs/man/memcached_get.3
+man_MANS+= docs/man/memcached_get_by_key.3
+man_MANS+= docs/man/memcached_get_memory_allocators.3
+man_MANS+= docs/man/memcached_get_sasl_callbacks.3
+man_MANS+= docs/man/memcached_get_user_data.3
+man_MANS+= docs/man/memcached_increment.3
+man_MANS+= docs/man/memcached_increment_with_initial.3
+man_MANS+= docs/man/memcached_lib_version.3
+man_MANS+= docs/man/memcached_mget.3
+man_MANS+= docs/man/memcached_mget_by_key.3
+man_MANS+= docs/man/memcached_mget_execute.3
+man_MANS+= docs/man/memcached_mget_execute_by_key.3
+man_MANS+= docs/man/memcached_pool.3
+man_MANS+= docs/man/memcached_pool_behavior_get.3
+man_MANS+= docs/man/memcached_pool_behavior_set.3
+man_MANS+= docs/man/memcached_pool_create.3
+man_MANS+= docs/man/memcached_pool_destroy.3
+man_MANS+= docs/man/memcached_pool_fetch.3
+man_MANS+= docs/man/memcached_pool_pop.3
+man_MANS+= docs/man/memcached_pool_push.3
+man_MANS+= docs/man/memcached_pool_release.3
+man_MANS+= docs/man/memcached_pool_st.3
+man_MANS+= docs/man/memcached_prepend.3
+man_MANS+= docs/man/memcached_prepend_by_key.3
+man_MANS+= docs/man/memcached_quit.3
+man_MANS+= docs/man/memcached_replace.3
+man_MANS+= docs/man/memcached_replace_by_key.3
+man_MANS+= docs/man/memcached_last_error_message.3
+man_MANS+= docs/man/memcached_sasl_set_auth_data.3
+man_MANS+= docs/man/memcached_server_add.3
+man_MANS+= docs/man/memcached_server_count.3
+man_MANS+= docs/man/memcached_server_cursor.3
+man_MANS+= docs/man/memcached_server_list.3
+man_MANS+= docs/man/memcached_server_list_append.3
+man_MANS+= docs/man/memcached_server_list_count.3
+man_MANS+= docs/man/memcached_server_list_free.3
+man_MANS+= docs/man/memcached_server_push.3
+man_MANS+= docs/man/memcached_servers_parse.3
+man_MANS+= docs/man/memcached_set.3
+man_MANS+= docs/man/memcached_set_by_key.3
+man_MANS+= docs/man/memcached_set_memory_allocators.3
+man_MANS+= docs/man/memcached_set_sasl_callbacks.3
+man_MANS+= docs/man/memcached_set_user_data.3
+man_MANS+= docs/man/memcached_stat.3
+man_MANS+= docs/man/memcached_stat_execute.3
+man_MANS+= docs/man/memcached_stat_get_keys.3
+man_MANS+= docs/man/memcached_stat_get_value.3
+man_MANS+= docs/man/memcached_stat_servername.3
+man_MANS+= docs/man/memcached_strerror.3
+man_MANS+= docs/man/memcached_touch.3
+man_MANS+= docs/man/memcached_touch_by_key.3
+man_MANS+= docs/man/memcached_verbosity.3
+man_MANS+= docs/man/memcached_version.3
+man_MANS+= docs/man/memcapable.1
+man_MANS+= docs/man/memexist.1
+man_MANS+= docs/man/memparse.1
+man_MANS+= docs/man/memping.1
+man_MANS+= docs/man/memcat.1
+man_MANS+= docs/man/memcp.1
+man_MANS+= docs/man/memdump.1
+man_MANS+= docs/man/memtouch.1
+man_MANS+= docs/man/memerror.1
+man_MANS+= docs/man/memflush.1
+man_MANS+= docs/man/memrm.1
+man_MANS+= docs/man/memslap.1
+man_MANS+= docs/man/memstat.1
if HAVE_SPHINX
sphinx-help:
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/hashkit_clone.3
^
|
@@ -1,4 +1,4 @@
-.TH "HASHKIT_CLONE" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "HASHKIT_CLONE" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
hashkit_clone \- libhashkit Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/hashkit_crc32.3
^
|
@@ -1,4 +1,4 @@
-.TH "HASHKIT_CRC32" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "HASHKIT_CRC32" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
hashkit_crc32 \- libhashkit Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/hashkit_create.3
^
|
@@ -1,4 +1,4 @@
-.TH "HASHKIT_CREATE" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "HASHKIT_CREATE" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
hashkit_create \- libhashkit Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/hashkit_fnv1_32.3
^
|
@@ -1,4 +1,4 @@
-.TH "HASHKIT_FNV1_32" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "HASHKIT_FNV1_32" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
hashkit_fnv1_32 \- libhashkit Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/hashkit_fnv1_64.3
^
|
@@ -1,4 +1,4 @@
-.TH "HASHKIT_FNV1_64" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "HASHKIT_FNV1_64" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
hashkit_fnv1_64 \- libhashkit Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/hashkit_fnv1a_32.3
^
|
@@ -1,4 +1,4 @@
-.TH "HASHKIT_FNV1A_32" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "HASHKIT_FNV1A_32" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
hashkit_fnv1a_32 \- libhashkit Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/hashkit_fnv1a_64.3
^
|
@@ -1,4 +1,4 @@
-.TH "HASHKIT_FNV1A_64" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "HASHKIT_FNV1A_64" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
hashkit_fnv1a_64 \- libhashkit Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/hashkit_free.3
^
|
@@ -1,4 +1,4 @@
-.TH "HASHKIT_FREE" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "HASHKIT_FREE" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
hashkit_free \- libhashkit Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/hashkit_functions.3
^
|
@@ -1,4 +1,4 @@
-.TH "HASHKIT_FUNCTIONS" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "HASHKIT_FUNCTIONS" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
hashkit_functions \- libhashkit Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/hashkit_hsieh.3
^
|
@@ -1,4 +1,4 @@
-.TH "HASHKIT_HSIEH" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "HASHKIT_HSIEH" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
hashkit_hsieh \- libhashkit Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/hashkit_is_allocated.3
^
|
@@ -1,4 +1,4 @@
-.TH "HASHKIT_IS_ALLOCATED" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "HASHKIT_IS_ALLOCATED" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
hashkit_is_allocated \- libhashkit Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/hashkit_jenkins.3
^
|
@@ -1,4 +1,4 @@
-.TH "HASHKIT_JENKINS" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "HASHKIT_JENKINS" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
hashkit_jenkins \- libhashkit Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/hashkit_md5.3
^
|
@@ -1,4 +1,4 @@
-.TH "HASHKIT_MD5" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "HASHKIT_MD5" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
hashkit_md5 \- libhashkit Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/hashkit_murmur.3
^
|
@@ -1,4 +1,4 @@
-.TH "HASHKIT_MURMUR" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "HASHKIT_MURMUR" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
hashkit_murmur \- libhashkit Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/hashkit_value.3
^
|
@@ -1,4 +1,4 @@
-.TH "HASHKIT_VALUE" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "HASHKIT_VALUE" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
hashkit_value \- libhashkit Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/libhashkit.3
^
|
@@ -1,4 +1,4 @@
-.TH "LIBHASHKIT" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "LIBHASHKIT" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
libhashkit \- libhashkit Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/libmemcached.3
^
|
@@ -1,4 +1,4 @@
-.TH "LIBMEMCACHED" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "LIBMEMCACHED" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
libmemcached \- Introducing the C Client Library for memcached
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/libmemcached_check_configuration.3
^
|
@@ -1,4 +1,4 @@
-.TH "LIBMEMCACHED_CHECK_CONFIGURATION" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "LIBMEMCACHED_CHECK_CONFIGURATION" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
libmemcached_check_configuration \- libmemcached Documentation
.
@@ -32,7 +32,11 @@
.
.SH SYNOPSIS
.sp
-#include <libmemcached/memcached.h>
+#include <libmemcached\-1.0/memcached.h>
+.INDENT 0.0
+.TP
+.B LIBMEMCACHED
+.UNINDENT
.INDENT 0.0
.TP
.B memcached_st *memcached(const char\fI\ *string\fP, size_t\fI\ string_length\fP)
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/libmemcached_configuration.3
^
|
@@ -1,4 +1,4 @@
-.TH "LIBMEMCACHED_CONFIGURATION" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "LIBMEMCACHED_CONFIGURATION" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
libmemcached_configuration \- libmemcached Documentation
.
@@ -32,7 +32,11 @@
.
.SH SYNOPSIS
.sp
-#include <libmemcached/memcached.h>
+#include <libmemcached\-1.0/memcached.h>
+.INDENT 0.0
+.TP
+.B LIBMEMCACHED
+.UNINDENT
.INDENT 0.0
.TP
.B memcached_st *memcached(const char\fI\ *string\fP, size_t\fI\ string_length\fP)
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/libmemcached_examples.3
^
|
@@ -1,4 +1,4 @@
-.TH "LIBMEMCACHED_EXAMPLES" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "LIBMEMCACHED_EXAMPLES" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
libmemcached_examples \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/libmemcachedutil.3
^
|
@@ -1,4 +1,4 @@
-.TH "LIBMEMCACHEDUTIL" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "LIBMEMCACHEDUTIL" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
libmemcachedutil \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memaslap.1
^
|
@@ -1,4 +1,4 @@
-.TH "MEMASLAP" "1" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMASLAP" "1" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memaslap \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached \- libmemcached Documentation
.
@@ -32,7 +32,11 @@
.
.SH SYNOPSIS
.sp
-#include <libmemcached/memcached.h>
+#include <libmemcached\-1.0/memcached.h>
+.INDENT 0.0
+.TP
+.B LIBMEMCACHED
+.UNINDENT
.INDENT 0.0
.TP
.B memcached_st *memcached(const char\fI\ *string\fP, size_t\fI\ string_length\fP)
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_add.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_ADD" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_ADD" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_add \- Storing and Replacing Data
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_add_by_key.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_ADD_BY_KEY" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_ADD_BY_KEY" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_add_by_key \- Storing and Replacing Data
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_analyze.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_ANALYZE" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_ANALYZE" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_analyze \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_append.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_APPEND" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_APPEND" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_append \- Appending to or Prepending to data on the server
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_append_by_key.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_APPEND_BY_KEY" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_APPEND_BY_KEY" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_append_by_key \- Appending to or Prepending to data on the server
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_behavior_get.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_BEHAVIOR_GET" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_BEHAVIOR_GET" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_behavior_get \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_behavior_set.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_BEHAVIOR_SET" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_BEHAVIOR_SET" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_behavior_set \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_callback_get.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_CALLBACK_GET" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_CALLBACK_GET" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_callback_get \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_callback_set.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_CALLBACK_SET" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_CALLBACK_SET" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_callback_set \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_cas.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_CAS" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_CAS" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_cas \- Working with data on the server in an atomic fashion
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_cas_by_key.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_CAS_BY_KEY" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_CAS_BY_KEY" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_cas_by_key \- Storing and Replacing Data
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_clone.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_CLONE" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_CLONE" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_clone \- libmemcached Documentation
.
@@ -64,8 +64,7 @@
a NULL. If a NULL passed in then a structure is allocated for you.
.sp
Please note, when you write new application use
-\fBmemcached()\fP over
-\fI\%memcached_create()\fP.
+\fBmemcached()\fP over \fI\%memcached_create()\fP.
.sp
\fI\%memcached_clone()\fP is similar to \fI\%memcached_create()\fP but
it copies the defaults and list of servers from the source
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_create.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_CREATE" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_CREATE" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_create \- libmemcached Documentation
.
@@ -64,8 +64,7 @@
a NULL. If a NULL passed in then a structure is allocated for you.
.sp
Please note, when you write new application use
-\fBmemcached()\fP over
-\fI\%memcached_create()\fP.
+\fBmemcached()\fP over \fI\%memcached_create()\fP.
.sp
\fI\%memcached_clone()\fP is similar to \fI\%memcached_create()\fP but
it copies the defaults and list of servers from the source
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_decrement.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_DECREMENT" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_DECREMENT" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_decrement \- Incrementing and Decrementing Values
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_decrement_with_initial.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_DECREMENT_WITH_INITIAL" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_DECREMENT_WITH_INITIAL" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_decrement_with_initial \- Incrementing and Decrementing Values
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_delete.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_DELETE" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_DELETE" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_delete \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_delete_by_key.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_DELETE_BY_KEY" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_DELETE_BY_KEY" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_delete_by_key \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_destroy_sasl_auth_data.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_DESTROY_SASL_AUTH_DATA" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_DESTROY_SASL_AUTH_DATA" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_destroy_sasl_auth_data \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_dump.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_DUMP" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_DUMP" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_dump \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_exist.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_EXIST" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_EXIST" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_exist \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_exist_by_key.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_EXIST_BY_KEY" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_EXIST_BY_KEY" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_exist_by_key \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_fetch.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_FETCH" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_FETCH" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_fetch \- Retrieving data from the server
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_fetch_execute.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_FETCH_EXECUTE" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_FETCH_EXECUTE" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_fetch_execute \- Retrieving data from the server
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_fetch_result.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_FETCH_RESULT" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_FETCH_RESULT" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_fetch_result \- Retrieving data from the server
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_flush_buffers.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_FLUSH_BUFFERS" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_FLUSH_BUFFERS" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_flush_buffers \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_free.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_FREE" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_FREE" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_free \- libmemcached Documentation
.
@@ -64,8 +64,7 @@
a NULL. If a NULL passed in then a structure is allocated for you.
.sp
Please note, when you write new application use
-\fBmemcached()\fP over
-\fI\%memcached_create()\fP.
+\fBmemcached()\fP over \fI\%memcached_create()\fP.
.sp
\fI\%memcached_clone()\fP is similar to \fI\%memcached_create()\fP but
it copies the defaults and list of servers from the source
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_generate_hash.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_GENERATE_HASH" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_GENERATE_HASH" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_generate_hash \- Generating hash values directly
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_generate_hash_value.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_GENERATE_HASH_VALUE" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_GENERATE_HASH_VALUE" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_generate_hash_value \- Generating hash values directly
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_get.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_GET" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_GET" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_get \- Retrieving data from the server
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_get_by_key.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_GET_BY_KEY" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_GET_BY_KEY" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_get_by_key \- Retrieving data from the server
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_get_memory_allocators.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_GET_MEMORY_ALLOCATORS" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_GET_MEMORY_ALLOCATORS" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_get_memory_allocators \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_get_sasl_callbacks.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_GET_SASL_CALLBACKS" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_GET_SASL_CALLBACKS" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_get_sasl_callbacks \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_get_user_data.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_GET_USER_DATA" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_GET_USER_DATA" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_get_user_data \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_increment.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_INCREMENT" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_INCREMENT" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_increment \- Incrementing and Decrementing Values
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_increment_with_initial.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_INCREMENT_WITH_INITIAL" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_INCREMENT_WITH_INITIAL" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_increment_with_initial \- Incrementing and Decrementing Values
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_last_error_message.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_LAST_ERROR_MESSAGE" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_LAST_ERROR_MESSAGE" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_last_error_message \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_lib_version.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_LIB_VERSION" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_LIB_VERSION" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_lib_version \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_mget.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_MGET" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_MGET" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_mget \- Retrieving data from the server
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_mget_by_key.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_MGET_BY_KEY" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_MGET_BY_KEY" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_mget_by_key \- Retrieving data from the server
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_mget_execute.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_MGET_EXECUTE" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_MGET_EXECUTE" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_mget_execute \- Retrieving data from the server
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_mget_execute_by_key.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_MGET_EXECUTE_BY_KEY" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_MGET_EXECUTE_BY_KEY" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_mget_execute_by_key \- Retrieving data from the server
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_pool.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_POOL" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_POOL" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_pool \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_pool_behavior_get.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_POOL_BEHAVIOR_GET" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_POOL_BEHAVIOR_GET" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_pool_behavior_get \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_pool_behavior_set.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_POOL_BEHAVIOR_SET" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_POOL_BEHAVIOR_SET" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_pool_behavior_set \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_pool_create.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_POOL_CREATE" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_POOL_CREATE" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_pool_create \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_pool_destroy.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_POOL_DESTROY" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_POOL_DESTROY" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_pool_destroy \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_pool_fetch.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_POOL_FETCH" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_POOL_FETCH" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_pool_fetch \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_pool_pop.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_POOL_POP" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_POOL_POP" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_pool_pop \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_pool_push.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_POOL_PUSH" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_POOL_PUSH" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_pool_push \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_pool_release.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_POOL_RELEASE" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_POOL_RELEASE" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_pool_release \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_pool_st.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_POOL_ST" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_POOL_ST" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_pool_st \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_prepend.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_PREPEND" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_PREPEND" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_prepend \- Appending to or Prepending to data on the server
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_prepend_by_key.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_PREPEND_BY_KEY" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_PREPEND_BY_KEY" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_prepend_by_key \- Appending to or Prepending to data on the server
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_quit.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_QUIT" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_QUIT" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_quit \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_replace.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_REPLACE" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_REPLACE" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_replace \- Storing and Replacing Data
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_replace_by_key.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_REPLACE_BY_KEY" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_REPLACE_BY_KEY" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_replace_by_key \- Storing and Replacing Data
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_sasl_set_auth_data.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_SASL_SET_AUTH_DATA" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_SASL_SET_AUTH_DATA" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_sasl_set_auth_data \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_server_add.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_SERVER_ADD" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_SERVER_ADD" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_server_add \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_server_count.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_SERVER_COUNT" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_SERVER_COUNT" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_server_count \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_server_cursor.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_SERVER_CURSOR" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_SERVER_CURSOR" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_server_cursor \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_server_list.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_SERVER_LIST" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_SERVER_LIST" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_server_list \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_server_list_append.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_SERVER_LIST_APPEND" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_SERVER_LIST_APPEND" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_server_list_append \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_server_list_count.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_SERVER_LIST_COUNT" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_SERVER_LIST_COUNT" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_server_list_count \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_server_list_free.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_SERVER_LIST_FREE" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_SERVER_LIST_FREE" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_server_list_free \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_server_push.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_SERVER_PUSH" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_SERVER_PUSH" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_server_push \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_servers_parse.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_SERVERS_PARSE" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_SERVERS_PARSE" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_servers_parse \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_set.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_SET" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_SET" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_set \- Storing and Replacing Data
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_set_by_key.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_SET_BY_KEY" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_SET_BY_KEY" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_set_by_key \- Storing and Replacing Data
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_set_memory_allocators.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_SET_MEMORY_ALLOCATORS" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_SET_MEMORY_ALLOCATORS" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_set_memory_allocators \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_set_sasl_callbacks.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_SET_SASL_CALLBACKS" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_SET_SASL_CALLBACKS" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_set_sasl_callbacks \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_set_user_data.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_SET_USER_DATA" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_SET_USER_DATA" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_set_user_data \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_stat.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_STAT" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_STAT" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_stat \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_stat_execute.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_STAT_EXECUTE" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_STAT_EXECUTE" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_stat_execute \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_stat_get_keys.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_STAT_GET_KEYS" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_STAT_GET_KEYS" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_stat_get_keys \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_stat_get_value.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_STAT_GET_VALUE" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_STAT_GET_VALUE" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_stat_get_value \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_stat_servername.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_STAT_SERVERNAME" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_STAT_SERVERNAME" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_stat_servername \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_strerror.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_STRERROR" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_STRERROR" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_strerror \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_touch.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_TOUCH" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_TOUCH" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_touch \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_touch_by_key.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_TOUCH_BY_KEY" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_TOUCH_BY_KEY" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_touch_by_key \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_verbosity.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_VERBOSITY" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_VERBOSITY" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_verbosity \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcached_version.3
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCACHED_VERSION" "3" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCACHED_VERSION" "3" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcached_version \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcapable.1
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCAPABLE" "1" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCAPABLE" "1" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcapable \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcat.1
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCAT" "1" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCAT" "1" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcat \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memcp.1
^
|
@@ -1,4 +1,4 @@
-.TH "MEMCP" "1" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMCP" "1" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memcp \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memdump.1
^
|
@@ -1,4 +1,4 @@
-.TH "MEMDUMP" "1" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMDUMP" "1" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memdump \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memerror.1
^
|
@@ -1,4 +1,4 @@
-.TH "MEMERROR" "1" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMERROR" "1" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memerror \- libmemcached Documentation
.
|
[-]
[+]
|
Added |
libmemcached-1.0.8.tar.bz2/docs/man/memexist.1
^
|
@@ -0,0 +1,76 @@
+.TH "MEMEXIST" "1" "May 22, 2012" "1.0.8" "libmemcached"
+.SH NAME
+memexist \- libmemcached Documentation
+.
+.nr rst2man-indent-level 0
+.
+.de1 rstReportMargin
+\\$1 \\n[an-margin]
+level \\n[rst2man-indent-level]
+level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
+-
+\\n[rst2man-indent0]
+\\n[rst2man-indent1]
+\\n[rst2man-indent2]
+..
+.de1 INDENT
+.\" .rstReportMargin pre:
+. RS \\$1
+. nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin]
+. nr rst2man-indent-level +1
+.\" .rstReportMargin post:
+..
+.de UNINDENT
+. RE
+.\" indent \\n[an-margin]
+.\" old: \\n[rst2man-indent\\n[rst2man-indent-level]]
+.nr rst2man-indent-level -1
+.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
+.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
+..
+.\" Man page generated from reStructeredText.
+.
+.SH SYNOPSIS
+.sp
+memexist [options] [key]
+.SH DESCRIPTION
+.sp
+\fBmemexist\fP checks for the existance of a key within a cluster.
+.SH OPTIONS
+.sp
+You can specify servers via the option:
+.INDENT 0.0
+.TP
+.B \-\-servers
+.UNINDENT
+.sp
+or via the environment variable:
+.INDENT 0.0
+.TP
+.B \(gaMEMCACHED_SERVERS\(ga
+.UNINDENT
+.sp
+If you do not specify either these, the final value in the command line list is the name of a server(s).
+.sp
+For a full list of operations run the tool with the option:
+.INDENT 0.0
+.TP
+.B \-\-help
+.UNINDENT
+.SH HOME
+.sp
+To find out more information please check:
+\fI\%http://libmemcached.org/\fP
+.SH AUTHOR
+.sp
+Brian Aker, <\fI\%brian@tangent.org\fP>
+.SH SEE ALSO
+.sp
+\fImemcached(1)\fP \fIlibmemcached(3)\fP
+.SH AUTHOR
+Brian Aker
+.SH COPYRIGHT
+2011, Brian Aker DataDifferential, http://datadifferential.com/
+.\" Generated by docutils manpage writer.
+.\"
+.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memflush.1
^
|
@@ -1,4 +1,4 @@
-.TH "MEMFLUSH" "1" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMFLUSH" "1" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memflush \- libmemcached Documentation
.
|
[-]
[+]
|
Added |
libmemcached-1.0.8.tar.bz2/docs/man/memparse.1
^
|
@@ -0,0 +1,64 @@
+.TH "MEMPARSE" "1" "May 22, 2012" "1.0.8" "libmemcached"
+.SH NAME
+memparse \- libmemcached Documentation
+.
+.nr rst2man-indent-level 0
+.
+.de1 rstReportMargin
+\\$1 \\n[an-margin]
+level \\n[rst2man-indent-level]
+level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
+-
+\\n[rst2man-indent0]
+\\n[rst2man-indent1]
+\\n[rst2man-indent2]
+..
+.de1 INDENT
+.\" .rstReportMargin pre:
+. RS \\$1
+. nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin]
+. nr rst2man-indent-level +1
+.\" .rstReportMargin post:
+..
+.de UNINDENT
+. RE
+.\" indent \\n[an-margin]
+.\" old: \\n[rst2man-indent\\n[rst2man-indent-level]]
+.nr rst2man-indent-level -1
+.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
+.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
+..
+.\" Man page generated from reStructeredText.
+.
+.sp
+Copies files to a collection of memcached servers
+.SH SYNOPSIS
+.sp
+memparse [options] "option string"
+.SH DESCRIPTION
+.sp
+\fBmemparse\fP can be used to validate an option string.
+.SH OPTIONS
+.sp
+For a full list of operations run the tool with the option:
+.INDENT 0.0
+.TP
+.B \-\-help
+.UNINDENT
+.SH HOME
+.sp
+To find out more information please check:
+\fI\%http://libmemcached.org/\fP
+.SH AUTHOR
+.sp
+Brian Aker, <\fI\%brian@tangent.org\fP>
+.SH SEE ALSO
+.sp
+\fImemcached(1)\fP \fIlibmemcached(3)\fP
+.SH AUTHOR
+Brian Aker
+.SH COPYRIGHT
+2011, Brian Aker DataDifferential, http://datadifferential.com/
+.\" Generated by docutils manpage writer.
+.\"
+.
|
[-]
[+]
|
Added |
libmemcached-1.0.8.tar.bz2/docs/man/memping.1
^
|
@@ -0,0 +1,76 @@
+.TH "MEMPING" "1" "May 22, 2012" "1.0.8" "libmemcached"
+.SH NAME
+memping \- libmemcached Documentation
+.
+.nr rst2man-indent-level 0
+.
+.de1 rstReportMargin
+\\$1 \\n[an-margin]
+level \\n[rst2man-indent-level]
+level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
+-
+\\n[rst2man-indent0]
+\\n[rst2man-indent1]
+\\n[rst2man-indent2]
+..
+.de1 INDENT
+.\" .rstReportMargin pre:
+. RS \\$1
+. nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin]
+. nr rst2man-indent-level +1
+.\" .rstReportMargin post:
+..
+.de UNINDENT
+. RE
+.\" indent \\n[an-margin]
+.\" old: \\n[rst2man-indent\\n[rst2man-indent-level]]
+.nr rst2man-indent-level -1
+.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
+.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
+..
+.\" Man page generated from reStructeredText.
+.
+.SH SYNOPSIS
+.sp
+memping [options] [server]
+.SH DESCRIPTION
+.sp
+\fBmemping\fP can be used to ping a memcached server to see if it is taking connections.
+.SH OPTIONS
+.sp
+You can specify servers via the option:
+.INDENT 0.0
+.TP
+.B \-\-servers
+.UNINDENT
+.sp
+or via the environment variable:
+.INDENT 0.0
+.TP
+.B \(gaMEMCACHED_SERVERS\(ga
+.UNINDENT
+.sp
+If you do not specify either these, the final value in the command line list is the name of a server(s).
+.sp
+For a full list of operations run the tool with the option:
+.INDENT 0.0
+.TP
+.B \-\-help
+.UNINDENT
+.SH HOME
+.sp
+To find out more information please check:
+\fI\%http://libmemcached.org/\fP
+.SH AUTHOR
+.sp
+Brian Aker, <\fI\%brian@tangent.org\fP>
+.SH SEE ALSO
+.sp
+\fImemcached(1)\fP \fIlibmemcached(3)\fP
+.SH AUTHOR
+Brian Aker
+.SH COPYRIGHT
+2011, Brian Aker DataDifferential, http://datadifferential.com/
+.\" Generated by docutils manpage writer.
+.\"
+.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memrm.1
^
|
@@ -1,4 +1,4 @@
-.TH "MEMRM" "1" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMRM" "1" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memrm \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memslap.1
^
|
@@ -1,4 +1,4 @@
-.TH "MEMSLAP" "1" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMSLAP" "1" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memslap \- libmemcached Documentation
.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/docs/man/memstat.1
^
|
@@ -1,4 +1,4 @@
-.TH "MEMSTAT" "1" "April 28, 2012" "1.0.7" "libmemcached"
+.TH "MEMSTAT" "1" "May 22, 2012" "1.0.8" "libmemcached"
.SH NAME
memstat \- libmemcached Documentation
.
|
[-]
[+]
|
Added |
libmemcached-1.0.8.tar.bz2/docs/man/memtouch.1
^
|
@@ -0,0 +1,76 @@
+.TH "MEMTOUCH" "1" "May 22, 2012" "1.0.8" "libmemcached"
+.SH NAME
+memtouch \- libmemcached Documentation
+.
+.nr rst2man-indent-level 0
+.
+.de1 rstReportMargin
+\\$1 \\n[an-margin]
+level \\n[rst2man-indent-level]
+level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
+-
+\\n[rst2man-indent0]
+\\n[rst2man-indent1]
+\\n[rst2man-indent2]
+..
+.de1 INDENT
+.\" .rstReportMargin pre:
+. RS \\$1
+. nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin]
+. nr rst2man-indent-level +1
+.\" .rstReportMargin post:
+..
+.de UNINDENT
+. RE
+.\" indent \\n[an-margin]
+.\" old: \\n[rst2man-indent\\n[rst2man-indent-level]]
+.nr rst2man-indent-level -1
+.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
+.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
+..
+.\" Man page generated from reStructeredText.
+.
+.SH SYNOPSIS
+.sp
+memtouch [options] key
+.SH DESCRIPTION
+.sp
+\fBmemtouch\fP does a "touch" on the specified key.
+.SH OPTIONS
+.sp
+You can specify servers via the option:
+.INDENT 0.0
+.TP
+.B \-\-servers
+.UNINDENT
+.sp
+or via the environment variable:
+.INDENT 0.0
+.TP
+.B \(gaMEMCACHED_SERVERS\(ga
+.UNINDENT
+.sp
+If you do not specify either these, the final value in the command line list is the name of a server(s).
+.sp
+For a full list of operations run the tool with the option:
+.INDENT 0.0
+.TP
+.B \-\-help
+.UNINDENT
+.SH HOME
+.sp
+To find out more information please check:
+\fI\%http://libmemcached.org/\fP
+.SH AUTHOR
+.sp
+Brian Aker, <\fI\%brian@tangent.org\fP>
+.SH SEE ALSO
+.sp
+\fImemcached(1)\fP \fIlibmemcached(3)\fP
+.SH AUTHOR
+Brian Aker
+.SH COPYRIGHT
+2011, Brian Aker DataDifferential, http://datadifferential.com/
+.\" Generated by docutils manpage writer.
+.\"
+.
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/example/t/memcached_light.cc
^
|
@@ -233,9 +233,9 @@
void get_world(Framework *world)
{
- world->_create= world_create;
- world->_destroy= world_destroy;
- world->collections= collection;
+ world->create(world_create);
+ world->destroy(world_destroy);
+ world->collections(collection);
world->set_runner(new MemcachedLightRunner);
}
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/libmemcached-1.0/configure.h
^
|
@@ -44,8 +44,8 @@
#define LIBMEMCACHED_WITH_SASL_SUPPORT 0
-#define LIBMEMCACHED_VERSION_STRING "1.0.7"
-#define LIBMEMCACHED_VERSION_HEX 0x01000007
+#define LIBMEMCACHED_VERSION_STRING "1.0.8"
+#define LIBMEMCACHED_VERSION_HEX 0x01000008
#ifdef __cplusplus
}
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/libmemcached-1.0/memcached.h
^
|
@@ -37,23 +37,24 @@
#pragma once
-#include <inttypes.h>
+/* This seems to be required for older compilers @note http://stackoverflow.com/questions/8132399/how-to-printf-uint64-t */
+#ifndef __STDC_FORMAT_MACROS
+# define __STDC_FORMAT_MACROS
+#endif
#ifdef __cplusplus
-#include <cstddef>
-#include <cstdlib>
+# include <tr1/cinttypes>
+# include <cstddef>
+# include <cstdlib>
#else
-#include <stddef.h>
-#include <stdlib.h>
+# include <inttypes.h>
+# include <stddef.h>
+# include <stdlib.h>
+# include <stdbool.h>
#endif
#include <sys/types.h>
-
-#if !defined(__cplusplus)
-# include <stdbool.h>
-#endif
-
#include <libmemcached-1.0/visibility.h>
#include <libmemcached-1.0/configure.h>
#include <libmemcached-1.0/platform.h>
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/libmemcached-1.0/memcached.hpp
^
|
@@ -1,3 +1,39 @@
+/* vim:expandtab:shiftwidth=2:tabstop=2:smarttab:
+ *
+ * Libmemcached library
+ *
+ * Copyright (C) 2011-2012 Data Differential, http://datadifferential.com/
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ *
+ * * The names of its contributors may not be used to endorse or
+ * promote products derived from this software without specific prior
+ * written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ */
+
/*
* Summary: C++ interface for memcached server
*
@@ -51,7 +87,9 @@
{
memc= memcached("", 0);
if (memc)
+ {
memcached_server_add(memc, hostname.c_str(), port);
+ }
}
Memcache(memcached_st *clone)
@@ -304,7 +342,7 @@
* @param[in] keys vector of keys to select
* @return true if all keys are found
*/
- bool mget(std::vector<std::string> &keys)
+ bool mget(const std::vector<std::string>& keys)
{
std::vector<const char *> real_keys;
std::vector<size_t> key_len;
@@ -317,7 +355,7 @@
real_keys.reserve(keys.size());
key_len.reserve(keys.size());
- std::vector<std::string>::iterator it= keys.begin();
+ std::vector<std::string>::const_iterator it= keys.begin();
while (it != keys.end())
{
@@ -372,8 +410,8 @@
* @param[in] flags flags to store with the object
* @return true on succcess; false otherwise
*/
- bool setByKey(const std::string &master_key,
- const std::string &key,
+ bool setByKey(const std::string& master_key,
+ const std::string& key,
const std::vector<char> &value,
time_t expiration,
uint32_t flags)
@@ -396,14 +434,14 @@
* @param[in] flags flags to store with the objects
* @return true on success; false otherwise
*/
- bool setAll(std::vector<std::string> &keys,
- std::vector< std::vector<char> *> &values,
+ bool setAll(const std::vector<std::string>& keys,
+ const std::vector< std::vector<char> *>& values,
time_t expiration,
uint32_t flags)
{
bool retval= true;
- std::vector<std::string>::iterator key_it= keys.begin();
- std::vector< std::vector<char> *>::iterator val_it= values.begin();
+ std::vector<std::string>::const_iterator key_it= keys.begin();
+ std::vector< std::vector<char> *>::const_iterator val_it= values.begin();
while (key_it != keys.end())
{
retval= set((*key_it), *(*val_it), expiration, flags);
@@ -426,12 +464,12 @@
* @param[in] flags flags to store with the objects
* @return true on success; false otherwise
*/
- bool setAll(std::map<const std::string, std::vector<char> > &key_value_map,
+ bool setAll(const std::map<const std::string, std::vector<char> >& key_value_map,
time_t expiration,
uint32_t flags)
{
bool retval= true;
- std::map<const std::string, std::vector<char> >::iterator it= key_value_map.begin();
+ std::map<const std::string, std::vector<char> >::const_iterator it= key_value_map.begin();
while (it != key_value_map.end())
{
@@ -443,6 +481,7 @@
}
++it;
}
+
return true;
}
@@ -456,7 +495,7 @@
* @param[out] value store the result of the increment here
* @return true on success; false otherwise
*/
- bool increment(const std::string &key, uint32_t offset, uint64_t *value)
+ bool increment(const std::string& key, uint32_t offset, uint64_t *value)
{
return memcached_success(memcached_increment(memc, key.c_str(), key.length(), offset, value));
}
@@ -471,7 +510,7 @@
* @param[out] value store the result of the decrement here
* @return true on success; false otherwise
*/
- bool decrement(const std::string &key, uint32_t offset, uint64_t *value)
+ bool decrement(const std::string& key, uint32_t offset, uint64_t *value)
{
return memcached_success(memcached_decrement(memc, key.c_str(),
key.length(),
@@ -487,7 +526,7 @@
* @param[in] value of object to add
* @return true on success; false otherwise
*/
- bool add(const std::string &key, const std::vector<char> &value)
+ bool add(const std::string& key, const std::vector<char>& value)
{
return memcached_success(memcached_add(memc, key.c_str(), key.length(),
&value[0], value.size(), 0, 0));
@@ -503,9 +542,9 @@
* @param[in] value of object to add
* @return true on success; false otherwise
*/
- bool addByKey(const std::string &master_key,
- const std::string &key,
- const std::vector<char> &value)
+ bool addByKey(const std::string& master_key,
+ const std::string& key,
+ const std::vector<char>& value)
{
return memcached_success(memcached_add_by_key(memc,
master_key.c_str(),
@@ -525,7 +564,7 @@
* @param[in[ value value to replace object with
* @return true on success; false otherwise
*/
- bool replace(const std::string &key, const std::vector<char> &value)
+ bool replace(const std::string& key, const std::vector<char>& value)
{
return memcached_success(memcached_replace(memc, key.c_str(), key.length(),
&value[0], value.size(),
@@ -542,9 +581,9 @@
* @param[in[ value value to replace object with
* @return true on success; false otherwise
*/
- bool replaceByKey(const std::string &master_key,
- const std::string &key,
- const std::vector<char> &value)
+ bool replaceByKey(const std::string& master_key,
+ const std::string& key,
+ const std::vector<char>& value)
{
return memcached_success(memcached_replace_by_key(memc,
master_key.c_str(),
@@ -563,7 +602,7 @@
* @param[in] value data to prepend to object's value
* @return true on success; false otherwise
*/
- bool prepend(const std::string &key, const std::vector<char> &value)
+ bool prepend(const std::string& key, const std::vector<char>& value)
{
return memcached_success(memcached_prepend(memc, key.c_str(), key.length(),
&value[0], value.size(), 0, 0));
@@ -579,9 +618,9 @@
* @param[in] value data to prepend to object's value
* @return true on success; false otherwise
*/
- bool prependByKey(const std::string &master_key,
- const std::string &key,
- const std::vector<char> &value)
+ bool prependByKey(const std::string& master_key,
+ const std::string& key,
+ const std::vector<char>& value)
{
return memcached_success(memcached_prepend_by_key(memc,
master_key.c_str(),
@@ -601,7 +640,7 @@
* @param[in] value data to append to object's value
* @return true on success; false otherwise
*/
- bool append(const std::string &key, const std::vector<char> &value)
+ bool append(const std::string& key, const std::vector<char>& value)
{
return memcached_success(memcached_append(memc,
key.c_str(),
@@ -621,8 +660,8 @@
* @param[in] value data to append to object's value
* @return true on success; false otherwise
*/
- bool appendByKey(const std::string &master_key,
- const std::string &key,
+ bool appendByKey(const std::string& master_key,
+ const std::string& key,
const std::vector<char> &value)
{
return memcached_success(memcached_append_by_key(memc,
@@ -643,8 +682,8 @@
* @param[in] value value to store for object in server
* @param[in] cas_arg "cas" value
*/
- bool cas(const std::string &key,
- const std::vector<char> &value,
+ bool cas(const std::string& key,
+ const std::vector<char>& value,
uint64_t cas_arg)
{
return memcached_success(memcached_cas(memc, key.c_str(), key.length(),
@@ -662,8 +701,8 @@
* @param[in] value value to store for object in server
* @param[in] cas_arg "cas" value
*/
- bool casByKey(const std::string &master_key,
- const std::string &key,
+ bool casByKey(const std::string& master_key,
+ const std::string& key,
const std::vector<char> &value,
uint64_t cas_arg)
{
@@ -683,7 +722,7 @@
* @param[in] key key of object to delete
* @return true on success; false otherwise
*/
- bool remove(const std::string &key)
+ bool remove(const std::string& key)
{
return memcached_success(memcached_delete(memc, key.c_str(), key.length(), 0));
}
@@ -695,7 +734,7 @@
* @param[in] expiration time to delete the object after
* @return true on success; false otherwise
*/
- bool remove(const std::string &key, time_t expiration)
+ bool remove(const std::string& key, time_t expiration)
{
return memcached_success(memcached_delete(memc,
key.c_str(),
@@ -710,8 +749,8 @@
* @param[in] key key of object to delete
* @return true on success; false otherwise
*/
- bool removeByKey(const std::string &master_key,
- const std::string &key)
+ bool removeByKey(const std::string& master_key,
+ const std::string& key)
{
return memcached_success(memcached_delete_by_key(memc,
master_key.c_str(),
@@ -729,8 +768,8 @@
* @param[in] expiration time to delete the object after
* @return true on success; false otherwise
*/
- bool removeByKey(const std::string &master_key,
- const std::string &key,
+ bool removeByKey(const std::string& master_key,
+ const std::string& key,
time_t expiration)
{
return memcached_success(memcached_delete_by_key(memc,
@@ -772,8 +811,7 @@
* stats
* @return true on success; false otherwise
*/
- bool getStats(std::map< std::string, std::map<std::string, std::string> >
- &stats_map)
+ bool getStats(std::map< std::string, std::map<std::string, std::string> >& stats_map)
{
memcached_return_t rc;
memcached_stat_st *stats= memcached_stat(memc, NULL, &rc);
@@ -792,8 +830,7 @@
*/
for (uint32_t x= 0; x < server_count; x++)
{
- memcached_server_instance_st instance=
- memcached_server_instance_by_position(memc, x);
+ memcached_server_instance_st instance= memcached_server_instance_by_position(memc, x);
std::ostringstream strstm;
std::string server_name(memcached_server_name(instance));
server_name.append(":");
@@ -801,11 +838,8 @@
server_name.append(strstm.str());
std::map<std::string, std::string> server_stats;
- char **list= NULL;
- char **ptr= NULL;
-
- list= memcached_stat_get_keys(memc, &stats[x], &rc);
- for (ptr= list; *ptr; ptr++)
+ char **list= memcached_stat_get_keys(memc, &stats[x], &rc);
+ for (char** ptr= list; *ptr; ptr++)
{
char *value= memcached_stat_get_value(memc, &stats[x], *ptr, &rc);
server_stats[*ptr]= value;
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/libmemcached/behavior.cc
^
|
@@ -287,7 +287,7 @@
uint64_t memcached_behavior_get(memcached_st *ptr,
const memcached_behavior_t flag)
{
- if (not ptr)
+ if (ptr == NULL)
{
return MEMCACHED_INVALID_ARGUMENTS;
}
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/libmemcached/common.h
^
|
@@ -169,8 +169,7 @@
#define memcached_server_response_decrement(A) (A)->cursor_active--
#define memcached_server_response_reset(A) (A)->cursor_active=0
-LIBMEMCACHED_LOCAL
-memcached_return_t memcached_purge(memcached_server_write_instance_st ptr);
+bool memcached_purge(memcached_server_write_instance_st ptr);
#ifdef __cplusplus
}
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/libmemcached/connect.cc
^
|
@@ -57,73 +57,78 @@
while (--loop_max) // Should only loop on cases of ERESTART or EINTR
{
- int error= poll(fds, 1, server->root->connect_timeout);
- switch (error)
+ int number_of;
+ if ((number_of= poll(fds, 1, server->root->connect_timeout)) <= 0)
{
- case 1:
+ if (number_of == -1)
{
- int err;
- socklen_t len= sizeof (err);
- if (getsockopt(server->fd, SOL_SOCKET, SO_ERROR, &err, &len) == 0)
+ int local_errno= get_socket_errno(); // We cache in case closesocket() modifies errno
+ switch (local_errno)
{
- // We check the value to see what happened wth the socket.
- if (err == 0)
- {
- return MEMCACHED_SUCCESS;
- }
- errno= err;
- }
-
- return memcached_set_errno(*server, err, MEMCACHED_AT);
- }
- case 0:
- {
- server->io_wait_count.timeouts++;
- return memcached_set_error(*server, MEMCACHED_TIMEOUT, MEMCACHED_AT);
- }
-
- default: // A real error occurred and we need to completely bail
- switch (get_socket_errno())
- {
#ifdef TARGET_OS_LINUX
- case ERESTART:
+ case ERESTART:
#endif
- case EINTR:
- continue;
+ case EINTR:
+ continue;
- case EFAULT:
- case ENOMEM:
- return memcached_set_error(*server, MEMCACHED_MEMORY_ALLOCATION_FAILURE, MEMCACHED_AT);
+ case EFAULT:
+ case ENOMEM:
+ return memcached_set_error(*server, MEMCACHED_MEMORY_ALLOCATION_FAILURE, MEMCACHED_AT);
- case EINVAL:
- return memcached_set_error(*server, MEMCACHED_MEMORY_ALLOCATION_FAILURE, MEMCACHED_AT, memcached_literal_param("RLIMIT_NOFILE exceeded, or if OSX the timeout value was invalid"));
+ case EINVAL:
+ return memcached_set_error(*server, MEMCACHED_MEMORY_ALLOCATION_FAILURE, MEMCACHED_AT, memcached_literal_param("RLIMIT_NOFILE exceeded, or if OSX the timeout value was invalid"));
- default: // This should not happen
- if (fds[0].revents & POLLERR)
- {
- int err;
- socklen_t len= sizeof(err);
- if (getsockopt(server->fd, SOL_SOCKET, SO_ERROR, &err, &len) == 0)
+ default: // This should not happen
+ if (fds[0].revents & POLLERR)
{
- if (err == 0)
+ int err;
+ socklen_t len= sizeof(err);
+ if (getsockopt(server->fd, SOL_SOCKET, SO_ERROR, &err, &len) == 0)
{
- // This should never happen, if it does? Punt.
- continue;
+ if (err == 0)
+ {
+ // This should never happen, if it does? Punt.
+ continue;
+ }
+ local_errno= err;
}
- errno= err;
}
- }
- int local_errno= get_socket_errno(); // We cache in case closesocket() modifies errno
+ assert_msg(server->fd != INVALID_SOCKET, "poll() was passed an invalid file descriptor");
+ (void)closesocket(server->fd);
+ server->fd= INVALID_SOCKET;
+ server->state= MEMCACHED_SERVER_STATE_NEW;
- assert_msg(server->fd != INVALID_SOCKET, "poll() was passed an invalid file descriptor");
- (void)closesocket(server->fd);
- server->fd= INVALID_SOCKET;
- server->state= MEMCACHED_SERVER_STATE_NEW;
+ return memcached_set_errno(*server, local_errno, MEMCACHED_AT);
+ }
+ }
+ assert(number_of == 0);
+
+ server->io_wait_count.timeouts++;
+ return memcached_set_error(*server, MEMCACHED_TIMEOUT, MEMCACHED_AT);
+ }
- return memcached_set_errno(*server, local_errno, MEMCACHED_AT);
+ if (fds[0].revents & POLLERR or
+ fds[0].revents & POLLHUP or
+ fds[0].revents & POLLNVAL)
+ {
+ int err;
+ socklen_t len= sizeof (err);
+ if (getsockopt(fds[0].fd, SOL_SOCKET, SO_ERROR, &err, &len) == 0)
+ {
+ // We check the value to see what happened wth the socket.
+ if (err == 0)
+ {
+ return MEMCACHED_SUCCESS;
+ }
+ errno= err;
}
+
+ return memcached_set_errno(*server, err, MEMCACHED_AT);
}
+ assert(fds[0].revents & POLLIN or fds[0].revents & POLLOUT);
+
+ return MEMCACHED_SUCCESS;
}
// This should only be possible from ERESTART or EINTR;
@@ -243,30 +248,28 @@
#ifdef HAVE_SNDTIMEO
if (server->root->snd_timeout)
{
- int error;
struct timeval waittime;
waittime.tv_sec= 0;
waittime.tv_usec= server->root->snd_timeout;
- error= setsockopt(server->fd, SOL_SOCKET, SO_SNDTIMEO,
+ int error= setsockopt(server->fd, SOL_SOCKET, SO_SNDTIMEO,
&waittime, (socklen_t)sizeof(struct timeval));
- WATCHPOINT_ASSERT(error == 0);
+ assert(error == 0);
}
#endif
#ifdef HAVE_RCVTIMEO
if (server->root->rcv_timeout)
{
- int error;
struct timeval waittime;
waittime.tv_sec= 0;
waittime.tv_usec= server->root->rcv_timeout;
- error= setsockopt(server->fd, SOL_SOCKET, SO_RCVTIMEO,
- &waittime, (socklen_t)sizeof(struct timeval));
- WATCHPOINT_ASSERT(error == 0);
+ int error= setsockopt(server->fd, SOL_SOCKET, SO_RCVTIMEO,
+ &waittime, (socklen_t)sizeof(struct timeval));
+ assert(error == 0);
}
#endif
@@ -287,63 +290,54 @@
if (server->root->flags.no_block)
{
- int error;
struct linger linger;
linger.l_onoff= 1;
linger.l_linger= 0; /* By default on close() just drop the socket */
- error= setsockopt(server->fd, SOL_SOCKET, SO_LINGER,
- &linger, (socklen_t)sizeof(struct linger));
- WATCHPOINT_ASSERT(error == 0);
+ int error= setsockopt(server->fd, SOL_SOCKET, SO_LINGER,
+ &linger, (socklen_t)sizeof(struct linger));
+ assert(error == 0);
}
if (server->root->flags.tcp_nodelay)
{
int flag= 1;
- int error;
- error= setsockopt(server->fd, IPPROTO_TCP, TCP_NODELAY,
- &flag, (socklen_t)sizeof(int));
- WATCHPOINT_ASSERT(error == 0);
+ int error= setsockopt(server->fd, IPPROTO_TCP, TCP_NODELAY,
+ &flag, (socklen_t)sizeof(int));
+ assert(error == 0);
}
if (server->root->flags.tcp_keepalive)
{
int flag= 1;
- int error;
- error= setsockopt(server->fd, SOL_SOCKET, SO_KEEPALIVE,
+ int error= setsockopt(server->fd, SOL_SOCKET, SO_KEEPALIVE,
&flag, (socklen_t)sizeof(int));
- WATCHPOINT_ASSERT(error == 0);
+ assert(error == 0);
}
#ifdef TCP_KEEPIDLE
if (server->root->tcp_keepidle > 0)
{
- int error;
-
- error= setsockopt(server->fd, IPPROTO_TCP, TCP_KEEPIDLE,
- &server->root->tcp_keepidle, (socklen_t)sizeof(int));
- WATCHPOINT_ASSERT(error == 0);
+ int error= setsockopt(server->fd, IPPROTO_TCP, TCP_KEEPIDLE,
+ &server->root->tcp_keepidle, (socklen_t)sizeof(int));
+ assert(error == 0);
}
#endif
if (server->root->send_size > 0)
{
- int error;
-
- error= setsockopt(server->fd, SOL_SOCKET, SO_SNDBUF,
- &server->root->send_size, (socklen_t)sizeof(int));
- WATCHPOINT_ASSERT(error == 0);
+ int error= setsockopt(server->fd, SOL_SOCKET, SO_SNDBUF,
+ &server->root->send_size, (socklen_t)sizeof(int));
+ assert(error == 0);
}
if (server->root->recv_size > 0)
{
- int error;
-
- error= setsockopt(server->fd, SOL_SOCKET, SO_RCVBUF,
- &server->root->recv_size, (socklen_t)sizeof(int));
- WATCHPOINT_ASSERT(error == 0);
+ int error= setsockopt(server->fd, SOL_SOCKET, SO_RCVBUF,
+ &server->root->recv_size, (socklen_t)sizeof(int));
+ assert(error == 0);
}
@@ -380,7 +374,7 @@
case EISCONN: /* We were spinning waiting on connect */
{
- WATCHPOINT_ASSERT(0); // Programmer error
+ assert(0); // Programmer error
break;
}
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/libmemcached/do.cc
^
|
@@ -72,14 +72,8 @@
return MEMCACHED_SUCCESS;
}
- ssize_t sent_length= memcached_io_writev(instance, vector, count, with_flush);
- size_t command_length= 0;
- for (uint32_t x= 0; x < count; ++x, vector++)
- {
- command_length+= vector->length;
- }
-
- if (sent_length == -1 or size_t(sent_length) != command_length)
+ bool sent_success= memcached_io_writev(instance, vector, count, with_flush);
+ if (sent_success == false)
{
if (memcached_last_error(instance->root) == MEMCACHED_SUCCESS)
{
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/libmemcached/fetch.cc
^
|
@@ -155,10 +155,12 @@
memcached_return_t *error)
{
memcached_return_t unused;
- if (not error)
+ if (error == NULL)
+ {
error= &unused;
+ }
- if (not ptr)
+ if (ptr == NULL)
{
*error= MEMCACHED_INVALID_ARGUMENTS;
return NULL;
@@ -176,7 +178,7 @@
// create one.
if (memcached_is_initialized(&ptr->result))
{
- if (not (result= memcached_result_create(ptr, NULL)))
+ if ((result= memcached_result_create(ptr, NULL)) == NULL)
{
*error= MEMCACHED_MEMORY_ALLOCATION_FAILURE;
return NULL;
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/libmemcached/get.cc
^
|
@@ -2,7 +2,7 @@
*
* Libmemcached library
*
- * Copyright (C) 2011 Data Differential, http://datadifferential.com/
+ * Copyright (C) 2011-2012 Data Differential, http://datadifferential.com/
* Copyright (C) 2006-2009 Brian Aker All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -117,10 +117,11 @@
if (value == NULL)
{
- if (ptr->get_key_failure && *error == MEMCACHED_NOTFOUND)
+ if (ptr->get_key_failure and *error == MEMCACHED_NOTFOUND)
{
- memcached_result_reset(&ptr->result);
- memcached_return_t rc= ptr->get_key_failure(ptr, key, key_length, &ptr->result);
+ memcached_result_st key_failure_result;
+ memcached_result_st* result_ptr= memcached_result_create(ptr, &key_failure_result);
+ memcached_return_t rc= ptr->get_key_failure(ptr, key, key_length, result_ptr);
/* On all failure drop to returning NULL */
if (rc == MEMCACHED_SUCCESS or rc == MEMCACHED_BUFFERED)
@@ -135,12 +136,12 @@
}
rc= memcached_set(ptr, key, key_length,
- (memcached_result_value(&ptr->result)),
- (memcached_result_length(&ptr->result)),
+ (memcached_result_value(result_ptr)),
+ (memcached_result_length(result_ptr)),
0,
- (memcached_result_flags(&ptr->result)));
+ (memcached_result_flags(result_ptr)));
- if (rc == MEMCACHED_BUFFERED && latch == 0)
+ if (rc == MEMCACHED_BUFFERED and latch == 0)
{
memcached_behavior_set(ptr, MEMCACHED_BEHAVIOR_BUFFER_REQUESTS, 0);
}
@@ -148,20 +149,25 @@
else
{
rc= memcached_set(ptr, key, key_length,
- (memcached_result_value(&ptr->result)),
- (memcached_result_length(&ptr->result)),
+ (memcached_result_value(result_ptr)),
+ (memcached_result_length(result_ptr)),
0,
- (memcached_result_flags(&ptr->result)));
+ (memcached_result_flags(result_ptr)));
}
- if (rc == MEMCACHED_SUCCESS || rc == MEMCACHED_BUFFERED)
+ if (rc == MEMCACHED_SUCCESS or rc == MEMCACHED_BUFFERED)
{
*error= rc;
- *value_length= memcached_result_length(&ptr->result);
- *flags= memcached_result_flags(&ptr->result);
- return memcached_string_take_value(&ptr->result.value);
+ *value_length= memcached_result_length(result_ptr);
+ *flags= memcached_result_flags(result_ptr);
+ char *result_value= memcached_string_take_value(&result_ptr->value);
+ memcached_result_free(result_ptr);
+
+ return result_value;
}
}
+
+ memcached_result_free(result_ptr);
}
assert_msg(ptr->query_id == query_id +1, "Programmer error, the query_id was not incremented.");
@@ -310,7 +316,7 @@
}
hosts_connected++;
- if ((memcached_io_writev(instance, vector, 4, false)) == -1)
+ if ((memcached_io_writev(instance, vector, 4, false)) == false)
{
failures_occured_in_sending= true;
continue;
@@ -321,7 +327,7 @@
}
else
{
- if ((memcached_io_writev(instance, (vector + 1), 3, false)) == -1)
+ if ((memcached_io_writev(instance, (vector + 1), 3, false)) == false)
{
memcached_server_response_reset(instance);
failures_occured_in_sending= true;
@@ -368,13 +374,15 @@
LIBMEMCACHED_MEMCACHED_MGET_END();
- if (failures_occured_in_sending && success_happened)
+ if (failures_occured_in_sending and success_happened)
{
return MEMCACHED_SOME_ERRORS;
}
if (success_happened)
+ {
return MEMCACHED_SUCCESS;
+ }
return MEMCACHED_FAILURE; // Complete failure occurred
}
@@ -518,7 +526,7 @@
{ keys[x], key_length[x] }
};
- if (memcached_io_writev(instance, vector, 3, flush) == -1)
+ if (memcached_io_writev(instance, vector, 3, flush) == false)
{
memcached_server_response_reset(instance);
rc= MEMCACHED_SOME_ERRORS;
@@ -528,7 +536,7 @@
/* We just want one pending response per server */
memcached_server_response_reset(instance);
memcached_server_response_increment(instance);
- if ((x > 0 && x == ptr->io_key_prefetch) && memcached_flush_buffers(ptr) != MEMCACHED_SUCCESS)
+ if ((x > 0 and x == ptr->io_key_prefetch) and memcached_flush_buffers(ptr) != MEMCACHED_SUCCESS)
{
rc= MEMCACHED_SOME_ERRORS;
}
@@ -584,7 +592,9 @@
uint64_t randomize_read= memcached_behavior_get(ptr, MEMCACHED_BEHAVIOR_RANDOMIZE_REPLICA_READ);
if (randomize_read)
+ {
start= (uint32_t)random() % (uint32_t)(ptr->number_of_replicas + 1);
+ }
/* Loop for each replica */
for (uint32_t replica= 0; replica <= ptr->number_of_replicas; ++replica)
@@ -599,8 +609,10 @@
uint32_t server= hash[x] + replica;
/* In case of randomized reads */
- if (randomize_read && ((server + start) <= (hash[x] + ptr->number_of_replicas)))
- server += start;
+ if (randomize_read and ((server + start) <= (hash[x] + ptr->number_of_replicas)))
+ {
+ server+= start;
+ }
while (server >= memcached_server_count(ptr))
{
@@ -651,7 +663,7 @@
{ keys[x], key_length[x] }
};
- if (memcached_io_writev(instance, vector, 3, true) == -1)
+ if (memcached_io_writev(instance, vector, 3, true) == false)
{
memcached_io_reset(instance);
dead_servers[server]= true;
@@ -689,7 +701,7 @@
uint32_t* hash= libmemcached_xvalloc(ptr, number_of_keys, uint32_t);
bool* dead_servers= libmemcached_xcalloc(ptr, memcached_server_count(ptr), bool);
- if (hash == NULL || dead_servers == NULL)
+ if (hash == NULL or dead_servers == NULL)
{
libmemcached_free(ptr, hash);
libmemcached_free(ptr, dead_servers);
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/libmemcached/initialize_query.cc
^
|
@@ -59,6 +59,7 @@
}
memcached_error_free(*self);
+ memcached_result_reset(&self->result);
return MEMCACHED_SUCCESS;
}
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/libmemcached/io.cc
^
|
@@ -67,14 +67,17 @@
{
do {
/* Just try a single read to grab what's available */
- ssize_t nr= recv(ptr->fd,
- ptr->read_ptr + ptr->read_data_length,
- MEMCACHED_MAX_BUFFER - ptr->read_data_length,
- MSG_DONTWAIT);
-
- switch (nr)
+ ssize_t nr;
+ if ((nr= recv(ptr->fd,
+ ptr->read_ptr + ptr->read_data_length,
+ MEMCACHED_MAX_BUFFER - ptr->read_data_length,
+ MSG_DONTWAIT)) <= 0)
{
- case SOCKET_ERROR:
+ if (nr == 0)
+ {
+ memcached_set_error(*ptr, MEMCACHED_CONNECTION_FAILURE, MEMCACHED_AT);
+ }
+ else
{
switch (get_socket_errno())
{
@@ -94,24 +97,19 @@
memcached_set_errno(*ptr, get_socket_errno(), MEMCACHED_AT);
}
}
- break;
- case 0: // Shutdown on the socket has occurred
- {
- memcached_set_error(*ptr, MEMCACHED_CONNECTION_FAILURE, MEMCACHED_AT);
- }
break;
+ }
+ else // We read data, append to our read buffer
+ {
+ ptr->read_data_length+= size_t(nr);
+ ptr->read_buffer_length+= size_t(nr);
- default:
- {
- ptr->read_data_length+= size_t(nr);
- ptr->read_buffer_length+= size_t(nr);
- return true;
- }
- break;
+ return true;
}
- } while (0);
+ } while (false);
}
+
return false;
}
@@ -180,16 +178,16 @@
*/
if (read_or_write == MEM_WRITE)
{
- if (memcached_fatal(memcached_purge(ptr)))
+ if (memcached_purge(ptr) == false)
{
return MEMCACHED_FAILURE;
}
}
struct pollfd fds;
- memset(&fds, 0, sizeof(pollfd));
fds.fd= ptr->fd;
fds.events= POLLIN;
+ fds.revents= 0;
if (read_or_write == MEM_WRITE) /* write */
{
@@ -278,9 +276,8 @@
*/
{
WATCHPOINT_ASSERT(ptr->fd != INVALID_SOCKET);
- memcached_return_t rc= memcached_purge(ptr);
- if (rc != MEMCACHED_SUCCESS and rc != MEMCACHED_STORED)
+ if (memcached_purge(ptr) == false)
{
return false;
}
@@ -534,9 +531,9 @@
/* fall through */
case ENOTCONN: // Programmer Error
- WATCHPOINT_ASSERT(0);
+ assert(0);
case ENOTSOCK:
- WATCHPOINT_ASSERT(0);
+ assert(0);
case EBADF:
assert_msg(ptr->fd != INVALID_SOCKET, "Invalid socket state");
case EINVAL:
@@ -551,15 +548,17 @@
return MEMCACHED_CONNECTION_FAILURE;
}
-static ssize_t _io_write(memcached_server_write_instance_st ptr,
- const void *buffer, size_t length, bool with_flush)
+static bool _io_write(memcached_server_write_instance_st ptr,
+ const void *buffer, size_t length, bool with_flush,
+ size_t& written)
{
- WATCHPOINT_ASSERT(ptr->fd != INVALID_SOCKET);
+ assert(ptr->fd != INVALID_SOCKET);
assert(memcached_is_udp(ptr->root) == false);
- size_t original_length= length;
const char *buffer_ptr= static_cast<const char *>(buffer);
+ const size_t original_length= length;
+
while (length)
{
char *write_ptr;
@@ -580,7 +579,8 @@
memcached_return_t rc;
if (io_flush(ptr, with_flush, rc) == false)
{
- return -1;
+ written= original_length -length;
+ return false;
}
}
}
@@ -591,41 +591,53 @@
WATCHPOINT_ASSERT(ptr->fd != INVALID_SOCKET);
if (io_flush(ptr, with_flush, rc) == false)
{
- return -1;
+ written= original_length -length;
+ return false;
}
}
- return ssize_t(original_length);
+ written= original_length -length;
+
+ return true;
}
bool memcached_io_write(memcached_server_write_instance_st ptr)
{
- return (_io_write(ptr, NULL, 0, true) >= 0);
+ size_t written;
+ return _io_write(ptr, NULL, 0, true, written);
}
ssize_t memcached_io_write(memcached_server_write_instance_st ptr,
const void *buffer, const size_t length, const bool with_flush)
{
- return _io_write(ptr, buffer, length, with_flush);
+ size_t written;
+
+ if (_io_write(ptr, buffer, length, with_flush, written) == false)
+ {
+ return -1;
+ }
+
+ return ssize_t(written);
}
-ssize_t memcached_io_writev(memcached_server_write_instance_st ptr,
+bool memcached_io_writev(memcached_server_write_instance_st ptr,
libmemcached_io_vector_st vector[],
const size_t number_of, const bool with_flush)
{
+ ssize_t complete_total= 0;
ssize_t total= 0;
for (size_t x= 0; x < number_of; x++, vector++)
{
- ssize_t returnable;
-
+ complete_total+= vector->length;
if (vector->length)
{
- if ((returnable= _io_write(ptr, vector->buffer, vector->length, false)) == -1)
+ size_t written;
+ if ((_io_write(ptr, vector->buffer, vector->length, false, written)) == false)
{
- return -1;
+ return false;
}
- total+= returnable;
+ total+= written;
}
}
@@ -633,11 +645,11 @@
{
if (memcached_io_write(ptr) == false)
{
- return -1;
+ return false;
}
}
- return total;
+ return (complete_total == total);
}
@@ -811,7 +823,7 @@
}
/* Now let's look in the buffer and copy as we go! */
- while (ptr->read_buffer_length && total_nr < size && !line_complete)
+ while (ptr->read_buffer_length and total_nr < size and line_complete == false)
{
*buffer_ptr = *ptr->read_ptr;
if (*buffer_ptr == '\n')
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/libmemcached/io.hpp
^
|
@@ -43,9 +43,9 @@
ssize_t memcached_io_write(memcached_server_write_instance_st ptr,
const void *buffer, size_t length, bool with_flush);
-ssize_t memcached_io_writev(memcached_server_write_instance_st ptr,
- libmemcached_io_vector_st vector[],
- const size_t number_of, const bool with_flush);
+bool memcached_io_writev(memcached_server_write_instance_st ptr,
+ libmemcached_io_vector_st vector[],
+ const size_t number_of, const bool with_flush);
memcached_return_t memcached_io_wait_for_write(memcached_server_write_instance_st ptr);
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/libmemcached/is.h
^
|
@@ -54,7 +54,6 @@
#define memcached_has_replicas(__object) ((__object)->root->number_of_replicas)
-#define memcached_set_purging(__object, __value) ((__object)->state.is_purging= (__value))
#define memcached_set_processing_input(__object, __value) ((__object)->state.is_processing_input= (__value))
#define memcached_set_initialized(__object, __value) ((__object)->options.is_initialized(= (__value))
#define memcached_set_allocated(__object, __value) ((__object)->options.is_allocated= (__value))
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/libmemcached/memcached.cc
^
|
@@ -184,11 +184,6 @@
ptr->options.is_allocated= true;
}
-#if 0
- memcached_set_purging(ptr, false);
- memcached_set_processing_input(ptr, false);
-#endif
-
if (_memcached_init(ptr) == false)
{
memcached_free(ptr);
@@ -208,30 +203,49 @@
memcached_st *memcached(const char *string, size_t length)
{
- memcached_st *self= memcached_create(NULL);
- if (self == NULL)
+ if (length == 0 and string)
+ {
+ return NULL;
+ }
+
+ if (length and string == NULL)
{
return NULL;
}
if (length == 0)
{
- return self;
+ if (bool(getenv("LIBMEMCACHED")))
+ {
+ string= getenv("LIBMEMCACHED");
+ length= string ? strlen(string) : 0;
+ }
+ }
+
+ memcached_st *memc= memcached_create(NULL);
+ if (memc == NULL)
+ {
+ return NULL;
+ }
+
+ if (length == 0 or string == NULL)
+ {
+ return memc;
}
- memcached_return_t rc= memcached_parse_configuration(self, string, length);
- if (memcached_success(rc) and memcached_parse_filename(self))
+ memcached_return_t rc= memcached_parse_configuration(memc, string, length);
+ if (memcached_success(rc) and memcached_parse_filename(memc))
{
- rc= memcached_parse_configure_file(*self, memcached_parse_filename(self), memcached_parse_filename_length(self));
+ rc= memcached_parse_configure_file(*memc, memcached_parse_filename(memc), memcached_parse_filename_length(memc));
}
if (memcached_failed(rc))
{
- memcached_free(self);
+ memcached_free(memc);
return NULL;
}
- return self;
+ return memc;
}
memcached_return_t memcached_reset(memcached_st *ptr)
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/libmemcached/purge.cc
^
|
@@ -39,10 +39,48 @@
#include <libmemcached/common.h>
+#define memcached_set_purging(__object, __value) ((__object)->state.is_purging= (__value))
-memcached_return_t memcached_purge(memcached_server_write_instance_st ptr)
+class Purge
+{
+public:
+ Purge(memcached_st* arg) :
+ _memc(arg)
+ {
+ memcached_set_purging(_memc, true);
+ }
+
+ ~Purge()
+ {
+ memcached_set_purging(_memc, false);
+ }
+
+private:
+ memcached_st* _memc;
+};
+
+class PollTimeout
+{
+public:
+ PollTimeout(memcached_st* arg) :
+ _timeout(arg->poll_timeout),
+ _origin(arg->poll_timeout)
+ {
+ _origin = 2000;
+ }
+
+ ~PollTimeout()
+ {
+ _origin= _timeout;
+ }
+
+private:
+ int32_t _timeout;
+ int32_t& _origin;
+};
+
+bool memcached_purge(memcached_server_write_instance_st ptr)
{
- memcached_return_t ret= MEMCACHED_SUCCESS;
memcached_st *root= (memcached_st *)ptr->root;
if (memcached_is_purging(ptr->root) || /* already purging */
@@ -51,14 +89,14 @@
(ptr->io_bytes_sent >= ptr->root->io_bytes_watermark &&
memcached_server_response_count(ptr) < 2))
{
- return MEMCACHED_SUCCESS;
+ return true;
}
/*
memcached_io_write and memcached_response may call memcached_purge
so we need to be able stop any recursion..
*/
- memcached_set_purging(root, true);
+ Purge set_purge(root);
WATCHPOINT_ASSERT(ptr->fd != INVALID_SOCKET);
/*
@@ -67,28 +105,26 @@
*/
if (memcached_io_write(ptr) == false)
{
- memcached_set_purging(root, true);
-
- return memcached_set_error(*ptr, MEMCACHED_WRITE_FAILURE, MEMCACHED_AT);
+ memcached_set_error(*ptr, MEMCACHED_WRITE_FAILURE, MEMCACHED_AT);
+ return false;
}
WATCHPOINT_ASSERT(ptr->fd != INVALID_SOCKET);
+ bool is_successful= true;
uint32_t no_msg= memcached_server_response_count(ptr) - 1;
if (no_msg > 0)
{
memcached_result_st result;
- memcached_result_st *result_ptr;
/*
* We need to increase the timeout, because we might be waiting for
* data to be sent from the server (the commands was in the output buffer
* and just flushed
*/
- const int32_t timeo= ptr->root->poll_timeout;
- root->poll_timeout= 2000;
+ PollTimeout poll_timeout(ptr->root);
- result_ptr= memcached_result_create(root, &result);
- WATCHPOINT_ASSERT(result_ptr);
+ memcached_result_st* result_ptr= memcached_result_create(root, &result);
+ assert(result_ptr);
for (uint32_t x= 0; x < no_msg; x++)
{
@@ -103,10 +139,7 @@
{
WATCHPOINT_ERROR(rc);
memcached_io_reset(ptr);
- ret= rc;
-#if 0
- ret= memcached_set_error(*ptr, rc, MEMCACHED_AT);
-#endif
+ is_successful= false;
}
if (ptr->root->callbacks != NULL)
@@ -126,9 +159,7 @@
}
memcached_result_free(result_ptr);
- root->poll_timeout= timeo;
}
- memcached_set_purging(root, false);
- return ret;
+ return is_successful;
}
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/libmemcached/sasl.cc
^
|
@@ -240,7 +240,7 @@
{ data, len }
};
- if (memcached_io_writev(server, vector, 3, true) == -1)
+ if (memcached_io_writev(server, vector, 3, true) == false)
{
rc= MEMCACHED_WRITE_FAILURE;
break;
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/libtest/cmdline.cc
^
|
@@ -183,9 +183,9 @@
posix_spawn_file_actions_t file_actions;
posix_spawn_file_actions_init(&file_actions);
- stdin_fd.dup_for_spawn(Application::Pipe::READ, file_actions);
- stdout_fd.dup_for_spawn(Application::Pipe::WRITE, file_actions);
- stderr_fd.dup_for_spawn(Application::Pipe::WRITE, file_actions);
+ stdin_fd.dup_for_spawn(file_actions);
+ stdout_fd.dup_for_spawn(file_actions);
+ stderr_fd.dup_for_spawn(file_actions);
posix_spawnattr_t spawnattr;
posix_spawnattr_init(&spawnattr);
@@ -593,13 +593,20 @@
Application::Pipe::~Pipe()
{
- close(READ);
- close(WRITE);
+ if (_pipe_fd[0] != -1)
+ {
+ ::close(_pipe_fd[0]);
+ }
+
+ if (_pipe_fd[1] != -1)
+ {
+ ::close(_pipe_fd[1]);
+ }
}
-void Application::Pipe::dup_for_spawn(const close_t& arg, posix_spawn_file_actions_t& file_actions)
+void Application::Pipe::dup_for_spawn(posix_spawn_file_actions_t& file_actions)
{
- int type= int(arg);
+ int type= STDIN_FILENO == _std_fd ? 0 : 1;
int ret;
if ((ret= posix_spawn_file_actions_adddup2(&file_actions, _pipe_fd[type], _std_fd )) < 0)
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/libtest/cmdline.h
^
|
@@ -38,6 +38,10 @@
#include <spawn.h>
+// http://www.gnu.org/software/automake/manual/automake.html#Using-the-TAP-test-protocol
+#define EXIT_SKIP 77
+#define EXIT_FATAL 77
+
namespace libtest {
class Application {
@@ -66,8 +70,7 @@
void reset();
void close(const close_t& arg);
- void dup_for_spawn(const close_t& arg,
- posix_spawn_file_actions_t& file_actions);
+ void dup_for_spawn(posix_spawn_file_actions_t& file_actions);
void nonblock();
void cloexec();
|
[-]
[+]
|
Added |
libmemcached-1.0.8.tar.bz2/libtest/collection.cc
^
|
@@ -0,0 +1,176 @@
+/* vim:expandtab:shiftwidth=2:tabstop=2:smarttab:
+ *
+ * Data Differential YATL (i.e. libtest) library
+ *
+ * Copyright (C) 2012 Data Differential, http://datadifferential.com/
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ *
+ * * The names of its contributors may not be used to endorse or
+ * promote products derived from this software without specific prior
+ * written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ */
+
+#include <config.h>
+
+#include <libtest/common.h>
+
+static test_return_t runner_code(Framework* frame,
+ test_st* run,
+ libtest::Timer& _timer)
+{ // Runner Code
+
+ assert(frame->runner());
+ assert(run->test_fn);
+
+ test_return_t return_code;
+ try
+ {
+ _timer.reset();
+ return_code= frame->runner()->run(run->test_fn, frame->creators_ptr());
+ }
+ // Special case where check for the testing of the exception
+ // system.
+ catch (libtest::fatal &e)
+ {
+ if (libtest::fatal::is_disabled())
+ {
+ libtest::fatal::increment_disabled_counter();
+ return_code= TEST_SUCCESS;
+ }
+ else
+ {
+ throw;
+ }
+ }
+
+ _timer.sample();
+
+ return return_code;
+}
+
+namespace libtest {
+
+Collection::Collection(Framework* frame_arg,
+ collection_st* arg) :
+ _name(arg->name),
+ _pre(arg->pre),
+ _post(arg->post),
+ _tests(arg->tests),
+ _frame(frame_arg),
+ _success(0),
+ _skipped(0),
+ _failed(0),
+ _total(0)
+{
+ fatal_assert(arg);
+}
+
+test_return_t Collection::exec()
+{
+ Out << "Collection: " << _name;
+
+ if (test_success(_frame->runner()->pre(_pre, _frame->creators_ptr())))
+ {
+ for (test_st *run= _tests; run->name; run++)
+ {
+ if (_frame->match(run->name))
+ {
+ continue;
+ }
+ _total++;
+
+ test_return_t return_code;
+ try
+ {
+ if (run->requires_flush)
+ {
+ if (test_failed(_frame->runner()->flush(_frame->creators_ptr())))
+ {
+ Error << "frame->runner()->flush(creators_ptr)";
+ _skipped++;
+ continue;
+ }
+ }
+
+ return_code= runner_code(_frame, run, _timer);
+ }
+ catch (libtest::fatal &e)
+ {
+ Error << "Fatal exception was thrown: " << e.what();
+ _failed++;
+ throw;
+ }
+
+ switch (return_code)
+ {
+ case TEST_SUCCESS:
+ Out << "\tTesting "
+ << run->name
+ << "\t\t\t\t\t"
+ << _timer
+ << " [ " << test_strerror(return_code) << " ]";
+ _success++;
+ break;
+
+ case TEST_FAILURE:
+ _failed++;
+ Out << "\tTesting " << run->name << "\t\t\t\t\t" << "[ " << test_strerror(return_code) << " ]";
+ break;
+
+ case TEST_SKIPPED:
+ _skipped++;
+ Out << "\tTesting " << run->name << "\t\t\t\t\t" << "[ " << test_strerror(return_code) << " ]";
+ break;
+
+ default:
+ fatal_message("invalid return code");
+ }
+#if 0
+ @TODO add code here to allow for a collection to define a method to reset to allow tests to continue.
+#endif
+ }
+
+ (void) _frame->runner()->post(_post, _frame->creators_ptr());
+ }
+
+ if (_failed == 0 and _skipped == 0 and _success)
+ {
+ return TEST_SUCCESS;
+ }
+
+ if (_failed)
+ {
+ return TEST_FAILURE;
+ }
+
+ fatal_assert(_skipped or _success == 0);
+
+ return TEST_SKIPPED;
+}
+
+} // namespace libtest
+
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/libtest/collection.h
^
|
@@ -36,6 +36,10 @@
#pragma once
+#include <libtest/timer.hpp>
+
+class Framework;
+
/**
A structure which describes a collection of test cases.
*/
@@ -46,4 +50,50 @@
struct test_st *tests;
};
+namespace libtest {
+
+class Collection {
+public:
+ Collection(Framework*, collection_st*);
+
+ test_return_t exec();
+
+ const char* name()
+ {
+ return _name;
+ }
+
+ uint32_t success()
+ {
+ return _success;
+ }
+
+ uint32_t skipped()
+ {
+ return _skipped;
+ }
+
+ uint32_t failed()
+ {
+ return _failed;
+ }
+
+ uint32_t total()
+ {
+ return _total;
+ }
+
+private:
+ const char *_name;
+ test_callback_fn *_pre;
+ test_callback_fn *_post;
+ struct test_st *_tests;
+ Framework* _frame;
+ uint32_t _success;
+ uint32_t _skipped;
+ uint32_t _failed;
+ uint32_t _total;
+ libtest::Timer _timer;
+};
+} // namespace libtest
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/libtest/common.h
^
|
@@ -76,6 +76,5 @@
#include <libtest/libtool.hpp>
#include <libtest/killpid.h>
-#include <libtest/stats.h>
#include <libtest/signal.h>
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/libtest/comparison.hpp
^
|
@@ -86,6 +86,29 @@
return true;
}
+template <class T1_comparable, class T2_comparable>
+bool _compare_strcmp(const char *file, int line, const char *func, const T1_comparable& __expected, const T2_comparable& __actual)
+{
+ if (__expected == NULL)
+ {
+ fatal_message("Expected value was NULL, programmer error");
+ }
+
+ if (__actual == NULL)
+ {
+ libtest::stream::make_cerr(file, line, func) << "Expected " << __expected << " but got NULL";
+ return false;
+ }
+
+ if (strncmp(__expected, __actual, strlen(__expected)))
+ {
+ libtest::stream::make_cerr(file, line, func) << "Expected " << __expected << " passed \"" << __actual << "\"";
+ return false;
+ }
+
+ return true;
+}
+
template <class T_comparable>
bool _compare_zero(const char *file, int line, const char *func, T_comparable __actual)
{
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/libtest/core.cc
^
|
@@ -45,7 +45,7 @@
#ifdef TARGET_OS_OSX
return;
#endif
- if (getenv("LIBMEMCACHED_NO_COREDUMP") == NULL)
+ if (getenv("YATL_COREDUMP"))
{
pid_t pid= fork();
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/libtest/fatal.cc
^
|
@@ -40,16 +40,21 @@
namespace libtest {
-fatal::fatal(const char *file, int line, const char *func, const char *format, ...) :
- std::runtime_error(func)
+fatal::fatal(const char *file_arg, int line_arg, const char *func_arg, const char *format, ...) :
+ std::runtime_error(func_arg),
+ _line(line_arg),
+ _file(file_arg),
+ _func(func_arg)
{
va_list args;
va_start(args, format);
char last_error[BUFSIZ];
- (void)vsnprintf(last_error, sizeof(last_error), format, args);
+ int last_error_length= vsnprintf(last_error, sizeof(last_error), format, args);
va_end(args);
- snprintf(_error_message, sizeof(_error_message), "%s:%d FATAL:%s (%s)", file, int(line), last_error, func);
+ strncpy(_mesg, last_error, sizeof(_mesg));
+
+ snprintf(_error_message, sizeof(_error_message), "%s:%d FATAL:%s (%s)", _file, int(_line), last_error, _func);
}
static bool _disabled= false;
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/libtest/fatal.hpp
^
|
@@ -56,6 +56,11 @@
return _error_message;
}
+ const char* mesg() const throw()
+ {
+ return _error_message;
+ }
+
// The following are just for unittesting the exception class
static bool is_disabled();
static void disable();
@@ -63,8 +68,27 @@
static uint32_t disabled_counter();
static void increment_disabled_counter();
+ int line()
+ {
+ return _line;
+ }
+
+ const char* file()
+ {
+ return _file;
+ }
+
+ const char* func()
+ {
+ return _func;
+ }
+
private:
char _error_message[BUFSIZ];
+ char _mesg[BUFSIZ];
+ int _line;
+ const char* _file;
+ const char* _func;
};
class disconnected : std::runtime_error
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/libtest/framework.cc
^
|
@@ -35,19 +35,40 @@
*/
#include <config.h>
+
#include <libtest/common.h>
+#include <libtest/collection.h>
+#include <libtest/signal.h>
+
+#include <fnmatch.h>
#include <iostream>
using namespace libtest;
-Framework::Framework() :
- collections(NULL),
+Framework::Framework(libtest::SignalThread& signal,
+ const std::string& only_run_arg,
+ const std::string& wildcard_arg) :
+ _collections(NULL),
+ _total(0),
+ _success(0),
+ _skipped(0),
+ _failed(0),
_create(NULL),
_destroy(NULL),
+ _on_error(NULL),
_runner(NULL),
_socket(false),
- _creators_ptr(NULL)
+ _creators_ptr(NULL),
+ _signal(signal),
+ _only_run(only_run_arg),
+ _wildcard(wildcard_arg)
{
+ get_world(this);
+
+ for (collection_st *next= _collections; next and next->name; next++)
+ {
+ _collection.push_back(new Collection(this, next));
+ }
}
Framework::~Framework()
@@ -60,6 +81,121 @@
_servers.shutdown();
delete _runner;
+
+ for (std::vector<Collection*>::iterator iter= _collection.begin();
+ iter != _collection.end();
+ iter++)
+ {
+ delete *iter;
+ }
+}
+
+bool Framework::match(const char* arg)
+{
+ if (_wildcard.empty() == false and fnmatch(_wildcard.c_str(), arg, 0))
+ {
+ return true;
+ }
+
+ return false;
+}
+
+void Framework::exec()
+{
+ for (std::vector<Collection*>::iterator iter= _collection.begin();
+ iter != _collection.end() and (_signal.is_shutdown() == false);
+ iter++)
+ {
+ if (_only_run.empty() == false and
+ fnmatch(_only_run.c_str(), (*iter)->name(), 0))
+ {
+ continue;
+ }
+
+ _total++;
+
+ try {
+ switch ((*iter)->exec())
+ {
+ case TEST_FAILURE:
+ _failed++;
+ break;
+
+ case TEST_SKIPPED:
+ _skipped++;
+ break;
+
+ // exec() can return SUCCESS, but that doesn't mean that some tests did
+ // not fail or get skipped.
+ case TEST_SUCCESS:
+ _success++;
+ break;
+ }
+ }
+ catch (libtest::fatal& e)
+ {
+ stream::cerr(e.file(), e.line(), e.func()) << e.mesg();
+ }
+ catch (libtest::disconnected& e)
+ {
+ Error << "Unhandled disconnection occurred:" << e.what();
+ throw;
+ }
+
+ Outn();
+ }
+}
+
+uint32_t Framework::sum_total()
+{
+ uint32_t count= 0;
+ for (std::vector<Collection*>::iterator iter= _collection.begin();
+ iter != _collection.end();
+ iter++)
+ {
+ count+= (*iter)->total();
+ }
+
+ return count;
+}
+
+uint32_t Framework::sum_success()
+{
+ uint32_t count= 0;
+ for (std::vector<Collection*>::iterator iter= _collection.begin();
+ iter != _collection.end();
+ iter++)
+ {
+ count+= (*iter)->success();
+ }
+
+ return count;
+}
+
+uint32_t Framework::sum_skipped()
+{
+ uint32_t count= 0;
+ for (std::vector<Collection*>::iterator iter= _collection.begin();
+ iter != _collection.end();
+ iter++)
+ {
+ count+= (*iter)->skipped();
+ }
+
+ return count;
+}
+
+uint32_t Framework::sum_failed()
+{
+ uint32_t count= 0;
+ for (std::vector<Collection*>::iterator iter= _collection.begin();
+ iter != _collection.end();
+ iter++)
+ {
+ count+= (*iter)->failed();
+ }
+
+ return count;
}
libtest::Runner *Framework::runner()
@@ -73,13 +209,13 @@
return _runner;
}
-void* Framework::create(test_return_t& arg)
+test_return_t Framework::create()
{
- arg= TEST_SUCCESS;
+ test_return_t rc= TEST_SUCCESS;
if (_create)
{
- return _creators_ptr= _create(_servers, arg);
+ _creators_ptr= _create(_servers, rc);
}
- return NULL;
+ return rc;
}
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/libtest/framework.h
^
|
@@ -36,27 +36,36 @@
#pragma once
+#include <libtest/signal.h>
+
/**
Framework is the structure which is passed to the test implementation to be filled.
This must be implemented in order for the test framework to load the tests. We call
get_world() in order to fill this structure.
*/
+#include <vector>
+
class Framework {
public:
- collection_st *collections;
-
- /* These methods are called outside of any collection call. */
- test_callback_create_fn *_create;
- test_callback_destroy_fn *_destroy;
public:
- void* create(test_return_t& arg);
+ test_return_t create();
- /**
- If an error occurs during the test, this is called.
- */
- test_callback_error_fn *_on_error;
+ void create(test_callback_create_fn* arg)
+ {
+ _create= arg;
+ }
+
+ void destroy(test_callback_destroy_fn* arg)
+ {
+ _destroy= arg;
+ }
+
+ void collections(collection_st* arg)
+ {
+ _collections= arg;
+ }
void set_on_error(test_callback_error_fn *arg)
{
@@ -79,12 +88,6 @@
{
return _servers;
}
-
- /**
- Runner represents the callers for the tests. If not implemented we will use
- a set of default implementations.
- */
- libtest::Runner *_runner;
void set_runner(libtest::Runner *arg)
{
@@ -93,17 +96,91 @@
libtest::Runner *runner();
+ void exec();
+
+ libtest::Collection& collection();
- Framework();
+ Framework(libtest::SignalThread&, const std::string&);
virtual ~Framework();
- Framework(const Framework&);
+ Framework(libtest::SignalThread&,
+ const std::string&,
+ const std::string&);
+
+ bool match(const char* arg);
+
+ void *creators_ptr()
+ {
+ return _creators_ptr;
+ }
+
+ libtest::SignalThread& signal()
+ {
+ return _signal;
+ }
+
+ uint32_t sum_total();
+ uint32_t sum_success();
+ uint32_t sum_skipped();
+ uint32_t sum_failed();
+
+ size_t size()
+ {
+ return _collection.size();
+ }
+
+ uint32_t total() const
+ {
+ return _total;
+ }
+
+ uint32_t success() const
+ {
+ return _success;
+ }
+
+ uint32_t skipped() const
+ {
+ return _skipped;
+ }
+
+ uint32_t failed() const
+ {
+ return _failed;
+ }
private:
Framework& operator=(const Framework&);
+
+ collection_st *_collections;
+
+ uint32_t _total;
+ uint32_t _success;
+ uint32_t _skipped;
+ uint32_t _failed;
+
+ /* These methods are called outside of any collection call. */
+ test_callback_create_fn *_create;
+ test_callback_destroy_fn *_destroy;
+
+ /**
+ If an error occurs during the test, this is called.
+ */
+ test_callback_error_fn *_on_error;
+
+ /**
+ Runner represents the callers for the tests. If not implemented we will use
+ a set of default implementations.
+ */
+ libtest::Runner *_runner;
+
libtest::server_startup_st _servers;
bool _socket;
void *_creators_ptr;
unsigned long int _servers_to_run;
+ std::vector<libtest::Collection*> _collection;
+ libtest::SignalThread& _signal;
+ std::string _only_run;
+ std::string _wildcard;
};
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/libtest/include.am
^
|
@@ -32,57 +32,56 @@
EXTRA_DIST+= libtest/run.gdb
-CLEANFILES+= \
- tmp_chroot/var/drizzle/* \
- tmp_chroot/var/log/* \
- tmp_chroot/var/run/* \
- tmp_chroot/var/tmp/*
+CLEANFILES+= tmp_chroot/etc/*
+CLEANFILES+= tmp_chroot/var/drizzle/*
+CLEANFILES+= tmp_chroot/var/log/*
+CLEANFILES+= tmp_chroot/var/run/*
+CLEANFILES+= tmp_chroot/var/tmp/*
.PHONY: distclean-libtest-check
distclean-libtest-check:
-rm -rf tmp_chroot
-noinst_HEADERS+= \
- libtest/binaries.h \
- libtest/cpu.hpp \
- libtest/blobslap_worker.h \
- libtest/callbacks.h \
- libtest/cmdline.h \
- libtest/collection.h \
- libtest/common.h \
- libtest/comparison.hpp \
- libtest/core.h \
- libtest/dream.h \
- libtest/error.h \
- libtest/failed.h \
- libtest/fatal.hpp \
- libtest/framework.h \
- libtest/gearmand.h \
- libtest/drizzled.h \
- libtest/get.h \
- libtest/has.hpp \
- libtest/http.hpp \
- libtest/is_pid.hpp \
- libtest/is_local.hpp \
- libtest/killpid.h \
- libtest/libtool.hpp \
- libtest/memcached.h \
- libtest/port.h \
- libtest/runner.h \
- libtest/server.h \
- libtest/server_container.h \
- libtest/signal.h \
- libtest/socket.hpp \
- libtest/stats.h \
- libtest/stream.h \
- libtest/strerror.h \
- libtest/string.hpp \
- libtest/test.h \
- libtest/test.hpp \
- libtest/tmpfile.hpp \
- libtest/vchar.hpp \
- libtest/visibility.h \
- libtest/wait.h
+noinst_HEADERS+= libtest/timer.hpp
+noinst_HEADERS+=libtest/binaries.h
+noinst_HEADERS+=libtest/cpu.hpp
+noinst_HEADERS+=libtest/blobslap_worker.h
+noinst_HEADERS+=libtest/callbacks.h
+noinst_HEADERS+=libtest/cmdline.h
+noinst_HEADERS+=libtest/collection.h
+noinst_HEADERS+=libtest/common.h
+noinst_HEADERS+=libtest/comparison.hpp
+noinst_HEADERS+=libtest/core.h
+noinst_HEADERS+=libtest/dream.h
+noinst_HEADERS+=libtest/error.h
+noinst_HEADERS+=libtest/failed.h
+noinst_HEADERS+=libtest/fatal.hpp
+noinst_HEADERS+=libtest/framework.h
+noinst_HEADERS+=libtest/gearmand.h
+noinst_HEADERS+=libtest/drizzled.h
+noinst_HEADERS+=libtest/get.h
+noinst_HEADERS+=libtest/has.hpp
+noinst_HEADERS+=libtest/http.hpp
+noinst_HEADERS+=libtest/is_pid.hpp
+noinst_HEADERS+=libtest/is_local.hpp
+noinst_HEADERS+=libtest/killpid.h
+noinst_HEADERS+=libtest/libtool.hpp
+noinst_HEADERS+=libtest/memcached.h
+noinst_HEADERS+=libtest/port.h
+noinst_HEADERS+=libtest/runner.h
+noinst_HEADERS+=libtest/server.h
+noinst_HEADERS+=libtest/server_container.h
+noinst_HEADERS+=libtest/signal.h
+noinst_HEADERS+=libtest/socket.hpp
+noinst_HEADERS+=libtest/stream.h
+noinst_HEADERS+=libtest/strerror.h
+noinst_HEADERS+=libtest/string.hpp
+noinst_HEADERS+=libtest/test.h
+noinst_HEADERS+=libtest/test.hpp
+noinst_HEADERS+=libtest/tmpfile.hpp
+noinst_HEADERS+=libtest/vchar.hpp
+noinst_HEADERS+=libtest/visibility.h
+noinst_HEADERS+=libtest/wait.h
noinst_LTLIBRARIES+= libtest/libtest.la
@@ -94,6 +93,7 @@
libtest_libtest_la_SOURCES+= libtest/binaries.cc
libtest_libtest_la_SOURCES+= libtest/cmdline.cc
libtest_libtest_la_SOURCES+= libtest/comparison.cc
+libtest_libtest_la_SOURCES+= libtest/collection.cc
libtest_libtest_la_SOURCES+= libtest/core.cc
libtest_libtest_la_SOURCES+= libtest/cpu.cc
libtest_libtest_la_SOURCES+= libtest/dream.cc
@@ -113,6 +113,7 @@
libtest_libtest_la_SOURCES+= libtest/signal.cc
libtest_libtest_la_SOURCES+= libtest/socket.cc
libtest_libtest_la_SOURCES+= libtest/strerror.cc
+libtest_libtest_la_SOURCES+= libtest/timer.cc
libtest_libtest_la_SOURCES+= libtest/tmpfile.cc
libtest_libtest_la_SOURCES+= libtest/vchar.cc
@@ -188,9 +189,12 @@
libtest_tmp_dir: tmp_chroot/var/log tmp_chroot/var/tmp tmp_chroot/var/run tmp_chroot/var/drizzle
-tmp_chroot:
+tmp_chroot: tmp_chroot/etc
@$(mkdir_p) tmp_chroot
+tmp_chroot/etc:
+ @$(mkdir_p) tmp_chroot/etc
+
tmp_chroot/var: tmp_chroot
@$(mkdir_p) tmp_chroot/var
@@ -232,6 +236,9 @@
check_PROGRAMS+= libtest/skiptest
noinst_PROGRAMS+= libtest/skiptest
+test-skip: libtest/skiptest
+ @libtest/skiptest
+
libtest_wait_SOURCES=
libtest_wait_SOURCES+= libtest/wait.cc
libtest_wait_SOURCES+= libtest/dream.cc
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/libtest/main.cc
^
|
@@ -58,71 +58,23 @@
using namespace libtest;
-static void stats_print(Stats *stats)
+static void stats_print(Framework *frame)
{
- if (stats->collection_failed == 0 and stats->collection_success == 0)
+ if (frame->failed() == 0 and frame->success() == 0)
{
return;
}
- Out << "\tTotal Collections\t\t\t\t" << stats->collection_total;
- Out << "\tFailed Collections\t\t\t\t" << stats->collection_failed;
- Out << "\tSkipped Collections\t\t\t\t" << stats->collection_skipped;
- Out << "\tSucceeded Collections\t\t\t\t" << stats->collection_success;
Outn();
- Out << "Total\t\t\t\t" << stats->total;
- Out << "\tFailed\t\t\t" << stats->failed;
- Out << "\tSkipped\t\t\t" << stats->skipped;
- Out << "\tSucceeded\t\t" << stats->success;
-}
-
-static long int timedif(struct timeval a, struct timeval b)
-{
- long us, s;
-
- us = (long)(a.tv_usec - b.tv_usec);
- us /= 1000;
- s = (long)(a.tv_sec - b.tv_sec);
- s *= 1000;
- return s + us;
-}
-
-static test_return_t runner_code(Framework* frame,
- test_st* run,
- void* creators_ptr,
- long int& load_time)
-{ // Runner Code
-
- struct timeval start_time, end_time;
-
- gettimeofday(&start_time, NULL);
- assert(frame->runner());
- assert(run->test_fn);
-
- test_return_t return_code;
- try
- {
- return_code= frame->runner()->run(run->test_fn, creators_ptr);
- }
- // Special case where check for the testing of the exception
- // system.
- catch (libtest::fatal &e)
- {
- if (fatal::is_disabled())
- {
- fatal::increment_disabled_counter();
- return_code= TEST_SUCCESS;
- }
- else
- {
- throw;
- }
- }
-
- gettimeofday(&end_time, NULL);
- load_time= timedif(end_time, start_time);
-
- return return_code;
+ Out << "Collections\t\t\t\t\t" << frame->total();
+ Out << "\tFailed\t\t\t\t\t" << frame->failed();
+ Out << "\tSkipped\t\t\t\t\t" << frame->skipped();
+ Out << "\tSucceeded\t\t\t\t" << frame->success();
+ Outn();
+ Out << "Tests\t\t\t\t\t" << frame->sum_total();
+ Out << "\tFailed\t\t\t\t" << frame->sum_failed();
+ Out << "\tSkipped\t\t\t\t" << frame->sum_skipped();
+ Out << "\tSucceeded\t\t\t" << frame->sum_success();
}
#include <getopt.h>
@@ -134,6 +86,7 @@
unsigned long int opt_repeat= 1; // Run all tests once
bool opt_quiet= false;
std::string collection_to_run;
+ std::string wildcard;
// Options parsing
{
@@ -142,6 +95,7 @@
OPT_LIBYATL_MATCH_COLLECTION,
OPT_LIBYATL_MASSIVE,
OPT_LIBYATL_QUIET,
+ OPT_LIBYATL_MATCH_WILDCARD,
OPT_LIBYATL_REPEAT
};
@@ -151,6 +105,7 @@
{ "quiet", no_argument, NULL, OPT_LIBYATL_QUIET },
{ "repeat", no_argument, NULL, OPT_LIBYATL_REPEAT },
{ "collection", required_argument, NULL, OPT_LIBYATL_MATCH_COLLECTION },
+ { "wildcard", required_argument, NULL, OPT_LIBYATL_MATCH_WILDCARD },
{ "massive", no_argument, NULL, OPT_LIBYATL_MASSIVE },
{ 0, 0, 0, 0 }
};
@@ -181,6 +136,10 @@
collection_to_run= optarg;
break;
+ case OPT_LIBYATL_MATCH_WILDCARD:
+ wildcard= optarg;
+ break;
+
case OPT_LIBYATL_MASSIVE:
opt_massive= true;
break;
@@ -247,6 +206,24 @@
return EXIT_FAILURE;
}
+ if (getenv("YATL_COLLECTION_TO_RUN"))
+ {
+ if (strlen(getenv("YATL_COLLECTION_TO_RUN")))
+ {
+ collection_to_run= getenv("YATL_COLLECTION_TO_RUN");
+ }
+ }
+
+ if (collection_to_run.compare("none") == 0)
+ {
+ return EXIT_SUCCESS;
+ }
+
+ if (collection_to_run.empty() == false)
+ {
+ Out << "Only testing " << collection_to_run;
+ }
+
int exit_code;
try
@@ -254,8 +231,6 @@
do
{
exit_code= EXIT_SUCCESS;
- std::auto_ptr<Framework> frame(new Framework);
-
fatal_assert(sigignore(SIGPIPE) == 0);
libtest::SignalThread signal;
@@ -265,182 +240,26 @@
return EXIT_FAILURE;
}
- Stats stats;
-
- get_world(frame.get());
-
- test_return_t error;
- void *creators_ptr= frame->create(error);
-
- switch (error)
- {
- case TEST_SUCCESS:
- break;
-
- case TEST_SKIPPED:
- Out << "SKIP " << argv[0];
- return EXIT_SUCCESS;
-
- case TEST_FAILURE:
- return EXIT_FAILURE;
- }
-
- if (getenv("YATL_COLLECTION_TO_RUN"))
- {
- if (strlen(getenv("YATL_COLLECTION_TO_RUN")))
- {
- collection_to_run= getenv("YATL_COLLECTION_TO_RUN");
- }
- }
-
- if (collection_to_run.compare("none") == 0)
- {
- return EXIT_SUCCESS;
- }
-
- if (collection_to_run.empty() == false)
- {
- Out << "Only testing " << collection_to_run;
- }
-
- char *wildcard= NULL;
- if (argc == 3)
- {
- wildcard= argv[2];
- }
+ std::auto_ptr<Framework> frame(new Framework(signal, collection_to_run, wildcard));
- for (collection_st *next= frame->collections; next and next->name and (not signal.is_shutdown()); next++)
+ // Run create(), bail on error.
{
- if (collection_to_run.empty() == false and fnmatch(collection_to_run.c_str(), next->name, 0))
+ switch (frame->create())
{
- continue;
- }
-
- stats.collection_total++;
+ case TEST_SUCCESS:
+ break;
- bool failed= false;
- bool skipped= false;
- test_return_t collection_rc;
- if (test_success(collection_rc= frame->runner()->pre(next->pre, creators_ptr)))
- {
- Out << "Collection: " << next->name;
+ case TEST_SKIPPED:
+ Out << "SKIP " << argv[0];
+ return EXIT_SKIP;
- for (test_st *run= next->tests; run->name; run++)
- {
- long int load_time= 0;
-
- if (wildcard && fnmatch(wildcard, run->name, 0))
- {
- continue;
- }
-
- test_return_t return_code;
- try
- {
- if (run->requires_flush)
- {
- if (test_failed(frame->runner()->flush(creators_ptr)))
- {
- Error << "frame->runner()->flush(creators_ptr)";
- continue;
- }
- }
-
- return_code= runner_code(frame.get(), run, creators_ptr, load_time);
-
- if (return_code == TEST_SKIPPED)
- { }
- else if (return_code == TEST_FAILURE)
- {
-#if 0
- Error << " frame->runner()->run(failure)";
- signal.set_shutdown(SHUTDOWN_GRACEFUL);
-#endif
- }
-
- }
- catch (libtest::fatal &e)
- {
- Error << "Fatal exception was thrown: " << e.what();
- return_code= TEST_FAILURE;
- throw;
- }
- catch (std::exception &e)
- {
- Error << "Exception was thrown: " << e.what();
- return_code= TEST_FAILURE;
- throw;
- }
- catch (...)
- {
- Error << "Unknown exception occurred";
- return_code= TEST_FAILURE;
- throw;
- }
-
- stats.total++;
-
- switch (return_code)
- {
- case TEST_SUCCESS:
- Out << "\tTesting " << run->name << "\t\t\t\t\t" << load_time / 1000 << "." << load_time % 1000 << "[ " << test_strerror(return_code) << " ]";
- stats.success++;
- break;
-
- case TEST_FAILURE:
- stats.failed++;
- failed= true;
- Out << "\tTesting " << run->name << "\t\t\t\t\t" << "[ " << test_strerror(return_code) << " ]";
- break;
-
- case TEST_SKIPPED:
- stats.skipped++;
- skipped= true;
- Out << "\tTesting " << run->name << "\t\t\t\t\t" << "[ " << test_strerror(return_code) << " ]";
- break;
-
- default:
- fatal_message("invalid return code");
- }
-#if 0
- @TODO add code here to allow for a collection to define a method to reset to allow tests to continue.
-#endif
- }
-
- (void) frame->runner()->post(next->post, creators_ptr);
- }
- else if (collection_rc == TEST_FAILURE)
- {
- Out << next->name << " [ failed ]";
- failed= true;
-#if 0
- signal.set_shutdown(SHUTDOWN_GRACEFUL);
-#endif
- }
- else if (collection_rc == TEST_SKIPPED)
- {
- Out << next->name << " [ skipping ]";
- skipped= true;
+ case TEST_FAILURE:
+ return EXIT_FAILURE;
}
-
- if (failed == false and skipped == false)
- {
- stats.collection_success++;
- }
-
- if (failed)
- {
- stats.collection_failed++;
- }
-
- if (skipped)
- {
- stats.collection_skipped++;
- }
-
- Outn();
}
+ frame->exec();
+
if (signal.is_shutdown() == false)
{
signal.set_shutdown(SHUTDOWN_GRACEFUL);
@@ -452,21 +271,21 @@
Out << "Tests were aborted.";
exit_code= EXIT_FAILURE;
}
- else if (stats.collection_failed)
+ else if (frame->failed())
{
Out << "Some test failed.";
exit_code= EXIT_FAILURE;
}
- else if (stats.collection_skipped and stats.collection_failed and stats.collection_success)
+ else if (frame->skipped() and frame->failed() and frame->success())
{
Out << "Some tests were skipped.";
}
- else if (stats.collection_success and (stats.collection_failed == 0))
+ else if (frame->success() and (frame->failed() == 0))
{
Out << "All tests completed successfully.";
}
- stats_print(&stats);
+ stats_print(frame.get());
Outn(); // Generate a blank to break up the messages if make check/test has been run
} while (exit_code == EXIT_SUCCESS and --opt_repeat);
@@ -474,18 +293,22 @@
catch (libtest::fatal& e)
{
std::cerr << e.what() << std::endl;
+ exit_code= EXIT_FAILURE;
}
catch (libtest::disconnected& e)
{
std::cerr << "Unhandled disconnection occurred:" << e.what() << std::endl;
+ exit_code= EXIT_FAILURE;
}
catch (std::exception& e)
{
std::cerr << e.what() << std::endl;
+ exit_code= EXIT_FAILURE;
}
catch (...)
{
std::cerr << "Unknown exception halted execution." << std::endl;
+ exit_code= EXIT_FAILURE;
}
return exit_code;
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/libtest/port.cc
^
|
@@ -50,9 +50,11 @@
#include <sys/wait.h>
#include <unistd.h>
+#include <utility>
+#include <vector>
+
#include <signal.h>
-#include <libtest/stats.h>
#include <libtest/signal.h>
#ifndef __INTEL_COMPILER
@@ -62,13 +64,31 @@
using namespace libtest;
struct socket_st {
- std::vector<int> fd;
+ typedef std::vector< std::pair< int, in_port_t> > socket_port_t;
+ socket_port_t _pair;
+
+ void release(in_port_t _arg)
+ {
+ for(socket_port_t::iterator iter= _pair.begin();
+ iter != _pair.end();
+ iter++)
+ {
+ if ((*iter).second == _arg)
+ {
+ shutdown((*iter).first, SHUT_RDWR);
+ close((*iter).first);
+ }
+ }
+ }
~socket_st()
{
- for(std::vector<int>::iterator iter= fd.begin(); iter != fd.end(); iter++)
+ for(socket_port_t::iterator iter= _pair.begin();
+ iter != _pair.end();
+ iter++)
{
- close(*iter);
+ shutdown((*iter).first, SHUT_RDWR);
+ close((*iter).first);
}
}
};
@@ -89,6 +109,11 @@
return global_port;
}
+void release_port(in_port_t arg)
+{
+ all_socket_fd.release(arg);
+}
+
in_port_t get_free_port()
{
in_port_t ret_port= in_port_t(0);
@@ -120,7 +145,7 @@
}
}
- all_socket_fd.fd.push_back(sd);
+ all_socket_fd._pair.push_back(std::make_pair(sd, ret_port));
}
if (ret_port > 1024)
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/libtest/port.h
^
|
@@ -48,4 +48,7 @@
LIBTEST_API
in_port_t get_free_port();
+LIBTEST_API
+void release_port(in_port_t arg);
+
} // namespace libtest
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/libtest/server.cc
^
|
@@ -164,7 +164,9 @@
// If we find that we already have a pid then kill it.
if (has_pid() == true)
{
+#if 0
fatal_message("has_pid() failed, programer error");
+#endif
}
// This needs more work.
@@ -190,6 +192,7 @@
return false;
}
+ libtest::release_port(_port);
Application::error_t ret;
if (Application::SUCCESS != (ret= _app.run()))
{
@@ -262,28 +265,29 @@
if (kill_file(pid_file()) == false)
{
throw libtest::fatal(LIBYATL_DEFAULT_PARAM,
- "Failed to kill off server, waited: %u after startup occurred, when pinging failed: %s stderr:%s",
+ "Failed to kill off server, waited: %u after startup occurred, when pinging failed: %.*s stderr:%.*s",
this_wait,
- pid_file().c_str(),
- _app.stderr_c_str());
+ int(_running.size()), _running.c_str(),
+ int(_app.stderr_result_length()), _app.stderr_c_str());
}
throw libtest::fatal(LIBYATL_DEFAULT_PARAM,
- "Failed native ping(), pid: %d is alive: %s waited: %u server started, having pid_file. exec: %s stderr:%s",
+ "Failed native ping(), pid: %d is alive: %s waited: %u server started, having pid_file. exec: %.*s stderr:%.*s",
int(_app.pid()),
_app.check() ? "true" : "false",
- this_wait, _running.c_str(),
- _app.stderr_c_str());
+ this_wait,
+ int(_running.size()), _running.c_str(),
+ int(_app.stderr_result_length()), _app.stderr_c_str());
}
else
{
throw libtest::fatal(LIBYATL_DEFAULT_PARAM,
- "Failed native ping(), pid: %d is alive: %s waited: %u server started. exec: %s stderr:%s",
+ "Failed native ping(), pid: %d is alive: %s waited: %u server started. exec: %.*s stderr:%.*s",
int(_app.pid()),
_app.check() ? "true" : "false",
this_wait,
- _running.c_str(),
- _app.stderr_c_str());
+ int(_running.size()), _running.c_str(),
+ int(_app.stderr_result_length()), _app.stderr_c_str());
}
_running.clear();
return false;
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/libtest/server_container.cc
^
|
@@ -91,13 +91,14 @@
return tmp;
}
-bool server_startup_st::shutdown(uint32_t number_of_host)
+// host_to_shutdown => host number to shutdown in array
+bool server_startup_st::shutdown(uint32_t host_to_shutdown)
{
- if (servers.size() > number_of_host)
+ if (servers.size() > host_to_shutdown)
{
- Server* tmp= servers[number_of_host];
+ Server* tmp= servers[host_to_shutdown];
- if (tmp and tmp->has_pid() and tmp->kill() == false)
+ if (tmp and tmp->kill() == false)
{ }
else
{
@@ -108,7 +109,7 @@
return false;
}
-void server_startup_st::shutdown_and_remove()
+void server_startup_st::clear()
{
for (std::vector<Server *>::iterator iter= servers.begin(); iter != servers.end(); iter++)
{
@@ -166,7 +167,7 @@
server_startup_st::~server_startup_st()
{
- shutdown_and_remove();
+ clear();
}
bool server_startup_st::validate()
@@ -182,112 +183,119 @@
}
libtest::Server *server= NULL;
- if (0)
- { }
- else if (server_type.compare("gearmand") == 0)
- {
- if (GEARMAND_BINARY)
+ try {
+ if (0)
+ { }
+ else if (server_type.compare("gearmand") == 0)
{
- if (HAVE_LIBGEARMAN)
+ if (GEARMAND_BINARY)
{
- server= build_gearmand("localhost", try_port);
+ if (HAVE_LIBGEARMAN)
+ {
+ server= build_gearmand("localhost", try_port);
+ }
}
}
- }
- else if (server_type.compare("drizzled") == 0)
- {
- if (DRIZZLED_BINARY)
+ else if (server_type.compare("drizzled") == 0)
{
- if (HAVE_LIBDRIZZLE)
+ if (DRIZZLED_BINARY)
{
- server= build_drizzled("localhost", try_port);
+ if (HAVE_LIBDRIZZLE)
+ {
+ server= build_drizzled("localhost", try_port);
+ }
}
}
- }
- else if (server_type.compare("blobslap_worker") == 0)
- {
- if (GEARMAND_BINARY)
+ else if (server_type.compare("blobslap_worker") == 0)
{
- if (GEARMAND_BLOBSLAP_WORKER)
+ if (GEARMAND_BINARY)
{
- if (HAVE_LIBGEARMAN)
+ if (GEARMAND_BLOBSLAP_WORKER)
{
- server= build_blobslap_worker(try_port);
+ if (HAVE_LIBGEARMAN)
+ {
+ server= build_blobslap_worker(try_port);
+ }
}
}
}
- }
- else if (server_type.compare("memcached-sasl") == 0)
- {
- if (MEMCACHED_SASL_BINARY)
+ else if (server_type.compare("memcached-sasl") == 0)
{
- if (HAVE_LIBMEMCACHED)
+ if (MEMCACHED_SASL_BINARY)
{
- server= build_memcached_sasl("localhost", try_port, construct.username(), construct.password());
+ if (HAVE_LIBMEMCACHED)
+ {
+ server= build_memcached_sasl("localhost", try_port, construct.username(), construct.password());
+ }
}
}
- }
- else if (server_type.compare("memcached") == 0)
- {
- if (MEMCACHED_BINARY)
+ else if (server_type.compare("memcached") == 0)
{
- if (HAVE_LIBMEMCACHED)
+ if (MEMCACHED_BINARY)
{
- server= build_memcached("localhost", try_port);
+ if (HAVE_LIBMEMCACHED)
+ {
+ server= build_memcached("localhost", try_port);
+ }
}
}
- }
- else if (server_type.compare("memcached-light") == 0)
- {
- if (MEMCACHED_LIGHT_BINARY)
+ else if (server_type.compare("memcached-light") == 0)
{
- if (HAVE_LIBMEMCACHED)
+ if (MEMCACHED_LIGHT_BINARY)
{
- server= build_memcached_light("localhost", try_port);
+ if (HAVE_LIBMEMCACHED)
+ {
+ server= build_memcached_light("localhost", try_port);
+ }
}
}
- }
- if (server == NULL)
- {
- fatal_message("Launching of an unknown server was attempted");
- }
+ if (server == NULL)
+ {
+ fatal_message("Launching of an unknown server was attempted");
+ }
- /*
- We will now cycle the server we have created.
- */
- if (server->cycle() == false)
- {
- Error << "Could not start up server " << *server;
- delete server;
- return false;
- }
+ /*
+ We will now cycle the server we have created.
+ */
+ if (server->cycle() == false)
+ {
+ Error << "Could not start up server " << *server;
+ delete server;
+ return false;
+ }
- server->build(argc, argv);
+ server->build(argc, argv);
- if (false)
- {
- Out << "Pausing for startup, hit return when ready.";
- std::string gdb_command= server->base_command();
- std::string options;
+ if (false)
+ {
+ Out << "Pausing for startup, hit return when ready.";
+ std::string gdb_command= server->base_command();
+ std::string options;
#if 0
- Out << "run " << server->args(options);
+ Out << "run " << server->args(options);
#endif
- getchar();
+ getchar();
+ }
+ else if (server->start() == false)
+ {
+ delete server;
+ return false;
+ }
+ else
+ {
+ if (opt_startup_message)
+ {
+ Outn();
+ Out << "STARTING SERVER(pid:" << server->pid() << "): " << server->running();
+ Outn();
+ }
+ }
}
- else if (server->start() == false)
+ catch (...)
{
delete server;
- return false;
- }
- else
- {
- if (opt_startup_message)
- {
- Outn();
- Out << "STARTING SERVER(pid:" << server->pid() << "): " << server->running();
- Outn();
- }
+ throw;
}
construct.push_server(server);
@@ -301,90 +309,97 @@
Outn();
Server *server= NULL;
- if (0)
- { }
- else if (server_type.compare("gearmand") == 0)
- {
- Error << "Socket files are not supported for gearmand yet";
- }
- else if (server_type.compare("memcached-sasl") == 0)
- {
- if (MEMCACHED_SASL_BINARY)
+ try {
+ if (0)
+ { }
+ else if (server_type.compare("gearmand") == 0)
+ {
+ Error << "Socket files are not supported for gearmand yet";
+ }
+ else if (server_type.compare("memcached-sasl") == 0)
{
- if (HAVE_LIBMEMCACHED)
+ if (MEMCACHED_SASL_BINARY)
{
- server= build_memcached_sasl_socket("localhost", try_port, username(), password());
+ if (HAVE_LIBMEMCACHED)
+ {
+ server= build_memcached_sasl_socket("localhost", try_port, username(), password());
+ }
+ else
+ {
+ Error << "Libmemcached was not found";
+ }
}
else
{
- Error << "Libmemcached was not found";
+ Error << "No memcached binary is available";
}
}
- else
- {
- Error << "No memcached binary is available";
- }
- }
- else if (server_type.compare("memcached") == 0)
- {
- if (MEMCACHED_BINARY)
+ else if (server_type.compare("memcached") == 0)
{
- if (HAVE_LIBMEMCACHED)
+ if (MEMCACHED_BINARY)
{
- server= build_memcached_socket("localhost", try_port);
+ if (HAVE_LIBMEMCACHED)
+ {
+ server= build_memcached_socket("localhost", try_port);
+ }
+ else
+ {
+ Error << "Libmemcached was not found";
+ }
}
else
{
- Error << "Libmemcached was not found";
+ Error << "No memcached binary is available";
}
}
else
{
- Error << "No memcached binary is available";
+ Error << "Failed to start " << server_type << ", no support was found to be compiled in for it.";
}
- }
- else
- {
- Error << "Failed to start " << server_type << ", no support was found to be compiled in for it.";
- }
- if (server == NULL)
- {
- Error << "Failure occured while creating server: " << server_type;
- return false;
- }
+ if (server == NULL)
+ {
+ Error << "Failure occured while creating server: " << server_type;
+ return false;
+ }
- /*
- We will now cycle the server we have created.
- */
- if (server->cycle() == false)
- {
- Error << "Could not start up server " << *server;
- delete server;
- return false;
- }
+ /*
+ We will now cycle the server we have created.
+ */
+ if (server->cycle() == false)
+ {
+ Error << "Could not start up server " << *server;
+ delete server;
+ return false;
+ }
- server->build(argc, argv);
+ server->build(argc, argv);
- if (false)
- {
- Out << "Pausing for startup, hit return when ready.";
- std::string gdb_command= server->base_command();
- std::string options;
+ if (false)
+ {
+ Out << "Pausing for startup, hit return when ready.";
+ std::string gdb_command= server->base_command();
+ std::string options;
#if 0
- Out << "run " << server->args(options);
+ Out << "run " << server->args(options);
#endif
- getchar();
+ getchar();
+ }
+ else if (server->start() == false)
+ {
+ Error << "Failed to start " << *server;
+ delete server;
+ return false;
+ }
+ else
+ {
+ Out << "STARTING SERVER(pid:" << server->pid() << "): " << server->running();
+ }
}
- else if (server->start() == false)
+ catch (...)
{
- Error << "Failed to start " << *server;
delete server;
- return false;
- }
- else
- {
- Out << "STARTING SERVER(pid:" << server->pid() << "): " << server->running();
+ throw;
}
push_server(server);
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/libtest/server_container.h
^
|
@@ -112,7 +112,9 @@
}
- void shutdown_and_remove();
+ // Just remove everything after shutdown
+ void clear();
+
bool shutdown();
bool shutdown(uint32_t number_of_host);
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/libtest/skiptest.cc
^
|
@@ -53,5 +53,5 @@
void get_world(Framework *world)
{
- world->_create= world_create;
+ world->create(world_create);
}
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/libtest/stream.h
^
|
@@ -48,58 +48,66 @@
namespace detail {
template<class Ch, class Tr, class A>
- class cerr {
+ class channel {
private:
public:
typedef std::basic_ostringstream<Ch, Tr, A> stream_buffer;
public:
- void operator()(const stream_buffer &s)
+ void operator()(const stream_buffer& s, std::ostream& _out,
+ const char* filename, int line_number, const char* func)
{
- std::cerr << s.str() << std::endl;
- }
- };
-
-template<class Ch, class Tr, class A>
- class make_cerr {
- private:
-
- public:
- typedef std::basic_ostringstream<Ch, Tr, A> stream_buffer;
-
- public:
- void operator()(const stream_buffer &s)
- {
- std::cerr << std::endl << s.str() << std::endl;
- }
- };
-
-template<class Ch, class Tr, class A>
- class cout {
- private:
-
- public:
- typedef std::basic_ostringstream<Ch, Tr, A> stream_buffer;
-
- public:
- void operator()(const stream_buffer &s)
- {
- std::cout << s.str() << std::endl;
+ if (filename)
+ {
+ _out
+ << filename
+ << ":"
+ << line_number
+ << ": in "
+ << func << "() "
+ << s.str()
+ << std::endl;
+ }
+ else
+ {
+ _out
+ << s.str()
+ << std::endl;
+ }
}
};
template<class Ch, class Tr, class A>
- class clog {
+ class channelln {
private:
public:
typedef std::basic_ostringstream<Ch, Tr, A> stream_buffer;
public:
- void operator()(const stream_buffer &s)
+ void operator()(const stream_buffer& s, std::ostream& _out,
+ const char* filename, int line_number, const char* func)
{
- std::cerr<< s.str() << std::endl;
+ if (filename)
+ {
+ _out
+ << std::endl
+ << filename
+ << ":"
+ << line_number
+ << ": in "
+ << func << "() "
+ << s.str()
+ << std::endl;
+ }
+ else
+ {
+ _out
+ << std::endl
+ << s.str()
+ << std::endl;
+ }
}
};
@@ -107,37 +115,30 @@
class log {
private:
typedef OutputPolicy<Ch, Tr, A> output_policy;
+
+ private:
+ std::ostream& _out;
const char *_filename;
int _line_number;
const char *_func;
public:
- log() :
- _filename(NULL),
- _line_number(0)
+ log(std::ostream& out_arg, const char* filename, int line_number, const char* func) :
+ _out(out_arg),
+ _filename(filename),
+ _line_number(line_number),
+ _func(func)
{ }
- void set_filename(const char *filename, int line_number, const char *func)
- {
- _filename= filename;
- _line_number= line_number;
- _func= func;
- }
-
~log()
{
- output_policy()(arg);
+ output_policy()(arg, _out, _filename, _line_number, _func);
}
public:
template<class T>
log &operator<<(const T &x)
{
- if (_filename)
- {
- arg << _filename << ":" << _line_number << ": in " << _func << "() ";
- _filename= NULL;
- }
arg << x;
return *this;
}
@@ -145,33 +146,35 @@
private:
typename output_policy::stream_buffer arg;
};
-}
+} // namespace detail
-class make_cerr : public detail::log<detail::make_cerr> {
+class make_cerr : public detail::log<detail::channelln> {
public:
- make_cerr(const char *filename, int line_number, const char *func)
- {
- set_filename(filename, line_number, func);
- }
+ make_cerr(const char* filename, int line_number, const char* func) :
+ detail::log<detail::channelln>(std::cerr, filename, line_number, func)
+ { }
+
};
-class cerr : public detail::log<detail::cerr> {
+class cerr : public detail::log<detail::channel> {
public:
- cerr(const char *filename, int line_number, const char *func)
- {
- set_filename(filename, line_number, func);
- }
+ cerr(const char* filename, int line_number, const char* func) :
+ detail::log<detail::channel>(std::cout, filename, line_number, func)
+ { }
+
};
-class clog : public detail::log<detail::clog> {
+class clog : public detail::log<detail::channel> {
public:
- clog(const char *, int, const char*)
+ clog(const char* filename, int line_number, const char* func) :
+ detail::log<detail::channel>(std::clog, filename, line_number, func)
{ }
};
-class cout : public detail::log<detail::cout> {
+class cout : public detail::log<detail::channel> {
public:
- cout(const char *, int, const char *)
+ cout(const char* filename, int line_number, const char* func) :
+ detail::log<detail::channel>(std::cout, filename, line_number, func)
{ }
};
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/libtest/test.h
^
|
@@ -230,16 +230,10 @@
} while (0)
-#define test_strcmp(A,B) \
+#define test_strcmp(__expected, __actual) \
do \
{ \
- if ((A) == NULL or (B) == NULL or strcmp((A), (B))) \
- { \
- if ((B) == NULL) fprintf(stderr, "\n%s:%d: Expected %s, got <null>\n", __FILE__, __LINE__, (A)); \
- else fprintf(stderr, "\n%s:%d: Expected %s, got \"%s\"\n", __FILE__, __LINE__, (A), (B)); \
- libtest::create_core(); \
- return TEST_FAILURE; \
- } \
+ void(libtest::_compare_strcmp(__FILE__, __LINE__, __func__, (__expected), (__actual))); \
} while (0)
#define test_memcmp(A,B,C) \
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/libtest/test.hpp
^
|
@@ -51,6 +51,7 @@
#include <libtest/has.hpp>
#include <libtest/error.h>
#include <libtest/strerror.h>
+#include <libtest/timer.hpp>
#include <libtest/stream.h>
#include <libtest/comparison.hpp>
#include <libtest/server.h>
@@ -64,11 +65,9 @@
#include <libtest/port.h>
#include <libtest/is_local.hpp>
#include <libtest/socket.hpp>
-#include <libtest/stats.h>
#include <libtest/collection.h>
#include <libtest/framework.h>
#include <libtest/get.h>
-#include <libtest/stream.h>
#include <libtest/cmdline.h>
#include <libtest/string.hpp>
#include <libtest/binaries.h>
|
[-]
[+]
|
Added |
libmemcached-1.0.8.tar.bz2/libtest/timer.cc
^
|
@@ -0,0 +1,55 @@
+/* vim:expandtab:shiftwidth=2:tabstop=2:smarttab:
+ *
+ * Data Differential YATL (i.e. libtest) library
+ *
+ * Copyright (C) 2012 Data Differential, http://datadifferential.com/
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ *
+ * * The names of its contributors may not be used to endorse or
+ * promote products derived from this software without specific prior
+ * written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ */
+
+#include <config.h>
+#include <libtest/timer.hpp>
+#include <ctime>
+
+namespace libtest {
+
+std::ostream& operator<<(std::ostream& output, const libtest::Timer& arg)
+{
+ struct timespec temp;
+ arg.difference(temp);
+
+ output << temp.tv_sec;
+ output << ":";
+ output << temp.tv_nsec;
+
+ return output;
+}
+
+} // namespace libtest
|
[-]
[+]
|
Added |
libmemcached-1.0.8.tar.bz2/libtest/timer.hpp
^
|
@@ -0,0 +1,113 @@
+/* vim:expandtab:shiftwidth=2:tabstop=2:smarttab:
+ *
+ * Data Differential YATL (i.e. libtest) library
+ *
+ * Copyright (C) 2012 Data Differential, http://datadifferential.com/
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ *
+ * * The names of its contributors may not be used to endorse or
+ * promote products derived from this software without specific prior
+ * written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ */
+
+#pragma once
+
+#include <ctime>
+#include <ostream>
+
+#ifdef __MACH__
+# include <mach/clock.h>
+# include <mach/mach.h>
+#else
+# include <sys/time.h>
+#endif
+
+
+namespace libtest {
+
+class Timer {
+public:
+
+ Timer()
+ {
+ _begin.tv_sec= 0;
+ _begin.tv_nsec= 0;
+ _end.tv_sec= 0;
+ _end.tv_nsec= 0;
+ }
+
+ void reset()
+ {
+ _end.tv_sec= 0;
+ _end.tv_nsec= 0;
+ _time(_begin);
+ }
+
+ void sample()
+ {
+ _time(_end);
+ }
+
+ void difference(struct timespec& arg) const
+ {
+ if ((_end.tv_nsec -_begin.tv_nsec) < 0)
+ {
+ arg.tv_sec= _end.tv_sec -_begin.tv_sec-1;
+ arg.tv_nsec= 1000000000 +_end.tv_nsec -_begin.tv_nsec;
+
+ }
+ else
+ {
+ arg.tv_sec= _end.tv_sec -_begin.tv_sec;
+ arg.tv_nsec= _end.tv_nsec -_begin.tv_nsec;
+ }
+ }
+
+private:
+ void _time(struct timespec& ts)
+ {
+#ifdef __MACH__ // OSX lacks clock_gettime()
+ clock_serv_t _clock_serv;
+ mach_timespec_t _mach_timespec;
+ host_get_clock_service(mach_host_self(), CALENDAR_CLOCK, &_clock_serv);
+ clock_get_time(_clock_serv, &_mach_timespec);
+ mach_port_deallocate(mach_task_self(), _clock_serv);
+ ts.tv_sec= _mach_timespec.tv_sec;
+ ts.tv_nsec= _mach_timespec.tv_nsec;
+#else
+ clock_gettime(CLOCK_REALTIME, &ts);
+#endif
+ }
+
+private:
+ struct timespec _begin;
+ struct timespec _end;
+};
+
+std::ostream& operator<<(std::ostream& output, const libtest::Timer& arg);
+
+} // namespace libtest
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/libtest/unittest.cc
^
|
@@ -953,6 +953,6 @@
void get_world(Framework *world)
{
- world->collections= collection;
- world->_create= world_create;
+ world->collections(collection);
+ world->create(world_create);
}
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/m4/bottom.m4
^
|
@@ -12,12 +12,14 @@
AH_BOTTOM([
+#ifndef __STDC_FORMAT_MACROS
+# define __STDC_FORMAT_MACROS
+#endif
+
#if defined(__cplusplus)
-#include CSTDINT_H
-#include CINTTYPES_H
+# include CINTTYPES_H
#else
-#include <stdint.h>
-#include <inttypes.h>
+# include <inttypes.h>
#endif
#if !defined(HAVE_ULONG) && !defined(__USE_MISC)
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/m4/pandora_canonical.m4
^
|
@@ -206,13 +206,6 @@
AM_CONDITIONAL(HAVE_SPHINX,[test "x${SPHINXBUILD}" != "x:"])
AM_CONDITIONAL(HAVE_RECENT_SPHINX,[test "x${ac_cv_recent_sphinx}" = "xyes"])
- AS_IF([test "x${gl_LIBOBJS}" != "x"],[
- AS_IF([test "$GCC" = "yes"],[
- AM_CPPFLAGS="-isystem \${top_srcdir}/gnulib -isystem \${top_builddir}/gnulib ${AM_CPPFLAGS}"
- ],[
- AM_CPPFLAGS="-I\${top_srcdir}/gnulib -I\${top_builddir}/gnulib ${AM_CPPFLAGS}"
- ])
- ])
m4_if(m4_substr(m4_esyscmd(test -d src && echo 0),0,1),0,[
AM_CPPFLAGS="-I\$(top_srcdir)/src -I\$(top_builddir)/src ${AM_CPPFLAGS}"
],[
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/support/libmemcached.spec
^
|
@@ -1,6 +1,6 @@
Name: libmemcached
Summary: memcached C library and command line tools
-Version: 1.0.7
+Version: 1.0.8
Release: 1
License: BSD
Group: System Environment/Libraries
@@ -47,8 +47,6 @@
%setup -q
%{__mkdir} examples
-#%{__cp} tests/*.{cc,h} examples/
-
%build
%configure
@@ -63,7 +61,7 @@
%check
# test suite cannot run in mock (same port use for memcache server on all arch)
# 1 test seems to fail..
-#%{__make} test
+# %{__make} test
%clean
@@ -96,16 +94,20 @@
%{_libdir}/libmemcached.so.10
%{_libdir}/libmemcachedprotocol.so.0
%{_libdir}/libmemcachedutil.so.2
+%{_mandir}/man1/memaslap.1.gz
%{_mandir}/man1/memcapable.1.gz
%{_mandir}/man1/memcat.1.gz
%{_mandir}/man1/memcp.1.gz
%{_mandir}/man1/memdump.1.gz
%{_mandir}/man1/memerror.1.gz
+%{_mandir}/man1/memexist.1.gz
%{_mandir}/man1/memflush.1.gz
+%{_mandir}/man1/memparse.1.gz
+%{_mandir}/man1/memping.1.gz
%{_mandir}/man1/memrm.1.gz
-%{_mandir}/man1/memaslap.1.gz
%{_mandir}/man1/memslap.1.gz
%{_mandir}/man1/memstat.1.gz
+%{_mandir}/man1/memtouch.1.gz
%files devel
@@ -314,10 +316,12 @@
%changelog
-* Fri Jan 8 2010 Brian Aker <brian@tangent.org> - 0.37-1
+* Tue May 22 2012 Brian Aker <brian@tangent.org> - 1.0.8
+
+* Fri Jan 8 2010 Brian Aker <brian@tangent.org> - 0.37
- Modified to be explicit in install include files.
-* Sat Apr 25 2009 Remi Collet <rpms@famillecollet.com> - 0.28-1
+* Sat Apr 25 2009 Remi Collet <rpms@famillecollet.com> - 0.28
- Initial RPM from Brian Aker spec
- create -devel subpackage
- add %%post %%postun %%check section
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/support/libmemcached.spec.in
^
|
@@ -47,8 +47,6 @@
%setup -q
%{__mkdir} examples
-#%{__cp} tests/*.{cc,h} examples/
-
%build
%configure
@@ -63,7 +61,7 @@
%check
# test suite cannot run in mock (same port use for memcache server on all arch)
# 1 test seems to fail..
-#%{__make} test
+# %{__make} test
%clean
@@ -96,16 +94,20 @@
%{_libdir}/libmemcached.so.10
%{_libdir}/libmemcachedprotocol.so.0
%{_libdir}/libmemcachedutil.so.2
+%{_mandir}/man1/memaslap.1.gz
%{_mandir}/man1/memcapable.1.gz
%{_mandir}/man1/memcat.1.gz
%{_mandir}/man1/memcp.1.gz
%{_mandir}/man1/memdump.1.gz
%{_mandir}/man1/memerror.1.gz
+%{_mandir}/man1/memexist.1.gz
%{_mandir}/man1/memflush.1.gz
+%{_mandir}/man1/memparse.1.gz
+%{_mandir}/man1/memping.1.gz
%{_mandir}/man1/memrm.1.gz
-%{_mandir}/man1/memaslap.1.gz
%{_mandir}/man1/memslap.1.gz
%{_mandir}/man1/memstat.1.gz
+%{_mandir}/man1/memtouch.1.gz
%files devel
@@ -314,10 +316,12 @@
%changelog
-* Fri Jan 8 2010 Brian Aker <brian@tangent.org> - 0.37-1
+* Tue May 22 2012 Brian Aker <brian@tangent.org> - 1.0.8
+
+* Fri Jan 8 2010 Brian Aker <brian@tangent.org> - 0.37
- Modified to be explicit in install include files.
-* Sat Apr 25 2009 Remi Collet <rpms@famillecollet.com> - 0.28-1
+* Sat Apr 25 2009 Remi Collet <rpms@famillecollet.com> - 0.28
- Initial RPM from Brian Aker spec
- create -devel subpackage
- add %%post %%postun %%check section
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/tests/cycle.cc
^
|
@@ -70,7 +70,7 @@
static test_return_t shutdown_and_remove_TEST(void *obj)
{
server_startup_st *servers= (server_startup_st*)obj;
- servers->shutdown_and_remove();
+ servers->clear();
return TEST_SUCCESS;
}
@@ -106,7 +106,7 @@
static test_return_t collection_FINAL(void *object)
{
server_startup_st *servers= (server_startup_st*)object;
- servers->shutdown_and_remove();
+ servers->clear();
return TEST_SUCCESS;
}
@@ -123,7 +123,7 @@
void get_world(Framework *world)
{
- world->collections= collection;
- world->_create= world_create;
+ world->collections(collection);
+ world->create(world_create);
}
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/tests/failure.cc
^
|
@@ -152,7 +152,7 @@
memcached_return_t ret;
do {
- sleep(3);
+ libtest::dream(3, 0);
ret= memcached_set(memc, test_literal_param("foo"), NULL, 0, time_t(0), uint32_t(0));
} while (ret == MEMCACHED_SERVER_TEMPORARILY_DISABLED);
@@ -175,7 +175,7 @@
test_compare(MEMCACHED_SERVER_TEMPORARILY_DISABLED, ret);
do {
- sleep(3);
+ libtest::dream(3, 0);
ret= memcached_set(memc, test_literal_param("foo"), NULL, 0, time_t(0), uint32_t(0));
} while (ret == MEMCACHED_SERVER_TEMPORARILY_DISABLED or ret == MEMCACHED_SUCCESS);
@@ -207,16 +207,16 @@
{ 0, 0, 0, 0 }
};
-#include "libmemcached_world.h"
+#include "tests/libmemcached_world.h"
void get_world(Framework *world)
{
world->servers().set_servers_to_run(1);
- world->collections= collection;
+ world->collections(collection);
- world->_create= (test_callback_create_fn*)world_create;
- world->_destroy= (test_callback_destroy_fn*)world_destroy;
+ world->create((test_callback_create_fn*)world_create);
+ world->destroy((test_callback_destroy_fn*)world_destroy);
world->set_runner(new LibmemcachedRunner);
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/tests/hash_plus.cc
^
|
@@ -215,5 +215,5 @@
void get_world(Framework *world)
{
- world->collections= collection;
+ world->collections(collection);
}
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/tests/hashkit_functions.cc
^
|
@@ -564,7 +564,7 @@
void get_world(Framework *world)
{
- world->collections= collection;
- world->_create= world_create;
- world->_destroy= world_destroy;
+ world->collections(collection);
+ world->create(world_create);
+ world->destroy(world_destroy);
}
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/tests/include.am
^
|
@@ -41,6 +41,8 @@
include tests/libmemcached-1.0/include.am
+include tests/parser.am
+
tests_failure_SOURCES=
tests_failure_SOURCES+= tests/failure.cc
tests_failure_SOURCES+= clients/execute.cc
@@ -56,12 +58,23 @@
check_PROGRAMS+= tests/failure
noinst_PROGRAMS+= tests/failure
-tests_testhashkit_SOURCES = tests/hashkit_functions.cc
-tests_testhashkit_DEPENDENCIES = libtest/libtest.la libhashkit/libhashkit.la $(TESTS_LDADDS)
-tests_testhashkit_LDADD = $(tests_testhashkit_DEPENDENCIES)
+test-failure: tests/failure
+ @tests/failure
+
+gdb-failure: tests/failure
+ @$(DEBUG_COMMAND) tests/failure
+
+
+tests_testhashkit_SOURCES= tests/hashkit_functions.cc
+tests_testhashkit_DEPENDENCIES= libtest/libtest.la libhashkit/libhashkit.la $(TESTS_LDADDS)
+tests_testhashkit_LDADD= $(tests_testhashkit_DEPENDENCIES)
check_PROGRAMS+= tests/testhashkit
noinst_PROGRAMS+= tests/testhashkit
+test-hash: tests/testhashkit
+ @tests/testhashkit
+
+
tests_hash_plus_SOURCES= tests/hash_plus.cc
tests_hash_plus_CXXFLAGS= $(AM_CXXFLAGS) $(NO_EFF_CXX)
tests_hash_plus_DEPENDENCIES= $(tests_testhashkit_DEPENDENCIES)
@@ -88,9 +101,6 @@
test-plus: tests/testplus
@tests/testplus
-test-hash: tests/testhashkit
- @tests/testhashkit
-
test-hashplus: tests/hash_plus
@tests/hash_plus
@@ -124,9 +134,6 @@
gdb-cycle: tests/cycle
@$(DEBUG_COMMAND) tests/cycle
-gdb-failure: tests/failure
- @$(DEBUG_COMMAND) tests/failure
-
valgrind-cycle: tests/cycle
$(VALGRIND_COMMAND) tests/cycle
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/tests/libmemcached-1.0/all_tests.cc
^
|
@@ -45,10 +45,10 @@
#include "tests/exist.h"
#include "tests/ketama.h"
#include "tests/namespace.h"
-#include "tests/parser.h"
#include "tests/libmemcached-1.0/dump.h"
#include "tests/libmemcached-1.0/generate.h"
#include "tests/libmemcached-1.0/haldenbrand.h"
+#include "tests/libmemcached-1.0/parser.h"
#include "tests/libmemcached-1.0/stat.h"
#include "tests/touch.h"
#include "tests/callbacks.h"
@@ -82,10 +82,10 @@
world->servers().set_servers_to_run(8);
}
- world->collections= collection;
+ world->collections(collection);
- world->_create= (test_callback_create_fn*)world_create;
- world->_destroy= (test_callback_destroy_fn*)world_destroy;
+ world->create((test_callback_create_fn*)world_create);
+ world->destroy((test_callback_destroy_fn*)world_destroy);
world->set_runner(new LibmemcachedRunner);
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/tests/libmemcached-1.0/all_tests.h
^
|
@@ -273,6 +273,8 @@
{"lp:655423", true, (test_callback_fn*)regression_bug_655423 },
{"lp:490520", true, (test_callback_fn*)regression_bug_490520 },
{"lp:854604", true, (test_callback_fn*)regression_bug_854604 },
+ {"lp:996813", true, (test_callback_fn*)regression_996813_TEST },
+ {"lp:994772", true, (test_callback_fn*)regression_994772_TEST },
{0, false, (test_callback_fn*)0}
};
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/tests/libmemcached-1.0/all_tests_socket.cc
^
|
@@ -45,7 +45,7 @@
#include "tests/exist.h"
#include "tests/ketama.h"
#include "tests/namespace.h"
-#include "tests/parser.h"
+#include "tests/libmemcached-1.0/parser.h"
#include "tests/libmemcached-1.0/dump.h"
#include "tests/libmemcached-1.0/generate.h"
#include "tests/libmemcached-1.0/haldenbrand.h"
@@ -71,10 +71,10 @@
void get_world(Framework *world)
{
- world->collections= collection;
+ world->collections(collection);
- world->_create= (test_callback_create_fn*)world_create;
- world->_destroy= (test_callback_destroy_fn*)world_destroy;
+ world->create((test_callback_create_fn*)world_create);
+ world->destroy((test_callback_destroy_fn*)world_destroy);
world->set_runner(new LibmemcachedRunner);
}
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/tests/libmemcached-1.0/atomsmasher.cc
^
|
@@ -275,10 +275,10 @@
void get_world(Framework *world)
{
- world->collections= collection;
+ world->collections(collection);
- world->_create= (test_callback_create_fn*)world_create;
- world->_destroy= (test_callback_destroy_fn*)world_destroy;
+ world->create((test_callback_create_fn*)world_create);
+ world->destroy((test_callback_destroy_fn*)world_destroy);
world->set_runner(new LibmemcachedRunner);
}
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/tests/libmemcached-1.0/include.am
^
|
@@ -20,16 +20,16 @@
noinst_HEADERS+= tests/libmemcached-1.0/all_tests.h
noinst_HEADERS+= tests/libmemcached-1.0/callback_counter.h
noinst_HEADERS+= tests/libmemcached-1.0/dump.h
+noinst_HEADERS+= tests/libmemcached-1.0/encoding_key.h
noinst_HEADERS+= tests/libmemcached-1.0/fetch_all_results.h
noinst_HEADERS+= tests/libmemcached-1.0/generate.h
-noinst_HEADERS+= tests/libmemcached-1.0/encoding_key.h
noinst_HEADERS+= tests/libmemcached-1.0/haldenbrand.h
noinst_HEADERS+= tests/libmemcached-1.0/mem_functions.h
noinst_HEADERS+= tests/libmemcached-1.0/memcached_get.h
+noinst_HEADERS+= tests/libmemcached-1.0/parser.h
noinst_HEADERS+= tests/libmemcached-1.0/setup_and_teardowns.h
noinst_HEADERS+= tests/libmemcached-1.0/stat.h
noinst_HEADERS+= tests/namespace.h
-noinst_HEADERS+= tests/parser.h
noinst_HEADERS+= tests/pool.h
noinst_HEADERS+= tests/print.h
noinst_HEADERS+= tests/replication.h
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/tests/libmemcached-1.0/internals.cc
^
|
@@ -63,5 +63,5 @@
void get_world(Framework *frame)
{
- frame->collections= collection;
+ frame->collections(collection);
}
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/tests/libmemcached-1.0/mem_functions.cc
^
|
@@ -1026,12 +1026,11 @@
}
#define READ_THROUGH_VALUE "set for me"
-static memcached_return_t read_through_trigger(memcached_st *memc,
- char *key,
- size_t key_length,
+static memcached_return_t read_through_trigger(memcached_st *, // memc
+ char *, // key
+ size_t, // key_length,
memcached_result_st *result)
{
- (void)memc;(void)key;(void)key_length;
return memcached_result_set_value(result, READ_THROUGH_VALUE, strlen(READ_THROUGH_VALUE));
}
@@ -1062,8 +1061,8 @@
&string_length, &flags, &rc);
test_compare(MEMCACHED_SUCCESS, rc);
- test_compare(string_length, sizeof(READ_THROUGH_VALUE) -1);
- test_true(string[sizeof(READ_THROUGH_VALUE) -1] == 0);
+ test_compare(sizeof(READ_THROUGH_VALUE) -1, string_length);
+ test_compare(0, string[sizeof(READ_THROUGH_VALUE) -1]);
test_strcmp(READ_THROUGH_VALUE, string);
free(string);
@@ -4349,6 +4348,34 @@
return TEST_SUCCESS;
}
+test_return_t regression_996813_TEST(memcached_st *)
+{
+ memcached_st* memc= memcached_create(NULL);
+
+ test_compare(MEMCACHED_SUCCESS, memcached_behavior_set(memc, MEMCACHED_BEHAVIOR_DISTRIBUTION, MEMCACHED_DISTRIBUTION_CONSISTENT_KETAMA));
+ test_compare(MEMCACHED_SUCCESS, memcached_behavior_set(memc, MEMCACHED_BEHAVIOR_NO_BLOCK, 1));
+ test_compare(MEMCACHED_SUCCESS, memcached_behavior_set(memc, MEMCACHED_BEHAVIOR_TCP_NODELAY, 1));
+ test_compare(MEMCACHED_SUCCESS, memcached_behavior_set(memc, MEMCACHED_BEHAVIOR_BINARY_PROTOCOL, 1));
+ test_compare(MEMCACHED_SUCCESS, memcached_behavior_set(memc, MEMCACHED_BEHAVIOR_POLL_TIMEOUT, 1));
+ test_compare(MEMCACHED_SUCCESS, memcached_behavior_set(memc, MEMCACHED_BEHAVIOR_CONNECT_TIMEOUT, 300));
+ test_compare(MEMCACHED_SUCCESS, memcached_behavior_set(memc, MEMCACHED_BEHAVIOR_RETRY_TIMEOUT, 30));
+
+ // We will never connect to these servers
+ in_port_t base_port= 11211;
+ for (size_t x= 0; x < 17; x++)
+ {
+ test_compare(MEMCACHED_SUCCESS, memcached_server_add(memc, "10.2.3.4", base_port +x));
+ }
+ test_compare(16U, memcached_generate_hash(memc, test_literal_param("SZ6hu0SHweFmpwpc0w2R")));
+ test_compare(1U, memcached_generate_hash(memc, test_literal_param("SQCK9eiCf53YxHWnYA.o")));
+ test_compare(10U, memcached_generate_hash(memc, test_literal_param("SUSDkGXuuZC9t9VhMwa.")));
+ test_compare(8U, memcached_generate_hash(memc, test_literal_param("SnnqnJARfaCNT679iAF_")));
+
+ memcached_free(memc);
+
+ return TEST_SUCCESS;
+}
+
/*
* Test that ensures mget_execute does not end into recursive calls that finally fails
@@ -4562,6 +4589,48 @@
}
+test_return_t regression_994772_TEST(memcached_st* memc)
+{
+ test_skip(MEMCACHED_SUCCESS, memcached_behavior_set(memc, MEMCACHED_BEHAVIOR_BINARY_PROTOCOL, 1));
+
+ test_compare(MEMCACHED_SUCCESS,
+ memcached_set(memc,
+ test_literal_param(__func__), // Key
+ test_literal_param(__func__), // Value
+ time_t(0), uint32_t(0)));
+
+ const char *keys[] = { __func__ };
+ size_t key_length[]= { strlen(__func__) };
+ test_compare(MEMCACHED_SUCCESS,
+ memcached_mget(memc, keys, key_length, 1));
+
+ memcached_return_t rc;
+ memcached_result_st *results= memcached_fetch_result(memc, NULL, &rc);
+ test_true(results);
+ test_compare(MEMCACHED_SUCCESS, rc);
+
+ test_strcmp(__func__, memcached_result_value(results));
+ uint64_t cas_value= memcached_result_cas(results);
+ test_true(cas_value);
+
+ memcached_result_free(results);
+
+ // Bad cas value, sanity check
+ test_true(cas_value != 9999);
+ test_compare(MEMCACHED_END,
+ memcached_cas(memc,
+ test_literal_param(__func__), // Key
+ test_literal_param(__FILE__), // Value
+ time_t(0), uint32_t(0), 9999));
+
+ test_compare(MEMCACHED_SUCCESS, memcached_set(memc,
+ "different", strlen("different"), // Key
+ test_literal_param(__FILE__), // Value
+ time_t(0), uint32_t(0)));
+
+ return TEST_SUCCESS;
+}
+
test_return_t regression_bug_854604(memcached_st *)
{
char buffer[1024];
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/tests/libmemcached-1.0/mem_functions.h
^
|
@@ -174,3 +174,5 @@
test_return_t wrong_failure_counter_test(memcached_st *memc);
test_return_t wrong_failure_counter_two_test(memcached_st *memc);
test_return_t kill_HUP_TEST(memcached_st *memc);
+test_return_t regression_996813_TEST(memcached_st*);
+test_return_t regression_994772_TEST(memcached_st*);
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/tests/libmemcached-1.0/parser.cc
^
|
@@ -47,7 +47,7 @@
#include <libmemcached/memcached.h>
#include <libmemcached/util.h>
-#include <tests/parser.h>
+#include <tests/libmemcached-1.0/parser.h>
#include <tests/print.h>
enum scanner_type_t
@@ -639,7 +639,6 @@
return MEMCACHED_SUCCESS;
}
-
test_return_t test_hostname_port_weight(memcached_st *)
{
const char *server_string= "--server=localhost:8888/?2 --server=localhost:8889/?3 --server=localhost:8890/?4 --server=localhost:8891/?5 --server=localhost:8892/?3";
|
[-]
[+]
|
Added |
libmemcached-1.0.8.tar.bz2/tests/libmemcached-1.0/parser.h
^
|
@@ -0,0 +1,118 @@
+/* vim:expandtab:shiftwidth=2:tabstop=2:smarttab:
+ *
+ * Libmemcached
+ *
+ * Copyright (C) 2011 Data Differential, http://datadifferential.com/
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ *
+ * * The names of its contributors may not be used to endorse or
+ * promote products derived from this software without specific prior
+ * written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ */
+
+#pragma once
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+test_return_t memcached_NULL_string_TEST(memcached_st*);
+test_return_t memcached_zero_string_length_TEST(memcached_st*);
+
+LIBTEST_LOCAL
+test_return_t server_test(memcached_st *memc);
+
+LIBTEST_LOCAL
+test_return_t servers_bad_test(memcached_st *memc);
+
+LIBTEST_LOCAL
+test_return_t behavior_parser_test(memcached_st*);
+
+LIBTEST_LOCAL
+test_return_t parser_number_options_test(memcached_st*);
+
+LIBTEST_LOCAL
+test_return_t parser_distribution_test(memcached_st*);
+
+LIBTEST_LOCAL
+test_return_t parser_hash_test(memcached_st*);
+
+LIBTEST_LOCAL
+test_return_t parser_boolean_options_test(memcached_st*);
+
+LIBTEST_LOCAL
+test_return_t parser_key_prefix_test(memcached_st*);
+
+LIBTEST_LOCAL
+ test_return_t libmemcached_check_configuration_test(memcached_st*);
+
+LIBTEST_LOCAL
+ test_return_t memcached_create_with_options_test(memcached_st*);
+
+LIBTEST_LOCAL
+ test_return_t memcached_create_with_options_with_filename(memcached_st*);
+
+LIBTEST_LOCAL
+ test_return_t libmemcached_check_configuration_with_filename_test(memcached_st*);
+
+LIBTEST_LOCAL
+ test_return_t random_statement_build_test(memcached_st*);
+
+LIBTEST_LOCAL
+test_return_t test_include_keyword(memcached_st*);
+
+LIBTEST_LOCAL
+test_return_t test_end_keyword(memcached_st*);
+
+LIBTEST_LOCAL
+test_return_t test_reset_keyword(memcached_st*);
+
+LIBTEST_LOCAL
+test_return_t test_error_keyword(memcached_st*);
+
+LIBTEST_LOCAL
+test_return_t server_with_weight_test(memcached_st *);
+
+LIBTEST_LOCAL
+test_return_t test_hostname_port_weight(memcached_st *);
+
+LIBTEST_LOCAL
+test_return_t regression_bug_71231153_connect(memcached_st *);
+
+LIBTEST_LOCAL
+test_return_t regression_bug_71231153_poll(memcached_st *);
+
+LIBTEST_LOCAL
+test_return_t test_parse_socket(memcached_st *);
+
+LIBTEST_LOCAL
+test_return_t test_namespace_keyword(memcached_st*);
+
+#ifdef __cplusplus
+}
+#endif
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/tests/libmemcached-1.0/plus.cpp
^
|
@@ -286,10 +286,10 @@
void get_world(Framework *world)
{
- world->collections= collection;
+ world->collections(collection);
- world->_create= world_create;
- world->_destroy= world_destroy;
+ world->create((test_callback_create_fn*)world_create);
+ world->destroy((test_callback_destroy_fn*)world_destroy);
world->set_runner(new LibmemcachedRunner);
}
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/tests/libmemcached-1.0/replication.cc
^
|
@@ -50,7 +50,8 @@
test_return_t check_replication_sanity_TEST(memcached_st *memc)
{
test_true(memc);
- test_true(memcached_behavior_get(memc, MEMCACHED_BEHAVIOR_BINARY_PROTOCOL));
+ test_compare(uint64_t(1),
+ memcached_behavior_get(memc, MEMCACHED_BEHAVIOR_BINARY_PROTOCOL));
/*
* Make sure that we store the item on all servers
@@ -63,9 +64,10 @@
test_return_t replication_set_test(memcached_st *memc)
{
- memcached_return_t rc;
memcached_st *memc_clone= memcached_clone(NULL, memc);
- memcached_behavior_set(memc_clone, MEMCACHED_BEHAVIOR_NUMBER_OF_REPLICAS, 0);
+ test_true(memc_clone);
+ test_compare(MEMCACHED_SUCCESS,
+ memcached_behavior_set(memc_clone, MEMCACHED_BEHAVIOR_NUMBER_OF_REPLICAS, 0));
test_compare(MEMCACHED_SUCCESS,
memcached_set(memc, "bubba", 5, "0", 1, 0, 0));
@@ -96,6 +98,7 @@
const char key[2]= { (char)x, 0 };
size_t len;
uint32_t flags;
+ memcached_return_t rc;
char *val= memcached_get_by_key(memc_clone, key, 1, "bubba", 5,
&len, &flags, &rc);
test_compare(MEMCACHED_SUCCESS, rc);
@@ -110,7 +113,6 @@
test_return_t replication_get_test(memcached_st *memc)
{
- memcached_return_t rc;
/*
* Don't do the following in your code. I am abusing the internal details
@@ -130,6 +132,7 @@
const char key[2]= { (char)x, 0 };
size_t len;
uint32_t flags;
+ memcached_return_t rc;
char *val= memcached_get_by_key(memc_clone, key, 1, "bubba", 5,
&len, &flags, &rc);
test_compare(MEMCACHED_SUCCESS, rc);
@@ -145,17 +148,17 @@
test_return_t replication_mget_test(memcached_st *memc)
{
- memcached_return_t rc;
memcached_st *memc_clone= memcached_clone(NULL, memc);
- memcached_behavior_set(memc_clone, MEMCACHED_BEHAVIOR_NUMBER_OF_REPLICAS, 0);
+ test_true(memc_clone);
+ test_compare(MEMCACHED_SUCCESS,
+ memcached_behavior_set(memc_clone, MEMCACHED_BEHAVIOR_NUMBER_OF_REPLICAS, 0));
const char *keys[]= { "bubba", "key1", "key2", "key3" };
size_t len[]= { 5, 4, 4, 4 };
for (size_t x= 0; x< 4; ++x)
{
- rc= memcached_set(memc, keys[x], len[x], "0", 1, 0, 0);
- test_true(rc == MEMCACHED_SUCCESS);
+ test_compare(MEMCACHED_SUCCESS, memcached_set(memc, keys[x], len[x], "0", 1, 0, 0));
}
/*
@@ -190,13 +193,14 @@
{
char key[2]= { (char)x, 0 };
- rc= memcached_mget_by_key(new_clone, key, 1, keys, len, 4);
- test_true(rc == MEMCACHED_SUCCESS);
+ test_compare(MEMCACHED_SUCCESS,
+ memcached_mget_by_key(new_clone, key, 1, keys, len, 4));
memcached_result_st *results= memcached_result_create(new_clone, &result_obj);
test_true(results);
int hits= 0;
+ memcached_return_t rc;
while ((results= memcached_fetch_result(new_clone, &result_obj, &rc)) != NULL)
{
hits++;
@@ -216,7 +220,6 @@
test_return_t replication_randomize_mget_test(memcached_st *memc)
{
memcached_result_st result_obj;
- memcached_return_t rc;
memcached_st *memc_clone= memcached_clone(NULL, memc);
memcached_behavior_set(memc_clone, MEMCACHED_BEHAVIOR_NUMBER_OF_REPLICAS, 3);
memcached_behavior_set(memc_clone, MEMCACHED_BEHAVIOR_RANDOMIZE_REPLICA_READ, 1);
@@ -226,8 +229,8 @@
for (size_t x= 0; x< 7; ++x)
{
- rc= memcached_set(memc, keys[x], len[x], "1", 1, 0, 0);
- test_true(rc == MEMCACHED_SUCCESS);
+ test_compare(MEMCACHED_SUCCESS,
+ memcached_set(memc, keys[x], len[x], "1", 1, 0, 0));
}
memcached_quit(memc);
@@ -243,6 +246,7 @@
test_true(results);
int hits= 0;
+ memcached_return_t rc;
while ((results= memcached_fetch_result(memc_clone, &result_obj, &rc)) != NULL)
{
++hits;
@@ -251,6 +255,7 @@
memcached_result_free(&result_obj);
}
memcached_free(memc_clone);
+
return TEST_SUCCESS;
}
@@ -261,7 +266,7 @@
memcached_st *memc_replicated= memcached_clone(NULL, memc_just_cloned);
const char *keys[]= { "bubba", "key1", "key2", "key3", "key4" };
- test_true(memcached_behavior_get(memc_replicated, MEMCACHED_BEHAVIOR_BINARY_PROTOCOL));
+ test_compare(uint64_t(1), memcached_behavior_get(memc_replicated, MEMCACHED_BEHAVIOR_BINARY_PROTOCOL));
test_compare(MEMCACHED_SUCCESS, memcached_behavior_set(memc_replicated, MEMCACHED_BEHAVIOR_RANDOMIZE_REPLICA_READ, false));
// Make one copy
@@ -331,11 +336,11 @@
for (int x= int(MEMCACHED_SUCCESS); x < int(MEMCACHED_MAXIMUM_RETURN); ++x)
{
const char *key= memcached_strerror(NULL, memcached_return_t(x));
- memcached_return_t rc;
uint32_t flags;
size_t value_length;
+ memcached_return_t rc;
char *value= memcached_get(memc_clone, key, strlen(key), &value_length, &flags, &rc);
- test_true(rc == MEMCACHED_SUCCESS);
+ test_compare(MEMCACHED_SUCCESS, rc);
test_compare(strlen(key), value_length);
test_strcmp(key, value);
free(value);
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/tests/libmemcached-1.0/sasl.cc
^
|
@@ -101,10 +101,10 @@
void get_world(Framework *world)
{
- world->collections= collection;
+ world->collections(collection);
- world->_create= (test_callback_create_fn*)world_create;
- world->_destroy= (test_callback_destroy_fn*)world_destroy;
+ world->create((test_callback_create_fn*)world_create);
+ world->destroy((test_callback_destroy_fn*)world_destroy);
world->set_runner(new LibmemcachedRunner);
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/tests/mem_udp.cc
^
|
@@ -566,10 +566,10 @@
void get_world(Framework *world)
{
- world->collections= collection;
+ world->collections(collection);
- world->_create= (test_callback_create_fn*)world_create;
- world->_destroy= (test_callback_destroy_fn*)world_destroy;
+ world->create((test_callback_create_fn*)world_create);
+ world->destroy((test_callback_destroy_fn*)world_destroy);
world->set_runner(new LibmemcachedRunner);
}
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/tests/memcapable.cc
^
|
@@ -125,7 +125,7 @@
void get_world(Framework *world)
{
executable= "./clients/memcapable";
- world->collections= collection;
- world->_create= world_create;
+ world->collections(collection);
+ world->create(world_create);
}
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/tests/memcat.cc
^
|
@@ -143,7 +143,7 @@
void get_world(Framework *world)
{
- world->collections= collection;
- world->_create= world_create;
+ world->collections(collection);
+ world->create(world_create);
}
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/tests/memcp.cc
^
|
@@ -102,7 +102,7 @@
void get_world(Framework *world)
{
- world->collections= collection;
- world->_create= world_create;
+ world->collections(collection);
+ world->create(world_create);
}
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/tests/memdump.cc
^
|
@@ -129,7 +129,7 @@
void get_world(Framework *world)
{
- world->collections= collection;
- world->_create= world_create;
+ world->collections(collection);
+ world->create(world_create);
}
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/tests/memerror.cc
^
|
@@ -119,7 +119,7 @@
void get_world(Framework *world)
{
- world->collections= collection;
- world->_create= world_create;
+ world->collections(collection);
+ world->create(world_create);
}
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/tests/memexist.cc
^
|
@@ -160,7 +160,7 @@
void get_world(Framework *world)
{
- world->collections= collection;
- world->_create= world_create;
+ world->collections(collection);
+ world->create(world_create);
}
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/tests/memflush.cc
^
|
@@ -113,7 +113,7 @@
void get_world(Framework *world)
{
executable= "./clients/memflush";
- world->collections= collection;
- world->_create= world_create;
+ world->collections(collection);
+ world->create(world_create);
}
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/tests/memrm.cc
^
|
@@ -163,7 +163,7 @@
void get_world(Framework *world)
{
- world->collections= collection;
- world->_create= world_create;
+ world->collections(collection);
+ world->create(world_create);
}
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/tests/memslap.cc
^
|
@@ -186,7 +186,7 @@
void get_world(Framework *world)
{
executable= "./clients/memslap";
- world->collections= collection;
- world->_create= world_create;
+ world->collections(collection);
+ world->create(world_create);
}
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/tests/memstat.cc
^
|
@@ -124,7 +124,7 @@
void get_world(Framework *world)
{
- world->collections= collection;
- world->_create= world_create;
+ world->collections(collection);
+ world->create(world_create);
}
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/tests/memtouch.cc
^
|
@@ -157,7 +157,7 @@
void get_world(Framework *world)
{
executable= "./clients/memtouch";
- world->collections= collection;
- world->_create= world_create;
+ world->collections(collection);
+ world->create(world_create);
}
|
[-]
[+]
|
Added |
libmemcached-1.0.8.tar.bz2/tests/parser.am
^
|
@@ -0,0 +1,30 @@
+# vim:ft=automake
+# Copyright (C) 2012 Data Differential
+# All rights reserved.
+#
+# Use and distribution licensed under the BSD license. See
+# the COPYING file in the parent directory for full text.
+#
+# included from Top Level Makefile.am
+# All paths should be given relative to the root
+
+noinst_HEADERS+= tests/libmemcached-1.0/parser.h
+
+tests_parser_SOURCES=
+tests_parser_CXXFLAGS=
+tests_parser_DEPENDENCIES=
+tests_parser_LDADD=
+
+tests_parser_SOURCES+= tests/parser.cc
+
+tests_parser_CXXFLAGS+= $(AM_CXXFLAGS) $(NO_EFF_CXX)
+tests_parser_DEPENDENCIES+= $(TESTS_LDADDS)
+tests_parser_LDADD+= $(tests_parser_DEPENDENCIES)
+check_PROGRAMS+= tests/parser
+noinst_PROGRAMS+= tests/parser
+
+test-parser: tests/parser
+ @tests/parser
+
+valgrind-parser: tests/parser
+ $(VALGRIND_COMMAND) tests/parser
|
[-]
[+]
|
Added |
libmemcached-1.0.8.tar.bz2/tests/parser.cc
^
|
@@ -0,0 +1,131 @@
+/* vim:expandtab:shiftwidth=2:tabstop=2:smarttab:
+ *
+ * Libmemcached library
+ *
+ * Copyright (C) 2012 Data Differential, http://datadifferential.com/
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ *
+ * * The names of its contributors may not be used to endorse or
+ * promote products derived from this software without specific prior
+ * written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ */
+
+#include <config.h>
+
+/*
+ C++ interface test
+*/
+#include <libmemcached-1.0/memcached.hpp>
+#include <libtest/test.hpp>
+
+using namespace libtest;
+
+static test_return_t memcached_NULL_string_TEST(void*)
+{
+ test_null(memcached(NULL, 75));
+ return TEST_SUCCESS;
+}
+
+static test_return_t memcached_zero_string_length_TEST(void*)
+{
+ test_null(memcached("value", 0));
+ return TEST_SUCCESS;
+}
+
+static test_return_t putenv_localhost_quoted_TEST(void*)
+{
+ char set_env[1024];
+
+ snprintf(set_env, sizeof(set_env), "LIBMEMCACHED=\"--server=localhost\"");
+ test_zero(putenv(set_env));
+ test_null(memcached(NULL, 0));
+
+ return TEST_SUCCESS;
+}
+
+static test_return_t putenv_NULL_TEST(void*)
+{
+ char set_env[1024];
+
+ snprintf(set_env, sizeof(set_env), "LIBMEMCACHED");
+ test_zero(putenv(set_env));
+ memcached_st *memc= memcached(NULL, 0);
+ test_true(memc);
+
+ memcached_free(memc);
+
+ return TEST_SUCCESS;
+}
+
+static test_return_t putenv_NULL_TEST2(void*)
+{
+ char set_env[1024];
+
+ snprintf(set_env, sizeof(set_env), "LIBMEMCACHED=");
+ test_zero(putenv(set_env));
+ memcached_st *memc= memcached(NULL, 0);
+ test_true(memc);
+
+ memcached_free(memc);
+
+ return TEST_SUCCESS;
+}
+
+static test_return_t putenv_localhost_TEST(void*)
+{
+ char set_env[1024];
+
+ snprintf(set_env, sizeof(set_env), "LIBMEMCACHED=--server=localhost");
+ test_zero(putenv(set_env));
+ memcached_st *memc= memcached(NULL, 0);
+ test_true(memc);
+
+ memcached_free(memc);
+
+ return TEST_SUCCESS;
+}
+
+test_st memcached_TESTS[] ={
+ {"memcached(NULL, 75)", false, (test_callback_fn*)memcached_NULL_string_TEST },
+ {"memcached(\"value\", 0)", false, (test_callback_fn*)memcached_zero_string_length_TEST },
+ {"putenv(LIBMEMCACHED=--server=localhost)", false, (test_callback_fn*)putenv_localhost_TEST },
+ {"putenv(LIBMEMCACHED)", false, (test_callback_fn*)putenv_NULL_TEST },
+ {"putenv(LIBMEMCACHED=)", false, (test_callback_fn*)putenv_NULL_TEST2 },
+ {"putenv(LIBMEMCACHED=--server=\"localhost\")", false, (test_callback_fn*)putenv_localhost_quoted_TEST },
+ {0, 0, 0}
+};
+
+collection_st collection[] ={
+ {"memcached()", 0, 0, memcached_TESTS},
+ {0, 0, 0, 0}
+};
+
+void get_world(Framework *world)
+{
+ world->collections(collection);
+}
+
|
[-]
[+]
|
Changed |
libmemcached-1.0.8.tar.bz2/tests/runner.h
^
|
@@ -113,7 +113,9 @@
test_null(container->parent());
container->parent(memcached(container->construct.option_string().c_str(), container->construct.option_string().size()));
test_true(container->parent());
+#if 0
test_compare(MEMCACHED_SUCCESS, memcached_version(container->parent()));
+#endif
if (container->construct.sasl())
{
|