8620 Commits

Author SHA1 Message Date
antirez
58f31d2297 LOLWUT: version 6 initial output. May change a bit. 2019-10-07 18:24:34 +02:00
charsyam
d453899c0f fix type salves to slaves 2019-10-07 23:48:11 +09:00
antirez
a8c9f29787 LOLWUT: version 6 initial concept. 2019-10-07 12:35:17 +02:00
Oran Agra
dd99293067 fix issues found by a static analyzer
cluster.c - stack buffer memory alignment
    The pointer 'buf' is cast to a more strictly aligned pointer type
evict.c - lazyfree_lazy_eviction, lazyfree_lazy_eviction always called
defrag.c - bug in dead code
server.c - casting was missing parenthesis
rax.c - indentation / newline suggested an 'else if' was intended
2019-10-07 09:09:32 +03:00
antirez
7dd5d37b45 LOLWUT: ability to specify VERSION <ver> option. 2019-10-04 19:19:54 +02:00
antirez
f30328c793 LOLWUT: refactoring + skeleton of LOLWUT 6. 2019-10-04 19:19:48 +02:00
Oran Agra
f484baa3ea trim the double implementation of jemalloc purge 2019-10-04 14:22:13 +03:00
Oran Agra
7737e5814a Merge remote-tracking branch 'antirez/unstable' into jemalloc_purge_bg 2019-10-04 13:53:40 +03:00
antirez
46da87cdbb Minor aesthetic changes to #6419. 2019-10-04 12:00:41 +02:00
Salvatore Sanfilippo
2ee9207f33 Merge pull request #6419 from oranagra/lua_timeout_sha
On LUA script timeout, print the script SHA to the log
2019-10-04 11:58:05 +02:00
Salvatore Sanfilippo
14a50854cc Merge pull request #6308 from oranagra/repl-diskless-load-config
fix error handling on config parsing of repl-diskless-load
2019-10-04 11:56:08 +02:00
antirez
124493582b Modules: RM_Call(): give pointer to documentation. 2019-10-04 11:46:53 +02:00
antirez
9f2a31368c Modules: RM_Call/Replicate() ability to exclude AOF/replicas. 2019-10-04 11:44:53 +02:00
antirez
59982e85eb Modules: add RM_Replicate() Tcl test file & fix the module. 2019-10-03 18:44:50 +02:00
antirez
d6d4fea080 Modules: RM_Replicate() test with threads. 2019-10-03 13:23:53 +02:00
antirez
d859b42899 Modules: RM_Replicate() test module: initial implementation. 2019-10-03 13:06:13 +02:00
antirez
414f633962 Modules: RM_Replicate() in thread safe contexts. 2019-10-03 11:03:46 +02:00
antirez
67cdd03efa Modules: implement RM_Replicate() from async callbacks. 2019-10-03 10:56:37 +02:00
antirez
5526c0b9cb Modules: handle propagation when ctx is freed. Flag modules commands ctx. 2019-10-02 18:33:40 +02:00
Oran Agra
086b391107 RED-31295 - redis: avoid race between dlopen and thread creation
It seeems that since I added the creation of the jemalloc thread redis
sometimes fails to start with the following error:

