StackOverflowError wordt opgelost in AEM as a Cloud Service Pipeline Builds

In AEM as a Cloud Service, komt een terugkomende StackOverflowError tijdens pijpleidingsbouwwerken voor. De fout wordt getraceerd tot onvoldoende JVM-instellingen voor stapelgrootte bij het compileren van zeer recursieve aangepaste HTML-code. Door de parameter voor JVM-stapelgrootte in de Maven-configuratie aan te passen, kan de pijpleiding met succes worden voltooid.

Beschrijving description

Omgeving

  • Product : Adobe Experience Manager as a Cloud Service (AEMaaCS) - Plaatsen
  • Relevante beperkingen : De compilatie van complexe, recursieve code van HTML tijdens pijpleidingsbouw

Probleem/symptomen

  • StackOverflowError verschijnt herhaaldelijk tijdens pijpleiding bouwt stappen, vooral de compilatiefasen van Java.
  • De mislukkingen van de pijpleiding komen zelfs met eerder succesvolle broncode toe begaat.
  • Het verhogen of het verminderen van de JVM stapelgrootte (-Xss) gevolgen bouwt resultaten op.
  • Succesvolle lokale builds garanderen geen succes in Cloud Manager-pijpleidingen vanwege de beperkingen van de infrastructuurbronnen.

Resolutie resolution

Ga als volgt te werk om dit probleem op te lossen:

  1. Identificeer alle pom.xml dossiers die in uw project worden gebruikt, met inbegrip van zowel wortel als submodule folders.
  2. Werk de configuratie van de Maven compilerstop in elk pom.xml dossier bij om de JVM stapelgrootteparameter (-J-Xss) aan 6M of 8M te plaatsen.
  3. Sla de wijzigingen op en wijs deze toe aan alle bijgewerkte pom.xml -bestanden.
  4. Voer de aangetaste Cloud Manager-pijplijn opnieuw uit nadat u deze wijzigingen hebt aangebracht.
  5. Als er meerdere pijpleidingen tegelijk worden geactiveerd of er één vast raakt, wacht u op handmatige annulering en het opschonen van bronnen voordat u nieuwe uitvoeringen start.
  6. Verifieer dat de bouwstijl met succes zonder StackOverflowError voltooit.

Nota's

  • Diepe herhaling in aangepaste HTML-code gebruikt meer stapelgeheugen dan de standaard JVM-toewijzing. Het verhogen van -Xss helpt, maar als de recursie groeit, kan de fout terugkeren.
  • Het raffineren van HTML- malplaatjes om recursie te minimaliseren wordt geadviseerd voor stabiliteit op lange termijn.
  • Het verhogen van -Xss tot 6-8 MB blijft binnen standaardgeheugenbeperkingen van AEM as a Cloud Service bouwstijlcontainers.
  • Vermijd het veroorzaken van extra pijpleidingen terwijl één wordt vastgehouden om middelgeschil te verhinderen en behoorlijk schoonmaakbeurt te verzekeren alvorens bouwt opnieuw te proberen.
recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f