root/trunk/api/perl/ChangeLog @ 805

Revision 805, 8.1 kB (checked in by hachi, 11 months ago)

Fix reconnects on dead sockets to not be as slow.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
Line 
1        * Reconnects to a dead connection shouldn't happen every time when the
2          connection has never succeded. Apply the dead timeout to sockets that
3          never even came up. Add a test.
4
5        * Warn when trying to put undef values into memcache.
6          (Henry Lyne <hlyne@livejournalinc.com>)
7       
8        * flush_all now only returns success if there is a proper reply from all
9          servers - Yann Kerherve <yann@sixapart.com>
10       
11        * 'noreply' support from Tomash Brechko <tomash.brechko@gmail.com>
12
13        * various test updates from Ronald J Kimball <rkimball@pangeamedia.com>
14
152007-07-17: version 1.24
16
17        * update the stats method, including tests for it
18          (Ronald J Kimball <rkimball+memcached@pangeamedia.com>)
19
20        * arguments to 'new' constructor can be %hash or $hashref now
21          (previously was only $hashref)
22
23        * work around a Perl segfault (Matthieu PATOU <mp@oxado.com>)
24          see http://lists.danga.com/pipermail/memcached/2007-June/004511.html
25
262007-06-19: version 1.23
27
28        * add 'remove' as an alias for 'delete' (Dave Cardwell <dave@davecardwell.co.uk>)
29
302007-06-18: version 1.22
31
32        * lost connection handling broken due to wrong %sock_map indexing
33          http://rt.cpan.org/Public/Bug/Display.html?id=27181
34          fix from RHESA
35
36        * let parser_class be configured as a constructor option,
37          defaulting to XS if available, else regular.  (unless
38          $ENV{NO_XS} is set, in which case the default is regular)
39
402007-05-02: version 1.21
41
42        * new faster optional interface for GetParser subclasses.  doing
43          this release so upcoming Cache::Memcached::GetParserXS can
44          depend on this.  otherwise this release isn't interesting.
45
462007-04-16: version 1.20
47
48        * fix "Warning produced when flush_all called" from CDENT
49          http://rt.cpan.org/Public/Bug/Display.html?id=22181
50
51        * support access via unix domain sockets. (Nathan Neulinger <nneul@umr.edu>)
52
53        * abstract out response parsing into own class, and add XS-module
54          detection, so if you have the XS (C) version, things'll be faster.
55          that part's not done yet.
56
572006-07-03
58        * don't use dual scalar/glob sockets.  makes it all profilable
59          again under SmallProf, DProf, and Devel::Profiler, all three
60          of which used to barf on those weird sockets previously
61        * only init_buckets once, when servers are changed
62        * don't call sock_to_host and get_sock as much:  cache closer
63          in get_multi
64        * more internal caching (buck2sock, etc)
65        * fast paths for namespaces/single sock/etc in a few more places
66        * general micro-speedups all over
67
682006-06-27
69        * patch from Maxim Dounin <mdounin@rambler-co.ru> to fix a typo
70          which caused no_rehash flag to not work.
71        * release 1.18
72
732006-04-29
74        * flush_all command from Patrick Michael Kane <modus-memcache@pr.es.to>
75        * document namespaces
76        * release 1.17
77
782006-04-29
79        * fix stats method (people have only been asking since 2004  :-/)
80        * add tests
81        * move Memcached to lib/Cache directory to be more CPAN-friendly
82        * release 1.16
83
842005-09-20
85        * configurable connect delays and callback on connect failure (brad)
86        * release 1.15
87
882005-08-09
89        * _connect_sock never works in blocking mode because of a bug in setting
90        the default timeout. (Gaal)
91
922004-07-27
93        * release 1.14
94
952004-07-27
96        * kill buggy, slow ord() _hashfunc, replace with crc32.
97          this adds String::CRC32 as a dependency.  thanks to
98          everybody's feedback on the mailing list.
99
1002004-07-19
101        * don't use pos() because it doesn't seem to work in
102          taint mode.  use $+[0] instead.  (Dave Evans <..@djce.org.uk>)
103
1042004-06-19
105        * support multiple paths to memcache nodes (Brad)
106          see 'set_pref_ip'
107
1082004-05-30
109        * release version 1.13
110
1112004-05-26 (Whitaker <whitaker@danga.com>)
112        * quiet warning
113
1142004-05-25 (Whitaker <whitaker@danga.com>)
115        * get_multi shouldn't modify caller's @_
116
1172004-05-18 (Michael <ged@danga.com>)
118        * namespace support
119        * use fields
120
1212004-05-16 (Alexei Kozlov <kozlov@w-m.ru>)
122        * remove warnings with vec
123
1242004-04-09 (brad)
125        * in perl 5.6, trap errors dethawing 5.8 storable objects
126          and instead treat it like a cache miss
127
1282004-04-01
129        * use $! and not %! for perl 5.6 compat (Dave Evans <..@djce.org.uk>)
130        * don't mark whole IP dead anymore when a node is down (Jason Titus <jtitus@postini.com>)
131        * start version numbering (Jamie McCarthy <jamie@mccarthy.vg>)
132
1332004-03-09 (Brad/Avva)
134        * _oneline can return more than one line (but always on a line break),
135          so caller must decide when it's really time to quit.  had to modify
136          run_command to know that.  (which is used by stats)
137
1382004-03-05 (Dave Evans <..@djce.org.uk>)
139        * Here's a really trivial patch for the Perl binding,
140        Cache::Memcached.  The bug is that the module assumes that the
141        currently select()ed filehandle is STDOUT, but this might not be
142        the case.  So this patch ensures that the select()ed filehandle is
143        preserved, not forced to STDOUT.
144
1452004-02-29 (Brad)
146        * add readonly option
147
1482004-02-27 (Avva)
149        * Cleaner handling of the case when _oneline is called without a
150          line parameter (i.e. not to send anything, just read a line from
151          the socket).  Make it depend on $line being defined only,
152          regardless of its content (thanks Brad!).
153
1542004-02-25 (Avva)
155        * Asyncify all I/O, finally get rid of alarm() yuckiness, unify all
156          one-liner command/responses into a single internal API.
157       
1582004-02-17
159        * document in POD the delete method
160       
1612004-02-03
162        * fix bug with 2k read boundaries falling in the middle
163          of "VALUE ..." or "END" lines, thus halting future
164          parsing and responses.  (eek!)
165        * version 1.0.12
166       
1672003-12-01
168        * merge stats/stats_reset patch from Jamie McCarthy
169        * trailing whitespace cleanup
170
1712003-11-08
172        * work on Solaris/BSD where there's no MSG_NOSIGNAL.
173          the expense is extra syscalls to change the local
174          SIGPIPE handler all the time.  in the future, it'd
175          be nice to have an option so Solaris/BSD callers
176          can say, "Hey, I've turned off SIGPIPE globally,
177          don't worry about it."
178
1792003-10-26
180        * add a test file, so automated CPAN test hosts are happy
181        * check MSG_NOSIGNAL immediately on module load, not on use,
182          so Solaris dies early.  (still on TODO to fix, but better
183          to fail loudly)
184        * version 1.0.11
185
1862003-10-25
187        * version 1.0.10, rename to Cache::Memcached, upload to CPAN
188       
1892003-10-18
190        * implement read/write timeouts everywhere. Now the client shouldn't
191          hang if the server machine goes down unexpectedly. (avva)
192
1932003-10-16
194        * use Storable::nfreeze instead of freeze, so hosts from different
195          architectures can all use the same data.  (all must use Perl, though.
196          the different memcache APIs all store/pickle/serialize data differently)
197          Suggestion by Jason Titus <jtitus@postini.com>
198       
1992003-10-06
200        * fix _incrdecr to return complete number, not just first
201          digit (thanks to Ryan T. Dean)
202        * release version 1.0.9
203
2042003-10-04
205        * document expiration times in POD (thanks to Tim Bunce
206          for noting the omission)
207        * release version 1.0.8
208       
2092003-10-03
210        * add connect timeout of 0.25s, for dead host detection.
211          We had 1 second a couple revs ago, but lost it when
212          ditching IO::Socket module.  (avva)
213       
2142003-10-02
215        * fix _incrdecr with explicit-hashvalue keys (whitaker)
216       
2172003-10-01
218        * add run_command API call.  TODO: document, and document
219          the $exptime on the setters
220                 
2212003-09-30
222        * use send instead of print, so we can set MSG_NOSIGNAL
223          and not get SIGPIPES, which avoids 3 syscalls of localizing
224          $SIG{PIPE} and sends everything at once, instead of 4k
225          stdio chunks.  in review:  stdio buffered in, send unbuffered
226          out.  TODO:  setvbuf so reads are buffered at more than 4k.
227
2282003-09-29
229        * yet faster parsing
230        * switch to stdio/perlio instead of raw io: more correct,
231          simpler parsing code.
232
2332003-09-28
234        * prevent some warnings
235        * faster get() call that doesn't use get_multi()
236        * optimizations for single-server case
237        * use socket APIs directly, instead of uber-slow IO::* modules
238        * new faster _load_items parsing
239       
2402003-09-04     
241        * emit debug when set/add/replace fails, in addition to succeed
242     
243Version 1.0.7
244        -- compression support (Brad Whitaker)
245       
246Version 1.0.6
247        -- incr/decr client support
248        -- make delete optionally take second argument (server now supports
249           a delay time on delete)
250        -- doc updates from Jamie McCarthy
251        -- better hashing after dead host detection:  new requests go to different
252           remaining hosts, instead of all to the same one.
253
254Version 1.0.2
255        -- initial release, about.
Note: See TracBrowser for help on using the browser.