Tabella dei contenuti
Passaggio di versione di uno stream
All'aggiornamento di versione di uno stream non è possibile. Se si vuole passare ad una versione più recente di stream, per recuperare i nuovi stati/eventi mancanti nella versione attuale, è necessario creare un nuovo stream utilizzando di seguenti passaggi:
- Identificazione Stream Originale: È necessario identificare lo streamId dello stream che si vuole aggiornare alla nuova versione. Lo streamId è reperibile tramite l'API
"Elenca stream di eventi" (es: GET /delivery-progresses/streams) - Creazione nuovo stream: creare un nuovo stream utilizzando l’ultima versione dell’API di creazione (es: POST /delivery-progresses/v2.8/streams) indicando col parametro replaceStreamId il valore streamId dello stream originale recuperato al passaggio precedente.
In risposta alla chiamata viene restituito il nuovo stream .
Contestualmente lo stream precedente (identificato da replaceStreamId) viene disabilitato e non riceverà più eventi, ma rimarrà accessibile per la lettura degli eventi per un periodo di 14 giorni. - Lettura ad esaurimento degli eventi sullo stream precedente: al fine di recuperare tutti gli eventi è necessario continuare la lettura del vecchio stream finché il valore di retryAfter non restituisce un valore diverso da 0 per un tempo adeguato (es: 5 minuti o 5 chiamate successive).
Al termine dell'operazione di lettura di tutti gli eventi si può procedere con la rimozione dello stream, che comunque viene eliminato automaticamente dopo 14 giorni dalla sua disabilitazione. - Lettura degli eventi sul nuovo stream: attivare la lettura degli eventi sul nuovo stream avendo l'accortezza di indicare lastEventId vuoto per la prima lettura e la consapevolezza che potrebbero esserci, in casi sporadici, eventi duplicati sullo stream nuovo, già recuperati sul vecchio.