Compare commits

..
4 changed files with 19 additions and 3 deletions

No files matched your search

+9 -1
View File
@@ -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
+1
View File
@@ -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) {
+2 -2
View File
@@ -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;
}
+7
View File
@@ -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]