Commit graph

106 commits

Author SHA1 Message Date
Cody Soyland
67cfe4dcee Unexport roaring.ContainerRun 2018-07-05 23:11:56 -05:00
Cody Soyland
692b72be18 Unexport roaring.ContainerBitmap 2018-07-05 23:11:56 -05:00
Cody Soyland
9098b0d131 Unexport roaring.ContainerArray 2018-07-05 23:11:56 -05:00
Matt Jaffee
61fcf99f3e
unexport bitmapsEqual 2018-05-15 15:53:26 -05:00
Cody Soyland
e8fcb0f055 Use NewFileBitmap for tests to test btree/slice containers separately. 2018-05-15 11:22:19 -05:00
Cody Soyland
513c7fd705 B+tree integration work.
Export necessary vars from roaring to fix b+tree containers implementation.
Clean up naming.
Use constructor replacement for enterprise integration.
2018-05-14 17:32:30 -05:00
Cody Soyland
4282e90fe1 Export a few things to enable enterprise/b/containers_btree.go to work 2018-05-14 14:03:46 -05:00
Cody Soyland
faa79a385c Add B+tree to enterprise subpackage 2018-05-11 20:20:24 -05:00
Cody Soyland
4014f22802 Rename (export) container -> Container 2018-05-11 10:57:06 -05:00
Cody Soyland
2590b25628 Merge branch 'master' into vendor-btree 2018-05-10 11:28:13 -05:00
Travis Turner
23f5c7166b
cleat up flipBitmap and add tests 2018-04-23 13:23:35 -05:00
Travis Turner
685a0075ae
add evenBits/oddBits container tests and related bug fix 2018-02-15 10:20:54 -06:00
Travis Turner
6529866b57
templates for testing various container operations 2018-02-14 13:30:07 -06:00
Travis Turner
944a0b5b3d
fixes a shift logic bug in bitmapZeroRange that was causing an overflow-like condition 2018-02-12 15:23:00 -06:00
Travis Turner
ac4010bce0
avoid overflow bug in differenceRunArray which was appending a full run to the container 2018-02-09 11:35:13 -06:00
Travis Turner
34c3497e20
rebase and fix tests 2018-02-07 14:00:13 -06:00
Matt Jaffee
26b6f6b119
rename NewBitmap to NewSliceBitmap 2018-02-07 13:56:58 -06:00
Matthew Jaffee
d798963798
fix a bunch of bugs and add some tests 2018-02-07 13:56:56 -06:00
Matthew Jaffee
cce3379abf
add Containers interface and modify Bitmap to use it
there are no implementations of Containers, so everything is broken, but the
code compiles
2018-02-07 13:56:56 -06:00
Matthew Jaffee
cc8733eedb
fix bug where a count query and bitmap query could return different numbers
There was a case where the Bitmap iterator logic could skip over a bit in a run
container if 1. the run container was not the first container in the bitmap, and
2. The first run in the run container had only one bit.

The bug was due to how the iterator was initialized with iterator.Seek(0) which
sets up the initial values of itr.i,j,k based on the type of the first
container. It was failing to set itr.k to -1 unless the first container was an
RLE container. itr.k is only used by RLE containers in the iterator, and must be
set to -1 when an RLE container is encountered. When Iterator.Next() encountered
the run container and itr.k was set to 0, it checked to see if itr.k <= run.last
- run.first, and if so it assumes that it was finished with the run and moved to
the next one. run.last - run.first is 0 in the case of a single bit run, so that
bit was skipped. After this, itr.k is set to -1 and all further iteration
proceeds as expected.
2018-02-06 10:26:17 -06:00
Todd Gruben
065c82f737 passed deadcode check 2017-12-19 11:30:17 -06:00
Todd Gruben
28d590c575 cleaned up some golint warnings 2017-12-19 10:32:39 -06:00
Matthew Jaffee
4785b0e793
add container types to other tests (though they were passing already) 2017-12-08 09:56:44 -06:00
Matthew Jaffee
907aa3495f
add container types and set c.n to get tests working 2017-12-08 09:54:24 -06:00
Todd Gruben
c9c2a2b0d8 added test for differenceRunBitmap overflow bug 2017-11-11 09:44:15 -06:00
Todd Gruben
50d31a3c83 fix overflow in differenceRunBitmap 2017-11-10 12:44:25 -06:00
Matthew Jaffee
f115249316
don't forget to calculate in in differenceArrayRun 2017-09-27 15:05:27 -05:00
Matthew Jaffee
fd73eaa5cb
re-implement differenceRunArray to not use iterator
hopefully less heap allocs and better perf now
2017-09-27 15:05:16 -05:00
Travis
c7e672e16f
cleaning up a few of the tests 2017-09-27 11:23:00 -05:00
Todd Gruben
de2f16b617
optimzed differenceRunBitmap 2017-09-27 11:23:00 -05:00
Todd Gruben
50dab75c82
optimize unionArrayBitmap 2017-09-27 11:17:15 -05:00
Todd Gruben
48f34836e5
optimize differenceBitmapArray 2017-09-27 11:17:15 -05:00
Todd Gruben
08133368e3
optimize differenceArrayBitmap 2017-09-27 11:17:15 -05:00
Todd Gruben
71b7216c51
fix to to allocate properly for difference test 2017-09-27 11:17:15 -05:00
Matthew Jaffee
de6a25cb8d
rewrite intersectArrayBitmap for perf 2017-09-27 11:17:15 -05:00
Travis
0d4f634dd8
implement container.flipBitmap() to improve differenceRunBitmap() 2017-09-25 15:48:40 -05:00
Travis
31f1fe0be1
set container.n in differenceRunRun 2017-08-25 19:23:09 -05:00
tgruben
644262810f Merge pull request #786 from tgruben/xor-bug
Xor bug
2017-08-24 14:13:25 -05:00
Todd Gruben
0f91149852 converted xorArrayRun test to table; xor cardinality bug fix 2017-08-24 13:47:58 -05:00
Todd Gruben
ee3324ba8e overflow in arrayRun with supporting tests 2017-08-23 11:20:33 -05:00
Todd Gruben
343ff04399 fixes #780;adjusted test to avoid array conversion 2017-08-22 16:09:03 -05:00
Matthew Jaffee
dbbdabef05
add failing test for XorRunRun 2017-08-21 14:38:35 -05:00
Travis
cf372cdd1d
Fix infinite loop in bitmap-to-array conversion.
When a run ended the container (i.e. contained column 65535), then the for loop
would increment the 16-bit value to 0, at which point it was still <= 65535.
2017-08-21 14:20:37 -05:00
Matthew Jaffee
f6b75e0361
fix Bitmap.CountRange bugs, comment, test 2017-08-15 17:07:15 -05:00
Todd Gruben
fbdce18f70 overflow in intersectionCountRunRun 2017-08-03 14:30:37 -05:00
Todd Gruben
6dacd287b4 fixed overflow on read 2017-08-02 10:05:01 -05:00
Todd Gruben
091e982263 update tests to support container_type 2017-08-01 21:47:28 -05:00
Todd Gruben
a3f3ca3c5a fixed overflow in interval16 runlen; added rle tests 2017-08-01 16:25:11 -05:00
Todd Gruben
d7272f46a2 converted containers to 16bit 2017-07-27 13:00:14 -05:00
Travis
c3a648b3f8
remove unused roaring.BufIterator. test the unread() panic case in bufBitmapIterator 2017-06-23 16:55:49 -05:00