Inconsistency detected by ld.so: dl-tls.c: 493: _dl_allocate_tls_init: Assertion `listp->slotinfo[cnt].gen <= GL(dl_tls_generation)' failed!

This seems to be due to a race bug in ld.so, in which TLS creation on the
thread, collide with dlopen.

Move the creation of BIO and jemalloc threads to after modules are loaded.

plus small bugfix when trying to disable the jemalloc thread at runtime
2019-10-02 15:39:44 +03:00
antirez
c1855c1053 Speedup INFO server section. 2019-10-02 11:30:20 +02:00
antirez
22caeb8688 SDS: make sdscatfmt() faster by pre-allocating a bit. 2019-10-02 11:30:20 +02:00
Oran Agra
497cfb61d6 On LUA script timeout, print the script SHA to the log
since the slowlog and other means that can help you detect the bad script
are only exposed after the script is done. it might be a good idea to at least
print the script name (sha) to the log when it timeouts.
2019-10-02 08:40:35 +03:00
antirez
c8b49a27ae GEORADIUS reply: fix of the previous fix about #6417. 2019-10-01 19:18:55 +02:00
Salvatore Sanfilippo
b5f075f8ae Merge pull request #6270 from oranagra/modules_info
Extend modules API to allow modules report to redis INFO
2019-10-01 18:02:33 +02:00
antirez
0338f6b5c3 Fix GEORADIUS replies broken after RESP3 introduction.
This commit fixes #6417.
2019-10-01 10:38:56 +02:00
antirez
1b2c3ffb1f Merge branch 'hashed-pass-opcode' into unstable 2019-10-01 10:33:04 +02:00
Oran Agra
3556b6109c Use sdscatfmt instead of sdscatprintf in module info
sdscatfmt is faster
2019-09-30 21:13:13 +03:00
Oran Agra
bd49c4679b Merge remote-tracking branch 'antirez/unstable' into modules_info 2019-09-30 20:47:35 +03:00
antirez
700cc17a6a Clarify a comment about memory total_frag field. 2019-09-30 18:37:59 +02:00
antirez
6118989790 ACLs: change hashed passwords opcode to also remove them.
Related to PR #6405
2019-09-30 18:28:45 +02:00
Madelyn Olson
364c8601e3 Allowed passing in of password hash and fixed config rewrite 2019-09-30 17:57:49 +02:00
Salvatore Sanfilippo
f0522ace60 Merge pull request #6411 from nikhilajayk/unstable
Added cluster host and protected mode variables to the create cluster script.
2019-09-30 17:46:09 +02:00
Salvatore Sanfilippo
ade7ba8539 Merge pull request #6304 from dbenders/fix-issue-6141
Fix issue #6141: cluster rebalance does not support binary key
2019-09-30 17:43:58 +02:00
antirez
70dbce4273 Fix comments aesthetics. 2019-09-30 17:17:36 +02:00
antirez
0660ff3696 Change a bit the style of #6385. 2019-09-30 10:58:15 +02:00
Salvatore Sanfilippo
d69ff13992 Merge pull request #6385 from filipecosta90/perf-reply-ss-error
Improve performance of RM_ReplyWithSimpleString and RM_ReplyWi…
2019-09-30 10:57:05 +02:00
antirez
9ec77b6a7a moduleRDBLoadError(): io->ctx may be NULL.
The correct way to access the module about a given IO context is to
deference io->type->module, since io->ctx is only populated if the user
requests an explicit context from an IO object.
2019-09-27 18:42:38 +02:00
antirez
bd0ddcdc3b Fix memory leak in moduleLoadFromQueue(). 2019-09-27 18:33:21 +02:00
antirez
795d1029b4 Fix memory leak in RM_UnregisterCommandFilter(). 2019-09-27 18:33:05 +02:00
antirez
48aae0d0db TerminateModuleForkChild(): fix function prototype. 2019-09-27 12:23:07 +02:00
antirez
7aaedf9192 TerminateModuleForkChild(): move safety checks there.
We don't want that the API could be used directly in an unsafe way,
without checking if there is an active child. Now the safety checks are
moved directly in the function performing the operations.
2019-09-27 12:17:47 +02:00
antirez
1ef0c2f630 Function renamed hasForkChild() -> hasActiveChildProcess(). 2019-09-27 12:03:09 +02:00
antirez
eba38bc3a9 TerminateModuleForkChild(): use wait4 for safety.
In theory currently there is only one active child, but the API may
change or for bugs in the implementation we may have several (it was
like that for years because of a bug). Better to wait for a specific
pid and avoid consuing other pending children information.
2019-09-27 11:59:58 +02:00
antirez
afc8866d66 Improve error message in BGSAVE. 2019-09-27 11:59:37 +02:00
antirez
e885d74018 Modules fork: improve SIGUSR1 handling, fix include.
We can't expect SIGUSR1 to have any specific value range, so let's
define an exit code that we can handle in a special way.
This also fixes an #include <wait.h> that is not standard.
2019-09-27 11:39:45 +02:00
Salvatore Sanfilippo
80ab4ce38b Merge pull request #6247 from oranagra/modules_fork
Module API for Forking
2019-09-27 11:24:45 +02:00
Salvatore Sanfilippo
5c5761bcd6 Merge branch 'unstable' into modules_fork 2019-09-27 11:24:06 +02:00
nikhilajayk
c9cf8a3c5f Added cluster host and protected mode variables 2019-09-26 21:51:49 +05:30
antirez
5d78cf769c BGREWRITEAOF: improve the generic error message. 2019-09-26 16:14:21 +02:00