You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-issues@jackrabbit.apache.org by "Marcel Reutegger (Jira)" <ji...@apache.org> on 2024/10/17 07:13:00 UTC
[jira] [Assigned] (OAK-11204) Incorrect order with more than 2^16 segments in remote tar file
[ https://issues.apache.org/jira/browse/OAK-11204?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Marcel Reutegger reassigned OAK-11204:
--------------------------------------
Assignee: Marcel Reutegger
> Incorrect order with more than 2^16 segments in remote tar file
> ---------------------------------------------------------------
>
> Key: OAK-11204
> URL: https://issues.apache.org/jira/browse/OAK-11204
> Project: Jackrabbit Oak
> Issue Type: Bug
> Reporter: Lucas Weitzendorf
> Assignee: Marcel Reutegger
> Priority: Minor
>
> Segments in a tar are in incorrect order when there are more than 65'536 segments. RemoteUtilities.getSegmentFileName() assumes four hex digits are sufficient.
> [https://github.com/apache/jackrabbit-oak/blob/8e72b238f4933a5bc6c0002ff3e15f9bbad6b3a0/oak-segment-remote/src/main/java/org/apache/jackrabbit/oak/segment/remote/RemoteUtilities.java#L43]
> But after 64k segments the method simply adds another hex digit. We then see file names generated like this:
> ...
> fffe.<some-uuid>
> ffff.<some-uuid>
> 10000.<some-uuid>
> 10001.<some-uuid>
> ...
> Later when listing segments, they will appear in the following sequence:
> ...
> 0fffe.<some-uuid>
> 0ffff.<some-uuid>
> 1000.<some-uuid>
> 10001.<some-uuid>
> 10002.<some-uuid>
> ...
> Retrieving the UUID from such a file name will also stop working.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)