[
https://issues.apache.org/jira/browse/SLING-10563?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Timothee Maret reassigned SLING-10563:
--------------------------------------
Assignee: Timothee Maret
> DistributionPublisher closes the PubQueueProvider service
> ---------------------------------------------------------
>
> Key: SLING-10563
> URL: https://issues.apache.org/jira/browse/SLING-10563
> Project: Sling
> Issue Type: Bug
> Components: Content Distribution
> Reporter: Timothee Maret
> Assignee: Timothee Maret
> Priority: Major
> Fix For: Content Distribution Journal Core 0.1.18
>
>
> The PubQueueProvider service is registered via the PubQueueProviderPublisher
> component. The DistributionPublisher references the PubQueueProvider service
> and close it when deactivating.
> So, when the DistributionPublisher is active again, it references a closed
> PubQueueProvider service. As the PubQueueProvider is closed, the
> PubQueueCache#tailPoller is closed and thus newer package messages are no
> longer fetched. As a result, distributing new content throws exceptions like
> the following
> {code}
> [sling-threadpool-950ecf5e-b8e8-4755-9066-918485528372-(apache-sling-job-thread-pool)-5-<main
> queue>(file_importer_job)] com.day.cq.replication.impl.ReplicatorImpl Error
> during replication with agent=publish
> com.day.cq.replication.ReplicationException:
> org.apache.sling.distribution.common.DistributionException: Failed to append
> distribution package
> PackageMessage(pubSlingId=4be0493c-b52c-4558-9b68-813843cc4e18, reqType=ADD,
> pkgId=dstrpck-1623937501721-346c09c9-dcbf-44fe-856e-d5f96148b2a4,
> pkgType=journal_filevault, pkgLength=9848, pubAgentName=publish,
> userId=replication-service,
> paths=[/content/dam/enel-common/updated-files/com/enelChile.xml],
> deepPaths=[]) to the journal
> at
> com.adobe.granite.distribution.core.impl.replication.DistributionTransportHandler.deliver(DistributionTransportHandler.java:134)
> [com.adobe.granite.distribution.core:0.2.56]
> at
> com.adobe.granite.distribution.core.impl.replication.adapters.ReplicationAgent.replicate(ReplicationAgent.java:116)
> [com.adobe.granite.distribution.core:0.2.56]
> at
> com.day.cq.replication.impl.ReplicatorImpl.replicate(ReplicatorImpl.java:451)
> [com.day.cq.cq-replication:6.3.22]
> at dh.com.common.core.utils.AssetUtils.writeToDam(AssetUtils.java:170)
> [enel-common.core:1.0.2.2021_0616_1125947_0000485816]
> at
> dh.com.common.core.schedulers.consumer.FileImporterJobConsumer.process(FileImporterJobConsumer.java:57)
> [enel-common.core:1.0.2.2021_0616_1125947_0000485816]
> at
> org.apache.sling.event.impl.jobs.JobConsumerManager$JobConsumerWrapper.process(JobConsumerManager.java:502)
> [org.apache.sling.event:4.2.12]
> at
> org.apache.sling.event.impl.jobs.queues.JobQueueImpl.startJob(JobQueueImpl.java:293)
> [org.apache.sling.event:4.2.12]
> at
> org.apache.sling.event.impl.jobs.queues.JobQueueImpl.access$100(JobQueueImpl.java:60)
> [org.apache.sling.event:4.2.12]
> at
> org.apache.sling.event.impl.jobs.queues.JobQueueImpl$1.run(JobQueueImpl.java:229)
> [org.apache.sling.event:4.2.12]
> at
> java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
> at
> java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
> at java.base/java.lang.Thread.run(Thread.java:834)
> Caused by: org.apache.sling.distribution.common.DistributionException: Failed
> to append distribution package
> PackageMessage(pubSlingId=4be0493c-b52c-4558-9b68-813843cc4e18, reqType=ADD,
> pkgId=dstrpck-1623937501721-346c09c9-dcbf-44fe-856e-d5f96148b2a4,
> pkgType=journal_filevault, pkgLength=9848, pubAgentName=publish,
> userId=replication-service,
> paths=[/content/dam/enel-common/updated-files/com/enelChile.xml],
> deepPaths=[]) to the journal
> at
> org.apache.sling.distribution.journal.impl.publisher.DistributionPublisher.execute(DistributionPublisher.java:291)
> [org.apache.sling.distribution.journal:0.1.17.T202103231434-787e79f]
> at
> org.apache.sling.distribution.journal.impl.publisher.DistributionPublisher.execute(DistributionPublisher.java:258)
> [org.apache.sling.distribution.journal:0.1.17.T202103231434-787e79f]
> at
> com.adobe.granite.distribution.core.impl.replication.adapters.ReplicationAgent$1.distribute(ReplicationAgent.java:120)
> [com.adobe.granite.distribution.core:0.2.56]
> at
> com.adobe.granite.distribution.core.impl.replication.DistributionTransportHandler.deliver(DistributionTransportHandler.java:124)
> [com.adobe.granite.distribution.core:0.2.56]
> ... 11 common frames omitted
> Caused by: java.lang.RuntimeException: java.util.concurrent.TimeoutException
> at
> org.apache.sling.distribution.journal.impl.publisher.DistributionPublisher.sendAndWait(DistributionPublisher.java:309)
> [org.apache.sling.distribution.journal:0.1.17.T202103231434-787e79f]
> at
> org.apache.sling.distribution.journal.impl.publisher.DistributionPublisher.lambda$execute$2(DistributionPublisher.java:278)
> [org.apache.sling.distribution.journal:0.1.17.T202103231434-787e79f]
> at
> org.apache.sling.distribution.journal.shared.DistributionMetricsService.timed(DistributionMetricsService.java:131)
> [org.apache.sling.distribution.journal:0.1.17.T202103231434-787e79f]
> at
> org.apache.sling.distribution.journal.impl.publisher.DistributionPublisher.execute(DistributionPublisher.java:278)
> [org.apache.sling.distribution.journal:0.1.17.T202103231434-787e79f]
> ... 14 common frames omitted
> Caused by: java.util.concurrent.TimeoutException: null
> at
> java.base/java.util.concurrent.CompletableFuture.timedGet(CompletableFuture.java:1886)
> at
> java.base/java.util.concurrent.CompletableFuture.get(CompletableFuture.java:2021)
> at
> org.apache.sling.distribution.journal.impl.publisher.DistributionPublisher.sendAndWait(DistributionPublisher.java:306)
> [org.apache.sling.distribution.journal:0.1.17.T202103231434-787e79f]
> ... 17 common frames omitted
> {code}
> and distribution actions sent by other instances are no longer reflected in
> the queue.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)