Ah, so that just means that index subblocks may potentially have become dirty 
due to the bulkInsert. However, it doesn’t mean that functions like 
getAttributeValue() are potentially broken too, right? In other words, the 
TupleStorageSubBlock itself is still guaranteed to be in a consistent state, 
only that it may be inconsistent with any index subblocks? 

Thanks Shixuan! 


> On Jul 16, 2016, at 21:27, Shixuan Fan <[email protected]> wrote:
> 
> Hi Navneet,
> 
> 
> My understanding is that after calling bulkInsertTuples, 
> bulkInsertTuplesWithRemappedAttributes or insertTupleInBatch, the consistency 
> of the block is broken and the index will not work until rebuild() is called. 
> Thus any operation based on index or tuple order will not be safe.
> 
> 
> Hope that others could give a more detailed explanation. :)
> 
> 
> Shixuan
> 
> ________________________________
> From: Navneet Potti <[email protected]>
> Sent: Saturday, July 16, 2016 8:47:41 PM
> To: [email protected]
> Subject: Warning in TupleStorageSubBlock.hpp
> 
> Hi Quicksteppers
> I just came across this warning in the documentation for 
> TupleStorageSubBlock::bulkInsertTuples and 
> bulkInsertTuplesWithRemappedAttributes functions. Can someone explain what it 
> means?
> Cheers,
> Nav
> 
> https://github.com/apache/incubator-quickstep/blob/expt_bloom_filter_hash_fn/storage/TupleStorageSubBlock.hpp#L253
>  
> <https://github.com/apache/incubator-quickstep/blob/expt_bloom_filter_hash_fn/storage/TupleStorageSubBlock.hpp#L253>
> 
>   * @warning The inserted tuples may be placed in an "incorrect" or
>   *          sub-optimal locations in this TupleStorageSubBlock. The only
>   *          methods which are safe to call between bulkInsertTuples() and
>   *          rebuild() are insertTupleInBatch(), bulkInsertTuples(), and
>   *          bulkInsertTuplesWithRemappedAttributes().
> 
> 

Reply via email to