From 48aed8ca88b02068485b463cef5869fdedf3de21 Mon Sep 17 00:00:00 2001 From: Tienson Qin Date: Thu, 26 Mar 2026 16:17:21 +0800 Subject: [PATCH] batch rebase --- src/main/frontend/worker/sync/apply_txs.cljs | 23 +++++++++----------- 1 file changed, 10 insertions(+), 13 deletions(-) diff --git a/src/main/frontend/worker/sync/apply_txs.cljs b/src/main/frontend/worker/sync/apply_txs.cljs index 8c4f5d4779..aa4d5062b7 100644 --- a/src/main/frontend/worker/sync/apply_txs.cljs +++ b/src/main/frontend/worker/sync/apply_txs.cljs @@ -938,25 +938,22 @@ (:tx-data rebase-tx-report) tx-meta)) -;; TODO: batch sync db to main thread (defn- apply-remote-tx-with-local-changes! [{:keys [repo conn local-txs remote-txs]}] (let [batch-tx-meta {:rtc-tx? true :with-local-changes? true}] - (reverse-local-txs! conn local-txs {:rtc-tx? true}) + (ldb/batch-transact! + conn + (assoc batch-tx-meta :reverse-and-apply-remote? true) + (fn [conn] + (reverse-local-txs! conn local-txs {:rtc-tx? true}) + (transact-remote-txs! conn remote-txs batch-tx-meta) - (transact-remote-txs! conn remote-txs batch-tx-meta) - ;; (ldb/batch-transact! - ;; conn - ;; (assoc batch-tx-meta :apply-remote? true) - ;; (fn [conn] - ;; (transact-remote-txs! conn remote-txs batch-tx-meta))) + (remove-pending-txs! repo (map :tx-id local-txs)) - (remove-pending-txs! repo (map :tx-id local-txs)) - - (let [rebase-tx-report (rebase-local-txs! repo conn local-txs - (assoc batch-tx-meta :rebase? true))] - (fix-tx! conn rebase-tx-report {:outliner-op :rebase-fix})))) + (let [rebase-tx-report (rebase-local-txs! repo conn local-txs + (assoc batch-tx-meta :rebase? true))] + (fix-tx! conn rebase-tx-report {:outliner-op :rebase-fix})))))) (defn- apply-remote-tx-without-local-changes! [{:keys [conn remote-txs temp-tx-meta]}]