Pieter Noordhuis
890a2ed989
Configurable synchronous I/O timeout
2011-05-22 12:58:18 +02:00
Pieter Noordhuis
b075621fb7
Minor changes in non-blocking repl. connect
2011-05-22 12:51:09 +02:00
Pieter Noordhuis
a330913999
Non-blocking connect with master
2011-05-19 18:54:57 +02:00
Pieter Noordhuis
7271198cf0
Use rio.h functions in aof.c
2011-05-14 12:36:22 +02:00
Pieter Noordhuis
221782ccc6
Move rdbLoad* to top; update comments
2011-05-13 23:24:19 +02:00
Pieter Noordhuis
f1d8e4968e
Make RDB types/opcodes explicit; load/save object type
2011-05-13 22:14:39 +02:00
Pieter Noordhuis
2e4b0e7727
Abstract file/buffer I/O to support in-memory serialization
2011-05-13 17:31:00 +02:00
Pieter Noordhuis
5d08193126
Tests for string2ll; move isObject* to object.c
2011-05-05 16:26:50 +02:00
antirez
eda827f8b7
cluster import/export of hash slots implemented in the query redirection engine
2011-05-05 11:13:21 +02:00
antirez
484354ff95
CLUSTER GETKEYSINSLOT implemented
2011-04-29 16:17:58 +02:00
antirez
c772d9c6e7
take a hashslot -> keys index, will be used for cluster rehasing
2011-04-28 19:00:33 +02:00
antirez
3cd12b5687
CLIENT LIST implemented
2011-04-21 15:38:02 +02:00
antirez
17b24ff30d
save peak memory usage as statistic and show it in INFO. Also a new INFO field was added showing the fragmentation ratio using the peak memory info.
2011-04-21 10:49:52 +02:00
antirez
7c0e1b53c4
Merge remote branch 'pietern/unstable-zset' into unstable
2011-04-14 13:31:14 +02:00
antirez
996d503d1a
ASCII ART FTW
2011-04-13 10:58:21 +02:00
Pieter Noordhuis
7d8c555e92
Merge branch 'unstable' into unstable-zset
...
Conflicts:
src/object.c
2011-04-06 16:15:01 +02:00
antirez
0b7f6d0913
make sure that OBJECT ENCODING returns skiplist for sorted sets, and not raw, so that once we will merge specially encoded sorted sets everything will make sense.
2011-04-06 15:36:10 +02:00
antirez
ece74202bb
OBJECT command implemented
2011-04-06 12:19:45 +02:00
antirez
626f6b2d64
DUMP implemented, RESTORE and MIGRATE fixed. Use zcalloc() instead of zmalloc()+memset() in sds.c when a new string is created with NULL initialization pointer.
2011-04-01 18:59:28 +02:00
antirez
ef21ab960e
centralized cluster config file name. Assigned slots in CLUSTER NODES output and in cluster config file.
2011-03-30 17:41:13 +02:00
antirez
ecc9109434
Cluster branch merged to unstable.
2011-03-29 17:51:15 +02:00
antirez
9791f0f8ce
new preloading implemented, still EXEC not handled correctly, everything to test
2011-03-23 18:09:17 +01:00
Pieter Noordhuis
dddf5335f4
Fix DEBUG DIGEST, SORT and AOF rewrite
2011-03-14 13:30:06 +01:00
Pieter Noordhuis
8588bfa370
Make zzl API unaware of the robj where the ziplist is stored
2011-03-11 17:06:07 +01:00
Pieter Noordhuis
df26a0ae0b
Encode sorted set after loading from dump
2011-03-10 17:50:13 +01:00
Pieter Noordhuis
d4e07f1714
Add new string to long long function
2011-03-10 16:16:27 +01:00
Pieter Noordhuis
3ea204e103
Configurable thresholds for encoded sorted sets
2011-03-09 14:01:57 +01:00
Pieter Noordhuis
e12b27acf7
Persistence code for encoded sorted sets
2011-03-09 13:16:38 +01:00
Pieter Noordhuis
9e7cee0ed0
Add function to create ziplist-backed sorted set
2011-03-08 16:08:52 +01:00
Pieter Noordhuis
672b0a1b25
Fast conversion of double when representable as long long
2011-03-08 16:08:11 +01:00
Pieter Noordhuis
633a941028
Save RDB on SIGTERM (see issue #471 )
2011-03-06 17:49:40 +01:00
antirez
9ad853ccde
added new RDB codes for ziplist encoded lists and intset encodeed sets
2011-02-28 17:06:31 +01:00
antirez
2cc993655f
save zipmap encoded hashes as blobs. Work in progress.
2011-02-28 09:56:48 +01:00
antirez
419e1cca74
less delays in diskstore when there are many writes. more work to do.
2011-02-25 19:11:25 +01:00
antirez
05600eb8a7
fixed two diskstore issues, a quasi-deadlock creating problems with I/O speed and a race condition among threads
2011-02-11 11:16:15 +01:00
antirez
d7ed7fd2fc
INFO commandstats section reset with config resetstat, a new microseconds per call field, and a few other minor things
2011-01-24 10:56:06 +01:00
antirez
0d808ef275
Now INFO outputs the "INFO default" output if no argument is passed. Also added counts of calls for every command, thanks to an idea by Mike Shaver
2011-01-23 22:14:15 +01:00
antirez
d9cb288c9e
profiling information in INFO
2011-01-23 11:46:34 +01:00
Pieter Noordhuis
3bcffcbe5b
Remove client from list of unblocked clients when it is free'd
2011-01-17 10:04:13 +01:00
antirez
52dc87bb18
lame typo causing bad hashes memory characteristic
2011-01-15 22:24:22 +01:00
antirez
7a1fd61e3d
implemented two new INFO fields showing the size of clients max input and output buffers.
2011-01-14 10:20:02 +01:00
antirez
5b831607e7
redisServer structure fields reordered for clarity
2011-01-14 00:19:19 +01:00
antirez
cc2750670f
blocking SAVE implemented
2011-01-08 00:09:57 +01:00
antirez
f03fe802b7
diskstore BGSAVE should work now
2011-01-07 23:41:00 +01:00
antirez
5b8ce85378
more work towards diskstore bgsave
2011-01-07 19:31:42 +01:00
antirez
36c17a53b6
source reshaped a bit to play well with a bgsaving thread, still work to do, does not compile.
2011-01-07 18:15:14 +01:00
antirez
249ad25f4f
BGSAVE work in progress
2011-01-05 18:38:31 +01:00
antirez
51335102ac
Merge remote branch 'pietern/writev-unstable' into unstable
2011-01-05 13:51:37 +01:00
antirez
f771dc23a0
IO performances greatly improved under high writes load
2011-01-05 12:34:14 +01:00
Pieter Noordhuis
a510cb0c03
Remove glueoutputbuf option and broken code
2011-01-05 10:39:41 +01:00
antirez
c15a3887e0
diskstore bug fixing and negative cache proper implementation
2011-01-03 10:47:39 +01:00
antirez
120b9ba8f8
FLUSHALL / FLUSHDB for diskstore implemented
2011-01-03 10:17:39 +01:00
antirez
3be00d7ed6
implemented a different approach to IO scheduling, so object->storage is no longer used, instead there is a queue and hash table of IO tasks to process, and it is always possible to know what are the scheduled and acrtive IO operations against every single key.
2011-01-01 21:35:56 +01:00
antirez
d934e1e85b
negative caching implemented
2010-12-31 17:32:59 +01:00
antirez
3122229228
handled DEL command as a special optimized case for disk store
2010-12-30 19:16:59 +01:00
antirez
8d51fb6a80
diskstore cache bug fixing
2010-12-30 18:37:46 +01:00
antirez
98a9abb66d
don't use small shared integer objects when disk store is enabled
2010-12-30 18:17:01 +01:00
antirez
1fce320114
filesystem based KV store mostly implemented in diskstore.c
2010-12-30 17:07:06 +01:00
antirez
4ab988238f
more work done for diskstore without trying to compile, more work needed to build again.
2010-12-30 16:41:36 +01:00
antirez
f63f0928c3
cron part of disk store object cache implemented. Objects are pushed as IO jobs if needed, so that the IO thread will process them.
2010-12-29 22:18:20 +01:00
antirez
cea8c5cd75
touched key for WATCH refactored into a more general thing that can be used also for the cache system. Some more changes towards diskstore working.
2010-12-29 19:39:42 +01:00
antirez
5ef640986b
more step forwards for disk store to be able to run
2010-12-29 16:58:57 +01:00
antirez
f34a6cd85e
still more work for diskstore
2010-12-29 03:57:35 +01:00
antirez
f2da3a620c
more work converting vm into object cache
2010-12-28 20:03:21 +01:00
antirez
16d778780e
a lot of code reworked/removed to implement object caching
2010-12-28 18:06:40 +01:00
antirez
697af434fb
initial changes needed to turn the current VM code into a cache system. Tons of work to do still.
2010-12-28 15:20:20 +01:00
antirez
33388d4304
added diskstore.c in Makefile and prototypes in redis.h
2010-12-28 14:42:09 +01:00
antirez
f21779ff36
removed some dead code, added evicted keys counter separated from expired keys.
2010-12-19 15:15:08 +01:00
antirez
6a246b1e7e
special encoding limits redefined, and all the config options for special encodings added in the example redis.conf file
2010-12-14 18:23:52 +01:00
antirez
cc7c4158bc
Merge remote branch 'jonahharris/syslog'
2010-12-14 17:53:28 +01:00
antirez
603e616bf4
Merge branch 'master' of github.com:antirez/redis
2010-12-14 17:42:46 +01:00
antirez
57997664ea
Merge remote branch 'pietern/strrange'
2010-12-14 17:42:01 +01:00
antirez
f858c11d7d
Merge remote branch 'pietern/brpoplpush'
2010-12-14 16:26:37 +01:00
Pieter Noordhuis
ef11bcccca
Refactor and rename SUBSTR to GETRANGE
...
SUBSTR is renamed to GETRANGE to have better consistency between command
names (with SETRANGE as its dual). GETRANGE is still aliased as SUBSTR.
2010-12-14 15:16:29 +01:00
Pieter Noordhuis
9f9e1ceaa0
Add SETRANGE command implementation and tests
2010-12-14 14:20:51 +01:00
antirez
8c304be359
cow friendly HGETALL and variants
2010-12-14 12:10:51 +01:00
antirez
dd48de748c
fixed compilation on Linux
2010-12-10 15:47:01 +01:00
antirez
3d24304ff9
HGET HMGET are now COW friendly, plus API refactoring and changes needed for the new implementation.
2010-12-10 15:17:55 +01:00
antirez
1b508da7ca
SINTER/MEMBERS are now COW friendly, also some refactoring around was needed to get this result.
2010-12-09 23:01:09 +01:00
Jonah H. Harris
e1a586ee69
syslog support
2010-12-09 11:10:21 -05:00
Pieter Noordhuis
3c1bf4957e
Add commands SETBIT/GETBIT
2010-12-09 16:39:33 +01:00
antirez
a5be65f71c
COW friendly versions of SPOP and SRANDMEMBER commands, with some change to the set encoding-agnostic API.
2010-12-09 10:21:02 +01:00
antirez
d51ebef509
LRANGE converted into a COW friendly command. Some refactoring, comment, and new addReply*() family function added in the process.
2010-12-07 16:33:13 +01:00
Pieter Noordhuis
a4ce758155
Don't execute commands for clients when they are unblocked
2010-12-06 16:39:39 +01:00
Pieter Noordhuis
5fa95ad763
Rename blpop_blocked_clients to bpop_blocked_clients
2010-12-06 14:05:01 +01:00
Damian Janowski & Michel Martens
e3c51c4b1b
Rename bstate to bpop.
2010-11-29 23:52:07 -03:00
Damian Janowski & Michel Martens
357a841714
Move to struct.
2010-11-29 23:52:07 -03:00
Damian Janowski & Michel Martens
b2a7fd0cf7
BRPOPLPUSH.
2010-11-29 23:52:07 -03:00
Damian Janowski & Michel Martens
8a979f0390
Fix case in RPOPLPUSH.
2010-11-29 23:52:07 -03:00
Pieter Noordhuis
bd70a5f588
Stop using /dev/null to find out the serialized object length
...
Now the rdbSave* functions return the number of bytes written (or
required to write) in serializing a Redis object, writing to /dev/null
and using ftell (which doesn't work on FreeBSD) isn't needed anymore.
2010-11-21 16:31:27 +01:00
antirez
5402c4262e
added noeviction policy to redis maxmemory. ZSCORE removed from the list of commands that can't be called when we are low on memory, this command was added in the past for a stupid error.
2010-11-08 16:12:16 +01:00
antirez
97e7f8aec3
non blocking loading of the DB / AOF with informations and ETA in INFO output
2010-11-08 11:52:03 +01:00
antirez
4ebfc45528
config option to select if when replication link with master a slave should or not serve stale data
2010-11-04 19:59:21 +01:00
antirez
62ec599c36
typos and minor stuff fixed in the new non blocking replication code
2010-11-04 17:35:03 +01:00
antirez
f4aa600b99
first attempt to non blocking implementation of slave replication and SYNC bulk data download. Never compiled so far...
2010-11-04 17:29:53 +01:00
Pieter Noordhuis
a9b18e54d4
Stop using the freelist robj* cache
2010-11-04 10:09:30 +01:00
antirez
1b1f47c915
command lookup process turned into a much more flexible and probably faster hash table
2010-11-03 11:23:59 +01:00
antirez
0a546fc017
Merge remote branch 'pietern/unixsocket'
2010-11-02 23:47:52 +01:00
antirez
b5b22da8e6
Revert "Function to compute RSS memory usage in a fast way, suitable to be called inside keys eviction loops"
...
This reverts commit 7d47ecd543
.
2010-11-02 12:10:41 +01:00
antirez
7d47ecd543
Function to compute RSS memory usage in a fast way, suitable to be called inside keys eviction loops
2010-11-02 11:40:35 +01:00