antirez
0f3705f3c8
Even inside #if 0 comments are comments.
2012-04-21 21:49:21 +02:00
Salvatore Sanfilippo
cc080d1fc2
Merge pull request #440 from ErikDubbelboer/spelling
...
Fixed some spelling errors in comments
2012-04-21 03:31:06 -07:00
antirez
8fc5a95344
Currenly not used code in dict.c commented out.
2012-04-18 23:56:07 +02:00
Erik Dubbelboer
358745fcc2
Update src/dict.c
2012-04-07 15:45:53 +03:00
Erik Dubbelboer
1c82a561f1
Fixed some spelling errors in the comments
2012-04-07 14:40:29 +02:00
huangz1990
f7192a2ce1
fix typo
2012-03-15 14:27:14 +08:00
antirez
36d5d67ed7
fixed typo in hahs function seed default value. It is no longer used but fixed to retain the old constant as default anyway.
2012-01-22 01:40:23 +01:00
antirez
fff238e507
Fix for hash table collision attack. We simply randomize hash table initialization value at startup time.
2012-01-21 23:30:13 +01:00
antirez
cd3dc80e8c
dict.c: added macros in dict.h to set signed and unsigned 64 bit values directly inside the hash entry without using additional memory.
2011-11-08 19:41:29 +01:00
antirez
d6c3b3004e
dict.c API names modified to be more coincise and consistent.
2011-11-08 17:07:55 +01:00
antirez
e1ebf77694
dict.c: added two lower level methods for directly manipulating hash entries. This is useful in order to set 64 bit integers as values directly inside the hash entry (in order to save memory), without casting, and even in 32 bit builds.
2011-11-08 16:57:20 +01:00
antirez
be38c7b77b
added an union in the dict.h structure to store 64 bit integers directly into hash table entries.
2011-11-02 15:28:45 +01:00
antirez
d4e65ce0c2
Introduced a safe iterator interface that can be used to iterate while accessing the dictionary at the same time. Now the default interface is consireded unsafe and should be used only with dictNext()
2011-05-10 10:15:50 +02:00
antirez
fd16bf40d9
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
5d33a8862a
command lookup process turned into a much more flexible and probably faster hash table
2010-11-03 11:23:59 +01:00
antirez
7d0534c0df
This should fix Issue 332: when there is a background process saving we still allow the hash tables to grow, but only when a critical treshold is reached. Formerly we prevented the resize at all triggering pathological O(N) behavior. Also there is a fix for the statistics in INFO about the number of keys expired
2010-09-15 14:09:41 +02:00
antirez
e0be2289e9
hash table example commented out in dict.c
2010-07-27 10:00:38 +02:00
Benjamin Kramer
399f2f401c
Add zcalloc and use it where appropriate
...
calloc is more effecient than malloc+memset when the system uses mmap to
allocate memory. mmap always returns zeroed memory so the memset can be
avoided. The threshold to use mmap is 16k in osx libc and 128k in bsd
libc and glibc. The kernel can lazily allocate the pages, this reduces
memory usage when we have a page table or hash table that is mostly
empty.
This change is most visible when you start a new redis instance with vm
enabled. You'll see no increased memory usage no matter how big your
page table is.
2010-07-25 00:11:20 +02:00
Benjamin Kramer
d9dd352b36
Remove _dictAlloc and friends
...
zmalloc calls abort() so _dictPanic will never be called.
2010-07-24 23:10:42 +02:00
Benjamin Kramer
b1e0bd4b9b
Reduce code duplication
2010-07-24 22:37:01 +02:00
antirez
e2641e09cc
redis.c split into many different C files.
...
networking related stuff moved into networking.c
moved more code
more work on layout of source code
SDS instantaneuos memory saving. By Pieter and Salvatore at VMware ;)
cleanly compiling again after the first split, now splitting it in more C files
moving more things around... work in progress
split replication code
splitting more
Sets split
Hash split
replication split
even more splitting
more splitting
minor change
2010-07-01 14:38:51 +02:00