             [polismath.db :as db]
             [polismath.utils :refer :all]
             [plumbing.core :as pc]
+            [schema.core :as s]
             [clojure.core.matrix.impl.ndarray]
             [clojure.core.async
              :as as

          (.printStackTrace e)))
      (log/debug "Profile data for zid" (:zid conv) ": " prof))))


(defn update-fn
  "This function is what actually gets sent to the conv-actor. In addition to the conversation and vote batches

                             :finish-time finish-time
                             :recompute recompute
                             :n-votes (count votes))
        ;; Make sure our data has the right shape
        (s/validate Conversation updated-conv)
        ; Format and upload main results
        (doseq [[col-name prep-fn] [["main" prep-main] ; main math results, for client
                                    ["bidtopid" prep-bidToPid]]] ; bidtopid mapping, for server
