4be855e757
Fixed issues with expire introduced with latest millisecond resolution feature. Many time_t were not converted to long long, and one time() call was not replaced with mstime().
2011-11-12 01:04:27 +01:00
dab5332f95
Fixed a few typos
2011-11-09 21:59:27 +01:00
bdbdb02edb
Fixed bug breaking rdbSaveMillisecondTime() in 32 bit systems. Thanks to @anydot (Přemysl Hrubý)
2011-11-09 18:47:48 +01:00
7dcc10b65e
Initial support for key expire times with millisecond resolution. RDB version is now 3, new opcoded added for high resolution times. Redis is still able to correctly load RDB version 2. Tests passing but still a work in progress. API to specify milliseconds expires still missing, but the precision of normal expires is now already improved and working.
2011-11-09 16:51:19 +01:00
c0ba9ebe13
dict.c API names modified to be more coincise and consistent.
2011-11-08 17:07:55 +01:00
9e6a9f30ea
A past commit removed the inclusion of redis.h from rdb.c, completely breaking 32 bit builds under Linux.
2011-10-23 10:42:16 +02:00
6d61e5bf5b
Exit with Fatal error at startup if the RDB file signature or version is wrong.
...
Ref: issue #103
2011-10-14 16:59:38 +02:00
eab0e26e03
replaced redisAssert() with redisAssertWithInfo() in a shitload of places.
2011-10-04 18:43:03 +02:00
f96a8a8054
rioInitWithFile nad rioInitWithBuffer functions now take a rio structure pointer to avoid copying a structure to return value to the caller.
2011-09-22 16:00:40 +02:00
f9c6f39b2b
merge conflicts resolved
2011-09-22 15:15:26 +02:00
c9d0c3623a
diskstore removed
2011-06-25 12:22:03 +02:00
f85cd526c1
DB API refactoring. The changes were designed together with Pieter Noordhuis.
2011-06-20 16:42:16 +02:00
591f29e0f5
Use a safe iterator while saving the DB, since the getExpire() function will access the iterating dictionary.
2011-06-17 15:41:22 +02:00
2c6cc5e502
minor code aesthetic change
2011-06-10 18:13:57 +02:00
b333e23997
automatic AOF rewrite first implementation. Still to be tested.
2011-06-10 12:39:23 +02:00
615e414c5d
INFO now contains the time (in usecs) needed to fork() in order to persist. The info is available in the stats section of INFO.
2011-05-29 15:17:29 +02:00
041d8e2a5c
Fix up rdbWriteRaw to return number of bytes written
2011-05-14 12:47:42 +02:00
fd535c5862
More rioRead()
2011-05-14 12:32:50 +02:00
221782ccc6
Move rdbLoad* to top; update comments
2011-05-13 23:24:19 +02:00
f1d8e4968e
Make RDB types/opcodes explicit; load/save object type
2011-05-13 22:14:39 +02:00
2e4b0e7727
Abstract file/buffer I/O to support in-memory serialization
2011-05-13 17:31:00 +02:00
6b52ad87c0
RDB version signature bumped to 2, now that direct saving of specially encoded types is implemented 2.2 instances are no longer able to read rdb files produced by 2.4 or unstable.
2011-05-10 11:31:37 +02:00
d4d3a70da2
Update target encoding for sorted set from rdb
2011-04-06 16:38:34 +02:00
100ed062c0
Test for ENCODING_SKIPLIST instead of ENCODING_RAW
2011-04-06 16:17:07 +02:00
4cc4d1648b
Typo
2011-04-06 16:15:15 +02:00
7d8c555e92
Merge branch 'unstable' into unstable-zset
...
Conflicts:
src/object.c
2011-04-06 16:15:01 +02:00
ecc9109434
Cluster branch merged to unstable.
2011-03-29 17:51:15 +02:00
df26a0ae0b
Encode sorted set after loading from dump
2011-03-10 17:50:13 +01:00
e12b27acf7
Persistence code for encoded sorted sets
2011-03-09 13:16:38 +01:00
1213abe477
fix type in rdbSaveKeyValuePair() when saving an intset. Don't merge this commit into 2.2 as will not apply cleanly.
2011-02-28 17:55:05 +01:00
26117e84f0
direct saving of specially encoded types implemented for lists and sets too
2011-02-28 17:53:47 +01:00
0a04b5f5a0
define name typo fixed
2011-02-28 17:36:12 +01:00
9fa7beb515
save ziplist encoded type as a different type id. Done as separated commit since this is the part that will not merge cleanly in 2.2
2011-02-28 17:06:09 +01:00
f8956ed6d8
convert the zipmap into hash in rdb loading if the zipmap has too many elements
2011-02-28 16:55:34 +01:00
1187b0a56e
fix for zipmap raw saving in unstable branch
2011-02-28 15:13:49 +01:00
2cc993655f
save zipmap encoded hashes as blobs. Work in progress.
2011-02-28 09:56:48 +01:00
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
cc2750670f
blocking SAVE implemented
2011-01-08 00:09:57 +01:00
5b8ce85378
more work towards diskstore bgsave
2011-01-07 19:31:42 +01:00
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
249ad25f4f
BGSAVE work in progress
2011-01-05 18:38:31 +01:00
1fce320114
filesystem based KV store mostly implemented in diskstore.c
2010-12-30 17:07:06 +01:00
4ab988238f
more work done for diskstore without trying to compile, more work needed to build again.
2010-12-30 16:41:36 +01:00
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
16d778780e
a lot of code reworked/removed to implement object caching
2010-12-28 18:06:40 +01:00
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
9a68cf91f0
Wrapper around fwrite to make API consistent
2010-11-21 16:12:25 +01:00
8a623a98c3
Return number of bytes written from rdbSave* functions
2010-11-21 16:07:46 +01:00
97e7f8aec3
non blocking loading of the DB / AOF with informations and ETA in INFO output
2010-11-08 11:52:03 +01:00
b04ce2a35c
Merge master with resolved conflict in src/redis-cli.c
2010-10-13 18:55:46 +02:00