Commit graph

106 commits

Author SHA1 Message Date
Todd Gruben
b14a31dab3 fixed bug with xor; extended test coverage for xor 2017-06-22 16:21:19 -05:00
Todd Gruben
4da0c167e1 extended tests for difference operation 2017-06-21 20:18:03 -05:00
Todd Gruben
0508a3c31f fixed bug in difference;added more roaring test coverage 2017-06-20 18:19:58 -05:00
Todd Gruben
8822362772 extending roaring test coverage 2017-06-20 08:22:45 -05:00
Matt Jaffee
057be3703e a few tweaks after rebasing 334-rle onto master 2017-06-19 11:19:27 -05:00
Todd Gruben
f334d122c8 expand coverage of IntersectRunRun 2017-06-19 10:43:06 -05:00
Todd Gruben
1b7eef4fc8 simplified difference BitmapArray and BitmapBitmap and improved coverage 2017-06-19 10:43:06 -05:00
Alan Bernstein
fee3996351 Fix cookie order and check storage version on read 2017-06-19 10:43:05 -05:00
Alan Bernstein
d068f53d93 Finish Seek() for runs 2017-06-19 10:43:05 -05:00
Alan Bernstein
bfce3a0746 Update test, cleanup 2017-06-19 10:43:05 -05:00
Alan Bernstein
5f5a857181 Modify signature of bitmap{Set,Zero,Xor}Range to be consistent with similar functions 2017-06-19 10:43:05 -05:00
Alan Bernstein
371f36fb76 Add fast check for empty conversions 2017-06-19 10:43:05 -05:00
Alan Bernstein
971d60617b Update runRemove with run binary search 2017-06-19 10:43:05 -05:00
Todd Gruben
a0d98cfb30 support for difference of run and bitmap 2017-06-19 10:43:05 -05:00
Alan Bernstein
d0ee8a6173 Add test and comment for runBinSearch 2017-06-19 10:43:05 -05:00
Todd Gruben
056670389e tests for binSearchRuns 2017-06-19 10:41:42 -05:00
Alan Bernstein
b7a790e320 Add iterator tests and WIP seek() for runs 2017-06-19 10:40:00 -05:00
Alan Bernstein
18aacbb65a Move String functions to test file 2017-06-19 10:40:00 -05:00
Todd Gruben
ccef8be844 added difference for run and array containers 2017-06-19 10:40:00 -05:00
Alan Bernstein
e72ce82a49 Fix bug - all tests passing 2017-06-19 10:38:47 -05:00
Todd Gruben
bbf6d78169 corrected testname for bitmapXorRange 2017-06-19 10:35:44 -05:00
Todd Gruben
93a7320cd9 bitmap/run support for rle 2017-06-19 10:35:44 -05:00
Alan Bernstein
bf7a1bc08a WIP bug fix, cleanup, additional tests 2017-06-19 10:35:44 -05:00
Todd Gruben
f4f07c0aa2 extended xor tests; updated comments 2017-06-19 10:28:57 -05:00
Todd Gruben
bd90254282 xorArrayRun;xorRunRun of rle 2017-06-19 10:28:56 -05:00
Alan Bernstein
ff9d97e4be Implement differenceRunRun and add difference test shells 2017-06-19 10:27:04 -05:00
Alan Bernstein
7e9fc3953d Support RLE in writing and reading snapshots 2017-06-19 10:27:04 -05:00
Alan Bernstein
3ad1c5b331 Fix broken test 2017-06-19 10:27:04 -05:00
Alan Bernstein
a51f7d66bb Add array-bitmap conversion test 2017-06-19 10:24:17 -05:00
Alan Bernstein
2e540d275c Expand bitmap-run conversion tests 2017-06-19 10:22:20 -05:00
Alan Bernstein
bff12f5ce1 Add implementations and minimal tests for bitmap-run conversions 2017-06-19 10:18:03 -05:00
Matt Jaffee
1a8780c4a2 add bitmapCountRuns and arrayCountRuns 2017-06-19 10:16:01 -05:00
Alan Bernstein
dbee584866 Fixes and tests for array-run conversions 2017-06-19 10:16:01 -05:00
Matt Jaffee
23ce2cd394 unionBitmapRun, bitmapSet/ZeroRange, special case optimization for RLE 2017-06-19 10:13:02 -05:00
Alan Bernstein
343e35f123 Update TestUnionArrayRun for array result case 2017-06-19 10:13:02 -05:00
Matt Jaffee
32c3b2ad52 more cardinality and conversions 2017-06-19 10:13:02 -05:00
Matt Jaffee
487a369c6d more cardinality tracking and tests 2017-06-19 10:13:02 -05:00
Matt Jaffee
88e0e4d5b6 cleanup - setting cardinality and conversions 2017-06-19 10:13:02 -05:00
Matt Jaffee
8ec8fc556c intersectRunRun to use runAppendInterval
this avoid situations where two runs which are adjacent don't get collapsed to a
single run
2017-06-19 10:13:02 -05:00
Matt Jaffee
97346baa94 unionArrayRun implementation 2017-06-19 10:13:02 -05:00
Matt Jaffee
c5a0f23257 clean up unionRunRun 2017-06-19 10:13:02 -05:00
Matt Jaffee
4848a99aca unionRunRun working - messy 2017-06-19 10:13:02 -05:00
Matt Jaffee
9781a4c78b fix tests, prep for union rle implementations 2017-06-19 10:13:02 -05:00
Matt Jaffee
250e8f6f5b implement intersectBitmapRun
wowza
2017-06-19 10:13:02 -05:00
Matt Jaffee
8954a6ae8c fix bitmapCountRange and test
had been thinking that index 0 was the most significant bit, but based on the
bitmapAdd function, it must be the least significant bit
2017-06-19 10:13:02 -05:00
Matt Jaffee
3e8030aee4 implement intersectRunRun 2017-06-19 10:10:57 -05:00
Matt Jaffee
0c3f61a426 implement intersectArrayRun 2017-06-19 10:10:57 -05:00
Matt Jaffee
20cec1363b implement intersectionCounts for run containers 2017-06-19 10:10:57 -05:00
Matt Jaffee
95b55ee7db use uint32 instead of uint16 for rle containers
stays consistent with the array type containers. array and rle are using uint32
in case we want to change the size of roaring containers as an optimization.
This has been done in the past
a8feb985e1

The downside is that more storage is used, so we may want to convert to uint16
until we decide to play with that optimization again, but for now I'll keep the
rle implementation in sync with the array implementation.
2017-06-19 10:06:11 -05:00
Matt Jaffee
e80812cb0a implement runMax 2017-06-19 10:06:11 -05:00