adiholden
6e33261402
fix(server): fix compatibility with rdb snapshot ( #3121 )
...
* fix server: fix compatibility with rdb snapshot
Signed-off-by: adi_holden <adi@dragonflydb.io>
2024-06-04 06:28:18 +00:00
Kostas Kyrimis
094df3ef3f
fix(BgSave): async from sync ( #2702 )
...
* make BgSave command async
2024-03-14 13:31:58 +02:00
adiholden
9e66ec5833
fix(bug): server crash info memory while saving ( #2637 )
...
* bug: crash info memory while saving
Signed-off-by: adi_holden <adi@dragonflydb.io>
2024-02-21 13:39:57 +00:00
adiholden
15b3fb13b6
fix(server): saving is not a server state ( #2613 )
...
* fix(server): saving is not a server state
Signed-off-by: adi_holden <adi@dragonflydb.io>
2024-02-19 15:20:48 +00:00
Vladislav
4e3be726c5
chore(pytest): Refactor snapshot test ( #2583 )
...
* chore(pytest): Refactor snapshot test
---------
Signed-off-by: Vladislav Oleshko <vlad@dragonflydb.io>
2024-02-14 12:13:52 +03:00
adiholden
f37c57c704
fix(server): crash on rename save command on background save ( #2375 )
...
* fix(server): crash on rename save command on baground save
Signed-off-by: adi_holden <adi@dragonflydb.io>
2024-01-07 12:21:09 +02:00
Shahar Mike
a360b308c9
refactor(server): Privatize PreUpdate()
and PostUpdate()
( #2322 )
...
* refactor(server): Privatize `PreUpdate()` and `PostUpdate()`
While at it:
* Make `PreUpdate()` not decrease object size
* Remove redundant leftover call to `PreUpdate()` outside `DbSlice`
* Add pytest
* Test delete leads to 0 counters
* Improve test
* fixes
* comments
2023-12-25 07:49:57 +00:00
Roman Gershman
365cb439cf
chore: remove support for save_schedule flag ( #2327 )
...
Signed-off-by: Roman Gershman <roman@dragonflydb.io>
2023-12-22 11:17:18 +02:00
Borys
e6f3522d59
fix: forbid parallel save operations ( #2172 )
...
* fix: forbid parallel save operations
* feat: add SAVE option to takeover command
2023-11-21 13:56:27 +02:00
Roman Gershman
7aa3dba423
chore: use decode_responses when creating a redis client ( #2109 )
...
* chore: use decode_responses when creating a redis client
---------
Signed-off-by: Roman Gershman <roman@dragonflydb.io>
2023-11-03 11:00:26 +02:00
Borys
2f39e89189
fix: add ability to set snapshot_cron flag during runtime ( #2101 )
...
* fix: add validating for snapshot_cron flag during runtime
* refactor: move warning log to upper level
2023-11-03 10:10:16 +02:00
Kostas Kyrimis
d08d7f13b4
fix(regTests): can't execute command while loading on snapshots ( #2110 )
2023-11-02 12:17:08 +02:00
Andy Dunstall
2d28b48481
feat(aws): add s3 awsv2 ( #1929 )
...
* feat(aws): add s3 awsv2
* feat(aws): add s3 snapshot test
* feat(aws): disable ec2 metadata by default
* feat(aws): add s3 disable payload signing flag
* chore: update helio
* fix: fix requirements.txt
* feat(s3): update sign payload flag
* chore: update helio
2023-10-06 10:24:56 +01:00
Roy Jacobson
1e61ec8114
chore: Add a context manager to DflyInstance so we don't forget to close them. ( #1873 )
...
* chore: Add a context manager to DflyInstance so we don't forget to close
them.
* Update tests/dragonfly/config_test.py
Co-authored-by: Roman Gershman <roman@dragonflydb.io>
Signed-off-by: Roy Jacobson <roi.jacobson1@gmail.com>
---------
Signed-off-by: Roy Jacobson <roi.jacobson1@gmail.com>
Co-authored-by: Roman Gershman <roman@dragonflydb.io>
2023-09-18 13:52:56 +03:00
Roy Jacobson
b55316c0e6
tests: choose open ports randomally ( #1569 )
...
* Implement changes to the testing infrastructure to use random ports
* Use psutil to find out the random ports
2023-09-18 10:23:49 +03:00
Roy Jacobson
331e6a4d47
chore: Mark slow pytests as 'slow' so they can be excluded. ( #1720 )
2023-08-23 13:04:49 +03:00
Vladislav
c65b9cf63d
fix: Fix squashing, pytest arg formatting ( #1712 )
...
Signed-off-by: Vladislav Oleshko <vlad@dragonflydb.io>
2023-08-18 09:28:19 +03:00
Dor Avrahami
0b6c0bbe53
feat: support for cron expressions based snapshot (update). ( #1620 )
...
Requested by #1590 .
Introducing a new flag --snapshot_cron, enabling users to use cronjob expressions to time snapshot saves.
Cronjob expressions are parsed using a third party library croncpp.
This PR continues #1599 , updating cron expressions to crontab style,
up to minutes resolution instead of seconds.
Signed-off-by: Dor Avrahami <da19965@gmail.com>
2023-08-02 12:58:45 +03:00
Shahar Mike
3b0bd212f4
fix(test): Fix failing tests. ( #1612 )
...
Solution is to wait until snapshot is ready, instead of hard coding a
sleep schedule. Also don't reuse files by other test cases.
2023-08-01 08:30:17 +00:00
Dor Avrahami
977fc18e25
feat: support for cron expressions based snapshot. ( #1599 )
...
Introducing a new flag `--snapshot_cron`, which enables users
to use cron expressions to time snapshot saves.
Signed-off-by: Dor Avrahami <da19965@gmail.com>
2023-07-31 20:26:01 +03:00
Kostas Kyrimis
7944af3c62
feat: Add black formatter to the project ( #1544 )
...
Add black formatter and run it on pytests
2023-07-17 13:13:12 +03:00
Kostas Kyrimis
542b9783b7
fix(regression): remove test case for info persistence ( #1492 )
...
The test case for checking is_loading == 1 is inherently racy because
the client can connect at any time before or after the dragonfly
instance loads the snapshot.
2023-07-01 11:57:54 +03:00
Kostas Kyrimis
0670a81488
fix(regression): failing info persistence on snapshot pytests ( #1473 )
2023-06-23 16:04:44 +03:00
Kostas Kyrimis
99f3284910
feat(server): Add missing fields to INFO PERSISTENCE command ( #1408 ) ( #1438 )
...
* Add loading field
* Add rdb_changes_since_last_save field
2023-06-21 23:35:36 +03:00
Vladislav
b0537418bc
fix: use redis.asyncio instead of aioredis ( #1206 )
...
Signed-off-by: Vladislav Oleshko <vlad@dragonflydb.io>
2023-05-13 10:44:25 +03:00
Roy Jacobson
246f6093db
feat(server): Save on shutdown ( #1086 )
...
* feat(server): Save snapshot on shutdown
* CR
* Change save on shutdown to be conditional on --dbfilename.
* Support SHUTDOWN [NO]SAVE and fix unit test
* Better wait for DB loading
* Fix DF format loading state bug
* Fix some fallout from auto save
2023-04-20 06:30:42 +02:00
Roy Jacobson
1319918476
fix(server): Don't allow directory escapes in dbfilename ( #1105 )
...
* fix(server): Don't allow directory escapes in dbfilename
* Just disallow directories completely
2023-04-18 21:21:23 -07:00
Roy Jacobson
1382ed1c37
chore: Allow passing empty strings as flag arguments in DflyInstance ( #1104 )
...
For example, this is needed to disable auto save on shutdown with --dbfilename=""
2023-04-18 12:48:30 +03:00
Vladislav
0e7d137046
fix: fix default instance port blocking in pytest ( #1102 )
...
Signed-off-by: Vladislav Oleshko <vlad@dragonflydb.io>
2023-04-18 00:12:38 +03:00
Roy Jacobson
c952251381
feat(server): Insert timestamp into snapshot names explicitly ( #1028 )
...
* feat(server): Insert timestamp into snapshot names explicitly
* Whenever the snapshot filename contains '{timestamp}', it will be substituted with the current local time.
* Default snapshot name is now "dump-{timestamp}"
* InferLoadFile: Modify to recognize "{timestamp}" files correctly.
* ServerFamily::Load: Change extension 'CHECK' into a non-terminating error because it's user-visible
* ServerFamily::DoSave: Add sanity check for the filename extension.
Signed-off-by: Roy Jacobson <roy@dragonflydb.io>
* resolve CR comments
* Add comment about glob sorted output
* Fix InferLoadFile and fix its tests
* Simplify filename behavior with the .dfs format
---------
Signed-off-by: Roy Jacobson <roy@dragonflydb.io>
2023-04-17 14:59:44 +03:00
Vladislav
83256bd4e1
fix(pytest): fix periodic test ( #804 )
...
Signed-off-by: Vladislav Oleshko <vlad@dragonflydb.io>
2023-02-15 11:12:41 +02:00
Vladislav
6dedb33f85
fix(pytest): SAVE to SAVE RDB ( #803 )
2023-02-15 11:15:38 +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
8424f74bec
feat(server): Basic capped full sync ( #440 )
...
Signed-off-by: Vladislav Oleshko <vlad@dragonflydb.io>
2022-11-06 17:27:43 +03:00
Vladislav
072cb2e8d9
refactor(tests): Refactor pytest ( #449 )
...
Signed-off-by: Vladislav Oleshko <vlad@dragonflydb.io>
2022-10-31 16:39:20 +02: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
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