La pipeline di AEM as a Cloud Service è bloccata in stato RUNNING a causa di problemi di indice Oak/Lucene personalizzato
Questo articolo spiega come risolvere le situazioni in cui una pipeline di distribuzione di Adobe Experience Manager (AEM) as a Cloud Service rimane bloccata nello stato IN ESECUZIONE a causa di problemi con gli indici Oak/Lucene personalizzati.
Descrizione description
Ambiente
Adobe Experience Manager as a Cloud Service (AEMaaCS), tutte le versioni che utilizzano le pipeline Cloud Manager.
Problema/Sintomi
- La pipeline di distribuzione di Cloud Manager rimane nello stato RUNNING per un periodo prolungato e non viene completata.
- Il controllo di preparazione all’ambiente è bloccato e impedisce l’avanzamento della pipeline.
- I registri dei processi di indicizzazione mostrano errori quali:
Error while processing an index write operation java.io.IOException: Invalid byte range request for [ /oak:index/cqPageLucene-custom-1] ...
- Errori del file system quali:
java.nio.file.NoSuchFileException
- I nodi di indice personalizzati, ad esempio
/oak:index/cqPageLucene-custom-1e/oak:index/damAssetLucene-11-custom-4, vengono visualizzati nell’archivio anche se non sono presenti nel codebase corrente. - L’eliminazione manuale di questi nodi dell’indice in CRXDE è solo temporanea, poiché possono riapparire dopo la ridistribuzione.
Causa
La pipeline è bloccata perché il controllo di idoneità dell’ambiente non può essere completato a causa di un indice Oak/Lucene personalizzato danneggiato o incoerente. Questo impedisce il completamento del processo di indicizzazione, lasciando la pipeline bloccata nello stato RUNNING. L’eliminazione manuale dei nodi di indice non è persistente; una rimozione corretta richiede l’aggiornamento della base di codice e l’utilizzo dell’approccio di gestione dell’indice supportato.
Risoluzione resolution
Per risolvere il problema, segui i passaggi seguenti:
- Esaminare i registri dei processi di indicizzazione e identificare gli errori correlati agli indici personalizzati, ad esempio
/oak:index/cqPageLucene-custom-1. Verificare se i nodi di indice esistono nel codebase inui.apps/src/main/content/jcr_root/_oak_index/o in un filediff.json. - Cercare nell’archivio le definizioni degli indici problematici, ad esempio
cqPageLucene-custom-1odamAssetLucene-11-custom-4. Eliminare queste definizioni da_oak_indexo da qualsiasi pacchetto di contenuto dell’indice, quindi confermare le modifiche. - Esprimere tutte le modifiche all’indice personalizzato in
/oak:index/diff.index/diff.jsonutilizzando il modello Gestione indice semplificata. Distribuisci il codice aggiornato tramite Cloud Manager. - Dopo aver ripulito la base di codice e verificato che in
diff.jsonsiano presenti solo le personalizzazioni previste, ridistribuirla tramite Cloud Manager. La pipeline deve essere completata correttamente se non rimane alcun danneggiamento dell’indice. - Se il problema persiste, controlla i registri per individuare eventuali errori del file system o il danneggiamento del segmento Lucene. Rigenera l’indice interessato rimuovendo il nodo di runtime problematico e ridistribuendolo.
- Dopo la ridistribuzione, la pipeline deve essere completata correttamente e l’ambiente deve essere contrassegnato come pronto.
Note
- La piattaforma genera nuovi nodi
*-custom-*in base alle esigenze e ritira automaticamente le versioni precedenti non utilizzate nel tempo. - Evitare di eliminare manualmente i nodi dell’indice in CRXDE come soluzione permanente, in quanto i nodi possono essere ricreati durante le distribuzioni successive se il codebase o
diff.jsonvi fa ancora riferimento.