You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-commits@jackrabbit.apache.org by ad...@apache.org on 2020/12/02 14:07:45 UTC
svn commit: r1884035 - in /jackrabbit/oak/trunk:
oak-segment-aws/src/main/java/org/apache/jackrabbit/oak/segment/aws/tool/AwsSegmentStoreMigrator.java
oak-segment-azure/src/main/java/org/apache/jackrabbit/oak/segment/azure/tool/SegmentStoreMigrator.java
Author: adulceanu
Date: Wed Dec 2 14:07:44 2020
New Revision: 1884035
URL: http://svn.apache.org/viewvc?rev=1884035&view=rev
Log:
OAK-9293 - SegmentStoreMigrator appendMode should recopy the last archive
Contribution by Ieran Draghiciu
Modified:
jackrabbit/oak/trunk/oak-segment-aws/src/main/java/org/apache/jackrabbit/oak/segment/aws/tool/AwsSegmentStoreMigrator.java
jackrabbit/oak/trunk/oak-segment-azure/src/main/java/org/apache/jackrabbit/oak/segment/azure/tool/SegmentStoreMigrator.java
Modified: jackrabbit/oak/trunk/oak-segment-aws/src/main/java/org/apache/jackrabbit/oak/segment/aws/tool/AwsSegmentStoreMigrator.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-segment-aws/src/main/java/org/apache/jackrabbit/oak/segment/aws/tool/AwsSegmentStoreMigrator.java?rev=1884035&r1=1884034&r2=1884035&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-segment-aws/src/main/java/org/apache/jackrabbit/oak/segment/aws/tool/AwsSegmentStoreMigrator.java (original)
+++ jackrabbit/oak/trunk/oak-segment-aws/src/main/java/org/apache/jackrabbit/oak/segment/aws/tool/AwsSegmentStoreMigrator.java Wed Dec 2 14:07:44 2020
@@ -153,6 +153,13 @@ public class AwsSegmentStoreMigrator imp
SegmentArchiveManager targetManager = target.createArchiveManager(false, false, new IOMonitorAdapter(),
new FileStoreMonitorAdapter(), new RemoteStoreMonitorAdapter());
List<String> targetArchives = targetManager.listArchives();
+
+ if (appendMode && !targetArchives.isEmpty()) {
+ //last archive can be updated since last copy and needs to be recopied
+ String lastArchive = targetArchives.get(targetArchives.size() - 1);
+ targetArchives.remove(lastArchive);
+ }
+
for (String archiveName : sourceManager.listArchives()) {
log.info("{}/{} -> {}", sourceName, archiveName, targetName);
if (appendMode && targetArchives.contains(archiveName)) {
Modified: jackrabbit/oak/trunk/oak-segment-azure/src/main/java/org/apache/jackrabbit/oak/segment/azure/tool/SegmentStoreMigrator.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-segment-azure/src/main/java/org/apache/jackrabbit/oak/segment/azure/tool/SegmentStoreMigrator.java?rev=1884035&r1=1884034&r2=1884035&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-segment-azure/src/main/java/org/apache/jackrabbit/oak/segment/azure/tool/SegmentStoreMigrator.java (original)
+++ jackrabbit/oak/trunk/oak-segment-azure/src/main/java/org/apache/jackrabbit/oak/segment/azure/tool/SegmentStoreMigrator.java Wed Dec 2 14:07:44 2020
@@ -155,6 +155,13 @@ public class SegmentStoreMigrator implem
SegmentArchiveManager targetManager = target.createArchiveManager(false, false, new IOMonitorAdapter(),
new FileStoreMonitorAdapter(), new RemoteStoreMonitorAdapter());
List<String> targetArchives = targetManager.listArchives();
+
+ if (appendMode && !targetArchives.isEmpty()) {
+ //last archive can be updated since last copy and needs to be recopied
+ String lastArchive = targetArchives.get(targetArchives.size() - 1);
+ targetArchives.remove(lastArchive);
+ }
+
for (String archiveName : sourceManager.listArchives()) {
log.info("{}/{} -> {}", sourceName, archiveName, targetName);
if (appendMode && targetArchives.contains(archiveName)) {