Martin Sumner
35167e3796
Update leveled.app.src
...
Bump version
2020-06-18 13:20:49 +01:00
Martin Sumner
4caefcf4aa
Merge branch 'master' into develop-3.0
2020-04-09 12:23:42 +01:00
Martin Sumner
9412e7c9b0
Merge pull request #312 from martinsumner/mas-i311-mergeselector
...
Mas i311 mergeselector
2020-04-02 12:25:32 +01:00
Martin Sumner
312fc52832
Extend test to make it highly likely a "garbage" merge file choice is made
2020-03-31 09:33:50 +01:00
Martin Sumner
d05a5fdd46
Make grooming more accurate
...
Check more files to optimise grooming choices
2020-03-30 20:07:48 +01:00
Martin Sumner
9e56bfa947
Merge branch 'master' into mas-i311-mergeselector
2020-03-30 20:07:05 +01:00
Martin Sumner
febdac27f6
Merge pull request #310 from martinsumner/mas-i306-implementrecalc
...
Mas i306 implementrecalc
2020-03-30 20:06:48 +01:00
Martin Sumner
9838e255d2
Address review comments
...
More efficient traversal of list to score.
2020-03-29 20:02:21 +01:00
Martin Sumner
28c88ef8b8
Typo
2020-03-27 20:09:03 +00:00
Martin Sumner
42eb5f56bc
Merge branch 'master' into mas-i311-mergeselector
2020-03-27 17:11:18 +00:00
Martin Sumner
da97d65a23
Add grooming compactions
...
Make half of LSM-tree compactions grooming compactions i.e. compactions biased towards merging files with large numbers of tombstones.
2020-03-27 15:09:48 +00:00
Martin Sumner
aca945a171
Add counting of tombstones to new SST files
...
.. and that old-style SST files cna still be created, and opened, with a return of 'not_counted'
2020-03-27 10:20:10 +00:00
Martin Sumner
4ec5a19db3
Merge pull request #308 from martinsumner/mas-i306-reviseretain
...
Mas i306 reviseretain
2020-03-27 09:25:23 +00:00
Martin Sumner
e175948378
Remove references ot 'skip' strategy
...
Now called `recovr`
2020-03-26 14:25:09 +00:00
Martin Sumner
4ef0f4006d
Extend mergefile_selector for strategy
...
Strategy only applied below L1, and only random strategy supported
2020-03-26 14:18:57 +00:00
Martin Sumner
20a7a22571
Add documentation for recalc option
2020-03-24 20:21:44 +00:00
Martin Sumner
8a9db9e75e
Add log of startegy when clerk starts compaction
2020-03-23 16:45:28 +00:00
Martin Sumner
50cb98ecdd
Resolve intermittent test failure
...
the previous regex filter still allowed files with cdb in the body of the name (which can be true as filenames are guid based)
2020-03-17 17:29:59 +00:00
Martin Sumner
5b4edfebb6
Coverage cheat
...
Very rarely, this line in the tests this line is not covered - so cheating here to consistently pass coverage
2020-03-17 14:20:57 +00:00
Martin Sumner
808a858d09
Don't score a rolling file
...
In giving an empty file a score of 0, a race condition was exposed. A file might not be active, but might still be rolling - and then cna get scored as 0, and immediately compacted. It will then be removed from the journal manifest.
Check each file is not rolling before making it a candidate for rolling.
2020-03-16 21:41:47 +00:00
Martin Sumner
5f7d261a87
Improve test
...
Genuine overhang
2020-03-16 18:53:40 +00:00
Martin Sumner
b49a5ff53d
Additional unit tests of MetaBin handling
2020-03-16 17:35:38 +00:00
Martin Sumner
dbceda876c
Issue with tag order
...
https://github.com/martinsumner/leveled/issues/309
Resolve issue, and remove test log entries used when discovering issue.
2020-03-16 16:35:06 +00:00
Martin Sumner
6350302ea8
Uncomment test
2020-03-16 13:32:52 +00:00
Martin Sumner
9d92ca0773
Add tests for appDefined functions
2020-03-16 12:51:14 +00:00
Martin Sumner
706ba8a674
Resolve issues with passing specs around
2020-03-15 23:15:09 +00:00
Martin Sumner
694d2c39f8
Support for recalc
...
Initial test included for running with recallc, and also transition from retain to recalc.
Moves all logic for startup fold into leveled_bookie - avoid the Inker requiring any direct knowledge about implementation of the Penciller.
2020-03-15 22:14:42 +00:00
Martin Sumner
1242dd4991
Merge branch 'master' into mas-i306-reviseretain
2020-03-13 19:56:35 +00:00
Martin Sumner
aaf58dd343
Merge pull request #307 from martinsumner/mas-i306-lessrandomreads
...
Mas i306 lessrandomreads
2020-03-13 19:55:16 +00:00
Martin Sumner
444011ac64
Merge branch 'master' into mas-i306-reviseretain
2020-03-09 21:40:19 +00:00
Martin Sumner
207aeb8b99
Remove additional log
2020-03-09 20:42:48 +00:00
Martin Sumner
6b3328f4a3
Rationalise logging in commit
...
Also:
Sort the output from an 'all' fetch one loop at a time
Make sure the test of scoring na empty file is scoring an empty file
If it is an emtpy file we want to compact the fragment away - in which case it should score 0.0 not 100.0
2020-03-09 17:45:06 +00:00
Martin Sumner
156e7b064d
Compaction, retain and recovery
...
Change the penciller check so that it returns current/replaced/missing not just true/false.
Reduce unnecessary penciller checks for non-standard keys that will always be retained - and remove redunandt code.
Expand tests of retain and recover to make sure that compaction on delete is well covered.
Also move the SQN number laong during initial loads - to stop aggressive loop to find starting SQN every file.
2020-03-09 15:12:48 +00:00
Martin Sumner
60e29f2ff0
(slightly) less random reads on journal compaction
2020-03-06 11:29:25 +00:00
Martin Sumner
5b11462054
Merge pull request #305 from martinsumner/mas-i304-otp22
...
Mas i304 otp22
2020-02-24 12:49:25 +00:00
Martin Sumner
12e84ad628
Don't add later OTP until we can test it
2020-02-24 12:42:40 +00:00
Martin Sumner
009abdd599
Build and test on OTP 22
2020-02-24 09:55:05 +00:00
Martin Sumner
02155558df
Tag for Riak 2.9.1
2020-02-12 09:26:53 +00:00
Martin Sumner
681f243e87
Merge branch 'master' into develop-3.0
2019-11-20 10:34:03 +00:00
Martin Sumner
4d550ef2a1
Bump version for new release
2019-11-20 10:33:51 +00:00
Martin Sumner
b3de5d46c0
Merge branch 'master' into develop-2.9
2019-11-20 09:51:24 +00:00
Martin Sumner
b8976531b1
Merge pull request #302 from martinsumner/mas-i301-saferename
...
Mas i301 saferename
2019-11-19 21:47:24 +00:00
Martin Sumner
bcf10c9709
Fixup comments
2019-11-19 16:36:57 +00:00
Martin Sumner
693defb6d3
Use the same file write/sync/rename path where needed
...
When we want to be sure a file has been written before proceeding - we need a safer (that `file:write_file/2`) mechanism to be sure that it is written before proceeding.
This will:
open, write, sync, rename and then optionally read-back.
Changed so that manifest writing uses the safest form (including read back), and that sst writing uses a slightly looser form (with no read back to avoid performance issues).
2019-11-19 15:50:59 +00:00
Martin Sumner
65bdb40277
Merge branch 'master' into develop-2.9
2019-11-18 13:37:30 +00:00
Martin Sumner
b946271195
Merge branch 'master' into develop-3.0
2019-11-05 20:17:39 +00:00
Martin Sumner
e16b650823
Merge pull request #300 from martinsumner/travisci-test
...
Travisci test
2019-11-05 20:01:59 +00:00
Martin Sumner
8ce9f29c88
Add travis status
2019-11-05 19:54:11 +00:00
Martin Sumner
293b5abed1
Add latest rebar3 3.12.0
2019-11-05 19:42:39 +00:00
Martin Sumner
7bf4faed9a
Create .travis.yml
2019-11-05 19:36:20 +00:00