27610 Commits

Author SHA1 Message Date
Muhammad Zahalqa
d28ef47458 replace memcpy with cctor on objects
Former-commit-id: 52897f8f9a882bcdbd1e8ede6bdf24e7435f5ce8
2020-06-24 23:20:59 -04:00
Muhammad Zahalqa
ec28161271 unique lock used with cv.wait already owns mutex
Former-commit-id: 8bc70e9840222d11507af30a6db27210b16650a2
2020-06-24 23:18:53 -04:00
Muhammad Zahalqa
792bc57fdf unique lock used with cv.wait already owns mutex
Former-commit-id: 8bc70e9840222d11507af30a6db27210b16650a2
2020-06-24 23:18:53 -04:00
Muhammad Zahalqa
63bb6cb419 Fix bug in condition_variabe.wait usage
consition variable wait should always be called with a locked mutex.
This code break the pre-conditions of using wait.


Former-commit-id: 5b81303f04580010f043e518a109b43971a63054
2020-06-24 23:18:53 -04:00
Muhammad Zahalqa
d4dfac4b6a Fix bug in condition_variabe.wait usage
consition variable wait should always be called with a locked mutex.
This code break the pre-conditions of using wait.


Former-commit-id: 5b81303f04580010f043e518a109b43971a63054
2020-06-24 23:18:53 -04:00
Muhammad Zahalqa
e25ec37484 fixes for robj_sharedptr
1. fix cases where null pointer might be accessed
2. make assignmnet op safe
3. make operator bool explicit (safe bool idiom)
4. make comparison operators symetric

fix robj_sharedptr use in rdb.cpp


Former-commit-id: ede524c0647c0875f1071978f26ff785c8d1183e
2020-06-24 23:18:27 -04:00
Muhammad Zahalqa
ca929bb9c1 fixes for robj_sharedptr
1. fix cases where null pointer might be accessed
2. make assignmnet op safe
3. make operator bool explicit (safe bool idiom)
4. make comparison operators symetric

fix robj_sharedptr use in rdb.cpp


Former-commit-id: ede524c0647c0875f1071978f26ff785c8d1183e
2020-06-24 23:18:27 -04:00
Muhammad Zahalqa
c4cd846388 aeCommand objects no need for memset and missing init of some memebers.
Former-commit-id: aeed09c34620e465b57f1d83553d259c4f6d892f
2020-06-24 23:15:29 -04:00
Muhammad Zahalqa
98abc0e47e aeCommand objects no need for memset and missing init of some memebers.
Former-commit-id: aeed09c34620e465b57f1d83553d259c4f6d892f
2020-06-24 23:15:29 -04:00
antirez
e2f5953c73 Merge branch 'unstable' of github.com:/antirez/redis into unstable 2020-06-24 09:09:59 +02:00
antirez
959cdb358b Merge branch 'unstable' of github.com:/antirez/redis into unstable 2020-06-24 09:09:59 +02:00
antirez
5b16c2f174 LPOS: option FIRST renamed RANK. 2020-06-24 09:09:43 +02:00
antirez
a5a3a7bbc6 LPOS: option FIRST renamed RANK. 2020-06-24 09:09:43 +02:00
benschermel
cd8b82db55 Merge branch 'keydbpro' into PRO_RELEASE_6
Former-commit-id: 6e9ec7ae3ca49a6054f012e567eb74307227c330
2020-06-24 00:34:35 -04:00
benschermel
5ae8b8c5ec Merge branch 'keydbpro' into PRO_RELEASE_6
Former-commit-id: 6e9ec7ae3ca49a6054f012e567eb74307227c330
2020-06-24 00:34:35 -04:00
benschermel
9c2769804e update deb changelog
Former-commit-id: 85fe16238fdb692067f77f631b0589366823ba34
2020-06-24 00:32:10 -04:00
benschermel
979d1389a7 update deb changelog
Former-commit-id: 85fe16238fdb692067f77f631b0589366823ba34
2020-06-24 00:32:10 -04:00
John Sully
638926621a Merge PKG files from unstable
No code change


