   []
   (do
     (mc/ensure-index @db "articles" (array-map :ts 1))
-    (mc/ensure-index @db "origins" (array-map :ts 1 :source 1 :tweet 1))
-    (mc/ensure-index @db "published" (array-map :tweet 1 :user 1 :ts 1 :url 1))
-    (mc/ensure-index @db "reactions" (array-map :source 1 :tweet 1))
+    (mc/ensure-index @db "origins" (array-map :ts 1))
+    (mc/ensure-index @db "origins" (array-map :source 1))
+    (mc/ensure-index @db "origins" (array-map :tweet 1))
+    (mc/ensure-index @db "publications" (array-map :tweet 1))
+    (mc/ensure-index @db "publications" (array-map :user 1))
+    (mc/ensure-index @db "publications" (array-map :ts 1))
+    (mc/ensure-index @db "publications" (array-map :url 1))
+    (mc/ensure-index @db "reactions" (array-map :source 1))
+    (mc/ensure-index @db "reactions" (array-map :publication 1))
     (mc/ensure-index @db "urls" (array-map :url 1))
     (mc/ensure-index @db "hashtags" (array-map :text 1))
+    (mc/ensure-index @db "mentions" (array-map :user 1))
+    (mc/ensure-index @db "mentions" (array-map :publication 1))
     (mc/ensure-index @db "users" (array-map :id 1))
     (mc/ensure-index @db "tweets" (array-map :user.screen_name 1))
     (mc/ensure-index @db "tweets" (array-map :id_str 1))

                     :no-share
                     tweet)))
           (remove #{:no-share})
           (pmap transact-published)))))


  ;; retweet reactions

             (take 10)
             (pmap get-url-id)
             #_(pmap #(let [url-id (get-url-id %)]
                        (store-publications (get-uid %)
                                         (:_id %)
                                         url-id
                                         (get-type % url-id)
