source: OpenRLabs-Git/deploy/rlabs-docker/web2py-rlabs/gluon/contrib/memcache/ChangeLog

main
Last change on this file was 42bd667, checked in by David Fuertes <dfuertes@…>, 4 years ago

Historial Limpio

  • Property mode set to 100755
File size: 13.9 KB
Line 
1Sun, 27 Nov 2011 18:15:32 -0700  Sean Reifschneider  <jafo@tummy.com>
2
3   * Bug #745633: Values of maximum size are not stored
4   API inconsistency, max value length was tested for <= while max KEY
5   length was <.  So I picked that keys and values *LONGER* than the
6   specified max value are what is used, and added documentation and tests
7   to that effect.  The test for max value tested that length plus 4, so
8   I've changed that to be that value plus 1.  Issue found by matt-quru.
9
10   * Bug #713488: Issues Invalid "delete" command.
11   Protocol has changed so that the "delete" operation no longer takes a
12   "time" argument.  It seems that some servers will refuse a "delete key
13   0" while others will accept it, but the official server will NOT accept
14   "delete key 1".  So I've changed it so that if no "time" argument is
15   specified, no time argument is sent to the server.
16
17   * Bug #713451: server.expect("END") needs to be in a finally block
18   Expect an "END" when the _recv_value() raises an exception.
19   Patch by Jay Farrimond.
20
21   * Bug: #741090: cas cache can grow unbounded.  Default now is that the
22   cache is not used, unless the "Client()" object is created with
23   "cache_cas=True".  In that case, you need to have your own cas clearing
24   code, a simple one would be to use Client().reset_cas() to completely
25   clear the cas_ids cache.  Problem pointed out by Shaun Cutts.
26
27   * Bug #728359: Make python-memcache work on memcache restarts.
28   Patch by Tarek Ziade', reviewed and further patches submitted by Hugo
29   Beauze'e-Luysse and Neganov Alexandr.
30
31   * Bug #798342: If memcached server sends unknown flag in response for
32   "get", results in:
33      "UnboundLocalError: local variable 'val' referenced before assignment"
34   Now returns "None" instead.  Patch by Sharoon Thomas
35
36Mon, 20 Dec 2010 19:14:17 -0700  Sean Reifschneider  <jafo@tummy.com>
37
38   * Bug #680359: useOldServerHashFunction() is broken.  It now correctly
39     switches back to the old memcache hash function.
40
41Thu, 16 Dec 2010 02:07:40 -0700  Sean Reifschneider  <jafo@tummy.com>
42
43   * Bug #471727: Changed the delete() code to explicitly check for both
44     NOT_FOUND and DELETED as the responses and return successful for both.
45     It also logs an error if one of these two responses is not found.
46     Also added a test to ensure that delete() works.
47
48   * When using set_multi and one value is too big, traceback
49     TypeError: 'int' object is unsubscriptable
50     Patch by Orjan Persson
51
52   * Fixing Bug #529855: Server host can now be bare host without ":<port>".
53     Fix proposed by Roger Binns.
54
55   * Fixing Bug #491164: Typo fix, "compession" -> "compRession".
56
57   * Fixing Bug #509712: "TypeError: 'NoneType' object is unsubscriptable"
58     Also fixed some other similar code to not have issues with that.
59
60   * Also related to 509712 and 628339: readline() now returns '' instead
61     of None when a server dies.  This should be safer.  Patch suggested by
62     Denis Otkidach.
63
64   * Fixing Bug #628339: Read from server sometimes fails.  Patch by Jeremy
65     Cowles.
66
67   * Fixing Bug #633553: Add stat arguments support to get_stats().  Patch
68     by Ryan Lane.
69
70   * Changing the license to the PSF License.
71
72   * Removing Evan's e-mail address at his request, changing authorship to
73     Sean.
74
75Sat, 28 Nov 2009 01:07:42 -0700  Sean Reifschneider  <jafo@tummy.com>
76
77   * Version 1.45
78
79   * Per-connection max server key length.  Patch by Nicolas Delaby
80
81   * Patches to make memcached more garbage-collectable.  Removes
82     "debugfunc" argument from _Host objects and changed to "debug"
83     boolean.  Patches by John McFarlane and Aryeh Katz.
84
85   * Switching to a cmemcache compatible hash function.  Implemented by
86     André Cru and Ludvig Ericson.  To switch back to the old style, use:
87
88        memcached.useOldServerHashFunction()
89
90   * Rejecting keys that have spaces in them.  Patch by Etienne Posthumus.
91
92   * Fixing exception raising syntax.  Patch by Samuel Stauffer.
93
94   * Optimizations in read code.  Patch by Samuel Stauffer.
95
96   * Changing classes to be newstyle.  Patch by Samuel Stauffer.
97
98   * Changed "has_key" to "in".  Patch by Samuel Stauffer.
99
100   * incr/decr were raising ValueError if the key did not exist, the
101     docstring said it returned none.  Patch by Chihiro Sakatoku.
102
103   * Adding cas method, submitted by Ben Gutierrez.
104
105   * Fix in the docstring for how to use the "set" method.  Found and fixed
106     by William McVey
107
108Thu, 02 Apr 2009 13:37:49 -0600  Sean Reifschneider  <jafo@tummy.com>
109
110   * Version 1.44
111
112   * Allowing spaces in the key.  (Patch provided by xmm on Launchpad)
113
114   * Detecting when the pickler needs a positional argument.  (Patch
115     provided by Brad Clements on Launchpad)
116
117   * Moving length check after the compression.  (Patch provided by user
118     Tom on Launchpad)
119
120   * Fixing arguments passed to the _Error if invalid read length.
121
122   * Fixing the representation of domain sockets.  (Patch provided by user
123     MTB on Launchpad)
124
125   * Changing a typo of dead_until.  (Patch provided by Shane R. Spencer)
126
127   * Providing better error messages (patch provided by Johan Euphrosine).
128
129   * Adding get_slabs() function to get stats.  (Patch provided
130     by Nick Verbeck)
131
132Sun, 01 Jun 2008 15:05:11 -0600  Sean Reifschneider  <jafo@tummy.com>
133
134   * Version 1.43
135
136   *  eliott reported a bug in the 1.42 related to the socket timeout code
137      causing a traceback due to the timeout value not being set.
138
139Sat, 31 May 2008 02:09:17 -0600  Sean Reifschneider  <jafo@tummy.com>
140
141   * Version 1.42
142
143   *  Paul Hummer set up a Launchpad project which I'm going to start using
144      to track patches and allow users to set up their own bzr branches and
145      manage marging in the upstream patches with their own.
146
147         https://launchpad.net/python-memcached
148
149   *  Patch from Jehiah Czebotar which does: Changing the calls to
150      mark_dead() to make them dereference tuples, reducing timeout on
151      sockets to 3 seconds, settable via setting Host._SOCKET_TIMEOUT.
152
153   *  Patches from Steve Schwarz for set_multi() to return the full set of
154      keys if all servers are down.  Previously would not report any keys.
155
156   *  Fix from Steve Schwarz delete_multi() argument "seconds" not being
157      correctly handled.  Changed it to "time" to match all other calls.
158
159   *  Patch from Peter Wilkinson to support using unix domain sockets.
160      He reports that tests succeed with with memcached daemons running,
161      the normal and a domain socket started via
162      "memcached -s memcached.socket".  I massaged it quite a bit.
163
164      To use domain sockets, use a connect string of "unix:/path/to/socket"
165      Note however that if you are using a host name of "unix", it will now
166      detect "unix:11211" as being a domain socket with the name "11211".
167      In this case, please use "inet:unix:11211".
168
169      Because of this, it is now preferred to use a connect string prefix
170      of "inet:" or "unix:".
171
172Tue, 29 Apr 2008 21:03:53 -0600  Sean Reifschneider  <jafo@tummy.com>
173
174   * Version 1.41
175
176   * Patch from Jehiah Czebotar to catch an additional server disconnect
177     situation.
178
179   * Patch from Andrey Petrov to add the "append" and "replace" commands.
180
181Tue, 18 Sep 2007 20:52:09 -0600  Sean Reifschneider  <jafo@tummy.com>
182
183   * Version 1.40
184
185   * Updated setup.py file that uses distutils provided by Kai Lautaportti.
186
187   * Prevent keys from containing ASCII character 127 as well, patch provided
188     by Philip Neustrom.
189
190   * Added ability to overload the persistent_load/id, patch provided by
191     Steve Schwarz.
192
193   * Fixed ability to pass (server_hash,key) in place of key in Client.set()
194     Reported by Alexander Klyuev.
195
196Tue, 14 Aug 2007 14:43:27 -0600  Sean Reifschneider  <jafo@tummy.com>
197
198   * Version 1.39
199
200   * Michael Krause reports the previous version doesn't work for
201     _val_to_store_info() calls because it's defined as a staticmethod.
202     Removing staticmethod decorator.  Also confirmed by Kai Lautaportti,
203     with suggested fix of removing staticmethod.
204
205Fri, 10 Aug 2007 17:50:13 -0600  Sean Reifschneider  <jafo@tummy.com>
206
207   * Version 1.38
208
209   * Matt McClanahan submitted a patch that allow add() to have a
210     min_compress_len argument.
211
212   * Steve Schwarz submitted a patch allowing user-defined picklers.
213
214   * Michael Krause suggested checking the return value to prevent an
215     exception from being raised in _set() when a value is too large to be
216     stored.
217
218Fri, 27 Jul 2007 01:55:48 -0600  Sean Reifschneider  <jafo@tummy.com>
219
220   * Version 1.37
221
222   * Fixing call from add() to _set() with parameter for min_compress_len.
223     Reported by Jeff Fisher.
224
225Thu, 07 Jun 2007 04:10:31 -0600  Sean Reifschneider  <jafo@tummy.com>
226
227   * Version 1.36
228
229   * Patch by Dave St.Germain to make the Client() class sub-class
230     threadlocal to help with multi-threading issues.  Only available in
231     Python 2.4 and above.
232
233   * Patch by James Robinson with:
234      1) new set_multi method.
235      2) factored out determining the flags, length, and value to store
236         from set() into method _val_to_store_info() for use by both set()
237         and set_multi().
238      3) send_cmds() method on host which doesn't apply the trailing '\r\n'
239         for use by set_multi.
240      4) check_key() extended a bit to allow for testing the prefix passed
241         to set_multi just once, not once per each key.
242      5) Patch also enables support for auto compression in set, set_multi,
243         and replace.
244
245   * Suggestion by Helge Tesdal, fixes in check_key for non-string keys.
246
247   * NOTE: On a farm of clients with multiple servers, all clients will
248     need to be upgraded to this version.  The next patch changes the
249     server hash.
250
251   * Philip Neustrom supplied a patch to change the server hash function to
252     binascii.crc32.  The original "hash()" call is not cross-platform, so
253     big and little endian systems accessing the same memcache may end up
254     hitting different servers.  Restore the old functionality by calling:
255     "memcached.serverHashFunction = hash" after importing memcache.
256
257   * Philip Neustrom points out that passing Unicode keys or values causes
258     problems because len(key) or len(value) is not equal to the number of
259     bytes that are required to store the key/value.  Philip provides a
260     patch which raises an exception in this case.  Raises
261     memcache.Client.MemcachedStringEncodingError exception in this case.
262
263   * NOTE: If you recompiled memcached to increase the default 1MB max
264     value size, you will need to call "memcached.MAX_SERVER_VALUE_LENGTH = N"
265     or memcached will not store values larger than the default 1MB.
266
267   * Philip Neustrom includes another patch which checks that the key
268     doesn't exceed the memcache server's max size.  If it does, the item
269     is silently not stored.
270
271   * Philip Neustrom added a bunch of sanity checks.
272
273   * Jehiah Czebotar provided a patch to make the add() and replace()
274     functions return 0 when the add or replace fails, similar to how set()
275     works.
276
277Sat, 16 Sep 2006 18:31:46 -0600  Sean Reifschneider  <jafo@tummy.com>
278
279   * Version 1.34
280
281   * In get_multi, if the recv loop reads 0 bytes, raising an EOFError.
282     Identified by Jim Baker.
283
284Tue, 05 Sep 2006 14:06:50 -0600  Sean Reifschneider  <jafo@tummy.com>
285
286   * Version 1.33
287
288   * Including patch from Yoshinori K. Okuji to read in larger chunks for
289   readline() calls.  This should dramatically improve performance under
290   some circumstances.
291
292Sun, 03 Sep 2006 14:02:03 -0600  Sean Reifschneider  <jafo@tummy.com>
293
294   * Version 1.32
295
296   * Including patch from Philip Neustrom which checks keys sent to the
297   server for length and bad characters.
298
299Sat, 20 May 2006 14:51:28 -0600  Sean Reifschneider  <jafo@tummy.com>
300
301   * Version 1.31
302
303   *  Rolled version 1.30 since the Danga folks are now listing this
304   version as the official version.  Removing the "tummy" from the version
305   number, and incrementing so that it's clear it's more recent than "1.2".
306
307   * Patch applied from Simon Forman for handling of weighted hosts.
308
309   * Added a little more meat to the README.
310
311Sat, 28 Jan 2006 15:59:50 -0700  Sean Reifschneider  <jafo@tummy.com>
312
313   * cludwin at socallocal suggested that the write-combining with
314   sendall() may not be beneficial.  After testing on both SMP and non-SMP
315   machines, I can't see a significant benefit to not doing the
316   write-combining, even on large strings.  The benefits of write-combining
317   on smaller strings seems to be significant on UP machines in tight loops.
318   Even on strings that are larger than 2MB, there seems to be no benefit to
319   splitting out the writes.
320
321Sun, 18 Sep 2005 18:56:31 -0600  Sean Reifschneider  <jafo@tummy.com>
322
323   * Changing a printf to debuglog and catching a pickle exception, patch
324   submitted by Justin Azoff.
325
326Thu, 14 Jul 2005 11:17:30 -0700  Sean Reifschneider  <jafo@tummy.com>
327
328   * Alex Stapleton found that the sendall call was slow for writing data
329   larger than several kilobytes.  I had him test a change to his patch,
330   which worked as well, but was simpler.  The code now does two sendall
331   calls, one for the data and one for the line termination, if the data is
332   larger than 100 bytes.
333
334Thu, 7 Apr 2005 14:45:44 -0700  Sean Reifschneider  <jafo@tummy.com>
335
336   * Incorporating some fixes to get_multi() from Bo Yang
337
338Mon, 13 Dec 2004 02:35:17 -0700  Sean Reifschneider  <jafo@tummy.com>
339
340   * Simplifying the readline() function and speeding it up ~25%.
341   * Fixing a bug in readline() if the server drops, mark_dead() was not
342      being properly called.
343
344Sun, 12 Dec 2004 18:56:33 -0700  Sean Reifschneider  <jafo@tummy.com>
345
346   * Adding "stats()" and "flush_all()" methods.
347
348Thu, 10 Aug 2003 12:17:50 -0700  Evan Martin  <martine@danga.com>
349
350   * Slightly more verbose self-test output.
351   * Fix mark_dead() to use proper classname.
352   * Make pooltest.py run from the test directory.
353
354Thu, 07 Aug 2003 16:32:32 -0700  Evan Martin  <martine@danga.com>
355
356   * Add incr, decr, and delete.
357   * Better Python (based on comments from Uriah Welcome).
358   * Docs, using epydoc.
359
360Thu, 07 Aug 2003 14:20:27 -0700  Evan Martin  <martine@danga.com>
361
362   * Initial prerelease.
Note: See TracBrowser for help on using the repository browser.