Former-commit-id: 42c4d85d72af99322b21faab74ae23556b2054f0
2020-06-24 00:16:21 -04:00
John Sully
65e9b5ccc7 Merge PKG files from unstable
No code change


Former-commit-id: 42c4d85d72af99322b21faab74ae23556b2054f0
2020-06-24 00:16:21 -04:00
Dave Nielsen
e54ea02c43 updated copyright year
Changed "2015" to "2020"
2020-06-23 09:51:12 -07:00
Dave Nielsen
2d6d9f7552
updated copyright year
Changed "2015" to "2020"
2020-06-23 09:51:12 -07:00
Salvatore Sanfilippo
54a422f6e0 Merge pull request #7390 from oranagra/exec_fails_abort
EXEC always fails with EXECABORT and multi-state is cleared
2020-06-23 13:12:52 +02:00
Salvatore Sanfilippo
6bbbdd26f4
Merge pull request #7390 from oranagra/exec_fails_abort
EXEC always fails with EXECABORT and multi-state is cleared
2020-06-23 13:12:52 +02:00
Oran Agra
fe8d6fe749 EXEC always fails with EXECABORT and multi-state is cleared
In order to support the use of multi-exec in pipeline, it is important that
MULTI and EXEC are never rejected and it is easy for the client to know if the
connection is still in multi state.

It was easy to make sure MULTI and DISCARD never fail (done by previous
commits) since these only change the client state and don't do any actual
change in the server, but EXEC is a different story.

Since in the past, it was possible for clients to handle some EXEC errors and
retry the EXEC, we now can't affort to return any error on EXEC other than
EXECABORT, which now carries with it the real reason for the abort too.

Other fixes in this commit:
- Some checks that where performed at the time of queuing need to be re-
  validated when EXEC runs, for instance if the transaction contains writes
  commands, it needs to be aborted. there was one check that was already done
  in execCommand (-READONLY), but other checks where missing: -OOM, -MISCONF,
  -NOREPLICAS, -MASTERDOWN
- When a command is rejected by processCommand it was rejected with addReply,
  which was not recognized as an error in case the bad command came from the
  master. this will enable to count or MONITOR these errors in the future.
- make it easier for tests to create additional (non deferred) clients.
- add tests for the fixes of this commit.
2020-06-23 12:01:33 +03:00
Oran Agra
65a3307bc9 EXEC always fails with EXECABORT and multi-state is cleared
In order to support the use of multi-exec in pipeline, it is important that
MULTI and EXEC are never rejected and it is easy for the client to know if the
connection is still in multi state.

It was easy to make sure MULTI and DISCARD never fail (done by previous
commits) since these only change the client state and don't do any actual
change in the server, but EXEC is a different story.

Since in the past, it was possible for clients to handle some EXEC errors and
retry the EXEC, we now can't affort to return any error on EXEC other than
EXECABORT, which now carries with it the real reason for the abort too.

Other fixes in this commit:
- Some checks that where performed at the time of queuing need to be re-
  validated when EXEC runs, for instance if the transaction contains writes
  commands, it needs to be aborted. there was one check that was already done
  in execCommand (-READONLY), but other checks where missing: -OOM, -MISCONF,
  -NOREPLICAS, -MASTERDOWN
- When a command is rejected by processCommand it was rejected with addReply,
  which was not recognized as an error in case the bad command came from the
  master. this will enable to count or MONITOR these errors in the future.
