[ 
https://issues.apache.org/jira/browse/HDDS-9207?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

George Jahad updated HDDS-9207:
-------------------------------
    Description: 
The Snapshot bootstrap tarball creation code was incorrectly assuming that two 
sst files with the same name, (but different directories,) were hard linked to 
each other.

This assumption will not be true in cases, like the following, where  the files 
are initially created in different rocksdb directories.  For example:

1. Suppose the active fs and snap1 consist of sst files: s1.sst-s10.sst.  

2. Then some delete records get added to snap1.  Those get put into s11.sst.  

3. Meanwhile more keyTable entries are added to the active fs; they could get 
put into a different file named also s11.sst.

To remedy this, the tarball creator must check the INodes of each file to 
confirm they are equal before linking them together.

  was:
The Snapshot bootstrap tarball creation code was incorrectly assuming that two 
sst files with the same name, (but different directories,) were hard linked to 
each other.

This assumption will not be true in cases, like the following, where  the files 
are initially created in different rocksdb directories.  For example:


Suppose the active fs and snap1 consist of sst files: s1.sst-s10.sst.  Then 
some delete records get added to snap1.  Those get put into s11.sst.  Meanwhile 
more keyTable entries are added to the active fs; they could get put into a 
different file named also s11.sst.

To remedy this, the tarball creator must check the INodes of each file to 
confirm they are equal before linking them together.


> Snapshot Bootstrap creates incorrect hard links.
> ------------------------------------------------
>
>                 Key: HDDS-9207
>                 URL: https://issues.apache.org/jira/browse/HDDS-9207
>             Project: Apache Ozone
>          Issue Type: Bug
>          Components: Snapshot
>            Reporter: George Jahad
>            Assignee: George Jahad
>            Priority: Critical
>
> The Snapshot bootstrap tarball creation code was incorrectly assuming that 
> two sst files with the same name, (but different directories,) were hard 
> linked to each other.
> This assumption will not be true in cases, like the following, where  the 
> files are initially created in different rocksdb directories.  For example:
> 1. Suppose the active fs and snap1 consist of sst files: s1.sst-s10.sst.  
> 2. Then some delete records get added to snap1.  Those get put into s11.sst.  
> 3. Meanwhile more keyTable entries are added to the active fs; they could get 
> put into a different file named also s11.sst.
> To remedy this, the tarball creator must check the INodes of each file to 
> confirm they are equal before linking them together.



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

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to