John Sully
d9c070408b
reenable multithreading after merge
...
Former-commit-id: 9fbb9a551e83ddfc66894fba688dae7c9c3c7ae1
2020-01-27 19:59:04 -05:00
John Sully
14188ef92d
Fix most tests (still some failures)
...
Former-commit-id: da83e841255487efe0e4b13d42b2dcc55a369838
2020-01-27 18:16:19 -05:00
antirez
800425a319
ACL LOG: data structures and initial functions.
2020-01-27 18:37:52 +01:00
John Sully
6193e9ad4f
Merge remote-tracking branch 'redis/6.0' into redis_merge
...
Former-commit-id: ef9a3cadcf94326bf2f163db7698aad9a3c01690
2020-01-27 02:55:48 -05:00
John Sully
1116b63a0e
Initial implementation of the CRON command
...
Former-commit-id: 3204a39ada15ec33ac7926dc8b8f0e1875b99acb
2020-01-21 19:50:28 -05:00
srzhao
f6621280c9
Check OOM at script start to get stable lua OOM state.
...
Checking OOM by `getMaxMemoryState` inside script might get different result
with `freeMemoryIfNeededAndSafe` at script start, because lua stack and
arguments also consume memory.
This leads to memory `borderline` when memory grows near server.maxmemory:
- `freeMemoryIfNeededAndSafe` at script start detects no OOM, no memory freed
- `getMaxMemoryState` inside script detects OOM, script aborted
We solve this 'borderline' issue by saving OOM state at script start to get
stable lua OOM state.
related to issue #6565 and #5250 .
2020-01-20 21:34:05 +08:00
John Sully
49c2b7b77f
Fix snapshot consolidation bugs and reduce log noise
...
Former-commit-id: 7f3cb2981529277d3f02dceb2f60e7aa8385847d
2020-01-12 01:22:44 -05:00
John Sully
f40359cde6
Merge branch 'moar_perf' into keydbpro_moarperf
...
Former-commit-id: d0990a465c3c5c29b71f239d84a875af40699281
2020-01-11 22:06:20 -05:00
John Sully
b9b8272724
Avoid crash due to excessive posted functions for AOF rewrite
...
Former-commit-id: aa6409f2e8a37288eb4953fbcf3a82e02545348b
2020-01-11 16:34:09 -05:00
John Sully
78924a295e
Enforce seperate license keys for connected replicas
...
Former-commit-id: bc005cb50b1010a2bc9170e261cd93dba849c35f
2020-01-04 17:15:06 -05:00
John Sully
ce0fde973a
Add support for storing expirations in FLASH
...
Former-commit-id: 1dca07bd564042fce1b01d275641f35b918ae557
2020-01-03 15:53:36 -05:00
John Sully
0fd9a4c67a
Merge keydb community
...
Former-commit-id: b9dcd0997c3dfd3cd2a5908ba540bc4d389104a0
2019-12-27 17:44:48 -05:00
John Sully
098684bf8e
Track key count accurately before we've committed to the database. Also use this to optimize DB lookups when all keys are in memory
...
Former-commit-id: 78c07f0276109a085761b7044d4edc63af26d3da
2019-12-24 00:03:38 -05:00
John Sully
7da74195a8
Perf remove extra lookup in rocksdb
...
Former-commit-id: 8074472c7a25572a53f1166911920c2cb168c141
2019-12-23 23:32:04 -05:00
John Sully
054bbe9baa
Fix issue where database size is off when setting key with expire
...
Former-commit-id: 7796918bfb4a98bc056b3b8f4065f1416da8d89a
2019-12-23 22:07:33 -05:00
John Sully
4fd552d8b6
Add more test code, and fix bugs uncovered
...
Former-commit-id: 5362fa4b62f89cbc1e92e01c73a45c4e3718708b
2019-12-23 17:17:41 -05:00
Oran Agra
5cc62cc219
modules don't signalModifiedKey in setKey() since that's done (optionally) in RM_CloseKey
2019-12-23 10:15:52 +02:00
John Sully
59f7bd49c9
Add additional tests
...
Former-commit-id: e7d2c78e776b8262fd54caeb7b6bd210182e9bdb
2019-12-22 19:16:30 -05:00
Petr Vaněk
8146f24391
Rename redis.conf to keydb.conf
...
Former-commit-id: 4b01ad1e30568a5385881accedd8a841c7a7882f
2019-12-21 15:00:24 -05:00
Petr Vaněk
8c7a04d747
Rename default pid file
...
Former-commit-id: 3b60929bdc95f43901799042b302c713b520aee8
2019-12-21 15:00:24 -05:00
John Sully
448b1093cd
Evicted flash no longer keeps the key around
...
Former-commit-id: 908b303d1a8dd032c092f0bc035361a09c0291a5
2019-12-20 17:45:07 -05:00
Salvatore Sanfilippo
95a43c2178
Merge pull request #6615 from soloestoy/wrap-also-propagate-as-multi
...
Wrap also propagate as multi
2019-12-19 09:24:52 +01:00
Salvatore Sanfilippo
3d344f9467
Merge pull request #6052 from jtru/better-systemd-integration-v2
...
Better systemd integration v2
2019-12-19 08:54:22 +01:00
antirez
75687fcf17
Avoid changing setKey() API after #6679 fix.
2019-12-18 11:58:02 +01:00
zhaozhao.zz
498f483890
lazyfree: add a new configuration lazyfree-lazy-user-del
...
Delete keys in async way when executing DEL command, if
lazyfree-lazy-user-del is yes.
2019-12-18 16:54:49 +08:00
zhaozhao.zz
746c23419f
add a new SET option KEEPTTL that doesn't remove expire time
2019-12-18 15:20:36 +08:00
John Sully
643a0e730f
Launch the pro binary with --enable-pro
...
Former-commit-id: ab365ce3da864bbcd0d8a9c77ba55dad365ffdff
2019-12-17 23:52:19 -05:00
John Sully
d50da19fb4
Implement pro badge and trial timeout
...
Former-commit-id: 9d6a284eb45c8a137c7f59645294b4fa4be389e5
2019-12-17 20:32:53 -05:00
John Sully
5449859ede
Perf fixes for expire snapshots
...
Former-commit-id: da805e4442815c89e85ca7b9fc855dd11ef2a6c8
2019-12-17 17:39:04 -05:00
Salvatore Sanfilippo
8912e70042
Merge pull request #5916 from madolson/dev-unstable-acl-module-pr
...
Add module APIs for custom authentication
2019-12-17 09:58:26 +01:00
Madelyn Olson
d9c79ff75c
Add configuration option for allowing reads on cluster down
2019-12-16 23:33:16 -08:00
Madelyn Olson
f71437d391
Added some documentation and fixed a test
2019-12-17 07:15:04 +00:00
Madelyn Olson
05b7628687
Add module APIs for custom authentication
2019-12-17 06:59:59 +00:00
John Sully
67e429e898
Threading fixes
...
Former-commit-id: 4f1cec6abd72d6e215880f2ce7812e88509cd218
2019-12-16 22:08:18 -05:00
John Sully
2e05aa89d0
snapshots no longer have dangling keys in the expire set
...
Former-commit-id: 939b6b61084fbec7b7bd0ada49f6853e334f87dd
2019-12-16 21:14:16 -05:00
John Sully
c4b9d485a1
Expireset should do a deep hash
...
Former-commit-id: cdcdf57dd1419ec09eab6579caf5e5ff9a5a242c
2019-12-16 19:06:07 -05:00
John Sully
fce67c145f
A bunch of bug fixes
...
Former-commit-id: 228339586a19874f869cf45dc3834a270f99768a
2019-12-10 01:01:45 -05:00
John Sully
38f7cca61a
Add support for multiple databases with rocksdb
...
Former-commit-id: cfa3b760b00776876134692d42e25a60fcd8dea9
2019-12-09 20:45:58 -05:00
Oran Agra
09ec3072cf
Add ULL suffix to CLIENT_TRACKING flag to prevent sign extension
...
the code in:
c->flags &= ~(CLIENT_TRACKING|CLIENT_TRACKING_BROKEN_REDIR);
will do sign extension and turn on all the high 31 bits
no damage so far since we don't have any yet
2019-12-09 10:03:23 +02:00
John Sully
cb136d2ac5
Flash running well
...
Former-commit-id: 9cf393eb9fb69bcc7550cd8b83e1568b3f360310
2019-12-08 20:06:22 -05:00
John Sully
992784c21d
modify how the database array is stored so swaps are easier
...
Former-commit-id: 48fd6ec5ca69dd505d0e757862c09a898c19cf22
2019-12-08 16:49:59 -05:00
John Sully
86cd47fe80
Prevent extra copy of key
...
Former-commit-id: 9c3ef97039e59c6b820f71a90f8a9fb4eae8a7b1
2019-12-08 16:02:24 -05:00
John Sully
1e92c7b117
Optimize remote storage by bulk saving keys after processing operations but before sending responses to clients
...
Former-commit-id: 63a6dc2a29680d5d3f3f245168ca7de5d6bee1eb
2019-12-08 10:56:05 -05:00
John Sully
130589d8d1
Initial RocksDB integration
...
Former-commit-id: 0de9e5b692c02e779e538ddd0a56d10215e501bb
2019-12-06 20:39:32 -05:00
John Sully
11f710c5fc
Fixup IStorage uses
...
Former-commit-id: 5ea0ce143a79365fb3903c6fc7caeb1c9760b0cc
2019-12-06 17:43:28 -05:00
John Sully
5fd848eedc
Nested snapshot garbage collection. Works but huge fragmentation
...
Former-commit-id: 82b2a3f3dbf8f864d9157655b5422c69845c4019
2019-11-28 19:00:51 -05:00
Oran Agra
493cc493b6
Converting more configs to use generic infra, and moving defaults to config.c
...
Changes in behavior:
- Change server.stream_node_max_entries from int64_t to long long, so that it can be used by the generic infra
- standard error reply instead of "repl-backlog-size must be 1 or greater" and such
- tls-port and a few TLS booleans were readable (config get) even when USE_OPENSSL was off (now they aren't)
- syslog-enabled, syslog-ident, cluster-enabled, appendfilename, and supervised didn't have a get (now they do)
- pidfile was initialized to NULL in InitServerConfig but had CONFIG_DEFAULT_PID_FILE in rewriteConfig (so the real default was "", but rewrite would cause it to be set), fixed the rewrite.
- TLS config in server.h was uninitialized (if no tls config args were provided)
Adding test for sanity and coverage
2019-11-28 11:24:57 +02:00
Oran Agra
82e997c043
Additional config.c refactory and bugfixes
...
- add capability for each config to have a callback to check if value is valid and return error string
will enable converting many of the remaining custom configs into generic ones (reducing the x4 repetition for set,get,config,rewrite)
- add capability for each config to to run some update code after config is changed (only for CONFIG SET)
will also enable converting many of the remaining custom configs into generic ones
- add capability to move default values from server.h and server.c to config.c
will reduce many excess lines in server.h and server.c (plus, no need to rebuild the entire code base when a default change 8-))
other behavior changes:
- fix bug in bool config get (always returning 'yes')
- fix a bug in modifying jemalloc-bg-thread at runtime (didn't call set_jemalloc_bg_thread, due to bad merge conflict resolution (my fault))
- side effect when a failed attempt to enable activedefrag at runtime, we now respond with -ERR and not with -DISABLED
2019-11-26 16:52:28 +02:00
John Sully
65a3485dfb
Ensure size() count is accurate, and fix find_threadsafe which didn't check children
...
Former-commit-id: ffa44b636afd4fe907c79fe7deebac3d1e091ee9
2019-11-25 17:50:40 -05:00
Salvatore Sanfilippo
d88797da46
Merge pull request #6563 from devnexen/fbsd_build_fix2
...
Add missing header
2019-11-25 09:45:29 +01:00