Diff of the two buildlogs:

--
--- b1/build.log	2024-12-20 12:25:32.396314654 +0000
+++ b2/build.log	2024-12-20 12:37:56.330592998 +0000
@@ -1,6 +1,6 @@
 I: pbuilder: network access will be disabled during build
-I: Current time: Thu Jan 22 06:46:09 -12 2026
-I: pbuilder-time-stamp: 1769107569
+I: Current time: Sat Dec 21 02:25:35 +14 2024
+I: pbuilder-time-stamp: 1734697535
 I: Building the build Environment
 I: extracting base tarball [/var/cache/pbuilder/unstable-reproducible-base.tgz]
 I: copying local configuration
@@ -31,52 +31,84 @@
 dpkg-source: info: applying 0006-Fix-Dalli-NameError.patch
 I: Not using root during the build.
 I: Installing the build-deps
-I: user script /srv/workspace/pbuilder/4077119/tmp/hooks/D02_print_environment starting
+I: user script /srv/workspace/pbuilder/2824158/tmp/hooks/D01_modify_environment starting
+debug: Running on ionos11-amd64.
+I: Changing host+domainname to test build reproducibility
+I: Adding a custom variable just for the fun of it...
+I: Changing /bin/sh to bash
+'/bin/sh' -> '/bin/bash'
+lrwxrwxrwx 1 root root 9 Dec 20 12:25 /bin/sh -> /bin/bash
+I: Setting pbuilder2's login shell to /bin/bash
+I: Setting pbuilder2's GECOS to second user,second room,second work-phone,second home-phone,second other
+I: user script /srv/workspace/pbuilder/2824158/tmp/hooks/D01_modify_environment finished
+I: user script /srv/workspace/pbuilder/2824158/tmp/hooks/D02_print_environment starting
 I: set
-  BUILDDIR='/build/reproducible-path'
-  BUILDUSERGECOS='first user,first room,first work-phone,first home-phone,first other'
-  BUILDUSERNAME='pbuilder1'
-  BUILD_ARCH='amd64'
-  DEBIAN_FRONTEND='noninteractive'
-  DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=42 '
-  DISTRIBUTION='unstable'
-  HOME='/root'
-  HOST_ARCH='amd64'
+  BASH=/bin/sh
+  BASHOPTS=checkwinsize:cmdhist:complete_fullquote:extquote:force_fignore:globasciiranges:globskipdots:hostcomplete:interactive_comments:patsub_replacement:progcomp:promptvars:sourcepath
+  BASH_ALIASES=()
+  BASH_ARGC=()
+  BASH_ARGV=()
+  BASH_CMDS=()
+  BASH_LINENO=([0]="12" [1]="0")
+  BASH_LOADABLES_PATH=/usr/local/lib/bash:/usr/lib/bash:/opt/local/lib/bash:/usr/pkg/lib/bash:/opt/pkg/lib/bash:.
+  BASH_SOURCE=([0]="/tmp/hooks/D02_print_environment" [1]="/tmp/hooks/D02_print_environment")
+  BASH_VERSINFO=([0]="5" [1]="2" [2]="37" [3]="1" [4]="release" [5]="x86_64-pc-linux-gnu")
+  BASH_VERSION='5.2.37(1)-release'
+  BUILDDIR=/build/reproducible-path
+  BUILDUSERGECOS='second user,second room,second work-phone,second home-phone,second other'
+  BUILDUSERNAME=pbuilder2
+  BUILD_ARCH=amd64
+  DEBIAN_FRONTEND=noninteractive
+  DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=20 '
+  DIRSTACK=()
+  DISTRIBUTION=unstable
+  EUID=0
+  FUNCNAME=([0]="Echo" [1]="main")
+  GROUPS=()
+  HOME=/root
+  HOSTNAME=i-capture-the-hostname
+  HOSTTYPE=x86_64
+  HOST_ARCH=amd64
   IFS=' 	
   '
-  INVOCATION_ID='99d3820f890d4e63819b9a11e7594aec'
-  LANG='C'
-  LANGUAGE='en_US:en'
-  LC_ALL='C'
-  MAIL='/var/mail/root'
-  OPTIND='1'
-  PATH='/usr/sbin:/usr/bin:/sbin:/bin:/usr/games'
-  PBCURRENTCOMMANDLINEOPERATION='build'
-  PBUILDER_OPERATION='build'
-  PBUILDER_PKGDATADIR='/usr/share/pbuilder'
-  PBUILDER_PKGLIBDIR='/usr/lib/pbuilder'
-  PBUILDER_SYSCONFDIR='/etc'
-  PPID='4077119'
-  PS1='# '
-  PS2='> '
+  INVOCATION_ID=c8deccad19ae47c2ab04a652334d444c
+  LANG=C
+  LANGUAGE=et_EE:et
+  LC_ALL=C
+  MACHTYPE=x86_64-pc-linux-gnu
+  MAIL=/var/mail/root
+  OPTERR=1
+  OPTIND=1
+  OSTYPE=linux-gnu
+  PATH=/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path
+  PBCURRENTCOMMANDLINEOPERATION=build
+  PBUILDER_OPERATION=build
+  PBUILDER_PKGDATADIR=/usr/share/pbuilder
+  PBUILDER_PKGLIBDIR=/usr/lib/pbuilder
+  PBUILDER_SYSCONFDIR=/etc
+  PIPESTATUS=([0]="0")
+  POSIXLY_CORRECT=y
+  PPID=2824158
   PS4='+ '
-  PWD='/'
-  SHELL='/bin/bash'
-  SHLVL='2'
-  SUDO_COMMAND='/usr/bin/timeout -k 18.1h 18h /usr/bin/ionice -c 3 /usr/bin/nice /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.QJGYphjo/pbuilderrc_QEz2 --distribution unstable --hookdir /etc/pbuilder/first-build-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/unstable-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.QJGYphjo/b1 --logfile b1/build.log ruby-dalli_3.2.8-1.dsc'
-  SUDO_GID='111'
-  SUDO_UID='106'
-  SUDO_USER='jenkins'
-  TERM='unknown'
-  TZ='/usr/share/zoneinfo/Etc/GMT+12'
-  USER='root'
-  _='/usr/bin/systemd-run'
-  http_proxy='http://213.165.73.152:3128'
+  PWD=/
+  SHELL=/bin/bash
+  SHELLOPTS=braceexpand:errexit:hashall:interactive-comments:posix
+  SHLVL=3
+  SUDO_COMMAND='/usr/bin/timeout -k 24.1h 24h /usr/bin/ionice -c 3 /usr/bin/nice -n 11 /usr/bin/unshare --uts -- /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.QJGYphjo/pbuilderrc_IEpH --distribution unstable --hookdir /etc/pbuilder/rebuild-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/unstable-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.QJGYphjo/b2 --logfile b2/build.log ruby-dalli_3.2.8-1.dsc'
+  SUDO_GID=111
+  SUDO_UID=106
+  SUDO_USER=jenkins
+  TERM=unknown
+  TZ=/usr/share/zoneinfo/Etc/GMT-14
+  UID=0
+  USER=root
+  _='I: set'
+  http_proxy=http://46.16.76.132:3128
 I: uname -a
-  Linux ionos15-amd64 6.11.5+bpo-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.11.5-1~bpo12+1 (2024-11-11) x86_64 GNU/Linux
+  Linux i-capture-the-hostname 6.1.0-28-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.119-1 (2024-11-22) x86_64 GNU/Linux
 I: ls -l /bin
-  lrwxrwxrwx 1 root root 7 Nov 22  2024 /bin -> usr/bin
-I: user script /srv/workspace/pbuilder/4077119/tmp/hooks/D02_print_environment finished
+  lrwxrwxrwx 1 root root 7 Nov 22 14:40 /bin -> usr/bin
+I: user script /srv/workspace/pbuilder/2824158/tmp/hooks/D02_print_environment finished
  -> Attempting to satisfy build-dependencies
  -> Creating pbuilder-satisfydepends-dummy package
 Package: pbuilder-satisfydepends-dummy
@@ -312,7 +344,7 @@
 Get: 186 http://deb.debian.org/debian unstable/main amd64 ruby-rails all 2:6.1.7.3+dfsg-4 [25.8 kB]
 Get: 187 http://deb.debian.org/debian unstable/main amd64 ruby-simplecov-html all 0.12.3-2 [468 kB]
 Get: 188 http://deb.debian.org/debian unstable/main amd64 ruby-simplecov all 0.22.0-1 [45.1 kB]
-Fetched 52.5 MB in 1s (73.3 MB/s)
+Fetched 52.5 MB in 5s (10.9 MB/s)
 debconf: delaying package configuration, since apt-utils is not installed
 Selecting previously unselected package fonts-lato.
 (Reading database ... 
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 19967 files and directories currently installed.)
@@ -934,8 +966,8 @@
 Setting up tzdata (2024b-4) ...
 
 Current default time zone: 'Etc/UTC'
-Local time is now:      Thu Jan 22 18:46:40 UTC 2026.
-Universal Time is now:  Thu Jan 22 18:46:40 UTC 2026.
+Local time is now:      Fri Dec 20 12:29:00 UTC 2024.
+Universal Time is now:  Fri Dec 20 12:29:00 UTC 2024.
 Run 'dpkg-reconfigure tzdata' if you wish to change it.
 
 Setting up ruby-websocket-extensions (0.1.5-2) ...
@@ -1102,7 +1134,11 @@
 Building tag database...
  -> Finished parsing the build-deps
 I: Building the package
-I: Running cd /build/reproducible-path/ruby-dalli-3.2.8/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-genchanges -S  > ../ruby-dalli_3.2.8-1_source.changes
+I: user script /srv/workspace/pbuilder/2824158/tmp/hooks/A99_set_merged_usr starting
+Not re-configuring usrmerge for unstable
+I: user script /srv/workspace/pbuilder/2824158/tmp/hooks/A99_set_merged_usr finished
+hostname: Name or service not known
+I: Running cd /build/reproducible-path/ruby-dalli-3.2.8/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-genchanges -S  > ../ruby-dalli_3.2.8-1_source.changes
 dpkg-buildpackage: info: source package ruby-dalli
 dpkg-buildpackage: info: source version 3.2.8-1
 dpkg-buildpackage: info: source distribution unstable
@@ -1135,7 +1171,7 @@
 │ ruby-dalli: Installing files and building extensions for ruby3.1             │
 └──────────────────────────────────────────────────────────────────────────────┘
 
-/usr/bin/ruby3.1 -S gem build --config-file /dev/null --verbose /tmp/d20260122-4082429-shr52h/gemspec
+/usr/bin/ruby3.1 -S gem build --config-file /dev/null --verbose /tmp/d20241221-2848473-bmc95m/gemspec
 Failed to load /dev/null because it doesn't contain valid YAML hash
 WARNING:  description and summary are identical
 WARNING:  See https://guides.rubygems.org/specification-reference/ for help
@@ -1143,7 +1179,7 @@
   Name: dalli
   Version: 3.2.8
   File: dalli-3.2.8.gem
-/usr/bin/ruby3.1 -S gem install --config-file /dev/null --verbose --local --verbose --no-document --ignore-dependencies --install-dir debian/ruby-dalli/usr/share/rubygems-integration/all /tmp/d20260122-4082429-shr52h/dalli-3.2.8.gem
+/usr/bin/ruby3.1 -S gem install --config-file /dev/null --verbose --local --verbose --no-document --ignore-dependencies --install-dir debian/ruby-dalli/usr/share/rubygems-integration/all /tmp/d20241221-2848473-bmc95m/dalli-3.2.8.gem
 Failed to load /dev/null because it doesn't contain valid YAML hash
 /build/reproducible-path/ruby-dalli-3.2.8/debian/ruby-dalli/usr/share/rubygems-integration/all/gems/dalli-3.2.8/lib/dalli.rb
 /build/reproducible-path/ruby-dalli-3.2.8/debian/ruby-dalli/usr/share/rubygems-integration/all/gems/dalli-3.2.8/lib/dalli/cas/client.rb
@@ -1208,456 +1244,461 @@
 RUBYLIB=. GEM_PATH=/build/reproducible-path/ruby-dalli-3.2.8/debian/ruby-dalli/usr/share/rubygems-integration/all:/build/reproducible-path/ruby-dalli-3.2.8/debian/.debhelper/generated/_source/home/.local/share/gem/ruby/3.1.0:/var/lib/gems/3.1.0:/usr/local/lib/ruby/gems/3.1.0:/usr/lib/ruby/gems/3.1.0:/usr/lib/x86_64-linux-gnu/ruby/gems/3.1.0:/usr/share/rubygems-integration/3.1.0:/usr/share/rubygems-integration/all:/usr/lib/x86_64-linux-gnu/rubygems-integration/3.1.0 ruby3.1 -S rake --rakelibdir /gem2deb-nonexistent -f debian/ruby-tests.rake
 /usr/bin/ruby3.1 -w -I"test" /usr/share/rubygems-integration/all/gems/rake-13.2.1/lib/rake/rake_test_loader.rb "test/integration/test_authentication.rb" "test/integration/test_cas.rb" "test/integration/test_compressor.rb" "test/integration/test_concurrency.rb" "test/integration/test_connection_pool.rb" "test/integration/test_encoding.rb" "test/integration/test_failover.rb" "test/integration/test_marshal.rb" "test/integration/test_memcached_admin.rb" "test/integration/test_namespace_and_key.rb" "test/integration/test_network.rb" "test/integration/test_operations.rb" "test/integration/test_pipelined_get.rb" "test/integration/test_quiet.rb" "test/integration/test_sasl.rb" "test/integration/test_serializer.rb" "test/integration/test_ttl.rb" "test/protocol/meta/test_request_formatter.rb" "test/protocol/test_binary.rb" "test/protocol/test_server_config_parser.rb" "test/protocol/test_ttl_sanitizer.rb" "test/protocol/test_value_compressor.rb" "test/protocol/test_value_marshaller.rb" "test/protocol/test_value_serializer.rb" "test/test_client_options.rb" "test/test_compressor.rb" "test/test_digest_class.rb" "test/test_key_manager.rb" "test/test_rack_session.rb" "test/test_ring.rb" "test/test_servers_arg_normalizer.rb"  -v
 Found memcached 1.6.33 in PATH
-Run options: -v --seed 27994
+Run options: -v --seed 175
 
 # Running:
 
