You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Ankit Singhal (JIRA)" <ji...@apache.org> on 2018/02/02 12:43:00 UTC

[jira] [Commented] (HBASE-19826) Provide a option to see rows behind a delete in a time range queries

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

Ankit Singhal commented on HBASE-19826:
---------------------------------------

bq. HBase-2.0 is a big release that breaks things, so I think it may also be a good chance for Phoenix to drop some legacy support when upgrading to HBase-2.0?
Yes, we will be planning to remove some legacy stuff with Phoenix 5.0.

bq. You can try using attribute to carry some Phoenix only logic..
[~Apache9], In HBase 2.0, we are not getting scan object in preStoreScannerOpen() , is it possible to add scan(at least in Immutable form) in preStoreScannerOpen() hook so that we can decide based on the attributes (like time range scan, raw etc) and set ScanOptions accordingly.

> Provide a option to see rows behind a delete in a time range queries
> --------------------------------------------------------------------
>
>                 Key: HBASE-19826
>                 URL: https://issues.apache.org/jira/browse/HBASE-19826
>             Project: HBase
>          Issue Type: Improvement
>            Reporter: Ankit Singhal
>            Assignee: Ankit Singhal
>            Priority: Major
>             Fix For: 2.0.0
>
>
> We can provide an option (something like seePastDeleteMarkers) in a scan to let the user see the versions behind the delete marker even if keepDeletedCells is set to false in the descriptor.
> With the previous version, we workaround the same in preStoreScannerOpen hook. For reference PHOENIX-4277
> {code}
> 	    @Override
> 	    public KeyValueScanner preStoreScannerOpen(final ObserverContext<RegionCoprocessorEnvironment> c,
> 	        final Store store, final Scan scan, final NavigableSet<byte[]> targetCols,
> 	        final KeyValueScanner s) throws IOException {
> 	
> 	      if (scan.isRaw() || ScanInfoUtil.isKeepDeletedCells(store.getScanInfo()) || scan.getTimeRange().getMax() == HConstants.LATEST_TIMESTAMP || TransactionUtil.isTransactionalTimestamp(scan.getTimeRange().getMax())) {
> 	        return s;
> 	      }
> 	
> 	      ScanInfo scanInfo = ScanInfoUtil.cloneScanInfoWithKeepDeletedCells(store.getScanInfo());
> 	      return new StoreScanner(store, scanInfo, scan, targetCols,
> 	          c.getEnvironment().getRegion().getReadpoint(scan.getIsolationLevel()));
> 	    }
> {code}
> Another way is to provide a way to set KEEP_DELETED_CELLS to true in ScanOptions of preStoreScannerOpen.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)