Commit graph

1421 commits

Author SHA1 Message Date
Martin Sumner
41fb83abd1 Add tests for is_empty
Where keys are strings or integers, and where subkeys are involved
2018-08-31 15:29:38 +01:00
Martin Sumner
65969c36d0
Merge pull request #159 from martinsumner/rdb/iclerk-test-tz_master
Fix timezone specific failing test
2018-08-07 14:05:25 +01:00
Russell Brown
0c018c5721 Don't leave commented out code lying around 2018-08-07 12:49:31 +01:00
Russell Brown
e8f462fab0 Fix timezone specific failing test
Converts date time to a local now
2018-08-07 12:35:07 +01:00
Martin Sumner
bb4a54eb5d
Merge pull request #151 from russelldb/rdb/contributing
Add instructions for contributing/running tests
2018-07-24 12:14:26 +01:00
Martin Sumner
076d2646c6
Merge pull request #155 from martinsumner/mas-i152-iclerkconfig
Mas i152 iclerkconfig
2018-07-24 12:13:38 +01:00
Martin Sumner
a0c740d505
Merge pull request #154 from martinsumner/mas-i153-testfailure
Change start time to correct time
2018-07-24 12:11:29 +01:00
Martin Sumner
fa513c1c42 Change start time to correct time
Must have miscaulcated the start time originally
2018-07-24 12:09:59 +01:00
Martin Sumner
0796a372d0 Add docs for journal compaction startup options 2018-07-23 13:59:24 +01:00
Martin Sumner
66a75923e8 Expose configuration of Compactio Percentage targets
I think these should be set differently, so make them configurable.
2018-07-23 12:46:42 +01:00
Russell Brown
1fb52dad67
fix typo in rebar3 command 2018-07-17 12:47:16 +01:00
Russell Brown
a4d9e19a5d Add instructions for contributing/running tests 2018-07-17 12:24:56 +01:00
Martin Sumner
461779b739
Merge pull request #150 from martinsumner/mas-i29-linkall
Mas i29 linkall
2018-07-11 08:31:47 +01:00
Martin Sumner
c4e376ece5 Don't link snapshots
If a snapshot breaks a penciller clone, this shouldn't crash the main process.
2018-07-10 10:25:20 +01:00
Martin Sumner
082eabb65b Switch to start_link
Start all processes linked - to collapse the whole tree if one process fails
2018-06-28 12:16:43 +01:00
Martin Sumner
92bd2513c1
Merge pull request #149 from martinsumner/mas-kvi-missinghead
Mas kvi missinghead
2018-06-23 17:21:43 +01:00
Martin Sumner
aedeb0c934 Add support for with_lookup head_only
head_only mode cna be run with_lookup - but there is no L0 index created in this case.

So the L0 index wasn't returning a potition list and the L0 cache wasn't being checked.

Code now checks every  position in the L0 cache, when  a lookup is attempted in head_only mode.
2018-06-23 15:15:49 +01:00
Martin Sumner
990e857ebe Add to log 2018-06-23 13:25:10 +01:00
Martin Sumner
ac14bbdf41 Add log to penciller 2018-06-23 13:18:32 +01:00
Martin Sumner
f881eae602
Merge pull request #148 from martinsumner/mas-i131-otp21
Fix bad specs
2018-06-22 12:22:36 +01:00
Martin Sumner
0dda129d3e Fix bad specs
There were some bad specs in '|' OR'd specs.  These were being falsely ignored in dialyzer until https://github.com/erlang/otp/pull/1722.

Running on OTP21 exposed these incomplete specs.
2018-06-21 15:46:42 +01:00
Martin Sumner
65de71a2b5
Merge pull request #147 from martinsumner/mas-i146-startupoptions
Mas i146 startupoptions
2018-06-21 10:45:17 +01:00
Martin Sumner
8a61e5af78 Add extra checks 2018-06-08 14:12:07 +01:00
Martin Sumner
d60725ad1b Add schema document 2018-06-08 13:23:45 +01:00
Martin Sumner
022997b2e6 Coverage issue
The scan_table situation where the query needs to be start inclusive, was consistently getting coverage.  It was less likely to get coverage with smaller cache sizes.

It is not clear why this wasn't being triggered before.  Perhaps because of the erroneous jitter setting?