-Dalli::Protocol::ValueCompressor::options::compress_by_default?::when the compress option is unspecified#test_0001_defaults to true = 0.00 s = .
-operations::using the meta protocol::delete#test_0001_returns true on a hit and deletes the entry = 0.14 s = .
-operations::using the meta protocol::delete#test_0002_returns false on a miss = 0.00 s = .
-CAS behavior::using the meta protocol::cas#test_0001_does not call the block when the key has no existing value = 0.01 s = .
-CAS behavior::using the meta protocol::cas#test_0002_calls the block and sets a new value when the key has an existing value = 0.00 s = .
-CAS behavior::using the meta protocol::cas#test_0003_calls the block and sets a new value when the key has the value 'Not found' = 0.00 s = .
-Pipelined Get::using the binary protocol::pipeline_next_responses#test_0002_raises NetworkError when called after pipeline_abort = 0.20 s = .
-Pipelined Get::using the binary protocol::pipeline_next_responses#test_0001_raises NetworkError when called before pipeline_response_setup = 0.10 s = .
-Dalli::Protocol::ValueCompressor::options::compressor::when the compressor option is explicitly specified#test_0001_uses the explicit option = 0.00 s = .
-memcached admin commands::using the binary protocol::version#test_0001_support version operation = 0.00 s = .
-operations::using the meta protocol::gat#test_0001_returns the value and touches on a hit = 0.00 s = .
-operations::using the meta protocol::gat#test_0002_returns nil on a miss = 0.00 s = .
-Dalli::Protocol::ValueCompressor::store::when the raw value is below the compression_min_size::when no compression_min_size options is set::when the value size is less than the default compression_min_size::when the client-level compress option is set to false::when the request options do not specify an explicit compress option#test_0001_does not compress the argument = 0.00 s = .
-Rack::Session::Dalli#test_0013_sets an expiration on new sessions = 4.13 s = .
-Rack::Session::Dalli#test_0007_creates a new cookie = 0.01 s = .
-Rack::Session::Dalli#test_0002_connects to existing server = 0.00 s = .
-Rack::Session::Dalli#test_0006_upgrades to a connection pool = 0.00 s = .
-Rack::Session::Dalli#test_0009_determines session only from a cookie by default = 0.00 s = .
-Rack::Session::Dalli#test_0011_survives nonexistant cookies = 0.00 s = .
-Rack::Session::Dalli#test_0005_generates sids without an existing Dalli::Client = 0.00 s = .
-Rack::Session::Dalli#test_0017_provides new session id with :renew option = 0.01 s = .
-Rack::Session::Dalli#test_0015_does not send the same session id if it did not change = 0.00 s = .
-Rack::Session::Dalli#test_0014_maintains freshness of existing sessions = 4.03 s = .
-Rack::Session::Dalli#test_0003_passes options to MemCache = 0.00 s = .
-Rack::Session::Dalli#test_0018_omits cookie with :defer option but still updates the state = 0.01 s = .
-Rack::Session::Dalli#test_0020_updates deep hashes correctly = 0.00 s = .
-Rack::Session::Dalli#test_0004_rejects a :cache option = 0.00 s = .
-Rack::Session::Dalli#test_0001_faults on no connection = 0.10 s = .
-Rack::Session::Dalli#test_0012_survives nonexistant blank cookies = 0.00 s = .
-Rack::Session::Dalli#test_0010_determines session from params = 0.01 s = .
-Rack::Session::Dalli#test_0016_deletes cookies with :drop option = 0.00 s = .
-Rack::Session::Dalli#test_0008_determines session from a cookie = 0.01 s = .
-Rack::Session::Dalli#test_0019_omits cookie and state update with :skip option = 0.00 s = .
-Pipelined Get::using the binary protocol#test_0001_supports pipelined get = 0.05 s = .
-Pipelined Get::using the binary protocol#test_0002_supports pipelined get with keys containing Unicode or spaces = 0.01 s = .
-Dalli::Protocol::ValueCompressor::store::when the raw value is below the compression_min_size::when no compression_min_size options is set::when the value size is less than the default compression_min_size::when the client-level compress option is set to true::when the request options do not specify an explicit compress option#test_0001_does not compress the argument = 0.00 s = .
-Dalli::ServersArgNormalizer::normalize_servers::when the argument is an array of strings::when there is a single entry, with no commas#test_0001_returns the single entry as an array = 0.00 s = .
-Dalli::Protocol::ValueSerializer::retrieve::when deserialization raises a NameError with a non-matching message#test_0001_re-raises NameError = 0.00 s = .
-KeyManager::validate_key::when there is no namespace::when the key is longer than 250 characters::when there is a custom digest_class parameter#test_0001_returns the truncated key = 0.00 s = .
-Encoding::using the binary protocol#test_0001_supports Unicode values = 0.00 s = .
-Encoding::using the binary protocol#test_0002_supports Unicode keys = 0.00 s = .
-Dalli::Protocol::ValueCompressor::store::when the raw value is below the compression_min_size::when no compression_min_size options is set::when the value size is greater than the default compression_min_size::when the client-level compress option is set to true::when the request options specify compress as false#test_0001_does not compress the argument = 0.00 s = .
-operations::using the binary protocol::get#test_0002_returns nil on a miss = 0.00 s = .
-operations::using the binary protocol::get#test_0003_allows "Not found" as value = 0.00 s = .
-operations::using the binary protocol::get#test_0001_returns the value on a hit = 0.10 s = .
+operations::using the binary protocol::fetch#test_0001_fetches pre-existing values = 0.19 s = .
+operations::using the binary protocol::fetch#test_0003_supports with falsey values = 0.06 s = .
+operations::using the binary protocol::fetch#test_0002_supports with default values = 0.09 s = .
+operations::using the binary protocol::fetch#test_0004_supports with nil values when cache_nils: true = 0.14 s = .
+Dalli::ServersArgNormalizer::normalize_servers::when the argument is an array of strings::when there are multiple entries#test_0001_returns the individual servers as an array = 0.00 s = .
+Dalli::Protocol::ValueCompressor::store::when the raw value is below the compression_min_size::when no compression_min_size options is set::when the value size is less than the default compression_min_size::when the client-level compress option is set to false::when the request options specify compress as true#test_0001_does not compress the argument = 0.00 s = .
+Dalli::Protocol::ValueMarshaller::store::when the value_max_bytes is customized::when the raw option is not specified::when the serialized value is below the value_max_bytes size and min compression size#test_0001_return the expected value and flags = 0.00 s = .
 Dalli::Protocol::ValueCompressor::store::when the raw value is below the compression_min_size::when no compression_min_size options is set::when the value size is less than the default compression_min_size::when the client-level compress option is set to true::when the request options specify compress as true#test_0001_does not compress the argument = 0.00 s = .
-Dalli::Protocol::ValueCompressor::store::when the raw value is below the compression_min_size::when a compression_min_size options is explicitly set::when the value size is greater than the explicit compression size::when the client-level compress option is set to false::when the request options specify compress as false#test_0001_does not compress the argument = 0.00 s = .
-KeyManager::validate_key::when there is a namespace::when the key with namespace is longer than 250 characters::when there is no digest_class parameter#test_0001_returns the truncated key = 0.00 s = .
-connection pool behavior::using the meta protocol#test_0001_can masquerade as a connection pool using the with method = 0.00 s = .
-operations::using the binary protocol::delete#test_0002_returns false on a miss = 0.00 s = .
-operations::using the binary protocol::delete#test_0001_returns true on a hit and deletes the entry = 0.00 s = .
-Dalli::ServersArgNormalizer::normalize_servers::when the argument is neither a string nor an array of strings#test_0001_raises an error = 0.00 s = .
-CAS behavior::using the binary protocol#test_0002_supports replace-with-CAS operation = 0.00 s = .
-CAS behavior::using the binary protocol#test_0003_supports delete with CAS = 0.00 s = .
-CAS behavior::using the binary protocol#test_0001_supports multi-get with CAS = 0.00 s = .
-CAS behavior::using the binary protocol#test_0004_handles CAS round-trip operations = 0.01 s = .
-connection pool behavior::using the binary protocol#test_0001_can masquerade as a connection pool using the with method = 0.02 s = .
-Dalli::Protocol::ValueSerializer::retrieve::when deserialization raises a TypeError with a non-matching message#test_0001_re-raises TypeError = 0.00 s = .
-KeyManager::validate_key::when there is no namespace::when the key is longer than 250 characters::when there is no digest_class parameter#test_0001_returns the truncated key = 0.00 s = .
 Dalli::Protocol::ValueSerializer::retrieve::when the bitflags do not specify serialization#test_0001_should return the value without deserializing = 0.00 s = .
-failover::using the meta protocol::assuming some bad servers#test_0006_stats it still properly report = 2.12 s = .
-failover::using the meta protocol::assuming some bad servers#test_0002_reconnects if server idles the connection = 7.04 s = .
-failover::using the meta protocol::assuming some bad servers#test_0003_handle graceful failover = 1.31 s = .
-failover::using the meta protocol::assuming some bad servers#test_0005_handle graceful failover in get_multi = 1.21 s = .
-failover::using the meta protocol::assuming some bad servers#test_0001_silently reconnect if server hiccups = 2.02 s = .
-failover::using the meta protocol::assuming some bad servers#test_0004_handle them gracefully in get_multi = 1.11 s = .
-Dalli client options#test_0001_not warn about valid options = 0.00 s = .
-operations::using the meta protocol::replace#test_0001_returns a CAS when the key exists and updates the value = 0.00 s = .
-operations::using the meta protocol::replace#test_0002_returns false when no pre-existing value exists = 0.00 s = .
-CAS behavior::using the meta protocol#test_0004_handles CAS round-trip operations = 0.00 s = .
-CAS behavior::using the meta protocol#test_0001_supports multi-get with CAS = 0.00 s = .
-CAS behavior::using the meta protocol#test_0002_supports replace-with-CAS operation = 0.00 s = .
-CAS behavior::using the meta protocol#test_0003_supports delete with CAS = 0.00 s = .
-Dalli::Protocol::ValueSerializer::retrieve::when deserialization raises an ArgumentError for an undefined class#test_0001_raises UnmarshalError on uninitialized constant = 0.00 s = .
-KeyManager::validate_key::when there is a namespace::when the key with namespace is longer than 250 characters::when there is a custom digest_class parameter#test_0001_returns the truncated key = 0.00 s = .
-Ring::a ring of servers::containing multiple servers#test_0001_raise correctly when no server is alive = 0.20 s = .
-Ring::a ring of servers::containing multiple servers#test_0002_return an alive server when at least one is alive = 1.01 s = .
-Dalli::Protocol::ServerConfigParser::parse::errors::when the string ends with a colon#test_0001_produces an error = 0.00 s = .
-Dalli::Protocol::ValueCompressor::options::compress_by_default?::when the compress option is unspecified::when the deprecated compression option is used#test_0001_overrides the default = 0.00 s = .
-memcached admin commands::using the binary protocol::stats#test_0001_support stats = 0.02 s = .
-Dalli::Protocol::TtlSanitizer::sanitize::when the argument is a string::when the value is less than 30 days in seconds#test_0001_just returns the value = 0.00 s = .
-operations::using the meta protocol::get#test_0002_returns nil on a miss = 0.00 s = .
-operations::using the meta protocol::get#test_0001_returns the value on a hit = 0.09 s = .
-operations::using the meta protocol::get#test_0003_allows "Not found" as value = 0.00 s = .
-Dalli::Protocol::ValueCompressor::options::compress_by_default?::when the compress option is explicitly false::when the deprecated compression option is used#test_0001_does not override the explicit compress options = 0.00 s = .
-KeyManager::validate_key::when there is a namespace::when the key is blank, but not empty#test_0001_returns the key = 0.00 s = .
+Dalli::Protocol::ValueCompressor::retrieve::when the bitflags do not specify compression#test_0001_should return the value without decompressing = 0.00 s = .
+Ring::a ring of servers::containing only a single server#test_0002_return the server when it's alive = 1.12 s = .
 Ring::a ring of servers::containing only a single server#test_0001_raise correctly when it's not alive = 0.10 s = .
-Ring::a ring of servers::containing only a single server#test_0002_return the server when it's alive = 1.01 s = .
-KeyManager::options::namespace::when there is no explicit namespace parameter provided#test_0001_the namespace is nil = 0.00 s = .
-operations::using the meta protocol::touch#test_0002_returns nil on a miss = 0.00 s = .
-operations::using the meta protocol::touch#test_0001_returns true on a hit = 0.00 s = .
+Dalli::Protocol::ValueSerializer::store::when the request options do not specify a value for the :raw key#test_0001_serializes the value = 0.00 s = .
+Dalli::Protocol::ValueCompressor::store::when the raw value is below the compression_min_size::when no compression_min_size options is set::when the value size is greater than the default compression_min_size::when the client-level compress option is set to true::when the request options specify compress as false#test_0001_does not compress the argument = 0.00 s = .
+Compressor::using the meta protocol::GzipCompressor#test_0001_compress and uncompress data using Zlib::GzipWriter/Reader = 1.12 s = .
+memcached admin commands::using the binary protocol::stats#test_0001_support stats = 0.40 s = .
+Serializer configuration::using the meta protocol#test_0003_errors appropriately when the value cannot be marshalled = 0.08 s = .
+Serializer configuration::using the meta protocol#test_0002_allow large values under the limit to be set = 0.16 s = .
+Serializer configuration::using the meta protocol#test_0001_does not allow values over the 1MB limit = 0.46 s = .
+Dalli::Protocol::Meta::RequestFormatter::flush#test_0001_returns the expected string with no arguments = 0.00 s = .
+Dalli::Protocol::Meta::RequestFormatter::flush#test_0002_adds noreply when quiet is true = 0.00 s = .
+Dalli::Protocol::Meta::RequestFormatter::flush#test_0003_returns the expected string with a delay argument = 0.00 s = .
+Dalli::Protocol::Meta::RequestFormatter::flush#test_0004_santizes the delay argument = 0.00 s = .
+Dalli::Protocol::Meta::RequestFormatter::flush#test_0005_adds noreply with a delay and quiet argument = 0.00 s = .
+KeyManager::options::namespace::when there is a Proc provided as a namespace parameter#test_0001_the namespace is the proc = 0.00 s = .
+KeyManager::options::namespace::when there is a Proc provided as a namespace parameter#test_0002_the evaluated namespace is the stringified symbol = 0.00 s = .
+operations::using the binary protocol::incr/decr#test_0005_supports 64-bit values = 0.14 s = .
+operations::using the binary protocol::incr/decr#test_0002_returns nil on a miss with no initial value = 0.07 s = .
+operations::using the binary protocol::incr/decr#test_0004_supports setting the initial value with decr and subsequently incrementing/decrementing = 0.87 s = .
+operations::using the binary protocol::incr/decr#test_0003_enables setting an initial value with incr and subsequently incrementing/decrementing = 0.09 s = .
+operations::using the binary protocol::incr/decr#test_0001_supports incrementing and decrementing existing values = 0.13 s = .
 Dalli::Protocol::ValueSerializer::retrieve::when deserialization raises an TypeError for an instance of IO needed#test_0001_raises UnmarshalError on uninitialized constant = 0.00 s = .
-operations::using the binary protocol::touch#test_0001_returns true on a hit = 0.00 s = .
-operations::using the binary protocol::touch#test_0002_returns nil on a miss = 0.00 s = .
-Dalli::Protocol::ValueCompressor::options::compressor::when the compressor option is unspecified#test_0001_defaults to Dalli::Compressor = 0.00 s = .
+failed to listen on TCP port 21345: Address already in use
+authentication::using the meta protocol#test_0001_raises an error if the username is set = 0.17 s = .
+Dalli::Protocol::ValueMarshaller::store::when the bytesize is under value_max_bytes::when the raw option is not specified::when the value is below the minimum compression size#test_0001_return the expected value and flags = 0.00 s = .
+Serializer configuration::using the binary protocol#test_0001_defaults to Marshal = 1.12 s = .
+Serializer configuration::using the binary protocol#test_0002_supports a custom serializer = 2.12 s = .
+failed to listen on TCP port 19191: Address already in use
+Network::using the meta protocol#test_0001_handles timeout error during pipelined get = 0.57 s = .
+failed to listen on TCP port 19191: Address already in use
+Network::using the meta protocol#test_0003_handles asynchronous Thread#raise during pipelined get = 9.21 s = .
+failed to listen on TCP port 19191: Address already in use
+Network::using the meta protocol#test_0002_handles asynchronous Thread#raise = 1.93 s = .
+failed to listen on TCP port 19191: Address already in use
+Network::using the meta protocol#test_0004_handles asynchronous Thread#kill = 1.95 s = .
+failed to listen on TCP port 19191: Address already in use
+Network::using the meta protocol#test_0005_handles asynchronous Thread#kill during pipelined get = 7.43 s = .
+Network::using the meta protocol#test_0006_passes a simple smoke test on a TCP socket = 0.11 s = .
+Network::using the meta protocol#test_0007_passes a simple smoke test on unix socket = 0.27 s = .
+Compressor::using the binary protocol::GzipCompressor#test_0001_compress and uncompress data using Zlib::GzipWriter/Reader = 1.10 s = .
 Dalli::Protocol::ServerConfigParser::parse::errors::when the string is empty#test_0001_produces an error = 0.00 s = .
