You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@phoenix.apache.org by "Ohad Shacham (JIRA)" <ji...@apache.org> on 2017/10/02 13:55:00 UTC

[jira] [Commented] (PHOENIX-4232) Hide shadow cell and commit table access in TAL

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

Ohad Shacham commented on PHOENIX-4232:
---------------------------------------

Thanks [~giacomotaylor].
I will implement a RegionScanner then. I will need to modify Omid to be aware it is running under Phoenix in order to disable the client side filtering and set the required parameters at the client side in Omid. 
I assume that Omid’s getScanner function should just return the regular scanner in this case, as Tephra? I also assume that in this case the internal scanners, including the new one, will be executed in this case.

Could you please explain the snapshot read scenario, your solution, and why Tephra works correctly in this case?

Regarding reread the shadow cells, assuming I would like to run Omid standalone with server side filtering. I can get the region from RegionCoprocessorEnvironment and run a get at the server side. I assume that will work, not sure how efficient will it be. What do you think?

Thx!


> Hide shadow cell and commit table access in TAL
> -----------------------------------------------
>
>                 Key: PHOENIX-4232
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-4232
>             Project: Phoenix
>          Issue Type: Bug
>            Reporter: James Taylor
>              Labels: omid
>
> Omid needs to project the shadow cell column qualifier and then based on the value, filter the row. If the shadow cell is not found, it needs to perform a lookup in the commit table (the source of truth) to get the information instead. For the Phoenix integration, there are likely two TAL methods that can be added to handle this:
> # Add method call to new TAL method in preScannerOpen call on coprocessor that projects the shadow cell qualifiers and sets the time range. This is equivalent to the TransactionProcessor.preScannerOpen that Tephra does. It's possible this work could be done on the client side as well, but it's more likely that the stuff that Phoenix does may override this (but we could get it to work if need be).
> # Add TAL method that returns a RegionScanner to abstract out the filtering of the row (potentially querying commit table). This RegionScanner would be added as the first in the chain in the NonAggregateRegionScannerFactory.getRegionScanner() API.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)