killbill-aplcache

Details

diff --git a/beatrix/src/main/java/org/killbill/billing/beatrix/extbus/BeatrixListener.java b/beatrix/src/main/java/org/killbill/billing/beatrix/extbus/BeatrixListener.java
index d77d369..3b88c15 100644
--- a/beatrix/src/main/java/org/killbill/billing/beatrix/extbus/BeatrixListener.java
+++ b/beatrix/src/main/java/org/killbill/billing/beatrix/extbus/BeatrixListener.java
@@ -104,7 +104,13 @@ public class BeatrixListener {
                 externalBus.post(externalEvent);
             }
         } catch (final EventBusException e) {
+            //
+            // When using PersistentBus this should never be reached, because errors are caught at the 'ext' bus level and retried until either success or event row is moved to FAILED status.
+            // However when using InMemoryBus, this can happen as there is no retry logic (at the 'ext' bus level) and so we should re-throw at this level to kick-in the retry logic from the 'main' bus
+            // (The use of RuntimeException is somewhat arbitrary)
+            //
             log.warn("Failed to dispatch external bus events", e);
+            throw new RuntimeException(e);
         } catch (JsonProcessingException e) {
             log.warn("Failed to dispatch external bus events", e);
         }

pom.xml 2(+1 -1)

diff --git a/pom.xml b/pom.xml
index 8fb6873..ff2e049 100644
--- a/pom.xml
+++ b/pom.xml
@@ -21,7 +21,7 @@
     <parent>
         <artifactId>killbill-oss-parent</artifactId>
         <groupId>org.kill-bill.billing</groupId>
-        <version>0.83-SNAPSHOT</version>
+        <version>0.87-SNAPSHOT</version>
     </parent>
     <artifactId>killbill</artifactId>
     <version>0.16.3-SNAPSHOT</version>