-Network::using the binary protocol::assuming a bad network::with a fake server#test_0001_handle connection reset = 0.41 s = .
-Network::using the binary protocol::assuming a bad network::with a fake server#test_0006_handle read timeouts = 1.02 s = .
-Network::using the binary protocol::assuming a bad network::with a fake server#test_0005_handle connect timeouts = 1.43 s = .
-Network::using the binary protocol::assuming a bad network::with a fake server#test_0004_handle socket timeouts = 0.10 s = .
-Network::using the binary protocol::assuming a bad network::with a fake server#test_0003_handle malformed response = 0.42 s = .
-Network::using the binary protocol::assuming a bad network::with a fake server#test_0002_handle connection reset with unix socket = 0.41 s = .
-Dalli::Protocol::ValueCompressor::options::compression_min_size::when the compression_min_size option is unspecified#test_0001_defaults to 4 KB = 0.00 s = .
-Dalli::Protocol::ValueSerializer::store::when serialization raises an Error that is not a TimeoutError#test_0001_translates that into a MarshalError = 0.00 s = .
-Dalli::Protocol::TtlSanitizer::sanitize::when the argument is an integer::when the value is less than 30 days in seconds#test_0001_just returns the value = 0.00 s = .
+concurrent behavior::using the meta protocol#test_0001_supports multithreaded access = 97.85 s = .
+Dalli::Protocol::ValueMarshaller::store::when the value_max_bytes is the default 1MB::when the raw option is specified::when the value is below the value_max_bytes size and above the minimum compression size#test_0001_return the expected value and flags = 0.00 s = .
+KeyManager::validate_key::when there is a namespace::when the key is empty#test_0001_raises an error = 0.00 s = .
+Dalli client options#test_0001_not warn about valid options = 0.00 s = .
+KeyManager::validate_key::when there is a namespace::when the key with namespace is shorter than 250 characters#test_0001_returns the key = 0.00 s = .
+Dalli::ServersArgNormalizer::normalize_servers::when the argument is neither a string nor an array of strings#test_0001_raises an error = 0.00 s = .
+memcached admin commands::using the binary protocol::version#test_0001_support version operation = 0.03 s = .
+Dalli::ServersArgNormalizer::normalize_servers::when the argument is an array of strings::when there is a single entry, with no commas#test_0001_returns the single entry as an array = 0.00 s = .
+CAS behavior::using the binary protocol::get_cas::when no block is given#test_0002_allows "Not found" as value = 0.07 s = .
+CAS behavior::using the binary protocol::get_cas::when no block is given#test_0003_returns [nil, 0] on a miss = 0.03 s = .
+CAS behavior::using the binary protocol::get_cas::when no block is given#test_0001_returns the value and a CAS = 0.07 s = .
+KeyManager::validate_key::when there is no namespace::when the key is blank, but not empty#test_0001_returns the key = 0.00 s = .
+Dalli::Protocol::ValueMarshaller::options::value_max_bytes::by default#test_0001_sets value_max_bytes to 1MB by default = 0.00 s = .
+Dalli::Protocol::ValueCompressor::store::when the raw value is below the compression_min_size::when a compression_min_size options is explicitly set::when the value size is greater than the explicit compression size::when the client-level compress option is set to false::when the request options do not specify an explicit compress option#test_0001_does not compress the argument = 0.00 s = .
+Dalli::Protocol::ValueCompressor::store::when the raw value is below the compression_min_size::when a compression_min_size options is explicitly set::when the value size is greater than the explicit compression size::when the client-level compress option is set to true::when the request options do not specify an explicit compress option#test_0001_compresses the argument = 0.00 s = .
+KeyManager::validate_key::when there is no namespace::when the key is longer than 250 characters::when there is no digest_class parameter#test_0001_returns the truncated key = 0.00 s = .
 Dalli::Protocol::ValueSerializer::retrieve::when deserialization raises an ArgumentError with a non-matching message#test_0001_re-raises ArgumentError = 0.00 s = .
-operations::using the meta protocol::append/prepend#test_0001_support the append and prepend operations = 0.22 s = .
-Dalli client options::servers configuration#test_0001_default to localhost:11211 = 0.00 s = .
+Dalli::Protocol::ServerConfigParser::parse::when the string is not an memcached URI::tcp::when the hostname is a domain name#test_0001_parses a hostname by itself = 0.00 s = .
+Dalli::Protocol::ServerConfigParser::parse::when the string is not an memcached URI::tcp::when the hostname is a domain name#test_0002_parses hostname with a port = 0.00 s = .
+Dalli::Protocol::ServerConfigParser::parse::when the string is not an memcached URI::tcp::when the hostname is a domain name#test_0003_parses hostname with a port and weight = 0.00 s = .
+CAS behavior::using the binary protocol::cas#test_0001_does not call the block when the key has no existing value = 0.03 s = .
+CAS behavior::using the binary protocol::cas#test_0003_calls the block and sets a new value when the key has the value 'Not found' = 0.09 s = .
+CAS behavior::using the binary protocol::cas#test_0002_calls the block and sets a new value when the key has an existing value = 0.03 s = .
+Dalli::Protocol::TtlSanitizer::sanitize::when the argument is an integer::when the value is more than the current timestamp#test_0001_just returns the value = 0.00 s = .
+Dalli::Protocol::ValueSerializer::retrieve::when deserialization raises a NameError for an uninitialized constant#test_0001_raises UnmarshalError on uninitialized constant = 0.08 s = .
+connection pool behavior::using the binary protocol#test_0001_can masquerade as a connection pool using the with method = 0.09 s = .
+Dalli::Protocol::ValueCompressor::store::when the raw value is below the compression_min_size::when no compression_min_size options is set::when the value size is greater than the default compression_min_size::when the client-level compress option is set to false::when the request options specify compress as false#test_0001_does not compress the argument = 0.00 s = .
+Dalli::ServersArgNormalizer::normalize_servers::when the argument is a single string::when the string is a single entry#test_0001_returns the single entry as an array = 0.00 s = .
+operations::using the binary protocol::get#test_0001_returns the value on a hit = 1.35 s = .
+operations::using the binary protocol::get#test_0002_returns nil on a miss = 0.08 s = .
+operations::using the binary protocol::get#test_0003_allows "Not found" as value = 0.07 s = .
+Dalli client options::servers configuration#test_0002_accept comma separated string = 0.02 s = .
 Dalli client options::servers configuration#test_0004_raises error when servers is a Hash = 0.00 s = .
