You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@jackrabbit.apache.org by Tomek Rekawek <re...@adobe.com> on 2017/08/28 10:41:24 UTC

reading the checkpoint metadata in the SegmentMK

Hello,

the migration code requires access to the checkpoint metadata: the creation and expiry timestamps. They can be read by accessing the checkpoints root node (using the method mentioned in the subject). However, the method is package-scoped. Can we make it public, so the other modules can use it as well?

Alternatively, we may introduce some general way to read that data for all NodeStore implementations. Maybe some extra properties in the checkpoint properties?

Regards,
Tomek


-- 
Tomek Rękawek | Adobe Research | www.adobe.com
rekawek@adobe.com


Re: reading the checkpoint metadata in the SegmentMK

Posted by Chetan Mehrotra <ch...@gmail.com>.
OAK-6227 was meant to address similar requirement. May be we add this
to CheckpointMBean
Chetan Mehrotra


On Mon, Aug 28, 2017 at 9:40 PM, Michael Dürig <md...@apache.org> wrote:
>
> Hi,
>
> I would prefer to not make the
> org.apache.jackrabbit.oak.segment.SegmentNodeStore#getCheckpoints method
> public as this would bind us to a contract how to store the meta data. Maybe
> we could add some API that is agnostic to the storage format?
>
> Michael
>
>
> On 28.08.17 12:41, Tomek Rekawek wrote:
>>
>> Hello,
>>
>> the migration code requires access to the checkpoint metadata: the
>> creation and expiry timestamps. They can be read by accessing the
>> checkpoints root node (using the method mentioned in the subject). However,
>> the method is package-scoped. Can we make it public, so the other modules
>> can use it as well?
>>
>> Alternatively, we may introduce some general way to read that data for all
>> NodeStore implementations. Maybe some extra properties in the checkpoint
>> properties?
>>
>> Regards,
>> Tomek
>>
>>
>

Re: reading the checkpoint metadata in the SegmentMK

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

I would prefer to not make the 
org.apache.jackrabbit.oak.segment.SegmentNodeStore#getCheckpoints method 
public as this would bind us to a contract how to store the meta data. 
Maybe we could add some API that is agnostic to the storage format?

Michael

On 28.08.17 12:41, Tomek Rekawek wrote:
> Hello,
> 
> the migration code requires access to the checkpoint metadata: the creation and expiry timestamps. They can be read by accessing the checkpoints root node (using the method mentioned in the subject). However, the method is package-scoped. Can we make it public, so the other modules can use it as well?
> 
> Alternatively, we may introduce some general way to read that data for all NodeStore implementations. Maybe some extra properties in the checkpoint properties?
> 
> Regards,
> Tomek
> 
> 

Fwd: reading the checkpoint metadata in the SegmentMK

Posted by Michael Dürig <md...@apache.org>.
Forwarding from jackrabbit-dev. As the Oak list is probably the right 
place to discuss this.

-------- Forwarded Message --------
Subject: reading the checkpoint metadata in the SegmentMK
Date: Mon, 28 Aug 2017 10:41:24 +0000
From: Tomek Rekawek <re...@adobe.com>
Reply-To: dev@jackrabbit.apache.org, Tomek Rekawek <re...@adobe.com>
To: dev@jackrabbit.apache.org <de...@jackrabbit.apache.org>

Hello,

the migration code requires access to the checkpoint metadata: the 
creation and expiry timestamps. They can be read by accessing the 
checkpoints root node (using the method mentioned in the subject). 
However, the method is package-scoped. Can we make it public, so the 
other modules can use it as well?

Alternatively, we may introduce some general way to read that data for 
all NodeStore implementations. Maybe some extra properties in the 
checkpoint properties?

Regards,
Tomek


-- 
Tomek Rękawek | Adobe Research | www.adobe.com
rekawek@adobe.com


Re: reading the checkpoint metadata in the SegmentMK

Posted by Michael Dürig <md...@apache.org>.
This thread doesn't seem to want to stay on oak-dev@ ;-). I guess this 
was my fault. Including the part of the conversation that dropped off 
the list below.



On 29.08.17 11:18, Tomek Rekawek wrote:
> Hi Michael,
> 
> these methods doesn’t provide the information about the creation and expiration times. I need those to clone the checkpoints in the side grade.

Right, got it. So the discussion to have is whether we should reflect 
that information through the checkpoint properties. But let's separate 
this from this issue assuming you are fine with the CheckpointAccessor 
approach for now.

I'll follow up with an issue/discussion regarding the checkpoint 
properties.

Michael



> 
> Regards,
> Tomek
> 
> -- Tomek Rękawek | Adobe Research | www.adobe.com rekawek@adobe.com
>> On 29 Aug 2017, at 08:56, Michael Dürig<md...@apache.org>  wrote:
>>
>>
>> Hi,
>>
>> Looking at org.apache.jackrabbit.oak.upgrade.checkpoint.CheckpointRetriever I wonder whether this cannot be implemented on top of already existing APIs: org.apache.jackrabbit.oak.spi.state.NodeStore#checkpoints and org.apache.jackrabbit.oak.spi.state.NodeStore#checkpointInfo?
>>
>> Michael
>>
>> On 28.08.17 12:41, Tomek Rekawek wrote:
>>> Hello,
>>> the migration code requires access to the checkpoint metadata: the creation and expiry timestamps. They can be read by accessing the checkpoints root node (using the method mentioned in the subject). However, the method is package-scoped. Can we make it public, so the other modules can use it as well?
>>> Alternatively, we may introduce some general way to read that data for all NodeStore implementations. Maybe some extra properties in the checkpoint properties?
>>> Regards,
>>> Tomek
>