Skip to content

Commit ecc9ed1

Browse files
Fixing streaming retry
1 parent c0cdc52 commit ecc9ed1

File tree

1 file changed

+7
-2
lines changed

1 file changed

+7
-2
lines changed

client/src/main/java/io/split/engine/common/SynchronizerImp.java

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919

2020
public class SynchronizerImp implements Synchronizer {
2121
private static final Logger _log = LoggerFactory.getLogger(Synchronizer.class);
22+
private static final int RETRIES_NUMBER = 10;
2223

2324
private final SplitSynchronizationTask _splitSynchronizationTask;
2425
private final SplitFetcher _splitFetcher;
@@ -69,8 +70,10 @@ public void stopPeriodicFetching() {
6970

7071
@Override
7172
public void refreshSplits(long targetChangeNumber) {
72-
if (targetChangeNumber > _splitCache.getChangeNumber()) {
73+
int retries = 1;
74+
while(targetChangeNumber > _splitCache.getChangeNumber() && retries <= RETRIES_NUMBER) {
7375
_splitFetcher.forceRefresh(true);
76+
retries++;
7477
}
7578
}
7679

@@ -84,7 +87,8 @@ public void localKillSplit(String splitName, String defaultTreatment, long newCh
8487

8588
@Override
8689
public void refreshSegment(String segmentName, long changeNumber) {
87-
if (changeNumber > _segmentCache.getChangeNumber(segmentName)) {
90+
int retries = 1;
91+
while(changeNumber > _segmentCache.getChangeNumber(segmentName) && retries <= RETRIES_NUMBER) {
8892
SegmentFetcher fetcher = _segmentSynchronizationTaskImp.getFetcher(segmentName);
8993
try{
9094
fetcher.fetch(true);
@@ -93,6 +97,7 @@ public void refreshSegment(String segmentName, long changeNumber) {
9397
catch (NullPointerException np){
9498
throw new NullPointerException();
9599
}
100+
retries++;
96101
}
97102
}
98103
}

0 commit comments

Comments
 (0)