Multiple cache sizes now tested to try and make sure the test is always  in-line with expectations.
2018-06-08 12:34:10 +01:00
Martin Sumner
589d947c01 Jitter proportionate to size
Not not default size
2018-06-07 18:08:54 +01:00
Martin Sumner
95aa1c632b Comment change 2018-06-07 16:56:10 +01:00
Martin Sumner
7eb26078e0 Add xref check support
Now xref chekcing as part of verification process.
2018-06-07 15:02:39 +01:00
Martin Sumner
7c1f34c94f Format
Reverse mysterious tab displacement
2018-06-07 14:55:05 +01:00
Martin Sumner
319c6b4ca7 Undefined typo
Interetsingly setting  max_pencillercachesize to a non-integer merely had the impact of making the penciller cache size infinite.

So a guard added to make sure it is an integer going forward.
2018-06-07 14:53:34 +01:00
Martin Sumner
11d72013d2 Add open_options type
Make it easier to discover all the options and the defaults from reaidng the code.

Note default sync option is now none.  This doesn't mean this is recommended
2018-06-07 12:40:12 +01:00
Martin Sumner
4dcfa6ccae
Merge pull request #145 from martinsumner/mas-i144-gcmanifest
Mas i144 gcmanifest
2018-06-05 18:43:18 +01:00
Martin Sumner
fc998d2971 GC Inker Manifest 2018-06-05 16:57:54 +01:00
Martin Sumner
93f16a6297 Unit test - GC
End up with right number of manifest files
2018-06-05 16:48:56 +01:00
Martin Sumner
a72d1cc941 Validate current manifest was written
Then delete a previous maniafest (from 5 manifests ago, if it is still there).
2018-06-05 15:36:39 +01:00
Martin Sumner
b55cbc48ea
Merge pull request #143 from martinsumner/mas-i61-missingtypes
Fix unexported types
2018-06-04 12:41:51 +01:00
Martin Sumner
a14941a122 Fix unexported types
file:location not exported?
2018-06-04 10:57:37 +01:00
Martin Sumner
c827c60042
Merge pull request #142 from martinsumner/mas-i14-undefinedoldobjects
Mas i14 undefinedoldobjects
2018-05-24 22:56:43 +01:00
Martin Sumner
9f9da77398 Allow add_kv to output segment
Make it easier to spot clashes with dirty segments in kv_index_tictactree
2018-05-24 20:03:53 +01:00
Martin Sumner
ca2b857e36 Add replace segment function
This will be useful in kv_index_tictactree to do partial rebuilds after fetch_clock requests
2018-05-24 16:12:12 +01:00
Martin Sumner
95fe5fcca1
Merge pull request #141 from martinsumner/mas-i61-tictacexporttype
Export types from leveled_tictac
2018-05-19 11:29:32 +01:00
Martin Sumner
274b1f5c6d Export types from leveled_tictac 2018-05-19 11:09:03 +01:00
Martin Sumner
8fe421fed6
Merge pull request #140 from martinsumner/mas-i31-cdccrckey
Mas i31 cdccrckey
2018-05-18 15:51:17 +01:00
Martin Sumner
afa9ddecd2 Merge branch 'mas-i31-cdccrckey' of https://github.com/martinsumner/leveled into mas-i31-cdccrckey 2018-05-18 15:48:39 +01:00
Martin Sumner
b8a642fd35 Spec update 2018-05-18 15:48:36 +01:00
Martin Sumner
8011a9cde1 Unit test should not pass with bad key
Unit test needed to capture a bad key scenario, which did not get returned false.  However, bad keys are now CRC checked and so willalways return false - and so the case clause for bad key can be dropped.
2018-05-18 15:23:43 +01:00
Martin Sumner
039b135f5f Ease timeout pressure in unit test 2018-05-18 14:36:47 +01:00
Martin Sumner
5e95e6a6b3 correct incorrect return value
required by leveled_codec:compact_inkerkvc/2
2018-05-18 13:44:51 +01:00
Martin Sumner
d468dd32a8 More consistency in extract value functions
Try to make this a little bit cleaner and more obvious.  Make sure the value passed is always a value and not a crc/value.
2018-05-18 13:29:19 +01:00
Martin Sumner
7cc5512a0a safe_read
There are now two cases of safe_read_next_key/2

the first case using the original function name will return just the Key when positive (not the Key and KeyBinary).  If the Key and KeyBinary is required (e.g. for CRC checking purposes), then use safe_read_next_keyint/2.
2018-05-18 11:49:19 +01:00