You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@sling.apache.org by Robert Munteanu <ro...@apache.org> on 2017/01/16 10:56:44 UTC

Moving to oak-segment-tar with Oak 1.6?

Hi,

I the Oak 1.6 release cycle a new file-based persistence was
introduced, spun off from oak-segment.

It's called oak-segment-tar, and to my knowledge it's supposed to be
'oak-segment, but done better'. oak-segment is also deprecated now.

I would suggest moving to oak-segment-tar with our current setup, which
 would mean:

- including oak-segment-tar.jar instead of oak-segment.jar
- configuring a different service in the Sling launchpad

The only downside is that the repository formats are not compatible, so
one would need to use oak-run to convert from oak-segment to oak-
segment-tar. I think that's not a huge deal for the Sling launchpad
though.

Thoughts?

Robert

Re: Moving to oak-segment-tar with Oak 1.6?

Posted by Michael Dürig <md...@apache.org>.

> IIUC it is the evolution of oak-segment, but was moved to a separate
> code-base to give the developers greater (perceived?) freedom to make
> breaking changes.

Correct. The main reason for the new module is to simplify migration 
where we need to run both versions from the same tool in parallel.

Michael


As Robert mentions the repository's persistence
> format has changed and requires a migration. However, these changes in
> the persistence format were necessary to implement efficient tar
> compaction.
>
> Regards
> Julian
>
>
> On Mon, Jan 16, 2017 at 11:56 AM, Robert Munteanu <ro...@apache.org> wrote:
>> Hi,
>>
>> I the Oak 1.6 release cycle a new file-based persistence was
>> introduced, spun off from oak-segment.
>>
>> It's called oak-segment-tar, and to my knowledge it's supposed to be
>> 'oak-segment, but done better'. oak-segment is also deprecated now.
>>
>> I would suggest moving to oak-segment-tar with our current setup, which
>>  would mean:
>>
>> - including oak-segment-tar.jar instead of oak-segment.jar
>> - configuring a different service in the Sling launchpad
>>
>> The only downside is that the repository formats are not compatible, so
>> one would need to use oak-run to convert from oak-segment to oak-
>> segment-tar. I think that's not a huge deal for the Sling launchpad
>> though.
>>
>> Thoughts?
>>
>> Robert

Re: Moving to oak-segment-tar with Oak 1.6?

Posted by Julian Sedding <js...@gmail.com>.
+1 on moving to oak-segment-tar.

IIUC it is the evolution of oak-segment, but was moved to a separate
code-base to give the developers greater (perceived?) freedom to make
breaking changes. As Robert mentions the repository's persistence
format has changed and requires a migration. However, these changes in
the persistence format were necessary to implement efficient tar
compaction.

Regards
Julian


On Mon, Jan 16, 2017 at 11:56 AM, Robert Munteanu <ro...@apache.org> wrote:
> Hi,
>
> I the Oak 1.6 release cycle a new file-based persistence was
> introduced, spun off from oak-segment.
>
> It's called oak-segment-tar, and to my knowledge it's supposed to be
> 'oak-segment, but done better'. oak-segment is also deprecated now.
>
> I would suggest moving to oak-segment-tar with our current setup, which
>  would mean:
>
> - including oak-segment-tar.jar instead of oak-segment.jar
> - configuring a different service in the Sling launchpad
>
> The only downside is that the repository formats are not compatible, so
> one would need to use oak-run to convert from oak-segment to oak-
> segment-tar. I think that's not a huge deal for the Sling launchpad
> though.
>
> Thoughts?
>
> Robert

Re: Moving to oak-segment-tar with Oak 1.6?

Posted by Michael Dürig <md...@apache.org>.
>
> What happens if a Sling instance using the new format is started on a
> repository in the old format?

Oak won't start but throw an 
org.apache.jackrabbit.oak.segment.file.InvalidFileStoreVersionException 
with a message pointing to some more details.

Michael

>
> A loud & fast failure would have my preference.
>
> -Bertrand
>

Re: Moving to oak-segment-tar with Oak 1.6?

Posted by Bertrand Delacretaz <bd...@apache.org>.
Hi,

On Mon, Jan 16, 2017 at 11:56 AM, Robert Munteanu <ro...@apache.org> wrote:
> ...I would suggest moving to oak-segment-tar with our current setup,...

+1 in general

> ...The only downside is that the repository formats are not compatible,...

What happens if a Sling instance using the new format is started on a
repository in the old format?

A loud & fast failure would have my preference.

-Bertrand

Re: Moving to oak-segment-tar with Oak 1.6?

Posted by Robert Munteanu <ro...@apache.org>.
On Mon, 2017-01-16 at 12:56 +0200, Robert Munteanu wrote:
> Hi,
> 
> I the Oak 1.6 release cycle a new file-based persistence was
> introduced, spun off from oak-segment.
> 
> It's called oak-segment-tar, and to my knowledge it's supposed to be
> 'oak-segment, but done better'. oak-segment is also deprecated now.
> 
> I would suggest moving to oak-segment-tar with our current setup,
> which
> �would mean:
> 
> - including oak-segment-tar.jar instead of oak-segment.jar
> - configuring a different service in the Sling launchpad
> 
> The only downside is that the repository formats are not compatible,
> so
> one would need to use oak-run to convert from oak-segment to oak-
> segment-tar. I think that's not a huge deal for the Sling launchpad
> though.
> 
> Thoughts?


Since we seem to be in agreement, I've filed

  https://issues.apache.org/jira/browse/SLING-6628

and started work on this.

Robert