SLING-9037 - Only call busy after precondition check
diff --git a/src/main/java/org/apache/sling/distribution/journal/impl/subscriber/DistributionSubscriber.java b/src/main/java/org/apache/sling/distribution/journal/impl/subscriber/DistributionSubscriber.java
index 44b33fd..c0579c5 100644
--- a/src/main/java/org/apache/sling/distribution/journal/impl/subscriber/DistributionSubscriber.java
+++ b/src/main/java/org/apache/sling/distribution/journal/impl/subscriber/DistributionSubscriber.java
@@ -366,7 +366,6 @@
             bookKeeper.sendStoredStatus();
             DistributionQueueItem item = blockingPeekQueueItem();
 
-            subscriberIdle.busy();
             try (Timer.Context context = distributionMetricsService.getProcessQueueItemDuration().time()) {
                 processQueueItem(item);
             } finally {
@@ -403,6 +402,7 @@
         long offset = queueItem.get(RECORD_OFFSET, Long.class);
         PackageMessage pkgMsg = queueItem.get(PACKAGE_MSG, PackageMessage.class);
         boolean skip = shouldSkip(offset);
+        subscriberIdle.busy();
         if (skip) {
             bookKeeper.removePackage(pkgMsg, offset);
         } else {