           acker-subscriber (.addSubscription aeron channel acker-stream-id acker-handler)
           completion-subscriber (.addSubscription aeron channel completion-stream-id completion-handler)]
 
-      (future (try (.accept (consumer 10) send-subscriber) (catch Exception e (warn e))))
-      (future (try (.accept (consumer 10) acker-subscriber) (catch Exception e (warn e))))
-      (future (try (.accept (consumer 10) completion-subscriber) (catch Exception e (warn e))))
+      (future (try (.accept (consumer 10) send-subscriber) (catch Exception e (fatal e))))
+      (future (try (.accept (consumer 10) acker-subscriber) (catch Exception e (fatal e))))
+      (future (try (.accept (consumer 10) completion-subscriber) (catch Exception e (fatal e))))
       
       (assoc component :driver driver :channel channel :send-stream-id send-stream-id
              :acker-stream-id acker-stream-id :completion-stream-id completion-stream-id
-             :release-ch release-ch)))
+             :release-ch release-ch :context ctx :aeron aeron)))
 
   (stop [component]
     (taoensso.timbre/info "Stopping Aeron")
 
+    (.close (:aeron component))
     (CloseHelper/quietClose (:driver component))
+
     (close! (:release-ch component))
+
     (assoc component :driver nil :channel nil :release-ch nil)))
 
 (defn aeron [opts]

(ns ^:no-doc onyx.messaging.aeron
    (:require [clojure.core.async :refer [chan >!! <!! alts!! timeout close!]]
              [com.stuartsierra.component :as component]
              [taoensso.timbre :refer [warn] :as timbre]
              [onyx.messaging.acking-daemon :as acker]
              [onyx.compression.nippy :refer [compress decompress]]
              [onyx.extensions :as extensions])

  [messenger event {:keys [channel stream-id]}]
  (let [ctx (.errorHandler (Aeron$Context.) no-op-error-handler)
        aeron (Aeron/connect ctx)]
    {:ctx ctx
     :conn aeron
     :pub (.addPublication aeron channel stream-id)}))

(defmethod extensions/receive-messages AeronConnection
  [messenger {:keys [onyx.core/task-map] :as event}]
