From 19ca58afd190db2718b2de894b06af8f6b996628 Mon Sep 17 00:00:00 2001 From: Nadia Mayor Date: Tue, 5 Sep 2023 11:33:34 -0300 Subject: [PATCH] [SDKS-7446] Remove stop SSE from destroy when SDK is in polling mode --- .../main/java/io/split/engine/common/SyncManagerImp.java | 6 ++++-- .../java/io/split/engine/common/SyncManagerTest.java | 9 +++++---- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/client/src/main/java/io/split/engine/common/SyncManagerImp.java b/client/src/main/java/io/split/engine/common/SyncManagerImp.java index 89d826cba..97b2c7474 100644 --- a/client/src/main/java/io/split/engine/common/SyncManagerImp.java +++ b/client/src/main/java/io/split/engine/common/SyncManagerImp.java @@ -160,8 +160,10 @@ public void shutdown() throws IOException { _shuttedDown.set(true); _initializationtExecutorService.shutdownNow(); _synchronizer.stopPeriodicFetching(); - _pushManager.stop(); - _pushMonitorExecutorService.shutdownNow(); + if (_streamingEnabledConfig.get()) { + _pushManager.stop(); + _pushMonitorExecutorService.shutdownNow(); + } _segmentSynchronizationTaskImp.close(); _log.info("Successful shutdown of segment fetchers"); _splitSynchronizationTask.close(); diff --git a/client/src/test/java/io/split/engine/common/SyncManagerTest.java b/client/src/test/java/io/split/engine/common/SyncManagerTest.java index adb158f8f..f1c1699cd 100644 --- a/client/src/test/java/io/split/engine/common/SyncManagerTest.java +++ b/client/src/test/java/io/split/engine/common/SyncManagerTest.java @@ -64,6 +64,7 @@ public void startWithStreamingFalseShouldStartPolling() throws InterruptedExcept Mockito.verify(_pushManager, Mockito.times(0)).start(); syncManager.shutdown(); + Mockito.verify(_pushManager, Mockito.times(0)).stop(); Mockito.verify(_synchronizer, Mockito.times(1)).stopPeriodicDataRecording(); } @@ -86,7 +87,7 @@ public void startWithStreamingTrueShouldStartSyncAll() throws InterruptedExcepti } @Test - public void onStreamingAvailable() throws InterruptedException, IOException { + public void onStreamingAvailable() throws InterruptedException { TelemetryStorage telemetryStorage = Mockito.mock(TelemetryStorage.class); LinkedBlockingQueue messages = new LinkedBlockingQueue<>(); SplitTasks splitTasks = SplitTasks.build(_splitSynchronizationTask, _segmentSynchronizationTaskImp, @@ -107,7 +108,7 @@ public void onStreamingAvailable() throws InterruptedException, IOException { } @Test - public void onStreamingDisabled() throws InterruptedException, IOException { + public void onStreamingDisabled() throws InterruptedException { TelemetryStorage telemetryStorage = new InMemoryTelemetryStorage(); LinkedBlockingQueue messsages = new LinkedBlockingQueue<>(); SplitTasks splitTasks = SplitTasks.build(_splitSynchronizationTask, _segmentSynchronizationTaskImp, @@ -127,7 +128,7 @@ public void onStreamingDisabled() throws InterruptedException, IOException { } @Test - public void onStreamingShutdown() throws InterruptedException, IOException { + public void onStreamingShutdown() throws InterruptedException { TelemetryStorage telemetryStorage = new InMemoryTelemetryStorage(); LinkedBlockingQueue messsages = new LinkedBlockingQueue<>(); SplitTasks splitTasks = SplitTasks.build(_splitSynchronizationTask, _segmentSynchronizationTaskImp, @@ -229,4 +230,4 @@ public void syncAllRetryThenShouldStartPolling() throws InterruptedException, IO syncManager.shutdown(); Mockito.verify(_synchronizer, Mockito.times(1)).stopPeriodicDataRecording(); } -} +} \ No newline at end of file