[ 
https://issues.apache.org/jira/browse/LUCENE-5277?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13793217#comment-13793217
 ] 

Shai Erera commented on LUCENE-5277:
------------------------------------

I thought of that ... it started in LUCENE-5248 where I want to keep a growable 
bitset alongside the docs/values arrays to mark whether a document has an 
updated value or not (following Rob's idea). When I implemented that using 
OpenBitSet, I discovered the bug and opened LUCENE-5272. As I worked on fixing 
the bug, I realized OBS has other issues as well and thought that perhaps I can 
use FixedBitSet, only grow it by copying its array. This is doable even without 
the ctor, since I can call getBits() and do it like that:

{code}
FixedBitSet newBits = new FixedBitSet(17); // new capacity
System.arraycopy(oldBits.getBits(), 0, newBits.getBits(), 0, 
oldBits.getBits().length);
{code}

I then noticed there is a ctor already in FixedBitSet which copies another FBS 
so I thought just to improve it. It seems more intuitive to do t than let users 
figure out they can grow a FixedBitSet like above?

> Modify FixedBitSet copy constructor to take numBits to allow grow/shrink the 
> new bitset
> ---------------------------------------------------------------------------------------
>
>                 Key: LUCENE-5277
>                 URL: https://issues.apache.org/jira/browse/LUCENE-5277
>             Project: Lucene - Core
>          Issue Type: Improvement
>          Components: core/index
>            Reporter: Shai Erera
>            Assignee: Shai Erera
>         Attachments: LUCENE-5277.patch
>
>
> FixedBitSet copy constructor is redundant the way it is now -- one can call 
> FBS.clone() to achieve that (and indeed, no code in Lucene calls this ctor). 
> I think it will be useful to add a numBits parameter to that method to allow 
> growing/shrinking the new bitset, while copying all relevant bits from the 
> passed one.



--
This message was sent by Atlassian JIRA
(v6.1#6144)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to