Can you provide us the code u have written for the pre hooks + the
custom filter code.  You sure the filter is not filtering out this
recent cell?  Add some logs there and check?

-Anoop-

On Thu, Mar 31, 2016 at 12:57 PM, Jozef Vilcek <[email protected]> wrote:
> Test was done via hbase shell prompt. I am not sure on it's behavior. Can
> it hide some timeouts and return nothing? I hope not.
> I will try to reproduce it with java API.
>
> Coprocessor does not do anything asynchronous in it's hooks. It is hooked
> only on preStoreScannerOpen, preFlushScannerOpen, preCompactScannerOpen.
> What it does is, create a StoreScanner with custom filter, which skips
> certain cells based on fixed rules line qualifier name pattern or how old
> cell is.
>
>
>> Do you wait for the Put to return before you issue the Get?  Or have you
>> disabled auto flushing on your table instance -- HTable.setAutoFlush(false)?
>
>> Coprocessor hooks executed on the Put and Get paths are blocking, so unless
>> you're overriding normal processing in the prePut() hook and doing
>> something asynchronous, the Put should be there by the time it returns to
>> the client.  But it all depends on what is your coprocessor actually
>> doing.  Can you tell us more about that?
>
>> On Tue, Mar 29, 2016 at 6:22 AM Ted Yu <[email protected]> wrote:
>
>> > Is it possible to come up with unit test showing this behavior using> > 
>> > simplified coprocessor ?> >> > Thanks> >> > > On Mar 29, 2016, at 5:42 AM, 
>> > Jozef Vilcek <[email protected]> wrote:> > >> > > Hi,> > >> > > I need 
>> > a help to shed some light on following observation:> > >> > > Through 
>> > hbase shell I do PUT to a non existing cell (create) and> > immediate> > > 
>> > GET.> > > When doing this against hbase table without a coprocessor, every 
>> > GET> > shows> > > the value immediately. When I enable a coprocessor on 
>> > the table and> > > perform> > > the same check, I do not get a value for 
>> > every GET. Sometimes GET returns> > > nothing, like cell is not there. If 
>> > I delay GET few minutes after PUT,> > then> > > data are correctly 
>> > retrieved.> > >> > > I want to understand what is going on.> > > Is 
>> > coprocessor is doing something wrong? Is this somehow normal? or ... ?> > 
>> > >> > > Coprocessor is a RegionObserver doing data filtering / expiration 
>> > based> > on> > > predefined rules.> > > HBase version is 1.0.0 from 
>> > cloudera cdh5.5.1 distibution.> > >> > > Thanks,> > > Jozo
>>

Reply via email to