adiholden
d30ebc5b0d
feat(server): replication should not evict items ( #743 )
...
Signed-off-by: adi_holden <adi@dragonflydb.io>
2023-02-05 09:04:08 +02:00
Vladislav
3449ba8a7b
Exclude single threaded test now that expiry is tested ( #750 )
2023-02-03 23:08:29 +03:00
ashotland
622013a2d1
fix(regression-tests):Skip sentinel regression tests ( #748 )
...
Skip sentinel regression tests
Signed-off-by: ashotland <ari@dragonflydb.io>
2023-02-02 18:16:31 +03:00
adiholden
4b29dece0c
test(replication test): check data only after replica finished execution ( #746 )
...
Signed-off-by: adi_holden <adi@dragonflydb.io>
2023-02-02 15:08:44 +02:00
adiholden
69519b2c5b
feat(list family): support blocking command for replication ( #740 )
2023-02-02 08:58:06 +02:00
ashotland
1e548673fa
fix(sentinel_test):Remove return type which breaks regression tests ( #736 )
...
Remove return type which breaks regression tests
Signed-off-by: ashotland <ari@dragonflydb.io>
2023-01-31 18:12:00 +02:00
Vladislav
4c9b30ca43
feat(server): Auto expiry + small replica refactor ( #718 )
2023-01-31 12:55:52 +03:00
adiholden
5c7ca77a72
test(replication test): increase sleep time in full sync step ( #733 )
...
Signed-off-by: adi_holden <adi@dragonflydb.io>
2023-01-30 09:45:18 +02:00
ashotland
29d47cdd1a
chore(tests): Sentinel test PR code review followup ( #731 )
...
* feat(server): Allow admin commands in multi
Needed for sentinel support (#706 )
Signed-off-by: ashotland <ari@dragonflydb.io>
* feat(server): Add test coverage for multi global commands
Signed-off-by: ashotland <ari@dragonflydb.io>
* code review fixes
Signed-off-by: ashotland <ari@dragonflydb.io>
* Sentinel integration test
Signed-off-by: ashotland <ari@dragonflydb.io>
* PR code reiew follow up
Have lambda return awaitable instead of defining neoff async function
Signed-off-by: ashotland <ari@dragonflydb.io>
---------
Signed-off-by: ashotland <ari@dragonflydb.io>
2023-01-30 09:27:22 +02:00
ashotland
b00e83e3cc
feat(test): Sentinel Integration Test ( #728 )
...
* feat(server): Allow admin commands in multi
Needed for sentinel support (#706 )
Signed-off-by: ashotland <ari@dragonflydb.io>
* feat(server): Add test coverage for multi global commands
Signed-off-by: ashotland <ari@dragonflydb.io>
* code review fixes
Signed-off-by: ashotland <ari@dragonflydb.io>
* Sentinel integration test
Signed-off-by: ashotland <ari@dragonflydb.io>
---------
Signed-off-by: ashotland <ari@dragonflydb.io>
2023-01-29 08:42:09 +02:00
adiholden
d660787c6b
test(replica): test journal rewrite with multi shards ( #720 )
...
Signed-off-by: adi_holden <adi@dragonflydb.io>
2023-01-24 14:31:25 +02:00
Vladislav
45162b5c0a
feat(server): Journal rewrite p2 + tests ( #699 )
2023-01-19 13:55:50 +03:00
Vladislav
1eb227e318
feat(server): Rewrite journal commands (basic) ( #651 )
2023-01-16 14:52:46 +03:00
adiholden
cee7a9e67d
test(replication_test) : add replica flushall test ( #669 )
...
Signed-off-by: adi_holden <adi@dragonflydb.io>
2023-01-15 09:28:30 +02:00
Vladislav
4d97918c7b
fix(server): Fix replication on a single thread ( #676 )
...
Signed-off-by: Vladislav Oleshko <vlad@dragonflydb.io>
2023-01-15 08:02:30 +02:00
Vladislav
861d12cdf5
fix(tests): Small pytest fixes ( #673 )
2023-01-14 23:49:24 +03:00
Vladislav
dd218fa037
feat(server): Json rdb support ( #674 )
2023-01-14 14:53:43 +03:00
adiholden
50e14db6c7
bug(snapshot): on journal write entry with opcode COMMAND and MULTI_C… ( #662 )
...
Signed-off-by: adi_holden <adi@dragonflydb.io>
2023-01-12 13:38:05 +02:00
Vladislav
5ef8454aa7
Pytests overhaul ( #569 )
2023-01-09 23:31:15 +03:00
Vladislav
7788600c9b
feat(server): Buffered journal serializers ( #619 )
2022-12-30 16:18:37 +03:00
Vladislav
e6721d8160
feat(server): Improved cancellation ( #599 )
2022-12-27 16:01:54 +03:00
Boaz Sade
3d610ee2d7
feat(server): JSON family using JSON type ( #561 )
...
feat(server): json family using json type
Signed-off-by: Boaz Sade <boaz@dragonflydb.io>
Signed-off-by: Boaz Sade <boaz@dragonflydb.io>
2022-12-14 19:25:10 +02:00
Vladislav
f98d6f3357
feat(server): Implement robust error & cancellation on replica ( #531 )
2022-12-11 12:11:25 +03:00
Vladislav
2493434b23
fix(server): Fix replication bug, add gdb opt to pytest ( #513 )
...
fix(server): Fix small bugs, add gdb opt to pytest
Signed-off-by: Vladislav Oleshko <vlad@dragonflydb.io>
2022-11-28 16:28:14 +02:00
Vladislav
39a231dde8
fix(server): Increase common abstraction usage ( #511 )
...
fix(server): Small fixes everywhere
Signed-off-by: Vladislav Oleshko <vlad@dragonflydb.io>
2022-11-22 20:19:48 +02:00
Vladislav
893c741c14
feat(server): Replication errors & cancellation ( #501 )
2022-11-22 19:17:31 +03:00
Boaz Sade
235ff67e44
fix(server): all scan commands needs to return cursor as bulk string #503 ( #504 )
...
fix(server): scan cursor returning bulk string #503
Signed-off-by: Boaz Sade <boaz@dragonflydb.io>
2022-11-21 20:18:38 +02:00
Vladislav
96c9332297
feat(server): Switch to stable state replication ( #473 )
...
* feat(server): Switch to stable state replication
Signed-off-by: Vladislav Oleshko <vlad@dragonflydb.io>
2022-11-17 20:41:33 +02:00
Boaz Sade
6f45e80137
fix(test): skip pytest test_simple_full_sync_mutli_crash due to crash ( #497 )
...
Signed-off-by: Boaz Sade <boaz@dragonflydb.io>
Signed-off-by: Boaz Sade <boaz@dragonflydb.io>
2022-11-16 14:05:33 +02:00
adiholden
b395834060
feat(server family): add connection set name command fixes #458 ( #485 )
...
server family: add connection set name command fixes #458
Signed-off-by: adi_holden <adi@dragonflydb.io>
2022-11-13 17:54:37 +02:00
Boaz Sade
214c10f165
fix(server): reject eval inside transaction multi blocks #457 ( #471 )
...
fix(server): block running lua script inside pipeline #457
Signed-off-by: Boaz Sade <boaz@dragonflydb.io>
2022-11-09 19:18:28 +02:00
Boaz Sade
5e64ed1fe3
feat(server): simplify handling of the pub message handling ( #465 )
...
feat(server): sending message to subscriber using shared ptr to simplify code
Signed-off-by: Boaz Sade <boaz@dragonflydb.io>
2022-11-08 15:04:31 +02:00
Vladislav
8424f74bec
feat(server): Basic capped full sync ( #440 )
...
Signed-off-by: Vladislav Oleshko <vlad@dragonflydb.io>
2022-11-06 17:27:43 +03:00
Boaz Sade
2ed4d3489b
feat(tests): ioredis being able to successfully run tests, make it ready to be part of CI ( #459 )
...
Signed-off-by: Boaz Sade <boaz@dragonflydb.io>
2022-11-06 15:21:41 +02:00
Vladislav
072cb2e8d9
refactor(tests): Refactor pytest ( #449 )
...
Signed-off-by: Vladislav Oleshko <vlad@dragonflydb.io>
2022-10-31 16:39:20 +02:00
Boaz Sade
e0559afb51
feat(server): monitor command - cover by tests ( #435 )
...
feat(server): pytests for monitor, pipeline and pubsub, update readme
Signed-off-by: Boaz Sade <boaz@dragonflydb.io>
2022-10-26 14:12:49 +03:00
Vladislav
e4357e1f10
feat(server): Multi rdb load ( #430 )
...
* feat(server): Multi rdb load
Signed-off-by: Vladislav Oleshko <vlad@dragonflydb.io>
2022-10-24 21:22:43 +03:00
Guilherme Gervasio
ce964f103a
chore(tests): adds support for ioredis integration tests + instructio… ( #394 )
...
chore(tests): adds support for ioredis integration tests + instructions in docs
Signed-off-by: Guilherme <gilairmay@gmail.com>
2022-10-17 10:15:53 +03:00
Vladislav
add252c301
fix(server): Fix QUIT not shutting down connection ( #280 )
...
* fix(server): Fix QUIT not shutting down connection
Fixes #170
2022-09-13 05:25:46 +03:00
Braydn
b7f85e59a6
feat(server): Implemented periodic snapshotting ( #161 ) ( #250 )
...
* feat(server): Implemented periodic snapshotting (#161 )
* feat(test): Added the ability to specify dragonfly cli parameters on a test basis (#199 )
Signed-off-by: Braydn <braydn.moore@uwaterloo.ca>
* feat(server): Implemented periodic snapshotting (#161 )
Code cleanup & CONTRIBUTORS.md modifcation
Signed-off-by: Braydn <braydn.moore@uwaterloo.ca>
* feat(server): Implemented periodic snapshotting (#161 )
Parsing and race condition fixes. Improved pytests
Signed-off-by: Braydn <braydn.moore@uwaterloo.ca>
* feat(test): Cleaned up pytest code & added documentation (#199 )
- Moved tests into their own file
- Renamed test namespace to avoid naming conflicts with pytest
- Updated requirements.txt to make test environment reproducible
- Added documentation to write tests
feat(server): Updated helio submodule
Signed-off-by: Braydn <braydn.moore@uwaterloo.ca>
Signed-off-by: Braydn <braydn.moore@uwaterloo.ca>
Co-authored-by: Braydn <braydnmoore3@gmail.com>
2022-08-26 13:54:38 +03:00
Roman Gershman
9f935a33c0
fix(doc): add more examples on how to run node-redis test image
2022-08-15 08:37:28 +03:00
odedponcz
cf729f3fcb
feat(test): Add integration test for the jedis and node-redis clients ( #233 )
...
* docs: Improve wording in issue reporting
Signed-off-by: odedponcz <oded@poncz.com>
* docs: Change contribution doc flow
Signed-off-by: odedponcz <oded@poncz.com>
* feat(tests): Add integration test with node-redis
Signed-off-by: odedponcz <oded@poncz.com>
* Rename integration test docker files
Signed-off-by: odedponcz <oded@poncz.com>
2022-08-12 22:42:54 +03:00
Roman Gershman
f7e58f4de2
fix(pytest): Minor fixes
2022-07-26 17:31:39 +03:00
Shmulik Klein
d2b7987ac3
test: flush all records between pytest tests #199 ( #205 )
...
test: flush all records between pytest tests
2022-07-13 12:45:29 +03:00
Shmulik Klein
1f2895e991
[WIP] test: add dragonfly_db fixture to python tests #199 ( #204 )
...
* test: add dragonfly_db fixture to it tests #199
Signed-off-by: Shmulik Klein <shmulik.klein@gmail.com>
* test: lint using flake8
Signed-off-by: Shmulik Klein <shmulik.klein@gmail.com>
* test: run dragonfly debug version as fallback
Signed-off-by: Shmulik Klein <shmulik.klein@gmail.com>
2022-07-12 17:43:46 +03:00
Roman Gershman
4ec2538204
fix(transaction): Fix rare deadlock case - fixes #150 . ( #155 )
...
In rare cases a scheduled transaction is not scheduled correctly and we need
to remove it from the tx-queue in order to re-schedule. When we pull it from tx-queue
and it has been located at the head, we must poll-execute the next txs in the queue.
1. Fix the bug.
2. Improve verbosity loggings to make it easier to follow up on tx flow in release mode.
3. Introduce /txz handler that shows currently pending transactions in the queue.
4. Fix a typo in xdel() function.
5. Add a py-script that reproduces the bug.
Signed-off-by: Roman Gershman <roman@dragonflydb.io>
2022-06-15 16:53:27 +03:00
Roman Gershman
114e8bec5d
Fixes #41 .
...
1. Found dangling transaction pointers that where left in the watch queue. Fix the state machine there.
2. Improved transaction code a bit, merged duplicated code into RunInShard function, got rid of RunNoop.
3. Improved BPopper::Run flow.
4. Added 'DEBUG WATCH' command. Also 'DEBUG OBJECT' now returns shard id and the lock status of the object.
2022-05-27 12:20:01 +03:00
Roman Gershman
3a38576bbb
Introduce regression tests
2022-05-27 00:26:51 +03:00
Roman Gershman
2b553535b2
Upon full segment try unloading stash buckets back to regular ones
2022-05-12 13:43:03 +03:00
Roman Gershman
0c5e2a5ecd
Implement CLIENT LIST and CLIENT SETNAME.
2022-05-10 06:35:37 +03:00