12903 Commits

Author SHA1 Message Date
antirez
f468e653b5 Threaded IO: implement handleClientsWithPendingWritesUsingThreads().
This is just an experiment for now, there are a couple of race
conditions, mostly harmless for the performance gain experiment that
this commit represents so far.

The general idea here is to take Redis single threaded and instead
fan-out on expansive kernel calls: write(2) in this case, but the same
concept could be easily implemented for read(2) and protcol parsing.

However just threading writes like in this commit, is enough to evaluate
if the approach is sounding.
2019-05-06 18:02:51 +02:00
liaotonglang
b1c7e3393d delete sdsTest() from REDIS_TEST
sdsTest() defined in sds.c dit not match the call in server.c.
remove it from REDIS_TEST, since test-sds defined in Makefile.
2019-05-06 19:24:00 +08:00
WuYunlong
1c0913dc4e Do not active expire keys in the background when the switch is off. 2019-05-06 11:46:07 +08:00
Yossi Gottlieb
9f3679880a Preserve client->id for blocked clients. 2019-05-05 20:32:53 +03:00
Oran Agra
ba809f26d4 make replication tests more stable on slow machines
solving few replication related tests race conditions which fail on slow machines

bugfix in slave buffers test: since the test is executed twice, each time with
a different commands count, the threshold for the delta can't be a constant.
2019-05-05 08:25:01 +03:00
Salvatore Sanfilippo
0a6090bfd8
Merge pull request #6051 from vattezhang/unstable
fix: benchmark auth fails when server have requirepass
2019-05-02 09:48:02 +02:00
zhaozhao.zz
bcac165fab aof: enhance AOF_FSYNC_EVERYSEC, more details in #5985 2019-04-29 14:38:28 +08:00
Salvatore Sanfilippo
843de8b786
Merge pull request #5971 from devnexen/unstable
build fix
2019-04-26 17:32:21 +02:00
Salvatore Sanfilippo
5ba908fa5f
Merge pull request #6002 from yongman/fix-memleak-in-bitfield
Fix memleak in bitfieldCommand
2019-04-26 17:31:42 +02:00
Salvatore Sanfilippo
5c5197fe4f
Merge pull request #6013 from rouzier/fix/stream_iterator_init
Fix stream interator start and end key initialize
2019-04-26 17:25:20 +02:00
Salvatore Sanfilippo
2d450d1315
Merge pull request #6039 from git-hulk/fix/benchmark-coredump-in-arguments
FIX: coredump in redis-benchmark
2019-04-26 17:17:55 +02:00
abhay
162208f94d removed obsolete warning as per - https://github.com/antirez/redis/issues/5291 2019-04-26 17:03:16 +02:00
vattezhang
4e38ced488 fix: benchmark auth fails when server have requirepass 2019-04-26 19:47:07 +08:00
vattezhang
bc36404c79 update 2019-04-26 18:50:51 +08:00
vattezhang
d3d96b041a Merge github.com:antirez/redis into unstable 2019-04-26 18:47:11 +08:00
git-hulk
fa97ef34ca FIX: core dump in redis-benchmark when the -r is the last arg 2019-04-24 20:05:35 +08:00
John Sully
7b87123505 refactor server global into a pointer (so that threadsafe commands can set this to NULL to prove they don't rely on it
Former-commit-id: 37b2d046bef12c7ee7cac4883f0b64ddde236d74
2019-04-21 14:01:10 -04:00
John Sully
e2e3acf04c Factor out some normally const globals
Former-commit-id: fa2e407873fce7f936943ae1fe162d54d7bedd70
2019-04-21 13:20:45 -04:00
John Sully
9a4dbf33e7 additional fix to rreplay forward compat
Former-commit-id: c61cf57db5d9d274d5fb8806a9716056e06eb47d
2019-04-20 01:36:23 -04:00
John Sully
fae54d1533 Make rreplay forward compatible with extra future args
Former-commit-id: ef3690f2db48b80e3ffb5dbfc7d538c3bec23ee2
2019-04-20 01:15:01 -04:00
John Sully
0a9aa64210 Tweak mvcc time format so rollovers are not an issue
Former-commit-id: 14d01ec7bd6f20aea1ed51a1056d02d99583c6d2
2019-04-20 01:03:08 -04:00
John Sully
a28120cb9e Timestamp writes to objects so we can be smarter about merging databases
Former-commit-id: 5dc9f70386617b02fab7eee1194f321f6b4b25c5
2019-04-20 00:52:07 -04:00
John Sully
53253d993f Fix use uninitialized
Former-commit-id: 88e593bf967487835eaadf700abb3761e34306cb
2019-04-19 23:41:40 -04:00
John Sully
d22f1d9481 Additional MVCC work and fix memory leak loading objects from rdb
Former-commit-id: efde2e6be6dc2fc3425a17e2dc146c5b8823730a
2019-04-19 22:54:42 -04:00
John Sully
c32ae00cb8 Add version override command for users that need compatibility with Redis
Former-commit-id: 5a78a3bc46335a844490fe00e657d68313680cbe
2019-04-19 19:57:11 -04:00
John Sully
359e871737 RREPLAY PERF: The UUID stack is unnecessary, RREPLAY itself can detect the cycle and call cancel()
Former-commit-id: b276d803d49339eb30879a3d170ebc480d9430bd
2019-04-19 19:36:47 -04:00
John Sully
9ac793aabb Detect cycles in mesh networks with multi master
Former-commit-id: da51ac430b43628f5cb5c1f0f005d937ed32660b
2019-04-19 19:31:11 -04:00
John Sully
ff55a913c5 Fix crash near boot when adding replicas and dumping database
Former-commit-id: 01eb0a3c7f01d381ffb66c3fec0214d07e8594de
2019-04-19 17:08:54 -04:00
John Sully
064abb0e80 Replication fake connection should inhereit the user and permission of the real connection
Former-commit-id: dc2b3cf4f8965c329ea23d78c33592c99f16b109
2019-04-18 22:07:35 -04:00
chendianqiang
11f2c6b115 stop ping when client pause 2019-04-17 21:20:10 +08:00
John Sully
b5e25f876f Start of MVCC support (and more C++)
Former-commit-id: c4621a5ed2a7d8ca5034f2fbe8b71550f290ea64
2019-04-16 23:16:03 -04:00
Itamar Haber
52686f4866 Adds a "Modules" section to INFO
Fixes #6012.

As long as "INFO is broken", this should be adequate IMO. Once we rework
`INFO`, perhaps into RESP3, this implementation should be revisited.
2019-04-16 22:16:12 +03:00
John Sully
9275a54485 Fix module linking and crashing issues
Former-commit-id: 1c953a4d5b332a0758d77d378c0caffa4d9bcfe4
2019-04-16 13:34:22 -04:00
Itamar Haber
c184b32d4c Uses addReplyBulkCString
Signed-off-by: Itamar Haber <itamar@redislabs.com>
2019-04-16 17:38:33 +03:00
Itamar Haber
26d9d4ec2c Adds RedisModule_ReplyWithCString
Signed-off-by: Itamar Haber <itamar@redislabs.com>
2019-04-16 17:15:23 +03:00
John Sully
0798be97eb Fix replica authentication failure when masterauth is below replicaof in the config file
Former-commit-id: c64ce7aa9c7783425430e08831f1c41346e315a9
2019-04-15 22:31:02 -04:00
antirez
4a5057000a Merge branch 'unstable' of github.com:/antirez/redis into unstable 2019-04-15 16:50:48 +02:00
antirez
487601d85d Test: disable module testing for now. 2019-04-15 16:50:26 +02:00
John Sully
fe552e3e39 Fix memory leak unsetting master
Former-commit-id: acdc4fdfec93c9121bdc12e52a9cd57f494f8dcd
2019-04-11 19:55:44 -04:00
John Sully
27152ac55e Fix compile errors when MALLOC=memkind
Former-commit-id: 7ef9c18b72f892e0404167426bcfed260999e269
2019-04-11 19:40:45 -04:00
John Sully
3af27e0d24 Fix failure to respect masterauth issue #26
Former-commit-id: a69b4e79db46f629da94c4a1172ea9b1c68dff35
2019-04-11 19:08:12 -04:00
James Rouzier
3ccdcbc088 Fix start and end key initialize 2019-04-11 12:19:02 -04:00
Salvatore Sanfilippo
d044e33c20
Merge pull request #5961 from yossigo/modules-tests
Modules tests
2019-04-11 07:56:23 -07:00
antirez
9e67691ffb Aesthetic change to #5962 to conform to Redis style. 2019-04-10 18:53:35 +02:00
Salvatore Sanfilippo
6de5d25062
Merge pull request #5962 from oranagra/module_blocked_reply
slave corrupts replication stream when module blocked client uses large reply (or POSTPONED_ARRAY)
2019-04-10 09:41:36 -07:00
yongman
d490752d58 Fix memleak in bitfieldCommand 2019-04-09 09:24:22 +08:00
John Sully
9e714b477f Fix addition RESP3 regressions (return empty set)
Former-commit-id: 740fc6c2b865f3846fc7c2b53e5b8303020964f2
2019-04-08 16:52:57 -04:00
John Sully
d238548cec Fix protocol break with hgetall and family
Former-commit-id: 42202c868dc24bf5d4a65cd42da2ef38be450a56
2019-04-08 13:52:02 -04:00
antirez
c24e32041b ACL: Fix memory leak in ACLResetSubcommandsForCommand().
This commit fixes bug reported at #5998. Thanks to @tomcat1102.
2019-04-08 18:08:37 +02:00
antirez
f8a9708aa7 ACL: regression test for #5998. 2019-04-08 18:06:50 +02:00