  [current-busy v]
  (disj current-busy v))
 
-(defn- busy? [u c]
-  (@busy [(get-name u) (get-conn-inst-name c)]))
+(defn- busy?
+  [u c]
+  (@busy (tuple-uc u c)))
 
 (defn- busy!
   [u c]
-  (swap! busy mark-busy [(get-name u) (get-conn-inst-name c)]))
+  (swap! busy mark-busy (tuple-uc u c)))
 
 (defn- free!
   [u c]
-  (swap! busy mark-free [(get-name u) (get-conn-inst-name c)]))
+  (swap! busy mark-free (tuple-uc u c)))
 
 (defn full?
   []

(def timeout-collect-reader-release (+ timeout-collect (seconds-in-msecs 2)))
(def timeout-processing-loop        (seconds-in-msecs 60))

(defn get-name
  [user]
  (.getName user))

(defn get-conn-inst-name
  [connector]
  (.getConnectorInstanceName connector))

(def busy (atom #{}))



(defn- user-connector
 [user connector]
 (apply format "[%s/%s] %s " (conj (tuple-uc user connector) (System/currentTimeMillis))))

(defn- build-msg
  [user connector elapsed & info]
