Oran Agra
70815145a7
Make module tests pass with valgrind, and fix a leak in diskless load
2019-10-24 09:45:25 +03:00
antirez
a398066625
Modules hooks: select DB zero by default.
2019-10-23 18:51:44 +02:00
antirez
e9f6688a68
Modules hooks: test module draft.
2019-10-23 18:42:02 +02:00
antirez
83adff66c7
Modules hooks: fix memory leak in example module.
2019-10-23 18:39:53 +02:00
antirez
938dafa9e3
Modules hooks: for nested calls, create new fake clients.
...
We can't use the same client at the same time when re-entering the hook.
2019-10-23 18:39:53 +02:00
antirez
261a66b791
Modules hooks: don't call the hook for fake clients.
2019-10-23 18:39:53 +02:00
antirez
d6739df4fc
Modules hooks: do not re-enter in hooks.
...
Calling a module hook callback may result in callback operations in turn
triggering other events the module is subscribed too. We don't want to
trigger those, it's unsafe and quite confusing, and to do it correcly we
would need to maintain an event list: quite a more complex
implementation.
2019-10-23 18:39:53 +02:00
antirez
9d10d62003
Modules hooks: select the right DB for FLUSHDB events.
2019-10-23 18:39:53 +02:00
antirez
77a37cafd5
Modules hooks: FLUSHDB event example.
2019-10-23 18:39:53 +02:00
antirez
581c9133e5
Modules hooks: implement the FLUSHDB event.
2019-10-23 18:39:53 +02:00
antirez
6cd26b3db3
Modules hooks: unify structures definitions.
2019-10-23 18:39:53 +02:00
antirez
4866552961
Modules hooks: document what yet to implement WIP 2.
2019-10-23 18:39:53 +02:00
antirez
d41d09d474
Modules hooks: document what yet to implement WIP 1.
2019-10-23 18:39:53 +02:00
antirez
aa4d69606d
Modules hooks: do more in example client callback.
2019-10-23 18:39:53 +02:00
antirez
7379bb76f2
Module hooks: fixes and an example module.
2019-10-23 18:39:53 +02:00
antirez
d5bd45a368
Modules hooks: fix sub event in calls from client change.
2019-10-23 18:39:53 +02:00
antirez
f3e4f24f68
Modules hooks: fix define / linker issues. Implement one test event.
2019-10-23 18:39:53 +02:00
antirez
98a0d95965
Modules hooks: handle module unloading + API export.
2019-10-23 18:39:53 +02:00
antirez
30d8dce935
Modules hooks: fix a leak and a few more issues.
2019-10-23 18:39:53 +02:00
antirez
aa9b870db3
Modules hooks: event firing logic.
2019-10-23 18:39:53 +02:00
antirez
e9f6e9306b
Modules: refactoring of RM_GetClientInfoById().
2019-10-23 18:39:53 +02:00
antirez
482cf667aa
Modules: fix RedisModule_GetClientInfoById() example.
2019-10-23 18:39:53 +02:00
antirez
16af0381d5
Modules: export GetClientInfoById().
2019-10-23 18:39:53 +02:00
antirez
23ec02d161
Modules: add the client ID to the client info structure.
2019-10-23 18:39:53 +02:00
antirez
35c8b8969e
Modules: RM_GetClientInfoById() draft.
2019-10-23 18:39:53 +02:00
antirez
1f1d25b5a9
Modules hooks: a first version of events and some API.
2019-10-23 18:39:53 +02:00
antirez
7333e5c5a8
Modules hooks: initial design of data structures.
2019-10-23 18:39:53 +02:00
antirez
58a0ef3020
Modules: fix moduleCreateArgvFromUserFormat() casting bug.
...
In 32 bit systems casting to "long" will cut the result to 32 bit.
2019-10-23 18:39:14 +02:00
Guy Korland
82e1417eb7
add CI action
2019-10-20 10:04:25 +03:00
Guy Korland
7d6d180894
Merge branch 'unstable' of github.com:antirez/redis into unstable
2019-10-20 09:59:23 +03:00
antirez
7414be69c8
module: fix propagation API bug.
2019-10-17 18:28:34 +02:00
antirez
ea85cda320
Modules: allow to check for AOF loading client.
2019-10-17 18:10:50 +02:00
antirez
34961ddee8
Modules: add new flags to context, replica state + more.
2019-10-17 17:49:33 +02:00
Jamie Scott
aeba242cb5
Update to directive in redis.conf (missing s)
...
The directive tls-prefer-server-cipher is actually tls-prefer-server-ciphers in config.c. This results in a failed directive call shown below. This pull request adds the "s" in ciphers so that the directive is able to be properly called in config.c
ubuntu@ip-172-31-16-31:~/redis$ src/redis-server ./redis.conf
*** FATAL CONFIG FILE ERROR ***
Reading the configuration file, at line 200
>>> 'tls-prefer-server-cipher yes'
Bad directive or wrong number of arguments
2019-10-16 13:31:19 -07:00
Salvatore Sanfilippo
95478456ab
Merge pull request #6236 from yossigo/poc/conns
...
Abstract Connections I/O API & TLS Support
2019-10-16 17:42:35 +02:00
Yossi Gottlieb
2255860a22
Fix Makefile merge issue.
2019-10-16 17:31:02 +03:00
Yossi Gottlieb
85d7f38136
Merge remote-tracking branch 'upstream/unstable' into tls
2019-10-16 17:08:07 +03:00
Salvatore Sanfilippo
d3bfd0ed88
Merge pull request #5926 from JimB123/unstable
...
Addition of RedisModule_OnUnload hook
2019-10-16 11:13:12 +02:00
Yossi Gottlieb
e17ac77a82
Code review minor changes (names, comments).
2019-10-15 17:21:51 +03:00
Yossi Gottlieb
3a990ebcb4
Conns: write() 0 retval should not trigger error.
2019-10-15 17:20:58 +03:00
Yossi Gottlieb
d2aee5e4fe
Fix compile warnings when BUILD_TLS=no.
2019-10-15 15:24:32 +03:00
antirez
0ec3cbdb8d
Test: fix implementation-dependent test after code change.
2019-10-10 15:22:42 +02:00
Salvatore Sanfilippo
15e422686b
Merge pull request #6429 from charsyam/feature/typo-slave
...
[trivial] fix typos salves to slaves in replication.c
2019-10-10 14:56:43 +02:00
Salvatore Sanfilippo
aeaa086f82
Merge pull request #6437 from OMG-By/redis-omg_by
...
there should is AUTH && HELLO non authenticated state.
2019-10-10 14:55:03 +02:00
Salvatore Sanfilippo
67dfdca637
Merge pull request #6443 from guybe7/fix_stream_rax_node_limits
...
Fix usage of server.stream_node_max_*
2019-10-10 14:49:35 +02:00
Salvatore Sanfilippo
0e40efe007
Merge pull request #6145 from oranagra/jemalloc_purge_bg
...
purge jemalloc after flush, and enable background purging thread
2019-10-10 14:48:59 +02:00
Salvatore Sanfilippo
4aaa50c9d1
Merge pull request #6438 from daidaotong/unstable
...
resolve typo in test module
2019-10-10 11:18:47 +02:00
antirez
8a73389ef8
Merge branch 'unstable' of github.com:/antirez/redis into unstable
2019-10-10 10:31:43 +02:00
antirez
9aba7564d6
Cluster: fix memory leak of cached master.
...
This is what happened:
1. Instance starts, is a slave in the cluster configuration, but
actually server.masterhost is not set, so technically the instance
is acting like a master.
2. loadDataFromDisk() calls replicationCacheMasterUsingMyself() even if
the instance is a master, in the case it is logically a slave and the
cluster is enabled. So now we have a cached master even if the instance
is practically configured as a master (from the POV of
server.masterhost value and so forth).
3. clusterCron() sees that the instance requires to replicate from its
master, because logically it is a slave, so it calls
replicationSetMaster() that will in turn call
replicationCacheMasterUsingMyself(): before this commit, this call would
overwrite the old cached master, creating a memory leak.
2019-10-10 10:23:34 +02:00
Guy Benoish
33c424b240
Fix usage of server.stream_node_max_*
2019-10-10 09:47:48 +02:00