- make it easier for tests to create additional (non deferred) clients.
- add tests for the fixes of this commit.
2020-06-23 12:01:33 +03:00
antirez
79e15d1686 Include cluster.h for getClusterConnectionsCount(). 2020-06-22 11:44:11 +02:00
antirez
21f62c3346 Include cluster.h for getClusterConnectionsCount(). 2020-06-22 11:44:11 +02:00
antirez
448a8bb0ed Fix BITFIELD i64 type handling, see #7417. 2020-06-22 11:41:19 +02:00
antirez
746297314f Fix BITFIELD i64 type handling, see #7417. 2020-06-22 11:41:19 +02:00
antirez
c10a7a040f Clarify maxclients and cluster in conf. Remove myself too. 2020-06-22 11:21:21 +02:00
antirez
59fd178014 Clarify maxclients and cluster in conf. Remove myself too. 2020-06-22 11:21:21 +02:00
Salvatore Sanfilippo
4d45ec35b2 Merge pull request #7421 from hwware/sentinel_leak_fix
fix memory leak in sentinel connection sharing
2020-06-22 11:06:50 +02:00
Salvatore Sanfilippo
42fd522c63
Merge pull request #7421 from hwware/sentinel_leak_fix
fix memory leak in sentinel connection sharing
2020-06-22 11:06:50 +02:00
hwware
bdac36b70e fix memory leak in sentinel connection sharing 2020-06-21 23:04:28 -04:00
hwware
1bfa2d27a6 fix memory leak in sentinel connection sharing 2020-06-21 23:04:28 -04:00
Salvatore Sanfilippo
bf12f73224 Merge pull request #7402 from chenhui0212/unstable
Fix comments in listpack.c
2020-06-18 11:29:06 +02:00
Salvatore Sanfilippo
5e46e0800b
Merge pull request #7402 from chenhui0212/unstable
Fix comments in listpack.c
2020-06-18 11:29:06 +02:00
chenhui0212
44235ac718 Fix comments in function raxLowWalk of listpack.c 2020-06-18 17:28:26 +08:00
chenhui0212
f800b52172 Fix comments in function raxLowWalk of listpack.c 2020-06-18 17:28:26 +08:00
Salvatore Sanfilippo
66657b0001 Merge pull request #7411 from tporadowski/inconsitent-sentinel-nosave
Inconsistent RDB saving when in Sentinel mode
2020-06-18 11:26:53 +02:00
Salvatore Sanfilippo
ab4cc1e11b
Merge pull request #7411 from tporadowski/inconsitent-sentinel-nosave
Inconsistent RDB saving when in Sentinel mode
2020-06-18 11:26:53 +02:00
Tomasz Poradowski
6782243054 ensure SHUTDOWN_NOSAVE in Sentinel mode
- enforcing of SHUTDOWN_NOSAVE flag in one place to make it consitent
  when running in Sentinel mode
2020-06-17 22:22:49 +02:00
Tomasz Poradowski
4ee011adb5 ensure SHUTDOWN_NOSAVE in Sentinel mode
- enforcing of SHUTDOWN_NOSAVE flag in one place to make it consitent
  when running in Sentinel mode
2020-06-17 22:22:49 +02:00
Ben Schermel
4d6b7c278b bump version after merge
Former-commit-id: 59279d36e9337ca89518c4d1edef6c26911ea190
2020-06-16 14:17:20 -04:00
Ben Schermel
b68d267578 bump version after merge
Former-commit-id: 59279d36e9337ca89518c4d1edef6c26911ea190
2020-06-16 14:17:20 -04:00
Ben Schermel
e0d2a1cff6 Merge branch 'keydbpro' into PRO_RELEASE_6
Former-commit-id: cf7ed118553af55a27c3a57c121bc26e18e0ab7e
2020-06-16 14:16:03 -04:00
Ben Schermel
ab407d5654 Merge branch 'keydbpro' into PRO_RELEASE_6
Former-commit-id: cf7ed118553af55a27c3a57c121bc26e18e0ab7e
2020-06-16 14:16:03 -04:00
Ben Schermel
38f5ed20a0 Merge branch 'PRO_RELEASE_6' of https://github.com/JohnSully/KeyDB-Pro into PRO_RELEASE_6
Former-commit-id: ff7ec3ec39d692ed59c945ace5c9a4ec140f5e52
2020-06-16 14:15:51 -04:00
Ben Schermel
ca604a4ed2 Merge branch 'PRO_RELEASE_6' of https://github.com/JohnSully/KeyDB-Pro into PRO_RELEASE_6
Former-commit-id: ff7ec3ec39d692ed59c945ace5c9a4ec140f5e52
2020-06-16 14:15:51 -04:00
chenhui0212
6b82471098 fix comments in listpack.c 2020-06-16 17:50:38 +08:00