-Dalli client options::servers configuration#test_0002_accept comma separated string = 0.01 s = .
-Dalli client options::servers configuration#test_0003_accept array of servers = 0.00 s = .
-Dalli::Protocol::ValueCompressor::store::when the raw value is below the compression_min_size::when a compression_min_size options is explicitly set::when the value size is greater than the explicit compression size::when the client-level compress option is set to false::when the request options do not specify an explicit compress option#test_0001_does not compress the argument = 0.00 s = .
-KeyManager::key_with_namespace::without namespace#test_0001_returns the argument = 0.00 s = .
-Dalli::ServersArgNormalizer::normalize_servers::when the argument is an array with non-strings#test_0001_raises an error = 0.00 s = .
-Quiet behavior::using the binary protocol#test_0003_supports the use of replace in a quiet block = 0.01 s = .
-Quiet behavior::using the binary protocol#test_0007_supports the use of incr in a quiet block = 0.01 s = .
-Quiet behavior::using the binary protocol#test_0010_does not corrupt the underlying response buffer when a memcached error occurs in a quiet block = 0.01 s = .
-Quiet behavior::using the binary protocol#test_0002_supports the use of add in a quiet block = 0.01 s = .
-Quiet behavior::using the binary protocol#test_0005_supports the use of append in a quiet block = 0.00 s = .
-Quiet behavior::using the binary protocol#test_0009_supports the use of flush in a quiet block = 0.00 s = .
-Quiet behavior::using the binary protocol#test_0001_supports the use of set in a quiet block = 0.00 s = .
-Quiet behavior::using the binary protocol#test_0008_supports the use of decr in a quiet block = 0.00 s = .
-Quiet behavior::using the binary protocol#test_0006_supports the use of prepend in a quiet block = 0.00 s = .
-Quiet behavior::using the binary protocol#test_0004_supports the use of delete in a quiet block = 0.00 s = .
-Quiet behavior::using the binary protocol#test_0011_raises an error if an invalid operation is used in a multi block = 0.00 s = .
+Dalli client options::servers configuration#test_0001_default to localhost:11211 = 0.00 s = .
+Dalli client options::servers configuration#test_0003_accept array of servers = 0.04 s = .
+operations::using the binary protocol::gat#test_0001_returns the value and touches on a hit = 0.12 s = .
+operations::using the binary protocol::gat#test_0002_returns nil on a miss = 0.10 s = .
+Dalli::Protocol::ValueCompressor::store::when the raw value is below the compression_min_size::when a compression_min_size options is explicitly set::when the value size is less than the explicit compression size::when the client-level compress option is set to true::when the request options specify compress as false#test_0001_does not compress the argument = 0.00 s = .
+Dalli::Protocol::ValueSerializer::options::serializer::when the serializer option is unspecified#test_0001_defaults to Marshal = 0.00 s = .
+CAS behavior::using the binary protocol#test_0001_supports multi-get with CAS = 0.35 s = .
+CAS behavior::using the binary protocol#test_0003_supports delete with CAS = 0.32 s = .
+CAS behavior::using the binary protocol#test_0002_supports replace-with-CAS operation = 0.11 s = .
+CAS behavior::using the binary protocol#test_0004_handles CAS round-trip operations = 0.15 s = .
+Dalli::Protocol::ValueCompressor::store::when the raw value is below the compression_min_size::when no compression_min_size options is set::when the value size is less than the default compression_min_size::when the client-level compress option is set to false::when the request options specify compress as false#test_0001_does not compress the argument = 0.00 s = .
+Dalli::Protocol::ValueMarshaller::store::when the value_max_bytes is the default 1MB::when the raw option is specified::when the raw compressed value is above the value_max_bytes size#test_0001_raises an error with the expected message = 10.46 s = .
+CAS behavior::using the meta protocol#test_0004_handles CAS round-trip operations = 0.15 s = .
+CAS behavior::using the meta protocol#test_0003_supports delete with CAS = 0.12 s = .
+CAS behavior::using the meta protocol#test_0001_supports multi-get with CAS = 0.14 s = .
+CAS behavior::using the meta protocol#test_0002_supports replace-with-CAS operation = 0.08 s = .
+Dalli::ServersArgNormalizer::normalize_servers::when the argument is a single string::when the string is multiple comma separated entries with empty entries#test_0001_splits the string and returns an array, discarding the empty elements = 0.00 s = .
+Dalli::Protocol::ValueSerializer::store::when the request options value for the :raw key is false#test_0001_serializes the value = 0.00 s = .
+Dalli::Protocol::ValueCompressor::options::compression_min_size::when the compression_min_size option is explicitly specified#test_0001_uses the explicit option = 0.00 s = .
+operations::using the meta protocol::replace#test_0001_returns a CAS when the key exists and updates the value = 0.11 s = .
+operations::using the meta protocol::replace#test_0002_returns false when no pre-existing value exists = 0.09 s = .
+Dalli::Protocol::ValueSerializer::retrieve::when deserialization raises a NameError with a non-matching message#test_0001_re-raises NameError = 0.06 s = .
+KeyManager::key_without_namespace::with namespace::when the argument does not include the namespace#test_0001_returns the argument = 0.00 s = .
+Dalli::Protocol::ValueCompressor::options::compress_by_default?::when the compress option is explicitly false#test_0001_is false = 0.00 s = .
+Compressor::using the meta protocol#test_0001_default to Dalli::Compressor = 1.10 s = .
+Compressor::using the meta protocol#test_0002_support a custom compressor = 2.09 s = .
+Dalli::Protocol::ValueCompressor::store::when the raw value is below the compression_min_size::when a compression_min_size options is explicitly set::when the value size is greater than the explicit compression size::when the client-level compress option is set to false::when the request options specify compress as true#test_0001_compresses the argument = 0.00 s = .
+Dalli::Protocol::Meta::RequestFormatter::meta_set#test_0010_sets the quiet mode if configured = 0.00 s = .
+Dalli::Protocol::Meta::RequestFormatter::meta_set#test_0004_passes a TTL if one is provided = 0.00 s = .
+Dalli::Protocol::Meta::RequestFormatter::meta_set#test_0008_excludes CAS if set to 0 = 0.00 s = .
+Dalli::Protocol::Meta::RequestFormatter::meta_set#test_0001_returns the default (treat as a set, no CAS check) when just passed key, datalen, and bitflags = 0.00 s = .
+Dalli::Protocol::Meta::RequestFormatter::meta_set#test_0007_passes a CAS if one is provided = 0.00 s = .
+Dalli::Protocol::Meta::RequestFormatter::meta_set#test_0011_sets the base64 mode if configured = 0.00 s = .
+Dalli::Protocol::Meta::RequestFormatter::meta_set#test_0002_supports the add mode = 0.00 s = .
+Dalli::Protocol::Meta::RequestFormatter::meta_set#test_0009_excludes non-numeric CAS values = 0.00 s = .
+Dalli::Protocol::Meta::RequestFormatter::meta_set#test_0003_supports the replace mode = 0.00 s = .
+Dalli::Protocol::Meta::RequestFormatter::meta_set#test_0005_omits the CAS flag on append = 0.00 s = .
+Dalli::Protocol::Meta::RequestFormatter::meta_set#test_0006_omits the CAS flag on prepend = 0.00 s = .
+Dalli::Protocol::ValueCompressor::store::when the raw value is below the compression_min_size::when a compression_min_size options is explicitly set::when the value size is greater than the explicit compression size::when the client-level compress option is set to true::when the request options specify compress as false#test_0001_does not compress the argument = 0.00 s = .
+KeyManager::options::digest_class::when there is an explicit digest_class parameter provided::and the class implements hexdigest#test_0001_uses the specified argument = 0.00 s = .
+KeyManager::options::namespace::when there is an explicit symbol provided as a namespace parameter#test_0001_the namespace is the stringified symbol = 0.00 s = .
+connection pool behavior::using the meta protocol#test_0001_can masquerade as a connection pool using the with method = 0.06 s = .
+Dalli::ServersArgNormalizer::normalize_servers::when the argument is a single string::when the string is multiple comma separated entries#test_0001_splits the string and returns an array = 0.00 s = .
+Dalli::Protocol::ValueMarshaller::retrieve#test_0001_retrieves the value when the flags indicate the value is both compressed and serialized = 0.00 s = .
+Dalli::Protocol::ValueMarshaller::retrieve#test_0003_retrieves the value when the flags indicate the value is just serialized = 0.00 s = .
+Dalli::Protocol::ValueMarshaller::retrieve#test_0004_retrieves the value when the flags indicate the value is neither compressed nor serialized = 0.00 s = .
+Dalli::Protocol::ValueMarshaller::retrieve#test_0002_retrieves the value when the flags indicate the value is just compressed = 0.00 s = .
+Dalli::Protocol::ValueSerializer::retrieve::when deserialization raises a TypeError for needs to have method `_load#test_0001_raises UnmarshalError on uninitialized constant = 0.00 s = .
+KeyManager::validate_key::when there is a namespace::when the key with namespace is longer than 250 characters::when there is no digest_class parameter#test_0001_returns the truncated key = 0.00 s = .
+Network::using the meta protocol::assuming a bad network::with a fake server#test_0001_handle connection reset = 0.65 s = .
+Network::using the meta protocol::assuming a bad network::with a fake server#test_0003_handle malformed response = 0.60 s = .
+Network::using the meta protocol::assuming a bad network::with a fake server#test_0005_handle connect timeouts = 1.81 s = .
+Network::using the meta protocol::assuming a bad network::with a fake server#test_0002_handle connection reset with unix socket = 0.48 s = .
+Network::using the meta protocol::assuming a bad network::with a fake server#test_0004_handle socket timeouts = 0.15 s = .
+Network::using the meta protocol::assuming a bad network::with a fake server#test_0006_handle read timeouts = 1.24 s = .
+Quiet behavior::using the meta protocol#test_0011_raises an error if an invalid operation is used in a multi block = 0.54 s = .
+Quiet behavior::using the meta protocol#test_0009_supports the use of flush in a quiet block = 0.28 s = .
+Quiet behavior::using the meta protocol#test_0001_supports the use of set in a quiet block = 0.11 s = .
+Quiet behavior::using the meta protocol#test_0010_does not corrupt the underlying response buffer when a memcached error occurs in a quiet block = 0.17 s = .
+Quiet behavior::using the meta protocol#test_0008_supports the use of decr in a quiet block = 0.14 s = .
+Quiet behavior::using the meta protocol#test_0005_supports the use of append in a quiet block = 0.14 s = .
+Quiet behavior::using the meta protocol#test_0002_supports the use of add in a quiet block = 0.16 s = .
+Quiet behavior::using the meta protocol#test_0003_supports the use of replace in a quiet block = 0.16 s = .
+Quiet behavior::using the meta protocol#test_0006_supports the use of prepend in a quiet block = 0.14 s = .
+Quiet behavior::using the meta protocol#test_0004_supports the use of delete in a quiet block = 0.16 s = .
+Quiet behavior::using the meta protocol#test_0007_supports the use of incr in a quiet block = 0.15 s = .
+Dalli::Protocol::ValueMarshaller::store::when the bytesize is under value_max_bytes::when the raw option is specified::when the value is above the minimum compression size#test_0001_return the expected value and flags = 0.00 s = .
+operations::using the binary protocol::set#test_0001_returns a CAS when the key exists and updates the value = 0.10 s = .
+operations::using the binary protocol::set#test_0002_returns a CAS when no pre-existing value exists = 0.09 s = .
+failover::using the meta protocol::timeouts#test_0001_not lead to corrupt sockets = 0.10 s = .
+KeyManager::validate_key::when there is no namespace::when the key is longer than 250 characters::when there is a custom digest_class parameter#test_0001_returns the truncated key = 0.00 s = .
+Dalli::Protocol::TtlSanitizer::sanitize::when the argument is an integer::when the value is more than 30 days in seconds, but less than the current timestamp#test_0001_converts to a future timestamp = 0.00 s = .
+Network::using the binary protocol::assuming a bad network#test_0004_allow TCP connections to be configured for keepalive = 0.07 s = .
+Network::using the binary protocol::assuming a bad network#test_0002_opens a standard TCP connection when ssl_context is not configured = 0.07 s = .
+Network::using the binary protocol::assuming a bad network#test_0001_handle no server available = 0.12 s = .
+Network::using the binary protocol::assuming a bad network#test_0003_opens a SSL TCP connection when there is an SSL context set = 0.34 s = .
+Dalli::Protocol::ValueMarshaller::options::value_max_bytes::with a user specified value#test_0001_sets value_max_bytes to the user specified value = 0.00 s = .
+Dalli::Protocol::ValueSerializer::retrieve::when deserialization raises an TypeError for an incompatible marshal file format (can't be read)#test_0001_raises UnmarshalError on uninitialized constant = 0.00 s = .
+KeyManager::options::namespace::when there is an explicit String provided as a namespace parameter#test_0001_the namespace is the string = 0.00 s = .
+Dalli::Protocol::ValueSerializer::store::when serialization raises a TimeoutError#test_0001_reraises the Timeout::Error = 0.00 s = .
+Dalli::Protocol::ValueCompressor::options::compress_by_default?::when the compress option is explicitly true#test_0001_is true = 0.00 s = .
+Dalli::Protocol::TtlSanitizer::sanitize::when the argument is a string::when the value is more than 30 days in seconds, but less than the current timestamp#test_0001_converts to a future timestamp = 0.00 s = .
+Dalli::Compressor#test_0001_compresses data using Zlib::Deflate = 0.00 s = .
+Dalli::Compressor#test_0002_deccompresses data using Zlib::Deflate = 0.00 s = .
+Dalli::Protocol::Meta::RequestFormatter::meta_get#test_0002_sets the TTL flag when passed a ttl = 0.00 s = .
+Dalli::Protocol::Meta::RequestFormatter::meta_get#test_0004_sets the CAS retrieval flags when passed that value = 0.00 s = .
+Dalli::Protocol::Meta::RequestFormatter::meta_get#test_0005_sets the flags for returning the key and body size when passed quiet = 0.00 s = .
+Dalli::Protocol::Meta::RequestFormatter::meta_get#test_0003_skips the value and bitflags when passed a pure touch argument = 0.00 s = .
+Dalli::Protocol::Meta::RequestFormatter::meta_get#test_0001_returns the default get (get value and bitflags, no cas) when passed only a key = 0.00 s = .
+operations::using the meta protocol::add#test_0001_returns false when replacing an existing value and does not update the value = 0.11 s = .
+operations::using the meta protocol::add#test_0002_returns a CAS when no pre-existing value exists = 0.07 s = .
+Dalli::Protocol::TtlSanitizer::sanitize::when the argument is a string::when the value is less than 30 days in seconds#test_0001_just returns the value = 0.00 s = .
+KeyManager::key_without_namespace::without namespace::when the key has a colon#test_0001_returns the argument = 0.00 s = .
+Dalli::Protocol::ValueMarshaller::store::when the bytesize is under value_max_bytes::when the raw option is not specified::when the serialized value is above the minimum compression size#test_0001_return the expected value and flags = 0.00 s = .
+concurrent behavior::using the binary protocol#test_0001_supports multithreaded access = 95.90 s = .
+Dalli::Protocol::ValueCompressor::store::when the raw value is below the compression_min_size::when a compression_min_size options is explicitly set::when the value size is greater than the explicit compression size::when the client-level compress option is set to true::when the request options specify compress as true#test_0001_compresses the argument = 0.00 s = .
+CAS behavior::using the meta protocol::get_cas::when no block is given#test_0001_returns the value and a CAS = 0.10 s = .
+CAS behavior::using the meta protocol::get_cas::when no block is given#test_0002_allows "Not found" as value = 0.06 s = .
+CAS behavior::using the meta protocol::get_cas::when no block is given#test_0003_returns [nil, 0] on a miss = 0.05 s = .
+operations::using the meta protocol::set#test_0002_returns a CAS when no pre-existing value exists = 0.09 s = .
+operations::using the meta protocol::set#test_0001_returns a CAS when the key exists and updates the value = 0.10 s = .
+operations::using the meta protocol::touch#test_0001_returns true on a hit = 0.12 s = .
+operations::using the meta protocol::touch#test_0002_returns nil on a miss = 0.07 s = .
+Serializer configuration::using the binary protocol#test_0003_errors appropriately when the value cannot be marshalled = 0.06 s = .
+Serializer configuration::using the binary protocol#test_0001_does not allow values over the 1MB limit = 0.74 s = .
+Serializer configuration::using the binary protocol#test_0002_allow large values under the limit to be set = 0.16 s = .
+Ring::a ring of servers::containing multiple servers#test_0001_raise correctly when no server is alive = 0.31 s = .
+Ring::a ring of servers::containing multiple servers#test_0002_return an alive server when at least one is alive = 1.13 s = .
+Dalli::Protocol::ServerConfigParser::parse::when the string is a memcached URI::when the URI does not include a port#test_0001_parses correctly = 0.00 s = .
+Dalli::Protocol::Meta::RequestFormatter::meta_arithmetic#test_0002_excludes the J and N flags when initial is nil and ttl is not set = 0.00 s = .
 Dalli::Protocol::Meta::RequestFormatter::meta_arithmetic#test_0005_incorporates CAS when passed cas = 0.00 s = .
 Dalli::Protocol::Meta::RequestFormatter::meta_arithmetic#test_0006_excludes CAS when CAS is set to 0 = 0.00 s = .
+Dalli::Protocol::Meta::RequestFormatter::meta_arithmetic#test_0007_includes the N flag when ttl passed explicitly with a nil initial value = 0.00 s = .
 Dalli::Protocol::Meta::RequestFormatter::meta_arithmetic#test_0008_swaps from MI to MD when the incr value is explicitly false = 0.00 s = .
-Dalli::Protocol::Meta::RequestFormatter::meta_arithmetic#test_0002_excludes the J and N flags when initial is nil and ttl is not set = 0.00 s = .
+Dalli::Protocol::Meta::RequestFormatter::meta_arithmetic#test_0010_sets the base64 mode if configured = 0.00 s = .
 Dalli::Protocol::Meta::RequestFormatter::meta_arithmetic#test_0004_uses ttl for the N flag when ttl passed explicitly along with an initial value = 0.00 s = .
-Dalli::Protocol::Meta::RequestFormatter::meta_arithmetic#test_0001_returns the expected string with the default N flag when passed non-nil key, delta, and initial = 0.00 s = .
-Dalli::Protocol::Meta::RequestFormatter::meta_arithmetic#test_0007_includes the N flag when ttl passed explicitly with a nil initial value = 0.00 s = .
 Dalli::Protocol::Meta::RequestFormatter::meta_arithmetic#test_0003_omits the D flag is delta is nil = 0.00 s = .
 Dalli::Protocol::Meta::RequestFormatter::meta_arithmetic#test_0009_includes the quiet flag when specified = 0.00 s = .
-Dalli::Protocol::Meta::RequestFormatter::meta_arithmetic#test_0010_sets the base64 mode if configured = 0.00 s = .
-Dalli::Protocol::ValueCompressor::store::when the raw value is below the compression_min_size::when no compression_min_size options is set::when the value size is greater than the default compression_min_size::when the client-level compress option is set to false::when the request options specify compress as true#test_0001_compresses the argument = 0.00 s = .
-Dalli::Protocol::Meta::RequestFormatter::meta_noop#test_0001_returns the expected string = 0.00 s = .
-Dalli::Protocol::ValueSerializer::store::when the request options do not specify a value for the :raw key#test_0001_serializes the value = 0.00 s = .
-KeyManager::validate_key::when there is a namespace::when the key is empty#test_0001_raises an error = 0.00 s = .
-Dalli::ServersArgNormalizer::normalize_servers::when the argument is nil::when the MEMCACHE_SERVERS environment is set#test_0001_returns the value from the environment = 0.00 s = .
-operations::using the binary protocol::append/prepend#test_0001_support the append and prepend operations = 0.00 s = .
-KeyManager::options::digest_class::when there is an explicit digest_class parameter provided::and the class implements hexdigest#test_0001_uses the specified argument = 0.00 s = .
-Dalli::Protocol::ValueCompressor::store::when the raw value is below the compression_min_size::when a compression_min_size options is explicitly set::when the value size is less than the explicit compression size::when the client-level compress option is set to false::when the request options do not specify an explicit compress option#test_0001_does not compress the argument = 0.00 s = .
-Dalli::Protocol::ValueSerializer::store::when serialization raises a TimeoutError#test_0001_reraises the Timeout::Error = 0.00 s = .
-Dalli::Protocol::ValueMarshaller::store::when the value_max_bytes is the default 1MB::when the raw option is specified::when the raw value is below the value_max_bytes size and min compression size#test_0001_return the expected value and flags = 0.00 s = .
-Compressor::using the meta protocol#test_0001_default to Dalli::Compressor = 1.01 s = .
-Compressor::using the meta protocol#test_0002_support a custom compressor = 2.02 s = .
-Dalli::Protocol::ValueMarshaller::store::when the value_max_bytes is the default 1MB::when the raw option is not specified::when the serialized value is below the value_max_bytes size#test_0001_return the expected value and flags = 0.00 s = .
+Dalli::Protocol::Meta::RequestFormatter::meta_arithmetic#test_0001_returns the expected string with the default N flag when passed non-nil key, delta, and initial = 0.00 s = .
 Dalli::Protocol::ValueMarshaller::store::when the value_max_bytes is customized::when the raw option is specified::when the raw compressed value is above the value_max_bytes size#test_0001_raises an error with the expected message = 0.00 s = .
-Network::using the meta protocol::assuming a bad network#test_0004_allow TCP connections to be configured for keepalive = 0.00 s = .
-Network::using the meta protocol::assuming a bad network#test_0001_handle no server available = 0.10 s = .
-Network::using the meta protocol::assuming a bad network#test_0002_opens a standard TCP connection when ssl_context is not configured = 0.00 s = .
-Network::using the meta protocol::assuming a bad network#test_0003_opens a SSL TCP connection when there is an SSL context set = 0.12 s = .
-Serializer configuration::using the binary protocol#test_0001_defaults to Marshal = 1.01 s = .
-Serializer configuration::using the binary protocol#test_0002_supports a custom serializer = 2.02 s = .
-Ring::a ring of servers#test_0002_raise when no servers are available/defined = 0.00 s = .
-Ring::a ring of servers#test_0003_detect when a dead server is up again = 2.02 s = .
-Ring::a ring of servers#test_0001_have the continuum sorted by value = 0.00 s = .
-CAS behavior::using the binary protocol::cas!#test_0001_calls the block and sets a new value  when the key has no existing value = 0.00 s = .
-CAS behavior::using the binary protocol::cas!#test_0003_calls the block and sets a new value when the key has the value 'Not found' = 0.00 s = .
-CAS behavior::using the binary protocol::cas!#test_0002_calls the block and sets a new value when the key has an existing value = 0.00 s = .
-Dalli::Protocol::TtlSanitizer::sanitize::when the argument is an integer::when the value is more than the current timestamp#test_0001_just returns the value = 0.00 s = .
-Dalli::Protocol::ValueCompressor::store::when the raw value is below the compression_min_size::when no compression_min_size options is set::when the value size is less than the default compression_min_size::when the client-level compress option is set to false::when the request options specify compress as false#test_0001_does not compress the argument = 0.00 s = .
-Dalli::Protocol::ValueCompressor::retrieve::when the bitflags specify compression#test_0001_should decompress the value = 0.00 s = .
-Dalli::Protocol::Meta::RequestFormatter::version#test_0001_returns the expected string = 0.00 s = .
-Compressor::using the meta protocol::GzipCompressor#test_0001_compress and uncompress data using Zlib::GzipWriter/Reader = 1.01 s = .
-KeyManager::options::namespace::when the namespace Proc returns dynamic results#test_0001_evaluates the namespace proc every time we need it = 0.00 s = .
-Serializer configuration::using the meta protocol#test_0001_defaults to Marshal = 1.01 s = .
-Serializer configuration::using the meta protocol#test_0002_supports a custom serializer = 2.02 s = .
+Encoding::using the binary protocol#test_0001_supports Unicode values = 0.10 s = .
+Encoding::using the binary protocol#test_0002_supports Unicode keys = 0.07 s = .
+Dalli::Protocol::ServerConfigParser::parse::when the string is not an memcached URI::tcp::when the hostname is an IPv4 address#test_0002_parses hostname with a port = 0.00 s = .
+Dalli::Protocol::ServerConfigParser::parse::when the string is not an memcached URI::tcp::when the hostname is an IPv4 address#test_0001_parses a hostname by itself = 0.00 s = .
+Dalli::Protocol::ServerConfigParser::parse::when the string is not an memcached URI::tcp::when the hostname is an IPv4 address#test_0003_parses hostname with a port and weight = 0.00 s = .
+Dalli::Protocol::ValueMarshaller::store::when the value_max_bytes is the default 1MB::when the raw option is not specified::when the serialized value is below the value_max_bytes size and min compression size#test_0001_return the expected value and flags = 0.00 s = .
+Dalli::Protocol::ValueCompressor::store::when the raw value is below the compression_min_size::when a compression_min_size options is explicitly set::when the value size is less than the explicit compression size::when the client-level compress option is set to false::when the request options specify compress as false#test_0001_does not compress the argument = 0.00 s = .
 Dalli::Protocol::ValueCompressor::store::when the raw value is below the compression_min_size::when no compression_min_size options is set::when the value size is greater than the default compression_min_size::when the client-level compress option is set to true::when the request options do not specify an explicit compress option#test_0001_compresses the argument = 0.00 s = .
-Dalli::Protocol::ValueMarshaller::store::when the bytesize is under value_max_bytes::when the raw option is not specified::when the serialized value is above the minimum compression size#test_0001_return the expected value and flags = 0.00 s = .
-Dalli::Protocol::ValueCompressor::store::when the raw value is below the compression_min_size::when a compression_min_size options is explicitly set::when the value size is greater than the explicit compression size::when the client-level compress option is set to true::when the request options do not specify an explicit compress option#test_0001_compresses the argument = 0.00 s = .
+operations::using the binary protocol::delete#test_0001_returns true on a hit and deletes the entry = 0.07 s = .
+operations::using the binary protocol::delete#test_0002_returns false on a miss = 0.09 s = .
+Dalli::Protocol::ValueSerializer::store::when the request options are nil#test_0001_serializes the value = 0.00 s = .
+Quiet behavior::using the meta protocol::quiet? method#test_0001_has protocol instances that respond to quiet? = 0.04 s = .
+Quiet behavior::using the meta protocol::quiet? method#test_0002_has protocol instances that respond to multi? = 0.06 s = .
 Dalli::Protocol::ServerConfigParser::parse::errors::when the string starts with a colon#test_0001_produces an error = 0.00 s = .
-Compressor::using the binary protocol::GzipCompressor#test_0001_compress and uncompress data using Zlib::GzipWriter/Reader = 1.01 s = .
+KeyManager::validate_key::when there is a namespace::when the key is blank, but not empty#test_0001_returns the key = 0.00 s = .
+Pipelined Get::using the binary protocol#test_0002_supports pipelined get with keys containing Unicode or spaces = 0.17 s = .
+Pipelined Get::using the binary protocol#test_0001_supports pipelined get = 0.89 s = .
+Encoding::using the meta protocol#test_0002_supports Unicode keys = 0.07 s = .
+Encoding::using the meta protocol#test_0001_supports Unicode values = 0.08 s = .
+KeyManager::options::digest_class::when there is no explicit digest_class parameter provided#test_0001_uses Digest::MD5 as a default = 0.00 s = .
+Dalli::Protocol::ValueMarshaller::store::when the value_max_bytes is the default 1MB::when the raw option is specified::when the raw value is below the value_max_bytes size and min compression size#test_0001_return the expected value and flags = 0.00 s = .
+Dalli::Protocol::ValueMarshaller::store::when the value_max_bytes is customized::when the raw option is not specified::when the compressed, serialized value is above the value_max_bytes size#test_0001_raises an error with the expected message = 0.00 s = .
+Dalli::Protocol::ValueCompressor::retrieve::when the decompression raises a Zlib::Error#test_0001_translates that into a UnmarshalError = 0.00 s = .
+Dalli::Protocol::ValueMarshaller::store::when the bytesize is under value_max_bytes::when the raw option is specified::when the value is below the minimum compression size#test_0001_return the expected value and flags = 0.00 s = .
+Dalli::Protocol::ValueCompressor::store::when the raw value is below the compression_min_size::when a compression_min_size options is explicitly set::when the value size is less than the explicit compression size::when the client-level compress option is set to false::when the request options specify compress as true#test_0001_does not compress the argument = 0.00 s = .
+failover::using the binary protocol::assuming some bad servers#test_0003_handle graceful failover = 1.54 s = .
+failover::using the binary protocol::assuming some bad servers#test_0005_handle graceful failover in get_multi = 1.39 s = .
+failover::using the binary protocol::assuming some bad servers#test_0006_stats it still properly report = 1.30 s = .
+failover::using the binary protocol::assuming some bad servers#test_0004_handle them gracefully in get_multi = 1.27 s = .
+failover::using the binary protocol::assuming some bad servers#test_0001_silently reconnect if server hiccups = 2.23 s = .
+failover::using the binary protocol::assuming some bad servers#test_0002_reconnects if server idles the connection = 7.14 s = .
+memcached admin commands::using the meta protocol::version#test_0001_support version operation = 0.02 s = .
 Dalli::Protocol::ServerConfigParser::parse::when the string is a memcached URI::when the URI is properly formed and includes all values#test_0001_parses correctly = 0.00 s = .
-Dalli::Protocol::ValueMarshaller::options::value_max_bytes::with a user specified value#test_0001_sets value_max_bytes to the user specified value = 0.00 s = .
-KeyManager::validate_key::when there is no namespace::when the key is nil#test_0001_raises an error = 0.00 s = .
-Dalli::Protocol::ValueCompressor::store::when the raw value is below the compression_min_size::when a compression_min_size options is explicitly set::when the value size is greater than the explicit compression size::when the client-level compress option is set to false::when the request options specify compress as true#test_0001_compresses the argument = 0.00 s = .
-operations::using the meta protocol::incr/decr#test_0002_returns nil on a miss with no initial value = 0.00 s = .
-operations::using the meta protocol::incr/decr#test_0003_enables setting an initial value with incr and subsequently incrementing/decrementing = 0.00 s = .
-operations::using the meta protocol::incr/decr#test_0004_supports setting the initial value with decr and subsequently incrementing/decrementing = 0.01 s = .
-operations::using the meta protocol::incr/decr#test_0001_supports incrementing and decrementing existing values = 0.00 s = .
-operations::using the meta protocol::incr/decr#test_0005_supports 64-bit values = 0.00 s = .
+CAS behavior::using the meta protocol::cas!#test_0001_calls the block and sets a new value  when the key has no existing value = 0.05 s = .
+CAS behavior::using the meta protocol::cas!#test_0002_calls the block and sets a new value when the key has an existing value = 0.04 s = .
+CAS behavior::using the meta protocol::cas!#test_0003_calls the block and sets a new value when the key has the value 'Not found' = 0.07 s = .
+Dalli::ServersArgNormalizer::normalize_servers::when the argument is nil::when the MEMCACHE_SERVERS environment is set#test_0001_returns the value from the environment = 0.00 s = .
+CAS behavior::using the binary protocol::cas!#test_0003_calls the block and sets a new value when the key has the value 'Not found' = 0.05 s = .
+CAS behavior::using the binary protocol::cas!#test_0001_calls the block and sets a new value  when the key has no existing value = 0.05 s = .
+CAS behavior::using the binary protocol::cas!#test_0002_calls the block and sets a new value when the key has an existing value = 0.04 s = .
+operations::using the meta protocol::delete#test_0002_returns false on a miss = 0.05 s = .
+operations::using the meta protocol::delete#test_0001_returns true on a hit and deletes the entry = 0.04 s = .
+Dalli::Protocol::ValueCompressor::options::compress_by_default?::when the compress option is unspecified::when the deprecated compression option is used#test_0001_overrides the default = 0.00 s = .
+Dalli::Protocol::ValueSerializer::retrieve::when deserialization raises a TypeError for exception class/object expected#test_0001_raises UnmarshalError on uninitialized constant = 0.00 s = .
+operations::using the binary protocol::append/prepend#test_0001_support the append and prepend operations = 0.10 s = .
+Quiet behavior::using the binary protocol#test_0008_supports the use of decr in a quiet block = 0.10 s = .
+Quiet behavior::using the binary protocol#test_0009_supports the use of flush in a quiet block = 0.09 s = .
+Quiet behavior::using the binary protocol#test_0002_supports the use of add in a quiet block = 0.08 s = .
+Quiet behavior::using the binary protocol#test_0003_supports the use of replace in a quiet block = 0.10 s = .
+Quiet behavior::using the binary protocol#test_0004_supports the use of delete in a quiet block = 0.10 s = .
+Quiet behavior::using the binary protocol#test_0005_supports the use of append in a quiet block = 0.08 s = .
+Quiet behavior::using the binary protocol#test_0006_supports the use of prepend in a quiet block = 0.09 s = .
+Quiet behavior::using the binary protocol#test_0007_supports the use of incr in a quiet block = 0.07 s = .
+Quiet behavior::using the binary protocol#test_0010_does not corrupt the underlying response buffer when a memcached error occurs in a quiet block = 0.08 s = .
+Quiet behavior::using the binary protocol#test_0001_supports the use of set in a quiet block = 0.04 s = .
+Quiet behavior::using the binary protocol#test_0011_raises an error if an invalid operation is used in a multi block = 0.07 s = .
+Dalli::Protocol::ValueCompressor::store::when the raw value is below the compression_min_size::when no compression_min_size options is set::when the value size is less than the default compression_min_size::when the client-level compress option is set to false::when the request options do not specify an explicit compress option#test_0001_does not compress the argument = 0.00 s = .
+Dalli::Protocol::Binary::hostname parsing#test_0009_handles ipv6 addresses with port and weight = 0.00 s = .
+Dalli::Protocol::Binary::hostname parsing#test_0003_handles no port or weight = 0.00 s = .
+Dalli::Protocol::Binary::hostname parsing#test_0006_handles ipv4 addresses = 0.00 s = .
+Dalli::Protocol::Binary::hostname parsing#test_0008_handles ipv6 addresses with port = 0.00 s = .
 Dalli::Protocol::Binary::hostname parsing#test_0011_handles a FQDN with port and weight = 0.00 s = .
 Dalli::Protocol::Binary::hostname parsing#test_0005_handles a port and a weight = 0.00 s = .
-Dalli::Protocol::Binary::hostname parsing#test_0002_handles unix socket with a weight = 0.00 s = .
-Dalli::Protocol::Binary::hostname parsing#test_0006_handles ipv4 addresses = 0.00 s = .
-Dalli::Protocol::Binary::hostname parsing#test_0012_throws an exception if the hostname cannot be parsed = 0.00 s = .
 Dalli::Protocol::Binary::hostname parsing#test_0001_handles unix socket with no weight = 0.00 s = .
-Dalli::Protocol::Binary::hostname parsing#test_0008_handles ipv6 addresses with port = 0.00 s = .
-Dalli::Protocol::Binary::hostname parsing#test_0009_handles ipv6 addresses with port and weight = 0.00 s = .
+Dalli::Protocol::Binary::hostname parsing#test_0002_handles unix socket with a weight = 0.00 s = .
 Dalli::Protocol::Binary::hostname parsing#test_0004_handles a port, but no weight = 0.00 s = .
 Dalli::Protocol::Binary::hostname parsing#test_0007_handles ipv6 addresses = 0.00 s = .
 Dalli::Protocol::Binary::hostname parsing#test_0010_handles a FQDN = 0.00 s = .
-Dalli::Protocol::Binary::hostname parsing#test_0003_handles no port or weight = 0.00 s = .
-TTL behavior::using the binary protocol#test_0001_raises error with invalid client level expires_in = 0.00 s = .
-TTL behavior::using the binary protocol#test_0002_supports a TTL on set = 1.21 s = .
-TTL behavior::using the binary protocol#test_0003_generates an ArgumentError for ttl that does not support to_i = 0.00 s = .
-Dalli::Protocol::ValueMarshaller::store::when the value_max_bytes is customized::when the raw option is specified::when the raw value is below the value_max_bytes size and min compression size#test_0001_return the expected value and flags = 0.00 s = .
-Dalli::Protocol::ValueMarshaller::store::when the value_max_bytes is the default 1MB::when the raw option is not specified::when the serialized value is below the value_max_bytes size and min compression size#test_0001_return the expected value and flags = 0.00 s = .
-Dalli::Protocol::ValueCompressor::store::when the raw value is below the compression_min_size::when no compression_min_size options is set::when the value size is less than the default compression_min_size::when the client-level compress option is set to true::when the request options specify compress as false#test_0001_does not compress the argument = 0.00 s = .
-operations::using the binary protocol::add#test_0002_returns a CAS when no pre-existing value exists = 0.00 s = .
-operations::using the binary protocol::add#test_0001_returns false when replacing an existing value and does not update the value = 0.00 s = .
-memcached admin commands::using the meta protocol::stats#test_0001_support stats = 0.02 s = .
-Dalli::Protocol::ValueCompressor::options::compression_min_size::when the compression_min_size option is explicitly specified#test_0001_uses the explicit option = 0.00 s = .
-Dalli::Protocol::ValueCompressor::store::when the raw value is below the compression_min_size::when a compression_min_size options is explicitly set::when the value size is greater than the explicit compression size::when the client-level compress option is set to true::when the request options specify compress as false#test_0001_does not compress the argument = 0.00 s = .
-operations::using the binary protocol::incr/decr#test_0005_supports 64-bit values = 0.00 s = .
-operations::using the binary protocol::incr/decr#test_0002_returns nil on a miss with no initial value = 0.00 s = .
-operations::using the binary protocol::incr/decr#test_0003_enables setting an initial value with incr and subsequently incrementing/decrementing = 0.00 s = .
-operations::using the binary protocol::incr/decr#test_0004_supports setting the initial value with decr and subsequently incrementing/decrementing = 0.02 s = .
-operations::using the binary protocol::incr/decr#test_0001_supports incrementing and decrementing existing values = 0.00 s = .
-Network::using the meta protocol#test_0002_handles asynchronous Thread#raise = 2.01 s = .
-Network::using the meta protocol#test_0006_passes a simple smoke test on a TCP socket = 0.01 s = .
-Network::using the meta protocol#test_0004_handles asynchronous Thread#kill = 2.01 s = .
-Network::using the meta protocol#test_0003_handles asynchronous Thread#raise during pipelined get = 2.01 s = .
-Network::using the meta protocol#test_0007_passes a simple smoke test on unix socket = 0.11 s = .
-Network::using the meta protocol#test_0001_handles timeout error during pipelined get = 1.01 s = .
-Network::using the meta protocol#test_0005_handles asynchronous Thread#kill during pipelined get = 2.01 s = .
-Digest class#test_0001_raises error with invalid digest_class = 0.00 s = .
-Dalli::Protocol::ValueMarshaller::store::when the value_max_bytes is customized::when the raw option is not specified::when the compressed, serialized value is above the value_max_bytes size#test_0001_raises an error with the expected message = 0.00 s = .
-operations::using the binary protocol::replace#test_0001_returns a CAS when the key exists and updates the value = 0.00 s = .
-operations::using the binary protocol::replace#test_0002_returns false when no pre-existing value exists = 0.00 s = .
-KeyManager::options::digest_class::when there is no explicit digest_class parameter provided#test_0001_uses Digest::MD5 as a default = 0.00 s = .
-Quiet behavior::using the meta protocol#test_0008_supports the use of decr in a quiet block = 0.01 s = .
-Quiet behavior::using the meta protocol#test_0010_does not corrupt the underlying response buffer when a memcached error occurs in a quiet block = 0.01 s = .
-Quiet behavior::using the meta protocol#test_0011_raises an error if an invalid operation is used in a multi block = 0.00 s = .
-Quiet behavior::using the meta protocol#test_0001_supports the use of set in a quiet block = 0.00 s = .
-Quiet behavior::using the meta protocol#test_0004_supports the use of delete in a quiet block = 0.00 s = .
-Quiet behavior::using the meta protocol#test_0006_supports the use of prepend in a quiet block = 0.00 s = .
-Quiet behavior::using the meta protocol#test_0002_supports the use of add in a quiet block = 0.00 s = .
-Quiet behavior::using the meta protocol#test_0007_supports the use of incr in a quiet block = 0.01 s = .
-Quiet behavior::using the meta protocol#test_0009_supports the use of flush in a quiet block = 0.00 s = .
-Quiet behavior::using the meta protocol#test_0005_supports the use of append in a quiet block = 0.00 s = .
-Quiet behavior::using the meta protocol#test_0003_supports the use of replace in a quiet block = 0.01 s = .
-Dalli::Protocol::ValueMarshaller::store::when the bytesize is under value_max_bytes::when the raw option is specified::when the value is above the minimum compression size#test_0001_return the expected value and flags = 0.00 s = .
-operations::using the binary protocol::gat#test_0001_returns the value and touches on a hit = 0.00 s = .
-operations::using the binary protocol::gat#test_0002_returns nil on a miss = 0.00 s = .
-Dalli::Protocol::Meta::RequestFormatter::meta_delete#test_0003_sets the q flag when passed quiet = 0.00 s = .
+Dalli::Protocol::Binary::hostname parsing#test_0012_throws an exception if the hostname cannot be parsed = 0.00 s = .
+Dalli::Protocol::ValueSerializer::store::when the request options value for the :raw key is true#test_0001_does not call the serializer and just converts the input value to a string = 0.00 s = .
+Dalli::Protocol::ValueSerializer::retrieve::when deserialization raises an ArgumentError for an undefined class#test_0001_raises UnmarshalError on uninitialized constant = 0.00 s = .
+Namespace and key behavior::using the binary protocol#test_0007_does not allow blanks for keys = 0.02 s = .
+Namespace and key behavior::using the binary protocol#test_0008_allow the namespace to be a symbol = 0.04 s = .
+Namespace and key behavior::using the binary protocol#test_0001_handles namespaced keys = 0.04 s = .
+Namespace and key behavior::using the binary protocol#test_0003_truncates cache keys that are too long = 0.03 s = .
+Namespace and key behavior::using the binary protocol#test_0002_handles a nil namespace = 0.01 s = .
+Namespace and key behavior::using the binary protocol#test_0006_allows whitespace characters in keys = 0.04 s = .
+Namespace and key behavior::using the binary protocol#test_0004_handles namespaced keys in get_multi = 0.05 s = .
+Namespace and key behavior::using the binary protocol#test_0005_handles special Regexp characters in namespace with get_multi = 0.07 s = .
+Rack::Session::Dalli#test_0004_rejects a :cache option = 0.16 s = .
+Rack::Session::Dalli#test_0014_maintains freshness of existing sessions = 4.26 s = .
+Rack::Session::Dalli#test_0006_upgrades to a connection pool = 0.05 s = .
+Rack::Session::Dalli#test_0002_connects to existing server = 0.08 s = .
+Rack::Session::Dalli#test_0005_generates sids without an existing Dalli::Client = 0.04 s = .
+Rack::Session::Dalli#test_0010_determines session from params = 0.19 s = .
+Rack::Session::Dalli#test_0013_sets an expiration on new sessions = 4.15 s = .
+Rack::Session::Dalli#test_0017_provides new session id with :renew option = 0.22 s = .
+Rack::Session::Dalli#test_0007_creates a new cookie = 0.10 s = .
+Rack::Session::Dalli#test_0011_survives nonexistant cookies = 0.11 s = .
+Rack::Session::Dalli#test_0015_does not send the same session id if it did not change = 0.10 s = .
+Rack::Session::Dalli#test_0020_updates deep hashes correctly = 0.10 s = .
+Rack::Session::Dalli#test_0008_determines session from a cookie = 0.15 s = .
+Rack::Session::Dalli#test_0019_omits cookie and state update with :skip option = 0.16 s = .
+Rack::Session::Dalli#test_0003_passes options to MemCache = 0.06 s = .
+Rack::Session::Dalli#test_0009_determines session only from a cookie by default = 0.13 s = .
+Rack::Session::Dalli#test_0012_survives nonexistant blank cookies = 0.08 s = .
+Rack::Session::Dalli#test_0001_faults on no connection = 0.16 s = .
+Rack::Session::Dalli#test_0018_omits cookie with :defer option but still updates the state = 0.12 s = .
+Rack::Session::Dalli#test_0016_deletes cookies with :drop option = 0.11 s = .
+Dalli::Protocol::ValueCompressor::options::compressor::when the compressor option is explicitly specified#test_0001_uses the explicit option = 0.00 s = .
+operations::using the binary protocol::touch#test_0001_returns true on a hit = 0.07 s = .
+operations::using the binary protocol::touch#test_0002_returns nil on a miss = 0.06 s = .
+Serializer configuration::using the meta protocol#test_0001_defaults to Marshal = 1.10 s = .
+Serializer configuration::using the meta protocol#test_0002_supports a custom serializer = 2.11 s = .
+KeyManager::validate_key::when there is a namespace::when the key with namespace is longer than 250 characters::when there is a custom digest_class parameter#test_0001_returns the truncated key = 0.00 s = .
+memcached admin commands::using the meta protocol::stats#test_0001_support stats = 0.24 s = .
+Dalli::Protocol::TtlSanitizer::sanitize::when the argument is a string::when the value is more than the current timestamp#test_0001_just returns the value = 0.00 s = .
+KeyManager::options::digest_class::when there is an explicit digest_class parameter provided::and the class does not implement hexdigest#test_0001_raises an argument error = 0.00 s = .
 Dalli::Protocol::Meta::RequestFormatter::meta_delete#test_0001_returns the default when just passed key = 0.00 s = .
-Dalli::Protocol::Meta::RequestFormatter::meta_delete#test_0006_sets the base64 mode if configured = 0.00 s = .
+Dalli::Protocol::Meta::RequestFormatter::meta_delete#test_0003_sets the q flag when passed quiet = 0.00 s = .
+Dalli::Protocol::Meta::RequestFormatter::meta_delete#test_0005_excludes non-numeric CAS values = 0.00 s = .
 Dalli::Protocol::Meta::RequestFormatter::meta_delete#test_0002_incorporates CAS when passed cas = 0.00 s = .
 Dalli::Protocol::Meta::RequestFormatter::meta_delete#test_0004_excludes CAS when set to 0 = 0.00 s = .
-Dalli::Protocol::Meta::RequestFormatter::meta_delete#test_0005_excludes non-numeric CAS values = 0.00 s = .
-Dalli::Protocol::ValueCompressor::retrieve::when the decompression raises a Zlib::Error#test_0001_translates that into a UnmarshalError = 0.00 s = .
-Dalli::Protocol::Meta::RequestFormatter::flush#test_0003_returns the expected string with a delay argument = 0.00 s = .
-Dalli::Protocol::Meta::RequestFormatter::flush#test_0004_santizes the delay argument = 0.00 s = .
-Dalli::Protocol::Meta::RequestFormatter::flush#test_0005_adds noreply with a delay and quiet argument = 0.00 s = .
-Dalli::Protocol::Meta::RequestFormatter::flush#test_0001_returns the expected string with no arguments = 0.00 s = .
-Dalli::Protocol::Meta::RequestFormatter::flush#test_0002_adds noreply when quiet is true = 0.00 s = .
-Dalli::Protocol::Meta::RequestFormatter::meta_get#test_0001_returns the default get (get value and bitflags, no cas) when passed only a key = 0.00 s = .
-Dalli::Protocol::Meta::RequestFormatter::meta_get#test_0002_sets the TTL flag when passed a ttl = 0.00 s = .
-Dalli::Protocol::Meta::RequestFormatter::meta_get#test_0003_skips the value and bitflags when passed a pure touch argument = 0.00 s = .
-Dalli::Protocol::Meta::RequestFormatter::meta_get#test_0005_sets the flags for returning the key and body size when passed quiet = 0.00 s = .
-Dalli::Protocol::Meta::RequestFormatter::meta_get#test_0004_sets the CAS retrieval flags when passed that value = 0.00 s = .
-Dalli::Protocol::ValueMarshaller::store::when the value_max_bytes is the default 1MB::when the raw option is specified::when the raw compressed value is above the value_max_bytes size#test_0001_raises an error with the expected message = 0.80 s = .
-Dalli::Protocol::ServerConfigParser::parse::when the string is not an memcached URI::unix#test_0001_parses a socket by itself = 0.00 s = .
-Dalli::Protocol::ServerConfigParser::parse::when the string is not an memcached URI::unix#test_0003_produces an error with a port and weight = 0.00 s = .
-Dalli::Protocol::ServerConfigParser::parse::when the string is not an memcached URI::unix#test_0002_parses socket with a weight = 0.00 s = .
-Namespace and key behavior::using the binary protocol#test_0002_handles a nil namespace = 0.00 s = .
-Namespace and key behavior::using the binary protocol#test_0005_handles special Regexp characters in namespace with get_multi = 0.00 s = .
-Namespace and key behavior::using the binary protocol#test_0003_truncates cache keys that are too long = 0.00 s = .
-Namespace and key behavior::using the binary protocol#test_0004_handles namespaced keys in get_multi = 0.00 s = .
-Namespace and key behavior::using the binary protocol#test_0007_does not allow blanks for keys = 0.00 s = .
-Namespace and key behavior::using the binary protocol#test_0001_handles namespaced keys = 0.00 s = .
-Namespace and key behavior::using the binary protocol#test_0006_allows whitespace characters in keys = 0.00 s = .
-Namespace and key behavior::using the binary protocol#test_0008_allow the namespace to be a symbol = 0.00 s = .
-Dalli::Protocol::ValueCompressor::options::compress_by_default?::when the compress option is explicitly false#test_0001_is false = 0.00 s = .
-Network::using the meta protocol::assuming a bad network::with a fake server#test_0001_handle connection reset = 0.41 s = .
-Network::using the meta protocol::assuming a bad network::with a fake server#test_0002_handle connection reset with unix socket = 0.41 s = .
-Network::using the meta protocol::assuming a bad network::with a fake server#test_0003_handle malformed response = 0.42 s = .
-Network::using the meta protocol::assuming a bad network::with a fake server#test_0006_handle read timeouts = 1.03 s = .
-Network::using the meta protocol::assuming a bad network::with a fake server#test_0005_handle connect timeouts = 1.44 s = .
-Network::using the meta protocol::assuming a bad network::with a fake server#test_0004_handle socket timeouts = 0.10 s = .
-memcached admin commands::using the meta protocol::version#test_0001_support version operation = 0.21 s = .
-KeyManager::validate_key::when there is no namespace::when the key is blank, but not empty#test_0001_returns the key = 0.00 s = .
-Compressor::using the binary protocol#test_0001_default to Dalli::Compressor = 1.01 s = .
-Compressor::using the binary protocol#test_0002_support a custom compressor = 2.02 s = .
-failover::using the binary protocol::timeouts#test_0001_not lead to corrupt sockets = 0.01 s = .
-Dalli::Protocol::ValueCompressor::options::compress_by_default?::when the compress option is explicitly true::when the deprecated compression option is used#test_0001_does not override the explicit compress options = 0.00 s = .
-CAS behavior::using the binary protocol::get_cas::when no block is given#test_0001_returns the value and a CAS = 0.00 s = .
-CAS behavior::using the binary protocol::get_cas::when no block is given#test_0002_allows "Not found" as value = 0.00 s = .
-CAS behavior::using the binary protocol::get_cas::when no block is given#test_0003_returns [nil, 0] on a miss = 0.00 s = .
-Dalli::Protocol::ValueCompressor::options::compress_by_default?::when the compress option is explicitly true#test_0001_is true = 0.00 s = .
-Serializer configuration::using the meta protocol#test_0002_allow large values under the limit to be set = 0.01 s = .
-Serializer configuration::using the meta protocol#test_0001_does not allow values over the 1MB limit = 0.04 s = .
-Serializer configuration::using the meta protocol#test_0003_errors appropriately when the value cannot be marshalled = 0.00 s = .
+Dalli::Protocol::Meta::RequestFormatter::meta_delete#test_0006_sets the base64 mode if configured = 0.00 s = .
+operations::using the binary protocol::replace#test_0001_returns a CAS when the key exists and updates the value = 0.04 s = .
+operations::using the binary protocol::replace#test_0002_returns false when no pre-existing value exists = 0.07 s = .
+Dalli::Protocol::ValueMarshaller::store::when the value_max_bytes is the default 1MB::when the raw option is not specified::when the serialized value is below the value_max_bytes size#test_0001_return the expected value and flags = 0.00 s = .
+operations::using the meta protocol::incr/decr#test_0003_enables setting an initial value with incr and subsequently incrementing/decrementing = 0.07 s = .
+operations::using the meta protocol::incr/decr#test_0001_supports incrementing and decrementing existing values = 0.08 s = .
+operations::using the meta protocol::incr/decr#test_0004_supports setting the initial value with decr and subsequently incrementing/decrementing = 0.80 s = .
+operations::using the meta protocol::incr/decr#test_0002_returns nil on a miss with no initial value = 0.07 s = .
+operations::using the meta protocol::incr/decr#test_0005_supports 64-bit values = 0.04 s = .
+KeyManager::validate_key::when there is no namespace::when the key is empty#test_0001_raises an error = 0.00 s = .
+Dalli::Protocol::ValueCompressor::options::compress_by_default?::when the compress option is explicitly false::when the deprecated compression option is used#test_0001_does not override the explicit compress options = 0.00 s = .
 Dalli::Protocol::ValueCompressor::store::when the raw value is below the compression_min_size::when a compression_min_size options is explicitly set::when the value size is less than the explicit compression size::when the client-level compress option is set to true::when the request options specify compress as true#test_0001_does not compress the argument = 0.00 s = .
-CAS behavior::using the binary protocol::cas#test_0001_does not call the block when the key has no existing value = 0.00 s = .
-CAS behavior::using the binary protocol::cas#test_0002_calls the block and sets a new value when the key has an existing value = 0.00 s = .
-CAS behavior::using the binary protocol::cas#test_0003_calls the block and sets a new value when the key has the value 'Not found' = 0.00 s = .
-Dalli::ServersArgNormalizer::normalize_servers::when the argument is nil::when the MEMCACHE_SERVERS environment is not set#test_0001_returns the expected default = 0.00 s = .
-KeyManager::key_without_namespace::with namespace::when the argument does not include the namespace#test_0001_returns the argument = 0.00 s = .
-Dalli::Protocol::ValueCompressor::store::when the raw value is below the compression_min_size::when no compression_min_size options is set::when the value size is greater than the default compression_min_size::when the client-level compress option is set to false::when the request options do not specify an explicit compress option#test_0001_does not compress the argument = 0.00 s = .
-Dalli::Protocol::ValueSerializer::retrieve::when deserialization raises an TypeError for an incompatible marshal file format (can't be read)#test_0001_raises UnmarshalError on uninitialized constant = 0.00 s = .
-Dalli::Protocol::ValueMarshaller::options::value_max_bytes::by default#test_0001_sets value_max_bytes to 1MB by default = 0.00 s = .
-Pipelined Get::using the meta protocol#test_0001_supports pipelined get = 0.10 s = .
-Pipelined Get::using the meta protocol#test_0002_supports pipelined get with keys containing Unicode or spaces = 0.01 s = .
-Dalli::Protocol::ServerConfigParser::parse::when the string is a memcached URI::when the URI does not include a port#test_0001_parses correctly = 0.00 s = .
-Dalli::Protocol::ValueCompressor::store::when the raw value is below the compression_min_size::when a compression_min_size options is explicitly set::when the value size is less than the explicit compression size::when the client-level compress option is set to true::when the request options do not specify an explicit compress option#test_0001_does not compress the argument = 0.00 s = .
-Dalli::Protocol::ValueMarshaller::retrieve#test_0002_retrieves the value when the flags indicate the value is just compressed = 0.00 s = .
-Dalli::Protocol::ValueMarshaller::retrieve#test_0004_retrieves the value when the flags indicate the value is neither compressed nor serialized = 0.00 s = .
-Dalli::Protocol::ValueMarshaller::retrieve#test_0003_retrieves the value when the flags indicate the value is just serialized = 0.00 s = .
-Dalli::Protocol::ValueMarshaller::retrieve#test_0001_retrieves the value when the flags indicate the value is both compressed and serialized = 0.00 s = .
-Dalli::Protocol::ValueMarshaller::store::when the bytesize is under value_max_bytes::when the raw option is specified::when the value is below the minimum compression size#test_0001_return the expected value and flags = 0.00 s = .
+Dalli::Protocol::ValueSerializer::store::when serialization raises an Error that is not a TimeoutError#test_0001_translates that into a MarshalError = 0.00 s = .
+Network::using the binary protocol#test_0005_handles asynchronous Thread#kill during pipelined get = 7.12 s = .
+Network::using the binary protocol#test_0006_passes a simple smoke test on a TCP socket = 0.13 s = .
+Network::using the binary protocol#test_0002_handles asynchronous Thread#raise = 2.12 s = .
+Network::using the binary protocol#test_0003_handles asynchronous Thread#raise during pipelined get = 9.13 s = .
+Network::using the binary protocol#test_0001_handles timeout error during pipelined get = 1.11 s = .
+Network::using the binary protocol#test_0004_handles asynchronous Thread#kill = 2.09 s = .
+Network::using the binary protocol#test_0007_passes a simple smoke test on unix socket = 0.39 s = .
 KeyManager::key_without_namespace::with namespace::when the argument includes the namespace in a position other than the start#test_0001_returns the argument = 0.00 s = .
-Dalli::Protocol::ValueSerializer::store::when the request options are nil#test_0001_serializes the value = 0.00 s = .
-Dalli::Protocol::Meta::RequestFormatter::meta_set#test_0001_returns the default (treat as a set, no CAS check) when just passed key, datalen, and bitflags = 0.00 s = .
-Dalli::Protocol::Meta::RequestFormatter::meta_set#test_0007_passes a CAS if one is provided = 0.00 s = .
-Dalli::Protocol::Meta::RequestFormatter::meta_set#test_0005_omits the CAS flag on append = 0.00 s = .
-Dalli::Protocol::Meta::RequestFormatter::meta_set#test_0006_omits the CAS flag on prepend = 0.00 s = .
-Dalli::Protocol::Meta::RequestFormatter::meta_set#test_0009_excludes non-numeric CAS values = 0.00 s = .
-Dalli::Protocol::Meta::RequestFormatter::meta_set#test_0008_excludes CAS if set to 0 = 0.00 s = .
-Dalli::Protocol::Meta::RequestFormatter::meta_set#test_0010_sets the quiet mode if configured = 0.00 s = .
-Dalli::Protocol::Meta::RequestFormatter::meta_set#test_0011_sets the base64 mode if configured = 0.00 s = .
-Dalli::Protocol::Meta::RequestFormatter::meta_set#test_0002_supports the add mode = 0.00 s = .
-Dalli::Protocol::Meta::RequestFormatter::meta_set#test_0004_passes a TTL if one is provided = 0.00 s = .
-Dalli::Protocol::Meta::RequestFormatter::meta_set#test_0003_supports the replace mode = 0.00 s = .
-failover::using the binary protocol::assuming some bad servers#test_0005_handle graceful failover in get_multi = 1.21 s = .
-failover::using the binary protocol::assuming some bad servers#test_0004_handle them gracefully in get_multi = 1.11 s = .
-failover::using the binary protocol::assuming some bad servers#test_0006_stats it still properly report = 2.12 s = .
-failover::using the binary protocol::assuming some bad servers#test_0001_silently reconnect if server hiccups = 2.02 s = .
-failover::using the binary protocol::assuming some bad servers#test_0003_handle graceful failover = 1.31 s = .
-failover::using the binary protocol::assuming some bad servers#test_0002_reconnects if server idles the connection = 7.04 s = .
-operations::using the meta protocol::fetch#test_0001_fetches pre-existing values = 0.00 s = .
-operations::using the meta protocol::fetch#test_0002_supports with default values = 0.00 s = .
-operations::using the meta protocol::fetch#test_0003_supports with falsey values = 0.00 s = .
-operations::using the meta protocol::fetch#test_0004_supports with nil values when cache_nils: true = 0.00 s = .
-Dalli::ServersArgNormalizer::normalize_servers::when the argument is a single string::when the string is multiple comma separated entries with empty entries#test_0001_splits the string and returns an array, discarding the empty elements = 0.00 s = .
+failover::using the meta protocol::assuming some bad servers#test_0005_handle graceful failover in get_multi = 1.35 s = .
+failover::using the meta protocol::assuming some bad servers#test_0002_reconnects if server idles the connection = 7.12 s = .
+failover::using the meta protocol::assuming some bad servers#test_0003_handle graceful failover = 1.46 s = .
+failover::using the meta protocol::assuming some bad servers#test_0004_handle them gracefully in get_multi = 1.25 s = .
+failover::using the meta protocol::assuming some bad servers#test_0006_stats it still properly report = 1.30 s = .
+failover::using the meta protocol::assuming some bad servers#test_0001_silently reconnect if server hiccups = 2.21 s = .
+Dalli::Protocol::ServerConfigParser::parse::when the string is not an memcached URI::unix#test_0002_parses socket with a weight = 0.00 s = .
+Dalli::Protocol::ServerConfigParser::parse::when the string is not an memcached URI::unix#test_0001_parses a socket by itself = 0.00 s = .
+Dalli::Protocol::ServerConfigParser::parse::when the string is not an memcached URI::unix#test_0003_produces an error with a port and weight = 0.00 s = .
+operations::using the meta protocol::gat#test_0001_returns the value and touches on a hit = 0.10 s = .
+operations::using the meta protocol::gat#test_0002_returns nil on a miss = 0.04 s = .
+KeyManager::validate_key::when there is no namespace::when the key is nil#test_0001_raises an error = 0.00 s = .
+operations::using the meta protocol::fetch#test_0001_fetches pre-existing values = 0.04 s = .
+operations::using the meta protocol::fetch#test_0002_supports with default values = 0.07 s = .
+operations::using the meta protocol::fetch#test_0004_supports with nil values when cache_nils: true = 0.14 s = .
+operations::using the meta protocol::fetch#test_0003_supports with falsey values = 0.05 s = .
+Quiet behavior::using the binary protocol::quiet? method#test_0002_has protocol instances that respond to multi? = 0.04 s = .
+Quiet behavior::using the binary protocol::quiet? method#test_0001_has protocol instances that respond to quiet? = 0.04 s = .
+Dalli::Protocol::ValueCompressor::store::when the raw value is below the compression_min_size::when a compression_min_size options is explicitly set::when the value size is less than the explicit compression size::when the client-level compress option is set to false::when the request options do not specify an explicit compress option#test_0001_does not compress the argument = 0.00 s = .
 KeyManager::key_without_namespace::without namespace::when the key has no colon#test_0001_returns the argument = 0.00 s = .
-KeyManager::options::digest_class::when there is an explicit digest_class parameter provided::and the class does not implement hexdigest#test_0001_raises an argument error = 0.00 s = .
+Dalli::Protocol::ValueSerializer::retrieve::when deserialization raises a TypeError with a non-matching message#test_0001_re-raises TypeError = 0.00 s = .
+Dalli::Protocol::ValueSerializer::retrieve::when the bitflags specify serialization#test_0001_should deserialize the value = 0.00 s = .
+Dalli::Protocol::Meta::RequestFormatter::version#test_0001_returns the expected string = 0.00 s = .
+Dalli::Protocol::ValueCompressor::store::when the raw value is below the compression_min_size::when no compression_min_size options is set::when the value size is less than the default compression_min_size::when the client-level compress option is set to true::when the request options do not specify an explicit compress option#test_0001_does not compress the argument = 0.00 s = .
+Dalli::Protocol::ServerConfigParser::parse::when the string is not an memcached URI::tcp::when the hostname is an IPv6 address#test_0002_parses hostname with a port = 0.00 s = .
 Dalli::Protocol::ServerConfigParser::parse::when the string is not an memcached URI::tcp::when the hostname is an IPv6 address#test_0003_parses hostname with a port and weight = 0.00 s = .
 Dalli::Protocol::ServerConfigParser::parse::when the string is not an memcached URI::tcp::when the hostname is an IPv6 address#test_0001_parses a hostname by itself = 0.00 s = .
-Dalli::Protocol::ServerConfigParser::parse::when the string is not an memcached URI::tcp::when the hostname is an IPv6 address#test_0002_parses hostname with a port = 0.00 s = .
+CAS behavior::using the binary protocol::get_cas::when a block is given#test_0002_allows "Not found" as value = 0.08 s = .
+CAS behavior::using the binary protocol::get_cas::when a block is given#test_0001_yields the value and a CAS to the block = 0.05 s = .
+CAS behavior::using the binary protocol::get_cas::when a block is given#test_0003_yields [nil, 0] to the block on a miss = 0.10 s = .
 KeyManager::validate_key::when there is a namespace::when the key is nil#test_0001_raises an error = 0.00 s = .
-Network::using the binary protocol#test_0004_handles asynchronous Thread#kill = 1.01 s = .
-Network::using the binary protocol#test_0003_handles asynchronous Thread#raise during pipelined get = 2.01 s = .
-Network::using the binary protocol#test_0005_handles asynchronous Thread#kill during pipelined get = 2.01 s = .
-Network::using the binary protocol#test_0001_handles timeout error during pipelined get = 1.01 s = .
-Network::using the binary protocol#test_0006_passes a simple smoke test on a TCP socket = 0.01 s = .
-Network::using the binary protocol#test_0002_handles asynchronous Thread#raise = 2.01 s = .
-Network::using the binary protocol#test_0007_passes a simple smoke test on unix socket = 0.21 s = .
-Dalli::ServersArgNormalizer::normalize_servers::when the argument is a single string::when the string is multiple comma separated entries#test_0001_splits the string and returns an array = 0.00 s = .
-operations::using the meta protocol::set#test_0001_returns a CAS when the key exists and updates the value = 0.00 s = .
-operations::using the meta protocol::set#test_0002_returns a CAS when no pre-existing value exists = 0.00 s = .
-Dalli::Protocol::ValueCompressor::store::when the raw value is below the compression_min_size::when a compression_min_size options is explicitly set::when the value size is less than the explicit compression size::when the client-level compress option is set to false::when the request options specify compress as true#test_0001_does not compress the argument = 0.00 s = .
-failover::using the meta protocol::timeouts#test_0001_not lead to corrupt sockets = 0.01 s = .
-Dalli::Protocol::TtlSanitizer::sanitize::when the argument is an integer::when the value is more than 30 days in seconds, but less than the current timestamp#test_0001_converts to a future timestamp = 0.00 s = .
+Dalli::Protocol::ValueCompressor::store::when the raw value is below the compression_min_size::when no compression_min_size options is set::when the value size is greater than the default compression_min_size::when the client-level compress option is set to false::when the request options specify compress as true#test_0001_compresses the argument = 0.00 s = .
+Dalli::Protocol::Meta::RequestFormatter::meta_noop#test_0001_returns the expected string = 0.00 s = .
+KeyManager::validate_key::when there is no namespace::when the key is shorter than 250 characters#test_0001_returns the key = 0.00 s = .
+KeyManager::key_without_namespace::with namespace::when the argument starts with the namespace#test_0001_strips the namespace = 0.00 s = .
+TTL behavior::using the meta protocol#test_0003_generates an ArgumentError for ttl that does not support to_i = 0.04 s = .
+TTL behavior::using the meta protocol#test_0001_raises error with invalid client level expires_in = 0.00 s = .
+TTL behavior::using the meta protocol#test_0002_supports a TTL on set = 1.24 s = .
+Dalli::Protocol::ValueMarshaller::store::when the value_max_bytes is the default 1MB::when the raw option is not specified::when the compressed, serialized value is above the value_max_bytes size#test_0001_raises an error with the expected message = 6.20 s = .
+Namespace and key behavior::using the meta protocol#test_0006_allows whitespace characters in keys = 0.03 s = .
+Namespace and key behavior::using the meta protocol#test_0007_does not allow blanks for keys = 0.02 s = .
+Namespace and key behavior::using the meta protocol#test_0008_allow the namespace to be a symbol = 0.03 s = .
+Namespace and key behavior::using the meta protocol#test_0001_handles namespaced keys = 0.04 s = .
+Namespace and key behavior::using the meta protocol#test_0004_handles namespaced keys in get_multi = 0.03 s = .
+Namespace and key behavior::using the meta protocol#test_0005_handles special Regexp characters in namespace with get_multi = 0.05 s = .
+Namespace and key behavior::using the meta protocol#test_0003_truncates cache keys that are too long = 0.02 s = .
+Namespace and key behavior::using the meta protocol#test_0002_handles a nil namespace = 0.03 s = .
+CAS behavior::using the meta protocol::cas#test_0001_does not call the block when the key has no existing value = 0.06 s = .
+CAS behavior::using the meta protocol::cas#test_0003_calls the block and sets a new value when the key has the value 'Not found' = 0.04 s = .
+CAS behavior::using the meta protocol::cas#test_0002_calls the block and sets a new value when the key has an existing value = 0.05 s = .
+CAS behavior::using the meta protocol::get_cas::when a block is given#test_0002_allows "Not found" as value = 0.03 s = .
+CAS behavior::using the meta protocol::get_cas::when a block is given#test_0003_yields [nil, 0] to the block on a miss = 0.04 s = .
+CAS behavior::using the meta protocol::get_cas::when a block is given#test_0001_yields the value and a CAS to the block = 0.02 s = .
 Dalli::Protocol::ValueCompressor::store::when the raw value is below the compression_min_size::when no compression_min_size options is set::when the value size is greater than the default compression_min_size::when the client-level compress option is set to true::when the request options specify compress as true#test_0001_compresses the argument = 0.00 s = .
-Dalli::Compressor#test_0001_compresses data using Zlib::Deflate = 0.00 s = .
-Dalli::Compressor#test_0002_deccompresses data using Zlib::Deflate = 0.00 s = .
-CAS behavior::using the meta protocol::cas!#test_0001_calls the block and sets a new value  when the key has no existing value = 0.00 s = .
-CAS behavior::using the meta protocol::cas!#test_0003_calls the block and sets a new value when the key has the value 'Not found' = 0.00 s = .
-CAS behavior::using the meta protocol::cas!#test_0002_calls the block and sets a new value when the key has an existing value = 0.00 s = .
-operations::using the meta protocol::add#test_0001_returns false when replacing an existing value and does not update the value = 0.00 s = .
-operations::using the meta protocol::add#test_0002_returns a CAS when no pre-existing value exists = 0.00 s = .
-KeyManager::validate_key::when there is no namespace::when the key is empty#test_0001_raises an error = 0.00 s = .
-Encoding::using the meta protocol#test_0001_supports Unicode values = 0.00 s = .
-Encoding::using the meta protocol#test_0002_supports Unicode keys = 0.00 s = .
-Namespace and key behavior::using the meta protocol#test_0002_handles a nil namespace = 0.00 s = .
-Namespace and key behavior::using the meta protocol#test_0006_allows whitespace characters in keys = 0.00 s = .
-Namespace and key behavior::using the meta protocol#test_0008_allow the namespace to be a symbol = 0.00 s = .
-Namespace and key behavior::using the meta protocol#test_0005_handles special Regexp characters in namespace with get_multi = 0.00 s = .
-Namespace and key behavior::using the meta protocol#test_0003_truncates cache keys that are too long = 0.00 s = .
-Namespace and key behavior::using the meta protocol#test_0007_does not allow blanks for keys = 0.03 s = .
-Namespace and key behavior::using the meta protocol#test_0001_handles namespaced keys = 0.00 s = .
-Namespace and key behavior::using the meta protocol#test_0004_handles namespaced keys in get_multi = 0.00 s = .
-Dalli::ServersArgNormalizer::normalize_servers::when the argument is an array of strings::when there is a single entry, with commas#test_0001_returns the servers as an array = 0.00 s = .
+KeyManager::options::namespace::when there is no explicit namespace parameter provided#test_0001_the namespace is nil = 0.00 s = .
+Dalli::Protocol::ValueCompressor::options::compressor::when the compressor option is unspecified#test_0001_defaults to Dalli::Compressor = 0.00 s = .
+operations::using the meta protocol::append/prepend#test_0001_support the append and prepend operations = 0.04 s = .
+Network::using the meta protocol::assuming a bad network#test_0001_handle no server available = 0.11 s = .
+Network::using the meta protocol::assuming a bad network#test_0003_opens a SSL TCP connection when there is an SSL context set = 0.26 s = .
+Network::using the meta protocol::assuming a bad network#test_0002_opens a standard TCP connection when ssl_context is not configured = 0.02 s = .
+Network::using the meta protocol::assuming a bad network#test_0004_allow TCP connections to be configured for keepalive = 0.07 s = .
+TTL behavior::using the binary protocol#test_0002_supports a TTL on set = 1.27 s = .
+TTL behavior::using the binary protocol#test_0003_generates an ArgumentError for ttl that does not support to_i = 0.23 s = .
+TTL behavior::using the binary protocol#test_0001_raises error with invalid client level expires_in = 0.00 s = .
+Dalli::Protocol::ValueMarshaller::store::when the value_max_bytes is customized::when the raw option is specified::when the raw value is below the value_max_bytes size and min compression size#test_0001_return the expected value and flags = 0.00 s = .
+KeyManager::key_with_namespace::without namespace#test_0001_returns the argument = 0.00 s = .
+KeyManager::key_with_namespace::with namespace#test_0001_returns the argument with the namespace prepended = 0.00 s = .
 Dalli::Protocol::ValueSerializer::options::serializer::when the serializer option is explicitly specified#test_0001_uses the explicit option = 0.00 s = .
-Dalli::Protocol::ValueSerializer::retrieve::when deserialization raises a NameError for an uninitialized constant#test_0001_raises UnmarshalError on uninitialized constant = 0.00 s = .
-Dalli::Protocol::ValueMarshaller::store::when the bytesize is under value_max_bytes::when the raw option is not specified::when the value is below the minimum compression size#test_0001_return the expected value and flags = 0.00 s = .
-Serializer configuration::using the binary protocol#test_0002_allow large values under the limit to be set = 0.01 s = .
-Serializer configuration::using the binary protocol#test_0001_does not allow values over the 1MB limit = 0.04 s = .
-Serializer configuration::using the binary protocol#test_0003_errors appropriately when the value cannot be marshalled = 0.00 s = .
-CAS behavior::using the meta protocol::get_cas::when a block is given#test_0001_yields the value and a CAS to the block = 0.00 s = .
-CAS behavior::using the meta protocol::get_cas::when a block is given#test_0002_allows "Not found" as value = 0.00 s = .
-CAS behavior::using the meta protocol::get_cas::when a block is given#test_0003_yields [nil, 0] to the block on a miss = 0.00 s = .
-Dalli::Protocol::ValueSerializer::store::when the request options value for the :raw key is false#test_0001_serializes the value = 0.00 s = .
-KeyManager::options::namespace::when there is a Proc provided as a namespace parameter#test_0001_the namespace is the proc = 0.00 s = .
-KeyManager::options::namespace::when there is a Proc provided as a namespace parameter#test_0002_the evaluated namespace is the stringified symbol = 0.00 s = .
-Dalli::Protocol::ValueCompressor::store::when the raw value is below the compression_min_size::when a compression_min_size options is explicitly set::when the value size is less than the explicit compression size::when the client-level compress option is set to false::when the request options specify compress as false#test_0001_does not compress the argument = 0.00 s = .
-KeyManager::key_without_namespace::without namespace::when the key has a colon#test_0001_returns the argument = 0.00 s = .
-KeyManager::options::namespace::when there is an explicit symbol provided as a namespace parameter#test_0001_the namespace is the stringified symbol = 0.00 s = .
-failed to listen on TCP port 21345: Address already in use
-authentication::using the meta protocol#test_0001_raises an error if the username is set = 0.10 s = .
-CAS behavior::using the meta protocol::get_cas::when no block is given#test_0001_returns the value and a CAS = 0.00 s = .
-CAS behavior::using the meta protocol::get_cas::when no block is given#test_0002_allows "Not found" as value = 0.00 s = .
-CAS behavior::using the meta protocol::get_cas::when no block is given#test_0003_returns [nil, 0] on a miss = 0.00 s = .
-Dalli::Protocol::ValueSerializer::options::serializer::when the serializer option is unspecified#test_0001_defaults to Marshal = 0.00 s = .
+Network::using the binary protocol::assuming a bad network::with a fake server#test_0003_handle malformed response = 0.56 s = .
+Network::using the binary protocol::assuming a bad network::with a fake server#test_0005_handle connect timeouts = 1.67 s = .
+Network::using the binary protocol::assuming a bad network::with a fake server#test_0006_handle read timeouts = 1.21 s = .
+Network::using the binary protocol::assuming a bad network::with a fake server#test_0002_handle connection reset with unix socket = 0.54 s = .
+Network::using the binary protocol::assuming a bad network::with a fake server#test_0001_handle connection reset = 0.77 s = .
+Network::using the binary protocol::assuming a bad network::with a fake server#test_0004_handle socket timeouts = 0.10 s = .
+Dalli::Protocol::ServerConfigParser::parse::errors::when the string ends with a colon#test_0001_produces an error = 0.00 s = .
+Dalli::Protocol::ValueCompressor::store::when the raw value is below the compression_min_size::when a compression_min_size options is explicitly set::when the value size is greater than the explicit compression size::when the client-level compress option is set to false::when the request options specify compress as false#test_0001_does not compress the argument = 0.00 s = .
+Digest class#test_0001_raises error with invalid digest_class = 0.00 s = .
+Pipelined Get::using the meta protocol#test_0002_supports pipelined get with keys containing Unicode or spaces = 0.40 s = .
+Pipelined Get::using the meta protocol#test_0001_supports pipelined get = 0.71 s = .
+Dalli::Protocol::ValueCompressor::store::when the raw value is below the compression_min_size::when no compression_min_size options is set::when the value size is less than the default compression_min_size::when the client-level compress option is set to true::when the request options specify compress as false#test_0001_does not compress the argument = 0.00 s = .
+Ring::a ring of servers#test_0002_raise when no servers are available/defined = 0.00 s = .
+Ring::a ring of servers#test_0001_have the continuum sorted by value = 0.00 s = .
+Ring::a ring of servers#test_0003_detect when a dead server is up again = 2.10 s = .
+Dalli::Protocol::ValueSerializer::store::when serialization raises an Error that is not a TimeoutError#test_0001_translates that into a MarshalError = 0.00 s = .
+KeyManager::options::namespace::when the namespace Proc returns dynamic results#test_0001_evaluates the namespace proc every time we need it = 0.00 s = .
+Dalli::Protocol::TtlSanitizer::sanitize::when the argument is an integer::when the value is less than 30 days in seconds#test_0001_just returns the value = 0.00 s = .
+Dalli::Protocol::ValueCompressor::options::compression_min_size::when the compression_min_size option is unspecified#test_0001_defaults to 4 KB = 0.00 s = .
+Dalli::Protocol::ValueCompressor::store::when the raw value is below the compression_min_size::when no compression_min_size options is set::when the value size is greater than the default compression_min_size::when the client-level compress option is set to false::when the request options do not specify an explicit compress option#test_0001_does not compress the argument = 0.00 s = .
+operations::using the meta protocol::get#test_0001_returns the value on a hit = 0.88 s = .
+operations::using the meta protocol::get#test_0003_allows "Not found" as value = 0.07 s = .
+operations::using the meta protocol::get#test_0002_returns nil on a miss = 0.05 s = .
+failover::using the binary protocol::timeouts#test_0001_not lead to corrupt sockets = 0.10 s = .
+Dalli::Protocol::ValueCompressor::retrieve::when the bitflags specify compression#test_0001_should decompress the value = 0.00 s = .
+Pipelined Get::using the meta protocol::pipeline_next_responses#test_0001_raises NetworkError when called before pipeline_response_setup = 0.16 s = .
+Pipelined Get::using the meta protocol::pipeline_next_responses#test_0002_raises NetworkError when called after pipeline_abort = 0.29 s = .
 Dalli::Protocol::ValueSerializer::retrieve::when using the default serializer#test_0001_properly deserializes the serialized value = 0.00 s = .
 Dalli::Protocol::ValueSerializer::retrieve::when using the default serializer#test_0002_raises UnmarshalError for non-seriaized data = 0.00 s = .
-Dalli::Protocol::ValueSerializer::retrieve::when deserialization raises a TypeError for exception class/object expected#test_0001_raises UnmarshalError on uninitialized constant = 0.00 s = .
-KeyManager::validate_key::when there is no namespace::when the key is shorter than 250 characters#test_0001_returns the key = 0.00 s = .
-Dalli::Protocol::ValueCompressor::store::when the raw value is below the compression_min_size::when a compression_min_size options is explicitly set::when the value size is less than the explicit compression size::when the client-level compress option is set to true::when the request options specify compress as false#test_0001_does not compress the argument = 0.00 s = .
-CAS behavior::using the binary protocol::get_cas::when a block is given#test_0002_allows "Not found" as value = 0.00 s = .
-CAS behavior::using the binary protocol::get_cas::when a block is given#test_0003_yields [nil, 0] to the block on a miss = 0.00 s = .
-CAS behavior::using the binary protocol::get_cas::when a block is given#test_0001_yields the value and a CAS to the block = 0.00 s = .
+Dalli::Protocol::ValueCompressor::options::compress_by_default?::when the compress option is explicitly true::when the deprecated compression option is used#test_0001_does not override the explicit compress options = 0.00 s = .
+Dalli::ServersArgNormalizer::normalize_servers::when the argument is an array with non-strings#test_0001_raises an error = 0.00 s = .
+Compressor::using the binary protocol#test_0001_default to Dalli::Compressor = 1.09 s = .
+Compressor::using the binary protocol#test_0002_support a custom compressor = 2.08 s = .
+Pipelined Get::using the binary protocol::pipeline_next_responses#test_0001_raises NetworkError when called before pipeline_response_setup = 0.17 s = .
+Pipelined Get::using the binary protocol::pipeline_next_responses#test_0002_raises NetworkError when called after pipeline_abort = 0.25 s = .
+Dalli::ServersArgNormalizer::normalize_servers::when the argument is an array of strings::when there is a single entry, with commas#test_0001_returns the servers as an array = 0.00 s = .
+Dalli::ServersArgNormalizer::normalize_servers::when the argument is nil::when the MEMCACHE_SERVERS environment is not set#test_0001_returns the expected default = 0.00 s = .
+Dalli::Protocol::ValueCompressor::options::compress_by_default?::when the compress option is unspecified#test_0001_defaults to true = 0.00 s = .
+Dalli::Protocol::ValueCompressor::store::when the raw value is below the compression_min_size::when a compression_min_size options is explicitly set::when the value size is less than the explicit compression size::when the client-level compress option is set to true::when the request options do not specify an explicit compress option#test_0001_does not compress the argument = 0.00 s = .
+operations::using the binary protocol::add#test_0002_returns a CAS when no pre-existing value exists = 0.06 s = .
+operations::using the binary protocol::add#test_0001_returns false when replacing an existing value and does not update the value = 0.07 s = .
 Dalli::Protocol::ValueSerializer::retrieve::when deserialization raises an ArgumentError for marshal data too short#test_0001_raises UnmarshalError on uninitialized constant = 0.00 s = .
-Dalli::Protocol::ValueSerializer::store::when serialization raises an Error that is not a TimeoutError#test_0001_translates that into a MarshalError = 0.00 s = .
-Dalli::Protocol::ValueSerializer::retrieve::when deserialization raises a TypeError for needs to have method `_load#test_0001_raises UnmarshalError on uninitialized constant = 0.00 s = .
-KeyManager::key_with_namespace::with namespace#test_0001_returns the argument with the namespace prepended = 0.00 s = .
-Dalli::Protocol::ValueCompressor::store::when the raw value is below the compression_min_size::when no compression_min_size options is set::when the value size is less than the default compression_min_size::when the client-level compress option is set to false::when the request options specify compress as true#test_0001_does not compress the argument = 0.00 s = .
-KeyManager::options::namespace::when there is an explicit String provided as a namespace parameter#test_0001_the namespace is the string = 0.00 s = .
-Pipelined Get::using the meta protocol::pipeline_next_responses#test_0001_raises NetworkError when called before pipeline_response_setup = 0.10 s = .
-Pipelined Get::using the meta protocol::pipeline_next_responses#test_0002_raises NetworkError when called after pipeline_abort = 0.20 s = .
-Dalli::Protocol::ValueMarshaller::store::when the value_max_bytes is customized::when the raw option is not specified::when the serialized value is below the value_max_bytes size and min compression size#test_0001_return the expected value and flags = 0.00 s = .
-Dalli::Protocol::TtlSanitizer::sanitize::when the argument is a string::when the value is more than the current timestamp#test_0001_just returns the value = 0.00 s = .
-KeyManager::validate_key::when there is a namespace::when the key with namespace is shorter than 250 characters#test_0001_returns the key = 0.00 s = .
-Dalli::Protocol::ValueMarshaller::store::when the value_max_bytes is the default 1MB::when the raw option is not specified::when the compressed, serialized value is above the value_max_bytes size#test_0001_raises an error with the expected message = 0.81 s = .
-KeyManager::key_without_namespace::with namespace::when the argument starts with the namespace#test_0001_strips the namespace = 0.00 s = .
-concurrent behavior::using the binary protocol#test_0001_supports multithreaded access = 1.75 s = .
-Dalli::Protocol::ServerConfigParser::parse::when the string is not an memcached URI::tcp::when the hostname is an IPv4 address#test_0002_parses hostname with a port = 0.00 s = .
-Dalli::Protocol::ServerConfigParser::parse::when the string is not an memcached URI::tcp::when the hostname is an IPv4 address#test_0001_parses a hostname by itself = 0.00 s = .
-Dalli::Protocol::ServerConfigParser::parse::when the string is not an memcached URI::tcp::when the hostname is an IPv4 address#test_0003_parses hostname with a port and weight = 0.00 s = .
-TTL behavior::using the meta protocol#test_0001_raises error with invalid client level expires_in = 0.00 s = .
-TTL behavior::using the meta protocol#test_0002_supports a TTL on set = 1.21 s = .
-TTL behavior::using the meta protocol#test_0003_generates an ArgumentError for ttl that does not support to_i = 0.00 s = .
-Dalli::Protocol::ValueMarshaller::store::when the value_max_bytes is the default 1MB::when the raw option is specified::when the value is below the value_max_bytes size and above the minimum compression size#test_0001_return the expected value and flags = 0.00 s = .
-Dalli::Protocol::ValueSerializer::retrieve::when the bitflags specify serialization#test_0001_should deserialize the value = 0.00 s = .
-operations::using the binary protocol::fetch#test_0001_fetches pre-existing values = 0.00 s = .
-operations::using the binary protocol::fetch#test_0003_supports with falsey values = 0.00 s = .
-operations::using the binary protocol::fetch#test_0002_supports with default values = 0.00 s = .
-operations::using the binary protocol::fetch#test_0004_supports with nil values when cache_nils: true = 0.01 s = .
-Dalli::Protocol::TtlSanitizer::sanitize::when the argument is a string::when the value is more than 30 days in seconds, but less than the current timestamp#test_0001_converts to a future timestamp = 0.00 s = .
-Dalli::Protocol::ValueCompressor::retrieve::when the bitflags do not specify compression#test_0001_should return the value without decompressing = 0.00 s = .
-concurrent behavior::using the meta protocol#test_0001_supports multithreaded access = 1.61 s = .
-Dalli::Protocol::ServerConfigParser::parse::when the string is not an memcached URI::tcp::when the hostname is a domain name#test_0003_parses hostname with a port and weight = 0.00 s = .
-Dalli::Protocol::ServerConfigParser::parse::when the string is not an memcached URI::tcp::when the hostname is a domain name#test_0001_parses a hostname by itself = 0.00 s = .
-Dalli::Protocol::ServerConfigParser::parse::when the string is not an memcached URI::tcp::when the hostname is a domain name#test_0002_parses hostname with a port = 0.00 s = .
-Quiet behavior::using the binary protocol::quiet? method#test_0001_has protocol instances that respond to quiet? = 0.00 s = .
-Quiet behavior::using the binary protocol::quiet? method#test_0002_has protocol instances that respond to multi? = 0.00 s = .
-Network::using the binary protocol::assuming a bad network#test_0003_opens a SSL TCP connection when there is an SSL context set = 0.11 s = .
-Network::using the binary protocol::assuming a bad network#test_0004_allow TCP connections to be configured for keepalive = 0.00 s = .
-Network::using the binary protocol::assuming a bad network#test_0002_opens a standard TCP connection when ssl_context is not configured = 0.00 s = .
-Network::using the binary protocol::assuming a bad network#test_0001_handle no server available = 0.10 s = .
-Dalli::Protocol::ValueSerializer::store::when the request options value for the :raw key is true#test_0001_does not call the serializer and just converts the input value to a string = 0.00 s = .
-operations::using the binary protocol::set#test_0001_returns a CAS when the key exists and updates the value = 0.00 s = .
-operations::using the binary protocol::set#test_0002_returns a CAS when no pre-existing value exists = 0.00 s = .
-Dalli::Protocol::ValueCompressor::store::when the raw value is below the compression_min_size::when no compression_min_size options is set::when the value size is greater than the default compression_min_size::when the client-level compress option is set to false::when the request options specify compress as false#test_0001_does not compress the argument = 0.00 s = .
-Dalli::ServersArgNormalizer::normalize_servers::when the argument is a single string::when the string is a single entry#test_0001_returns the single entry as an array = 0.00 s = .
-Quiet behavior::using the meta protocol::quiet? method#test_0001_has protocol instances that respond to quiet? = 0.00 s = .
-Quiet behavior::using the meta protocol::quiet? method#test_0002_has protocol instances that respond to multi? = 0.00 s = .
-Dalli::ServersArgNormalizer::normalize_servers::when the argument is an array of strings::when there are multiple entries#test_0001_returns the individual servers as an array = 0.00 s = .
-Dalli::Protocol::ValueCompressor::store::when the raw value is below the compression_min_size::when a compression_min_size options is explicitly set::when the value size is greater than the explicit compression size::when the client-level compress option is set to true::when the request options specify compress as true#test_0001_compresses the argument = 0.00 s = .
 
