You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues-all@impala.apache.org by "ASF subversion and git services (Jira)" <ji...@apache.org> on 2023/03/10 16:36:00 UTC

[jira] [Commented] (IMPALA-11482) Implement Iceberg table rollback feature

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

ASF subversion and git services commented on IMPALA-11482:
----------------------------------------------------------

Commit 29586d6631d97acf13f208564db7c8c072154019 in impala's branch refs/heads/master from Andrew Sherman
[ https://gitbox.apache.org/repos/asf?p=impala.git;h=29586d663 ]

IMPALA-11482: Alter Table Execute Rollback for Iceberg tables.

Iceberg table modifications cause new table snapshots to be created;
these snapshots represent an earlier version of the table. The Iceberg
API provides a way to rollback the table to a previous snapshot.

This change adds the ability to execute a rollback on Iceberg tables
using the following statements:

- ALTER TABLE <tbl> EXECUTE ROLLBACK(<snapshot id>)
- ALTER TABLE <tbl> EXECUTE ROLLBACK('<timestamp>')

The latter form of the command rolls back to the most recent snapshot
that has a creation timestamp that is older than the specified
timestamp.

Note that when a table is rolled back to a snapshot, a new snapshot is
created with the same snapshot id, but with a new creation timestamp.

Testing:
 - Added analysis unit tests.
 - Added e2e tests.
 - Converted test_time_travel to use get_snapshots() from iceberg_util.
 - Add a utility class to allow pytests to create tables with various
   iceberg catalogs.

Change-Id: Ic74913d3b81103949ffb5eef7cc936303494f8b9
Reviewed-on: http://gerrit.cloudera.org:8080/19002
Reviewed-by: Impala Public Jenkins <im...@cloudera.com>
Tested-by: Impala Public Jenkins <im...@cloudera.com>


> Implement Iceberg table rollback feature
> ----------------------------------------
>
>                 Key: IMPALA-11482
>                 URL: https://issues.apache.org/jira/browse/IMPALA-11482
>             Project: IMPALA
>          Issue Type: New Feature
>          Components: Frontend
>            Reporter: Zoltán Borók-Nagy
>            Assignee: Andrew Sherman
>            Priority: Major
>              Labels: impala-iceberg
>
> We should allow rolling back iceberg table's data to the state at an older table snapshot. 
> Rollback to the last snapshot before a specific timestamp
> {code}
> ALTER TABLE ice_t EXECUTE ROLLBACK('2022-05-12 00:00:00')
> {code}
> Rollback to a specific snapshot ID
> {code}
>  ALTER TABLE ice_t EXECUTE ROLLBACK(1111); 
> {code}
> However, to revert a rollback we might need to be able to change the table's metadata_location property (like HIVE-26203).



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

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-all-unsubscribe@impala.apache.org
For additional commands, e-mail: issues-all-help@impala.apache.org