Commit Graph

554 Commits

Author SHA1 Message Date
242a64f3d6 swap objects out directly while loading an RDB file if we detect we can't stay in the vm max memory limits anyway 2010-05-08 02:38:59 +02:00
59305dc7a9 DEBUG POPULATE command for fast creation of test databases 2010-05-07 16:33:47 +02:00
0a6f3f0f8a swap arguments in blockClientOnSwappedKeys to be consistent 2010-05-07 14:33:34 +02:00
3805e04f78 added function that preloads all keys needed to execute a MULTI/EXEC block 2010-05-07 14:22:21 +02:00
739ba0d211 add sanity check to zunionInterBlockClientOnSwappedKeys, as the number of keys used is provided as argument to the function 2010-05-07 12:59:34 +02:00
ca1788b560 make prototype of custom function to preload keys from the vm match the prototype of waitForMultipleSwappedKeys 2010-05-07 12:58:44 +02:00
6f07874621 extract preloading of multiple keys according to the command prototype to a separate function 2010-05-07 12:45:27 +02:00
f3b52411db make append only filename configurable 2010-05-07 11:55:12 +02:00
f4f06efccc don't load value from VM for EXISTS 2010-05-07 11:40:26 +02:00
a0e7e5f516 swap file name pid expansion removed. Not suited for mission critical software... 2010-05-07 09:36:37 +02:00
8b5bb414f1 Swap file is now locked 2010-05-07 09:32:26 +02:00
f424d5f398 Merge branch 'master' into aof-speedup 2010-05-06 23:19:46 +02:00
4132ad8d49 log error and quit when the AOF contains an unfinished MULTI 2010-05-06 22:14:07 +02:00
946342c190 hincrby should report an error when called against a hash key that doesn't contain an integer 2010-05-06 20:38:50 +02:00
28ed1f33ee AOF writes are now accumulated into a buffer and flushed into disk just before re-entering the event loop. A lot less writes but still this guarantees that AOF is written before the client gets a positive reply about a write operation, as no reply is trasnmitted before re-entering into the event loop. 2010-05-06 20:16:14 +02:00
10ce12761a On Linux now fdatasync() is used insetad of fsync() in order to flush the AOF file kernel buffers 2010-05-02 15:05:34 +02:00
dd142b9cd7 New MONITOR output format with timestamp, every command in a single line, string representations 2010-04-29 18:43:51 +02:00
8f63ddca00 AOF is now rewritten on slave after SYNC with master. Thanks to @_km for finding this bug and any others' 2010-04-27 16:58:08 +02:00
526d00a572 SETEX implemented 2010-04-23 19:07:33 +02:00
c8d0ea0ef1 Pub/Sub API change: now messages received via pattern matching have a different message type and an additional field representing the original pattern the message matched 2010-04-23 15:36:00 +02:00
723240057a new units for bytes specification 2010-04-22 15:09:07 +02:00
2b61932933 Now in redis.conf it is possible to specify units where appropriate instead of amounts of bytes, like 2Gi or 4M and so forth 2010-04-22 12:05:51 +02:00
dc4be23ec8 binary safe keys ready implementation of RANDOMKEYS 2010-04-21 11:31:29 +02:00
24df76987e Now that's the right 1.3.10 2010-04-21 10:31:48 +02:00
3bb225d66b Revert "fsync always now uses O_DIRECT on Linux"
This reverts commit 566c3c7a22.
2010-04-21 10:31:16 +02:00
d6fb4d5396 Revert "define __USE_GNU to get O_DIRECT"
This reverts commit 122c049834.
2010-04-21 10:31:08 +02:00
122c049834 define __USE_GNU to get O_DIRECT 2010-04-20 18:29:06 +02:00
566c3c7a22 fsync always now uses O_DIRECT on Linux 2010-04-20 18:25:30 +02:00
66c8853f9c Fix for MULTI/EXEC and Replication/AOF: now the block is correctly sent as MULTI/..writing operations../EXEC. Ok for slaves but more work needed for the AOF as it should be a write-all-or-nothing business 2010-04-19 18:30:11 +02:00
7ccd2d0a5f running the test using tcl8.5 directly instead of tclsh that too often it's a symlink to 8.4 2010-04-19 16:11:13 +02:00
08ee9b570f Fix for a SORT bug introduced with commit 16fa22f1, regression test added 2010-04-18 17:51:15 +02:00
177727542c Guru mediation -> meditation 2010-04-18 00:03:49 +02:00
682c73e87e check eptr inline 2010-04-17 13:06:49 +02:00
bd79a6bda0 refactor code that retrieves value from object or replies to client 2010-04-17 13:06:49 +02:00
4e8dbaf463 Merge branch 'hash' of git://github.com/pietern/redis 2010-04-17 12:54:49 +02:00
f83c6cb5eb redisAssert(0) => redisPanic("something meaningful") 2010-04-17 12:54:40 +02:00
3f973463a7 make sure that the resulting value in hincrby is encoded when possible 2010-04-17 12:46:23 +02:00
edc2f63ad9 increment dirty counter after hmset 2010-04-17 12:35:22 +02:00
97224de7f9 strip tryObjectEncoding from hashSet, to enable the arguments being encoded in-place 2010-04-17 12:33:43 +02:00
c651fd9ee3 Added support for Guru Mediation, and raising a guru mediation if refCount <= 0 but decrRefCount is called against such an object 2010-04-17 11:35:05 +02:00
55017f9da0 fix small error and memory leaks in SORT 2010-04-16 18:11:57 +02:00
b4eb9ccdcb Merge branch 'hash-refactor' of git://github.com/pietern/redis 2010-04-16 15:53:44 +02:00
b6f07345c9 check object type in lookupKeyByPattern 2010-04-16 13:37:40 +02:00
705dad386d make sortCommand aware that lookupKeyByPattern always increased the refcount of the returned value 2010-04-16 13:31:17 +02:00
a3f3af860b revert 0c390a to stop using tricks with o->refcount 2010-04-16 13:20:12 +02:00
c44d3b56df store the hash iterator on the heap instead of the stack 2010-04-16 12:48:48 +02:00
c811bb381d drop inline directive 2010-04-16 12:13:41 +02:00
feb8d7e6a6 rename hashReplace to hashSet 2010-04-16 12:12:50 +02:00
d4dd6556c3 Don't set expire to keys with ttl=0, remove them immediately. 2010-04-15 21:29:46 +02:00
16fa22f12b make sure that cmpobj is in decoded form when sorting by ALPHA (this solves edge case from previous commit where (!sortby && alpha) == 1) 2010-04-15 20:55:34 +02:00