mirror of https://github.com/logseq/logseq
fix: persist on disk when importing sqlite or switching graphs
parent
215d3739b9
commit
32711678ff
|
@ -73,7 +73,8 @@
|
||||||
[logseq.graph-parser.config :as gp-config]
|
[logseq.graph-parser.config :as gp-config]
|
||||||
[promesa.core :as p]
|
[promesa.core :as p]
|
||||||
[rum.core :as rum]
|
[rum.core :as rum]
|
||||||
[frontend.db.listener :as db-listener]))
|
[frontend.db.listener :as db-listener]
|
||||||
|
[frontend.persist-db :as persist-db]))
|
||||||
|
|
||||||
;; TODO: should we move all events here?
|
;; TODO: should we move all events here?
|
||||||
|
|
||||||
|
@ -186,8 +187,15 @@
|
||||||
(when persist?
|
(when persist?
|
||||||
(when (util/electron?)
|
(when (util/electron?)
|
||||||
(p/do!
|
(p/do!
|
||||||
(when (config/local-file-based-graph? current-repo)
|
(cond
|
||||||
(repo-handler/persist-db! current-repo persist-db-noti-m)))))
|
(config/db-based-graph? current-repo)
|
||||||
|
(persist-db/<export-db current-repo {})
|
||||||
|
|
||||||
|
(config/local-file-based-graph? current-repo)
|
||||||
|
(repo-handler/persist-db! current-repo persist-db-noti-m)
|
||||||
|
|
||||||
|
:else
|
||||||
|
nil))))
|
||||||
(repo-handler/restore-and-setup-repo! graph)
|
(repo-handler/restore-and-setup-repo! graph)
|
||||||
(graph-switch graph)
|
(graph-switch graph)
|
||||||
state/set-state! :sync-graph/init? false)))
|
state/set-state! :sync-graph/init? false)))
|
||||||
|
|
|
@ -229,6 +229,7 @@
|
||||||
(p/then
|
(p/then
|
||||||
(fn [_result]
|
(fn [_result]
|
||||||
(state/set-current-repo! graph)
|
(state/set-current-repo! graph)
|
||||||
|
(persist-db/<export-db graph {})
|
||||||
(finished-ok-handler)))
|
(finished-ok-handler)))
|
||||||
(p/catch
|
(p/catch
|
||||||
(fn [e]
|
(fn [e]
|
||||||
|
|
|
@ -23,14 +23,6 @@
|
||||||
(defn <transact-data [repo tx-data tx-meta]
|
(defn <transact-data [repo tx-data tx-meta]
|
||||||
(protocol/<transact-data (get-impl) repo tx-data tx-meta))
|
(protocol/<transact-data (get-impl) repo tx-data tx-meta))
|
||||||
|
|
||||||
(defn <fetch-init-data
|
|
||||||
([repo]
|
|
||||||
(<fetch-init-data repo {}))
|
|
||||||
([repo opts]
|
|
||||||
(p/let [ret (protocol/<fetch-initial-data (get-impl) repo opts)]
|
|
||||||
(js/console.log "fetch-initial-data" ret)
|
|
||||||
ret)))
|
|
||||||
|
|
||||||
(defn <export-db
|
(defn <export-db
|
||||||
[repo opts]
|
[repo opts]
|
||||||
(protocol/<export-db (get-impl) repo opts))
|
(protocol/<export-db (get-impl) repo opts))
|
||||||
|
@ -39,15 +31,19 @@
|
||||||
[repo data]
|
[repo data]
|
||||||
(protocol/<import-db (get-impl) repo data))
|
(protocol/<import-db (get-impl) repo data))
|
||||||
|
|
||||||
|
(defn <fetch-init-data
|
||||||
|
([repo]
|
||||||
|
(<fetch-init-data repo {}))
|
||||||
|
([repo opts]
|
||||||
|
(p/let [ret (protocol/<fetch-initial-data (get-impl) repo opts)]
|
||||||
|
(js/console.log "fetch-initial-data" ret)
|
||||||
|
ret)))
|
||||||
|
|
||||||
;; FIXME: limit repo name's length
|
;; FIXME: limit repo name's length
|
||||||
;; @shuyu Do we still need this?
|
;; @shuyu Do we still need this?
|
||||||
(defn <new [repo]
|
(defn <new [repo]
|
||||||
{:pre [(<= (count repo) 56)]}
|
{:pre [(<= (count repo) 56)]}
|
||||||
(p/do!
|
(p/do!
|
||||||
(let [current-repo (state/get-current-repo)]
|
(let [current-repo (state/get-current-repo)]
|
||||||
(when (and (util/electron?)
|
(<export-db current-repo {})
|
||||||
(not= repo current-repo)
|
|
||||||
(config/db-based-graph? current-repo))
|
|
||||||
;; switch graph
|
|
||||||
(<export-db current-repo {}))
|
|
||||||
(protocol/<new (get-impl) repo))))
|
(protocol/<new (get-impl) repo))))
|
||||||
|
|
|
@ -41,10 +41,10 @@
|
||||||
(defn <export-db!
|
(defn <export-db!
|
||||||
[repo data]
|
[repo data]
|
||||||
(cond
|
(cond
|
||||||
(util/electron?)
|
(and (util/electron?) (config/db-based-graph? repo))
|
||||||
(ipc/ipc :db-export repo data)
|
(ipc/ipc :db-export repo data)
|
||||||
|
|
||||||
;; nfs-supported? auto backup
|
;; TODO: browser nfs-supported? auto backup
|
||||||
|
|
||||||
;;
|
;;
|
||||||
:else
|
:else
|
||||||
|
|
Loading…
Reference in New Issue