-Finished in 91.663243s, 4.8220 runs/s, 611.7719 assertions/s.
-442 runs, 56077 assertions, 0 failures, 0 errors, 0 skips
+Finished in 349.368472s, 1.2651 runs/s, 43.1579 assertions/s.
+442 runs, 15078 assertions, 0 failures, 0 errors, 0 skips
 
 ┌──────────────────────────────────────────────────────────────────────────────┐
 │ dh_ruby --install finished                                                   │
@@ -1687,12 +1728,14 @@
 dpkg-buildpackage: info: binary-only upload (no source included)
 dpkg-genchanges: info: including full source code in upload
 I: copying local configuration
+I: user script /srv/workspace/pbuilder/2824158/tmp/hooks/B01_cleanup starting
+I: user script /srv/workspace/pbuilder/2824158/tmp/hooks/B01_cleanup finished
 I: unmounting dev/ptmx filesystem
 I: unmounting dev/pts filesystem
 I: unmounting dev/shm filesystem
 I: unmounting proc filesystem
 I: unmounting sys filesystem
 I: cleaning the build env 
-I: removing directory /srv/workspace/pbuilder/4077119 and its subdirectories
-I: Current time: Thu Jan 22 06:48:30 -12 2026
-I: pbuilder-time-stamp: 1769107710
+I: removing directory /srv/workspace/pbuilder/2824158 and its subdirectories
+I: Current time: Sat Dec 21 02:37:55 +14 2024
+I: pbuilder-time-stamp: 1734698275