Commit graph

302 commits

Author SHA1 Message Date
Alan Bernstein
f6d3efe29d Implement differenceBitmapRun and differenceArrayRun 2017-06-19 10:27:04 -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
8ee152cbad Use meaningful name for maxBitmap const 2017-06-19 10:18:03 -05:00
Alan Bernstein
60d3887474 Update comments 2017-06-19 10:18:03 -05:00
Alan Bernstein
bff12f5ce1 Add implementations and minimal tests for bitmap-run conversions 2017-06-19 10:18:03 -05:00
Matt Jaffee
ac5f776db9 optimize roaring on snapshot 2017-06-19 10:16:01 -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
Alan Bernstein
22393014cd Implement run/array conversion functions 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
c17c737264 be smarter about setting output.n 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
24c03f07f6 add note to improve intersectRunRun func 2017-06-19 10:13:02 -05:00
Matt Jaffee
cf445f8012 stub out the rest of the rle methods 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
014005b5d5 when choosing between container types, keep bitmap as default 2017-06-19 10:06:11 -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
98c8fd1ded rename conversion funcs to prepare for rle
also support rle in clone()
2017-06-19 10:06:11 -05:00
Matt Jaffee
e80812cb0a implement runMax 2017-06-19 10:06:11 -05:00
Matt Jaffee
72b6eb45e5 add runRemove 2017-06-19 10:06:11 -05:00
Matt Jaffee
c2203d19c1 wip on adding RLE to roaring, add, countRange, contains 2017-06-19 10:03:55 -05:00
Ben Johnson
ca29f7692b
Fix failing tests when IPv6 is disabled.
Turning off IPv6 causes the tests to fail because the Go
`net.Listen()` function obtains a `[::]` address when using
a `localhost:0` bind address. Looking through the Go source
code, I don't see a good way to fix that.

This change adds a test flag to allow users to specify the
network name when running the test:

```sh
go test github.com/pilosa/pilosa/server -network tcp4
```
2017-06-01 14:43:59 -06:00
Matthew Jaffee
fa4234b04c Merge pull request #590 from jaffee/set-n-at-end
set n based on array length instead of incrementing repeatedly
2017-06-01 11:03:35 -05:00
Todd Gruben
542d748baf corrected tests to no longer use String method 2017-06-01 10:17:49 -05:00
Todd Gruben
ba2b8cd5b1 removed String method upon discovery of %v 2017-06-01 10:03:23 -05:00
Travis
879e02de81
fix misspelling and run gofmt 2017-05-31 16:22:43 -05:00
Todd Gruben
f584400330 attempt to conquer weird 2017-05-31 16:10:48 -05:00
Todd Gruben
e12fdb69a1 better String() 2017-05-31 15:04:33 -05:00
Todd Gruben
7382428f38 clensed String method;added documentation for tests 2017-05-31 15:01:48 -05:00
Todd Gruben
649e58253a corrected flip prefix;changed flip to inclusive 2017-05-31 13:58:54 -05:00
Todd Gruben
a6975192d6 Merge branch 'flip' of github.com:tgruben/pilosa into flip 2017-05-31 10:55:31 -05:00
Todd Gruben
aa13bbb6ce cleaned up comments 2017-05-31 10:40:52 -05:00
tgruben
a58206bb4d Merge branch 'master' into flip 2017-05-31 08:43:50 -05:00
tgruben
8c5c48bba9 Merge pull request #571 from tgruben/xor
added xor support to roaring
2017-05-31 08:34:58 -05:00