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

GK Ephorus commented on HBASE-12435:
------------------------------------

Can you point me to the cloning of the Scan object? How would this work in case 
of the batch?

Or better still: add a real exists-call to the protocol. This gives you a 
'clone' automatically.

The quick-and-dirty fix would be to add the try-finally to both exists-calls 
and restore the old value(s) of checkExistenceOnly. I'd be happy to provide a 
patch for that.

> The exists method on the HTable-class changes the passed-in Get-instance
> ------------------------------------------------------------------------
>
>                 Key: HBASE-12435
>                 URL: https://issues.apache.org/jira/browse/HBASE-12435
>             Project: HBase
>          Issue Type: Bug
>          Components: Client
>    Affects Versions: 0.98.6.1
>         Environment: Cloudera Hadoop HBase 5.2.0: 0.98.6.?
>            Reporter: GK Ephorus
>            Priority: Minor
>              Labels: easyfix
>
> Running an HTable.get right after using HTable.exists using the same instance 
> of a Get-object yields no results.
> Up on inspection of the code we found that the HTable.exists changes the 
> passed-in Get-object. It changes the property 'checkExistenceOnly' to true 
> which makes the passed-in Get-object useless for subsequent HTable.get calls.
> My suggestion is either:
> * indicate this behaviour in the documentation/javadoc
> * store the old value of the 'checkExistenceOnly' and restore it using 
> try-finally.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to