You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@kudu.apache.org by "ASF subversion and git services (Jira)" <ji...@apache.org> on 2022/11/10 18:05:00 UTC

[jira] [Commented] (KUDU-3326) Add Soft Delete Table Supports

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

ASF subversion and git services commented on KUDU-3326:
-------------------------------------------------------

Commit 528f0fad74d932cb259237d273261a7f585b6595 in kudu's branch refs/heads/master from kedeng
[ https://gitbox.apache.org/repos/asf?p=kudu.git;h=528f0fad7 ]

KUDU-3326 [master] add improvement on interpreting the 'reserve_seconds' field for DeleteRPC

If the field 'reserve_seconds' is specified by the client, then it's clear the delete request
coming from a newer Kudu client with the precise value for 'reserve_seconds', and the
field's value from the request should be taken as-is regardless of the current setting of the
--deleted_table_reserve_seconds flag at the server side.

Change-Id: I604caf5d7326e27acd6d626b482376fc6eed1b0f
Reviewed-on: http://gerrit.cloudera.org:8080/19047
Tested-by: Kudu Jenkins
Reviewed-by: Yingchun Lai <ac...@gmail.com>


> Add Soft Delete Table Supports
> ------------------------------
>
>                 Key: KUDU-3326
>                 URL: https://issues.apache.org/jira/browse/KUDU-3326
>             Project: Kudu
>          Issue Type: New Feature
>          Components: api, CLI, client, master, test
>            Reporter: dengke
>            Assignee: dengke
>            Priority: Major
>
> h2. Brief description:
>         Soft delete means that the kudu system will not delete the table immediately after receiving the command to delete the table. Instead, it will mark the table and set a validity period. After the validity period, will try again to determine whether the table really needs to be deleted.
>          This feature can restore data conveniently and timely in the case of accidental deletion.
> h2. Relevant modification points:
> 1. After deleting a table, the original table name will be renamed as KUDU_TRASHED: < timestamp >: < original table name >, which becomes a trash table.
>  2. The contents of the trash table are exactly the same as those of the original table.   Although it cannot be renamed, added or deleted directly, it can be read and written normally. The trash table will be retained for a period of time by default (such as 7 days, which can be modified through parameters). The compact priority of the trash table will be set to the lowest to save the system resources.
>  3. The master needs to add a thread to process expired trash tables and perform real deletion.
>  4. It is allowed to create a table with the same name as the original table, and the newly created table with the same name can be deleted normally.
>  5. It is allowed to recall deleted tables, but the following two situations cannot be recalled: the same original table name exists and the trash table has expired.
> 6. The KUDU_TRASHED is a reserved string for the system. Users are not allowed to create a table with table names starting with KUDU_TRASHED.
>  7. Kudu tool adaptation soft deletion.
>  8. Java API adaptation soft deletion.



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