fix wrong result with WrappedImmutableConciseBitmap#difference, issue…#41
fix wrong result with WrappedImmutableConciseBitmap#difference, issue…#41lushuifeng wants to merge 1 commit intometamx:masterfrom lushuifeng:master
Conversation
|
Why is the difference implemented as the intersection with the complement when there is an andNot method that would be (no doubt) more efficient and simpler? |
|
I do not think andNot method is exist in ImmutableBitmap, I would perfer using andNot method if there is one. The bitmap is deserialized from file content which is ImmutableBitmap, and then a lot of and, or, andNot is performed on ImmutableBitmap |
|
there is one in ImmutableRoaringBitmap but not in ImmutableConciseBitmap, when it comes to ImmutableConciseBitmap#difference method, no better function call I've found. the type of bitmap(roaring or concise) is deserialized from file which is not fixed |
|
Ok. Thanks, I understand. |
|
thanks |
|
Hi @lushuifeng, is this related to an issue you have noticed with Druid? If so, could you please raise this as a patch in the druid-io/druid repo? We have incorporated this code into Druid itself, so this library is no longer used. |
|
Sorry, not yet. It seems that this method is not invoked in druid, not deep into this |
|
latest version is not checked, verson 0.9.3 seems ok. |
|
It should work in latest druid, the filters and bitmapFactory implementations do not involve with this issue. BTW, how can I use the latest bitmap dependency since this is incorporated into druid? |
|
The Druid libraries are on Maven Central so you could include them from there. |
#40 for details, please take a look, thanks