Compare commits
9
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
0679aa888b | ||
|
|
ef8b1bf373 | ||
|
|
f629a76a2e | ||
|
|
e4dacb467f | ||
|
|
a8c0f9b1c4 | ||
|
|
36d515ef39 | ||
|
|
525c97d6cd | ||
|
|
4c200e0985 | ||
|
|
d4c0a970e7 |
No files matched your search
+9
-1
@@ -145,7 +145,9 @@ FINAL_LDFLAGS=$(LDFLAGS) $(KEYDB_LDFLAGS) $(DEBUG)
|
||||
FINAL_LIBS+=-lm -lz -lcrypto -lbz2 -lzstd -llz4 -lsnappy
|
||||
|
||||
ifneq ($(uname_S),Darwin)
|
||||
ifneq ($(uname_S),FreeBSD)
|
||||
FINAL_LIBS+=-latomic
|
||||
endif
|
||||
endif
|
||||
# Linux ARM32 needs -latomic at linking time
|
||||
ifneq (,$(findstring armv,$(uname_M)))
|
||||
@@ -211,7 +213,13 @@ ifeq ($(uname_S),NetBSD)
|
||||
else
|
||||
ifeq ($(uname_S),FreeBSD)
|
||||
# FreeBSD
|
||||
FINAL_LIBS+= -lpthread -lexecinfo
|
||||
FINAL_LIBS+= -lpthread -luuid -lexecinfo
|
||||
FINAL_CFLAGS+= -I/usr/local/include
|
||||
FINAL_CXXFLAGS+= -I/usr/local/include
|
||||
FINAL_LDFLAGS+= -L/usr/local/lib
|
||||
ifeq ($(USE_BACKTRACE),yes)
|
||||
FINAL_CFLAGS+= -DUSE_BACKTRACE
|
||||
endif
|
||||
else
|
||||
ifeq ($(uname_S),DragonFly)
|
||||
# DragonFly
|
||||
|
||||
@@ -21,7 +21,7 @@ dictType dbStorageCacheType = {
|
||||
StorageCache::StorageCache(IStorage *storage, bool fCache)
|
||||
: m_spstorage(storage)
|
||||
{
|
||||
if (fCache)
|
||||
if (!g_pserver->flash_disable_key_cache && fCache)
|
||||
m_pdict = dictCreate(&dbStorageCacheType, nullptr);
|
||||
}
|
||||
|
||||
|
||||
@@ -732,6 +732,7 @@ void unblockClientWaitingData(client *c) {
|
||||
c->bpop.xread_group = NULL;
|
||||
c->bpop.xread_consumer = NULL;
|
||||
}
|
||||
c->bpop.timeout = 0;
|
||||
}
|
||||
|
||||
static int getBlockedTypeByType(int type) {
|
||||
|
||||
@@ -2940,6 +2940,7 @@ standardConfig configs[] = {
|
||||
createBoolConfig("allow-write-during-load", NULL, MODIFIABLE_CONFIG, g_pserver->fWriteDuringActiveLoad, 0, NULL, NULL),
|
||||
createBoolConfig("force-backlog-disk-reserve", NULL, MODIFIABLE_CONFIG, cserver.force_backlog_disk, 0, NULL, NULL),
|
||||
createBoolConfig("soft-shutdown", NULL, MODIFIABLE_CONFIG, g_pserver->config_soft_shutdown, 0, NULL, NULL),
|
||||
createBoolConfig("flash-disable-key-cache", NULL, MODIFIABLE_CONFIG, g_pserver->flash_disable_key_cache, 0, NULL, NULL),
|
||||
createSizeTConfig("semi-ordered-set-bucket-size", NULL, MODIFIABLE_CONFIG, 0, 1024, g_semiOrderedSetTargetBucketSize, 0, INTEGER_CONFIG, NULL, NULL),
|
||||
|
||||
#ifdef USE_OPENSSL
|
||||
|
||||
+2
-2
@@ -552,7 +552,7 @@ static int evictionTimeProc(
|
||||
UNUSED(clientData);
|
||||
serverAssert(GlobalLocksAcquired());
|
||||
|
||||
if (performEvictions(false) == EVICT_RUNNING) return 0; /* keep evicting */
|
||||
if (performEvictions((bool)clientData) == EVICT_RUNNING) return 0; /* keep evicting */
|
||||
|
||||
/* For EVICT_OK - things are good, no need to keep evicting.
|
||||
* For EVICT_FAIL - there is nothing left to evict. */
|
||||
@@ -838,7 +838,7 @@ int performEvictions(bool fPreSnapshot) {
|
||||
if (!isEvictionProcRunning && serverTL->el != nullptr) {
|
||||
isEvictionProcRunning = 1;
|
||||
aeCreateTimeEvent(serverTL->el, 0,
|
||||
evictionTimeProc, NULL, NULL);
|
||||
evictionTimeProc, (void*)fPreSnapshot, NULL);
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -2734,6 +2734,8 @@ struct redisServer {
|
||||
int config_soft_shutdown = false;
|
||||
bool soft_shutdown = false;
|
||||
|
||||
int flash_disable_key_cache = false;
|
||||
|
||||
/* Lock Contention Ring Buffer */
|
||||
static const size_t s_lockContentionSamples = 64;
|
||||
uint16_t rglockSamples[s_lockContentionSamples];
|
||||
|
||||
@@ -1069,6 +1069,13 @@ start_server {
|
||||
r ping
|
||||
} {PONG}
|
||||
|
||||
test "Regression for bug 659 - chaining BRPOP with async blocking cmds" {
|
||||
r flushall
|
||||
r brpop foo 1
|
||||
r keys *
|
||||
r ping
|
||||
} {PONG}
|
||||
|
||||
test "client unblock tests" {
|
||||
r del l
|
||||
set rd [redis_deferring_client]
|
||||
|
||||
Reference in new issue
Block a user