Mansi Khara created CASSSIDECAR-464:
---------------------------------------

             Summary: Add a blocking await-phase-completion endpoint to replace 
the tight polling loop in Analytics
                 Key: CASSSIDECAR-464
                 URL: https://issues.apache.org/jira/browse/CASSSIDECAR-464
             Project: Sidecar for Apache Cassandra
          Issue Type: Improvement
            Reporter: Mansi Khara
            Assignee: Mansi Khara


CoordinatedImportCoordinator.pollForPhaseCompletion() polls all clusters at ~1 
request/second for the entire duration of each phase, generating sustained load 
regardless of actual phase length. Add a blocking awaitPhaseCompletion endpoint 
to Sidecar (RestoreJobProgressHandler) that suspends the Vert.x handler on a 
per-job CompletableFuture — maintained by RestoreProcessor and completed when 
the last range in the phase finishes — and responds the moment the consistency 
level is satisfied. The endpoint accepts a caller-supplied timeout and returns 
a retry signal on expiry. Update CoordinatedImportCoordinator and 
CoordinatedCloudStorageDataTransferApi in Analytics to replace the tight loop 
with a single blocking call per cluster per phase (suggested timeout: 30 
seconds). This improvement is most effective once the direct wakeup, fast 
status loop, and signal fan-out changes are already in place; without those, 
the long-poll suspends for the full detection gap before the underlying future 
completes.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to