File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 512512
513513(defn ^:no-doc -transact! [conn tx-data tx-meta]
514514 {:pre [(conn? conn)]}
515- (let [*report (atom nil )]
515+ (let [*report (atom nil )
516+ skip-store? (:skip-store? tx-meta)
517+ tx-meta' (dissoc tx-meta :skip-store? )]
516518 (swap! conn
517519 (fn [db]
518- (let [r (with db tx-data tx-meta)]
520+ (let [r (with db tx-data tx-meta' )]
519521 (reset! *report r)
520522 (:db-after r))))
521- (when-some [storage (storage/storage @conn)]
522- (let [{db :db-after
523- datoms :tx-data } @*report
524- settings (set/settings (:eavt db))
525- *tx-tail (:tx-tail (meta conn))
526- tx-tail' (swap! *tx-tail conj datoms)]
527- (if (> (transduce (map count) + 0 tx-tail') (:branching-factor settings))
523+ (when skip-store?
524+ (when-some [storage (storage/storage @conn)]
525+ (let [{db :db-after
526+ datoms :tx-data } @*report
527+ settings (set/settings (:eavt db))
528+ *tx-tail (:tx-tail (meta conn))
529+ tx-tail' (swap! *tx-tail conj datoms)]
530+ (if (> (transduce (map count) + 0 tx-tail') (:branching-factor settings))
528531 ; ; overflow tail
529- (do
530- (storage/store-impl! db (storage/storage-adapter db) false )
531- (reset! *tx-tail [])
532- (reset! (:db-last-stored (meta conn)) db))
532+ (do
533+ (storage/store-impl! db (storage/storage-adapter db) false )
534+ (reset! *tx-tail [])
535+ (reset! (:db-last-stored (meta conn)) db))
533536 ; ; just update tail
534- (storage/store-tail db tx-tail'))))
537+ (storage/store-tail db tx-tail') ))))
535538 @*report))
536539
537540(defn transact!
You can’t perform that action at this time.
0 commit comments