You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I think not. The tracked replica should be the one that gets tiered out, not the replica on the highest tier. Even though no data migration would occur, the access_time continues to drive the policy and so it would get scheduled to tier out from ufs1 once the specified time had passed.
The only consequence of this case that I can think of right now is that the data arrives in the terminal tier sooner than expected. However, as we contemplate leaning into the "tracked" replica for tiering / restaging decision making, I think other effects could occur.
The text was updated successfully, but these errors were encountered:
alanking
changed the title
Tier-out does not use tracked replica if preserved replicas exist
Tier-out does not use tracked replica if preserved replicas exist in a higher tier
Feb 3, 2025
Interestingly, if you set preserve_replicas to false on the tier where the tracked replica sits and run the tiering rule, the replica is trimmed and the tracked replica is updated as expected:
$ ils -l foo
rods 1 ufs1 5 2025-02-03.20:13 & foo
rods 2 ufs2 5 2025-02-03.20:18 & foo
$ imeta ls -d foo
AVUs defined for dataObj /tempZone/home/rods/foo:
attribute: irods::access_time
value: 1738615953
units:
----
attribute: irods::storage_tiering::group
value: example_group
units: 1
Notice that the access_time did NOT update.
So, if no migration or trimming occurs, the tier-out rule will not do anything. If no data migration occurs, the access_time will not be updated. I'm not really sure which parts of this are expected or not - just writing down observations for now. :)
Discovered while investigating #272... Tip of 4-3-stable at time of writing (ce49e16)
I have a 3-resource tier group:
I tiered out an object all the way to the terminal tier:
I accessed the replica on
ufs2
to trigger a restage. No problems there:Then I ran the tiering rule again. A new replica appeared on
ufs2
and this became the tracked replica:The decision was built into the scheduled migration:
So... is this the expected behavior?
I think not. The tracked replica should be the one that gets tiered out, not the replica on the highest tier. Even though no data migration would occur, the access_time continues to drive the policy and so it would get scheduled to tier out from
ufs1
once the specified time had passed.The only consequence of this case that I can think of right now is that the data arrives in the terminal tier sooner than expected. However, as we contemplate leaning into the "tracked" replica for tiering / restaging decision making, I think other effects could occur.
The text was updated successfully, but these errors were encountered: