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

Istvan Toth commented on PHOENIX-6627:
--------------------------------------

I admit that I didn't dig into the new Transform feature, but the 
standard/transactional switching you describe sounds similar to the existing 
use cases for Transform.

While not necessary for this ticket, this could be very useful for Omid in the 
future.

As for the text, this specific wording can be interpreted as using HBase 
ExportSnapshot / ImportSnapshot, which would not solve the problem. We should 
make sure that the instructions cannot be interpreted like that.

What I'd try is a rather convoluted process:
 * Create new non-transactional  Phoenix tmp table with the  same "create 
table" statement, sans the transactional setting
 * Run upsert into temp_table select * from transactional_table
 * drop transactional phoenix table
 * rename temp_table to transactional_table at HBase level (i.e. createSnapshot 
+ cloneSnapshot)
 * re-create the transactional_table Phoenix table on top the renamed Phoenix 
table without the transactional setting.



However, we've had some reports where  upsert..select didn't work with a large 
amount of rows, even when using the distributed code path, and timeouts/etc can 
also be a problem, so this may not be viable.
The problem is that we do not have a Phoenix level logical tooling for doing a 
logical Dump/Restore that would isolate us from the data representation, like 
for example the _mysqldump_ tool.

> Remove all references to Tephra from 4.x and master
> ---------------------------------------------------
>
>                 Key: PHOENIX-6627
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-6627
>             Project: Phoenix
>          Issue Type: Sub-task
>          Components: 4.x, tephra
>            Reporter: Istvan Toth
>            Assignee: Andrew Kyle Purtell
>            Priority: Major
>             Fix For: 5.2.0
>
>
> Removing tephra from the runtime is easy, as it uses the well defind 
> TransactionProvider interfaces.
> Removing Tephra references from all the test cases is a much bigger task.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to