Hi We're doing some testing with a couple of the perl memcached libraries Cache::Memcached 1.24 Cache::Memcached::Fast 0.13 libevent-1.4.8-stable memcached 1.2.6 perl 5.8.8
Here are the outcomes we have observed Condition 1: * Dies on failure of operation (add, get or delete) in 10 attempts * Does not reconnect if it fails a single operation Result: * Frequently requires 2 attempts to perform an operation * Almost never completes 10,000 loops before failing an operation in 10 attempts, and dies. Condition 2: * Dies on failure of operation (add, get or delete) in 10 attempts * Reconnects to Memcached if it fails a single operation attempt Result: * Frequently requires 2 attempts to perform an operation * Often dies from failure to perform op in 10 attempts * Otherwise tends to die as a result of failing to connect, set and delete a connection-test key/value Condition 3: * Warns and continues upon failure to complete an operation in 10 attempts * Does not reconnect on failure Result: * After a series of failures to complete an operation, the script and memcached will consume CPU. The test script will effectively lock, without progressing further. Other instances of the test script can execute, so Memcached itself is not locked. The same problems are present with Cache::Memcached and with Cache::Memcached::Fast When using Cache::Memcached the following errors are often spat out: Use of uninitialized value in numeric eq (==) at /usr/local/stow/perl-5.8.7/lib/site_perl/5.8.7/Cache/Memcached.pm line 388. Use of uninitialized value in string eq at /usr/local/stow/perl-5.8.7/lib/site_perl/5.8.7/Cache/Memcached.pm line 424. We have tested this on solaris 10 and linux. # network test memcached -d ./test_memcached.pl # domain socket test (after changing $memcached_servers in test script) memcached -s /var/run/memcached_socket -d ./test_memcached.pl The test script is attached to this email. Can anyone else repeat this failure, and/or provide info as to a) why this happens and how to prevent it or b) why what we are doing is stupid and suggest a more appropriate test Thanks for listening Admin.
test_memcached.pl
Description: Perl program
