       (let [get-fn (kv-get-fn this domain-name database)
             ret (byte-array (.remaining key))]
         (.get key ret)
-        (first (multi-get get-fn database domain-name [ret]))))
+        (clojure.core/get (multi-get get-fn database domain-name [ret]) key)))
 
     (getDomainStatus [_ domain-name]
       "Returns the thrift status of the supplied domain-name."

(defn direct-multiget [database domain-name key-seq]
  (let [domain (db/domain-get database domain-name)]
    (when (loaded? domain)
      (into {} (for [key key-seq]
                    {key (thrift/mk-value (dom/kv-get domain key))})))))

;; ## MultiGet


                                         (deliver p (get-fn host indexed-keys)))) hosts)
                          p))
                      host-map)]
        (into {} (map deref promises))))))

(defn kv-get-fn
  [service domain-name database]
