John Sully
6dc17bbe1f
processEventsWhileBlocked needs to release the lock in a safe way
...
Former-commit-id: 1a70af2ae13962db038b0635cc29488019323538
2019-10-23 13:19:57 -04:00
John Sully
03769b5c17
Remove race conditions
...
Former-commit-id: 5a8cb77d0df7f319809ff965a72fe46925f49289
2019-10-22 23:26:37 -04:00
John Sully
1c1260d71f
Optimize deadlock detection, fix callstack for ASM, and annotate locks
...
Note: This change moves our assembly code to use the GNU Assembler because NASM seems to be incapable of emitting the necessary debug information for callstack unwinding to work.
Former-commit-id: 600fc241cfe79b9b32ac6010c6ea0c66747f0f15
2019-10-22 21:34:51 -04:00
John Sully
b84d9671ec
Implement deadlock detection
...
Former-commit-id: fa797408d9c5d5f12053641144fe1a8b24f66185
2019-10-22 00:43:32 -04:00
John Sully
7a5932121c
Remove performance zapping test code
...
Former-commit-id: c50a3d0bbd2dd801a80060d789484bac4eda4f4c
2019-10-21 01:48:58 -04:00
John Sully
e25ea03c25
reenable optimized string dup code
...
Former-commit-id: 5eb84db03a3035d8e96a366f3d372522424646ea
2019-10-21 00:08:38 -04:00
John Sully
9df7197221
Forkless background save. NOT OPTIMIZED
...
Former-commit-id: bd9d8e05b0430efd226be773c0530828f1f6b428
2019-10-20 23:54:05 -04:00
John Sully
764a05fedd
Factor out dependencies on rdb_child_pid which will be going away
...
Former-commit-id: 2ab4c6b99e3f3cb9f216bd81e78914a6fcd394f6
2019-10-17 23:10:45 -04:00
John Sully
5fb7d4a325
Dependencies for forkless RDB saving
...
Former-commit-id: c12be594754ac8079f467e0fa9f8580bd65e3a55
2019-10-17 22:53:50 -04:00
John Sully
7de19770cb
Ensure RDB saving only uses data from the persistent data struct, and cleanup inheritance
...
Former-commit-id: fcdda67d87b3076023f459532c75392b72768a51
2019-10-17 17:20:47 -04:00
John Sully
e6bf931f2c
Support serializing all types
...
Former-commit-id: dfdd41f15c0567925f02fd5df779f597ab16894d
2019-10-16 14:23:28 -04:00
John Sully
60c8887aae
Cleanup inheritance
...
Former-commit-id: e8debc83e8271cf8d76c5084923cf6e1ea7af3b4
2019-10-16 13:45:36 -04:00
John Sully
b02148db42
Merge branch 'unstable' into advanced_db
...
Former-commit-id: 88152a8f4f9b4e3a82d5f1416930d39bfa91eb47
2019-10-16 13:23:19 -04:00
john@csquare.ca
10561c2e57
Fix: ExpireMember does not update MVCC timestamp
...
Former-commit-id: f5210a8fb0704336e9734076b52a862698820f3a
2019-10-16 12:38:15 -04:00
John Sully
ac14b6ac7d
expiremember should return the same results as expire
...
Former-commit-id: 8f1295c00f27b6c89785236c5199c1623773940d
2019-10-16 12:27:04 -04:00
John Sully
eaabfd2038
Fix crash adding expire to key with a subkey expire already set
...
Former-commit-id: 18a3768e07eb8c4feb4a666d95a19d97267ac381
2019-10-16 12:26:48 -04:00
John Sully
091a93e098
Fix clang warnings
...
Former-commit-id: c4f086ae936e1ba5ed97c2f0810ddb6a4de25be6
2019-10-13 15:48:55 -04:00
John Sully
1a3885cad0
Fix failing travis CI build
...
Former-commit-id: 3f0c1f94ebeb19133f1f62b8b3a82871dbd5f73f
2019-10-13 15:41:53 -04:00
John Sully
6fcc05e96e
Merge branch 'advanced_db' of https://github.com/JohnSully/redis2 into advanced_db
...
Former-commit-id: f6855bc34d0a8cf9065a860d1347b0d7ef41275b
2019-10-13 15:35:30 -04:00
eric-weaver
dab8343cde
add missing dependency
...
Former-commit-id: 95e3dbc1048ba99af1b64f97b681ed1e67e2431a
2019-10-13 21:30:06 +02:00
Segmond
8c7c25a9fb
Update README.md
...
Typo, focuses spelled as focusses
Former-commit-id: 40355eac3e46c6e4bb35f5cbc315a05beff291bf
2019-10-13 21:29:15 +02:00
John Sully
4f47f6818f
Add the IStorage interface and wire it up
...
Former-commit-id: 898efbfc0c7038818083ea29fdd63cafa47721fb
2019-10-13 15:24:08 -04:00
John Sully
63f2b3a987
Isolate the persistent parts of the database from the runtime parts
...
Former-commit-id: 8d63f5b560d067a634f2ef671962be8815c9e23c
2019-10-13 15:24:08 -04:00
John Sully
e4482cb695
Hide the database dict
...
Former-commit-id: 024365521c2b74275839562ba9326b6ea26d3836
2019-10-13 15:13:01 -04:00
John Sully
6b2c838e8b
Implement the lastmodified query for the OBJECT command
...
Former-commit-id: 3a3b59a0543148956797ce4ad9d08095051517b9
2019-10-13 14:12:09 -04:00
John Sully
6310847d61
You are not allowed to set a subkey expire if the subkey does not exist
...
Former-commit-id: 12e17cfd6e9cc1e470f26c88b58ce5831d10358f
2019-10-13 14:11:43 -04:00
John Sully
0e82cb44e5
Implement the EXPIREMEMBERAT command
...
Former-commit-id: 203e341bf4427723903d8d3de03af2f0ef043a3f
2019-10-13 13:15:13 -04:00
John Sully
7b3f093dd6
Add millisecond support for EXPIREMEMBER command
...
Former-commit-id: 6e6cd84ad7dc9e5763ab36668cbbf8ca6743f8d9
2019-10-13 12:57:50 -04:00
John Sully
c61b6cc8fd
Update more slave instances to use replica (Issue #75 )
...
Former-commit-id: 252725d50fc9d4ff2b6e9246a36c38176d61beae
2019-10-13 12:29:20 -04:00
John Sully
d4e4b4f4d1
Update a few uses of slave to use the new replica terminology (Issue #75 )
...
Former-commit-id: c15633ea9e784ef0e12e4015a75245661a8cf1b7
2019-10-13 12:12:05 -04:00
John Sully
fc97c22819
Fix an intermittent crash when replicationCron happens before slavesdb is update
...
Former-commit-id: 27c9ae667e515819d5be06722722ed6ff43a3205
2019-10-13 12:04:54 -04:00
John Sully
2d0cd2c1b2
Implement TTL and PERSIST commands for subkeys. Also ensure expiremember replaces any old subkey expiries
...
Former-commit-id: 16f96efbe7c6c27f2a79f5b472447407f905df15
2019-10-13 12:03:25 -04:00
John Sully
f66063aa90
Merge branch 'unstable' of https://github.com/JohnSully/redis2 into unstable
...
Former-commit-id: 5787e7adc7d092efb30c83f3899e8ee6c2e7f285
2019-10-13 10:03:01 -04:00
John Sully
9fb26516d6
Fix issue #88 - don't let seperate KeyDB processes listen on the same port
...
Former-commit-id: 4631119179df5cff638e9b8c51b030cef89a6c02
2019-10-13 10:02:21 -04:00
Edgard Lorraine Messias
d5236c1c76
Fixed "Provides" name in chkconfig info
...
Former-commit-id: cedea7e4005ecf540c5383a7a9da04f8fabfe648
2019-10-01 13:44:58 -04:00
John Sully
5ca2fe61e1
Expire DEL command place holder
...
Former-commit-id: 64aa4b80e62fac75d5b5598515585c425472c537
2019-09-30 00:01:23 -04:00
John Sully
61cc53d604
Fuzz mode is now an argument not based on the exe name
...
Former-commit-id: 551a3cb1aa1c5799ec351dd2bef97adf0517b954
2019-09-30 00:00:29 -04:00
John Sully
d9a244c34c
finish up the RDB fuzz
...
Former-commit-id: 0942188b0a263d4b7de013458e5a65dc2d3b206a
2019-09-28 17:38:46 -04:00
John Sully
08b353cd55
Fix double free in RDB load
...
Former-commit-id: 070c4818715b56645855abb72af47c846fc63027
2019-09-28 17:38:26 -04:00
John Sully
4bf3388f4e
RDB fuzz test cases
...
Former-commit-id: 6df4d294220ed914c592f3bd195ae921d6a84cde
2019-09-28 17:04:08 -04:00
John Sully
2c6fdf0f4e
RREPLAY command now takes a DB argument
...
Former-commit-id: 6e1e5bd08b59f8ad4653621a6c01fcf3a76f0692
2019-09-28 14:59:44 -04:00
John Sully
b6b6bb0488
Implement left and right shift BITOP operators
...
Former-commit-id: ba365298ed37a76f0a8630e0ec6c86393293aebe
2019-09-28 00:10:46 -04:00
John Sully
98197d7d99
Fix leaking stale RDBs during multimaster sync
...
Former-commit-id: e1c96209510b374e644e5d7e7b6a009ed0f27c32
2019-09-27 13:17:29 -04:00
John Sully
9f3cbd580e
Fix multi master bugs: 1. we fail to create the temp file. 2. We use a master RDB as our backup even though we merged databases (and therefore it is not representitive)
...
Former-commit-id: e776474f68a2824bb7d4082c41991a9a9f3a9c9d
2019-09-26 20:35:51 -04:00
John Sully
4325aae6d3
Add the IStorage interface and wire it up
...
Former-commit-id: cbd4b4df1919f97f0d176f1ddc6b49b8afe7e001
2019-09-20 14:52:22 -04:00
John Sully
f10e05f1bf
Isolate the persistent parts of the database from the runtime parts
...
Former-commit-id: 08995b065cb0ed6df16528e73c7acb28bcf3c1f4
2019-09-19 22:36:29 -04:00
John Sully
ceaaf39c96
Hide the database dict
...
Former-commit-id: 065846a9c32aeb55901c194d824828fb70805350
2019-09-19 17:44:42 -04:00
John Sully
4669d4d0d0
Fix issue where AOF events are posted to the wrong event loop and not properly cleaned up
...
Former-commit-id: 55324aa56a249ccbc73ffe92cac1740bfcc82ebd
2019-09-19 15:39:52 -04:00
John Sully
2912b22403
KEYS now only blocks one database
...
Former-commit-id: 18d42a5c353f76533a0ccc4ded24ed089cedacc8
2019-09-12 18:51:10 -04:00
John Sully
ab48b2bfed
Fix issue where Active Replicas were commiting data to the wrong database under load
...
Former-commit-id: ac595ebe371480a924d542aa62733854eb7c527a
2019-09-06 13:30:28 -04:00