Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
ruanhaishen
redis
Commits
efd412f9
Commit
efd412f9
authored
Mar 27, 2012
by
Premysl Hruby
Committed by
antirez
Mar 27, 2012
Browse files
remove disk-store related comments
parent
9ea95e6c
Changes
2
Hide whitespace changes
Inline
Side-by-side
src/db.c
View file @
efd412f9
...
@@ -10,28 +10,6 @@ void SlotToKeyDel(robj *key);
...
@@ -10,28 +10,6 @@ void SlotToKeyDel(robj *key);
* C-level DB API
* C-level DB API
*----------------------------------------------------------------------------*/
*----------------------------------------------------------------------------*/
/* Important notes on lookup and disk store.
*
* When disk store is enabled on lookup we can have different cases.
*
* a) The key is in memory:
* - If the key is not in IO_SAVEINPROG state we can access it.
* As if it's just IO_SAVE this means we have the key in the IO queue
* but can't be accessed by the IO thread (it requires to be
* translated into an IO Job by the cache cron function.)
* - If the key is in IO_SAVEINPROG we can't touch the key and have
* to blocking wait completion of operations.
* b) The key is not in memory:
* - If it's marked as non existing on disk as well (negative cache)
* we don't need to perform the disk access.
* - if the key MAY EXIST, but is not in memory, and it is marked as IO_SAVE
* then the key can only be a deleted one. As IO_SAVE keys are never
* evicted (dirty state), so the only possibility is that key was deleted.
* - if the key MAY EXIST we need to blocking load it.
* We check that the key is not in IO_SAVEINPROG state before accessing
* the disk object. If it is in this state, we wait.
*/
robj
*
lookupKey
(
redisDb
*
db
,
robj
*
key
)
{
robj
*
lookupKey
(
redisDb
*
db
,
robj
*
key
)
{
dictEntry
*
de
=
dictFind
(
db
->
dict
,
key
->
ptr
);
dictEntry
*
de
=
dictFind
(
db
->
dict
,
key
->
ptr
);
if
(
de
)
{
if
(
de
)
{
...
@@ -159,8 +137,6 @@ int dbDelete(redisDb *db, robj *key) {
...
@@ -159,8 +137,6 @@ int dbDelete(redisDb *db, robj *key) {
}
}
}
}
/* Empty the whole database.
* If diskstore is enabled this function will just flush the in-memory cache. */
long
long
emptyDb
()
{
long
long
emptyDb
()
{
int
j
;
int
j
;
long
long
removed
=
0
;
long
long
removed
=
0
;
...
...
src/object.c
View file @
efd412f9
...
@@ -270,9 +270,7 @@ robj *tryObjectEncoding(robj *o) {
...
@@ -270,9 +270,7 @@ robj *tryObjectEncoding(robj *o) {
/* Ok, this object can be encoded...
/* Ok, this object can be encoded...
*
*
* Can I use a shared object? Only if the object is inside a given
* Can I use a shared object? Only if the object is inside a given range
* range and if the back end in use is in-memory. For disk store every
* object in memory used as value should be independent.
*
*
* Note that we also avoid using shared integers when maxmemory is used
* Note that we also avoid using shared integers when maxmemory is used
* because every object needs to have a private LRU field for the LRU
* because every object needs to have a private LRU field for the LRU
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment