You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ozone.apache.org by "Sammi Chen (Jira)" <ji...@apache.org> on 2024/04/24 05:03:00 UTC
[jira] [Resolved] (HDDS-10650) Deleting Volume/Bucket/Directory doesn't remove key from OpenKeyTable
[ https://issues.apache.org/jira/browse/HDDS-10650?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Sammi Chen resolved HDDS-10650.
-------------------------------
Fix Version/s: 1.5.0
Resolution: Fixed
> Deleting Volume/Bucket/Directory doesn't remove key from OpenKeyTable
> ---------------------------------------------------------------------
>
> Key: HDDS-10650
> URL: https://issues.apache.org/jira/browse/HDDS-10650
> Project: Apache Ozone
> Issue Type: Bug
> Components: OM
> Reporter: Pratyush Bhatt
> Assignee: Ashish Kumar
> Priority: Major
> Labels: pull-request-available
> Fix For: 1.5.0
>
>
> *Iteration 1: Volume Level Delete: Doesnt remove entry from OpenKeyTable*
> Create a file _/hsyncvol/hsyncbuck/hsync/File_1.txt_ write some data, do hsync, and keep it open.
> File is visible in OpenKeyTable
> {noformat}
> ozone admin om lof --service-id=ozone1712159573 | grep File_1.txt
> 112214179318792293 1712252492047 Yes /hsyncvol/hsyncbuck/-9223372036851775231/File_1.txt{noformat}
> Delete the volume containing the file
> {noformat}
> ozone sh volume delete -r -y hsyncvol
> 24/04/04 17:42:11 INFO protocolPB.OmTransportFactory: Loading OM transport implementation org.apache.hadoop.ozone.om.protocolPB.Hadoop3OmTransportFactory as specified by configuration.
> 24/04/04 17:42:11 INFO client.ClientTrustManager: Loading certificates for client.
> 24/04/04 17:42:12 INFO protocolPB.OmTransportFactory: Loading OM transport implementation org.apache.hadoop.ozone.om.protocolPB.Hadoop3OmTransportFactory as specified by configuration.
> 24/04/04 17:42:12 INFO client.ClientTrustManager: Loading certificates for client.
> Volume hsyncvol is deleted{noformat}
> Still the file is present in OpenKeyTable
> {code:java}
> ozone admin om lof --service-id=ozone1712159573 | grep File_1.txt
> 112214179318792293 1712252492047 Yes /hsyncvol/hsyncbuck/-9223372036851775231/File_1.txt {code}
> {*}Iteration 2: Bucket Level Delete{*}{*}: Doesnt remove entry from OpenKeyTable{*}{*}{*}
> Again open the same file _/hsyncvol/hsyncbuck/hsync/File_1.txt_ , write some data, do hsync.
> File is visible in OpenKeyTable with a new ClientID
> {code:java}
> ozone admin om lof --service-id=ozone1712159573 | grep File_1.txt
> 112214183435108455 1712252554857 Yes /hsyncvol/hsyncbuck/-9223372036851769599/File_1.txt
> 112214179318792293 1712252492047 Yes /hsyncvol/hsyncbuck/-9223372036851775231/File_1.txt {code}
> Delete the Bucket containing the file
> {code:java}
> ozone fs -rm -r -skipTrash ofs://ozone1712159573//hsyncvol/hsyncbuck/
> 24/04/04 17:43:26 INFO protocolPB.OmTransportFactory: Loading OM transport implementation org.apache.hadoop.ozone.om.protocolPB.Hadoop3OmTransportFactory as specified by configuration.
> 24/04/04 17:43:27 INFO client.ClientTrustManager: Loading certificates for client.
> Deleted ofs://ozone1712159573/hsyncvol/hsyncbuck/ {code}
> Still the same OpenKeyTable
> {code:java}
> ozone admin om lof --service-id=ozone1712159573 | grep File_1.txt
> 112214183435108455 1712252554857 Yes /hsyncvol/hsyncbuck/-9223372036851769599/File_1.txt
> 112214179318792293 1712252492047 Yes /hsyncvol/hsyncbuck/-9223372036851775231/File_1.txt {code}
> {*}Iteration 3: Directory Level Delete{*}{*}: Doesnt remove entry from OpenKeyTable{*}{*}{*}
> Again open the same file _/hsyncvol/hsyncbuck/hsync/File_1.txt_ , write some data, do hsync.
> File is visible in OpenKeyTable with a new ClientID
> {code:java}
> ozone admin om lof --service-id=ozone1712159573 | grep File_1.txt
> 112214188917260394 1712252638507 Yes /hsyncvol/hsyncbuck/-9223372036851761407/File_1.txt
> 112214183435108455 1712252554857 Yes /hsyncvol/hsyncbuck/-9223372036851769599/File_1.txt
> 112214179318792293 1712252492047 Yes /hsyncvol/hsyncbuck/-9223372036851775231/File_1.txt {code}
> Delete the directory containing the file
> Still the same OpenKeyTable
> {code:java}
> ozone admin om lof --service-id=ozone1712159573 | grep File_1.txt
> 112214188917260394 1712252638507 Yes /hsyncvol/hsyncbuck/-9223372036851761407/File_1.txt
> 112214183435108455 1712252554857 Yes /hsyncvol/hsyncbuck/-9223372036851769599/File_1.txt
> 112214179318792293 1712252492047 Yes /hsyncvol/hsyncbuck/-9223372036851775231/File_1.txt {code}
> *Iteration 4: File Level Delete: Removes entry from OpenKeyTable*
> Again open the same file _/hsyncvol/hsyncbuck/hsync/File_1.txt_ , write some data, do hsync.
> File is visible in OpenKeyTable with a new ClientID
> {code:java}
> ozone admin om lof --service-id=ozone1712159573 | grep File_1.txt
> 112214201150865518 1712252825177 Yes /hsyncvol/hsyncbuck/-9223372036851751679/File_1.txt
> 112214188917260394 1712252638507 Yes /hsyncvol/hsyncbuck/-9223372036851761407/File_1.txt
> 112214183435108455 1712252554857 Yes /hsyncvol/hsyncbuck/-9223372036851769599/File_1.txt
> 112214179318792293 1712252492047 Yes /hsyncvol/hsyncbuck/-9223372036851775231/File_1.txt {code}
> Delete the file itself
> {code:java}
> ozone fs -rm -r -skipTrash ofs://ozone1712159573//hsyncvol/hsyncbuck/hsync/File_1.txt
> 24/04/04 17:47:45 INFO protocolPB.OmTransportFactory: Loading OM transport implementation org.apache.hadoop.ozone.om.protocolPB.Hadoop3OmTransportFactory as specified by configuration.
> 24/04/04 17:47:46 INFO client.ClientTrustManager: Loading certificates for client.
> Deleted ofs://ozone1712159573/hsyncvol/hsyncbuck/hsync/File_1.txt {code}
> This time the entry is removed from the OpenKeyTable
> {code:java}
> ozone admin om lof --service-id=ozone1712159573 | grep File_1.txt
> 112214188917260394 1712252638507 Yes /hsyncvol/hsyncbuck/-9223372036851761407/File_1.txt
> 112214183435108455 1712252554857 Yes /hsyncvol/hsyncbuck/-9223372036851769599/File_1.txt
> 112214179318792293 1712252492047 Yes /hsyncvol/hsyncbuck/-9223372036851775231/File_1.txt {code}
> *Summary:* Only deleting the file directly is removing the entry from the OpenKeyTable, rest are keeping it intact.
> *Expected Behavior:* Shouldn't it remove the entry in all the cases from the OpenKeyTable?
>
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@ozone.apache.org
For additional commands, e-mail: issues-help@ozone.apache.org