🐛 Fix unexpected bug when error is propagated on persist-page event.

This commit is contained in:
Andrey Antukh 2019-09-17 16:13:04 +00:00
parent ff64332958
commit 7b3ce38cc1

View file

@ -290,9 +290,9 @@
(let [page (pack-page state id)] (let [page (pack-page state id)]
(->> (rp/req :update/page page) (->> (rp/req :update/page page)
(rx/map :payload) (rx/map :payload)
(rx/do #(when (fn? on-success) (rx/map page-persisted)
(ts/schedule-on-idle on-success))) (rx/catch (fn [err] (rx/of ::page-persist-error)))))))))))
(rx/map page-persisted)))))))))
(defn persist-page? (defn persist-page?
[v] [v]
@ -428,6 +428,7 @@
(rx/debounce 1000) (rx/debounce 1000)
(rx/mapcat #(rx/merge (rx/of (persist-page id)) (rx/mapcat #(rx/merge (rx/of (persist-page id))
(->> (rx/filter page-persisted? stream) (->> (rx/filter page-persisted? stream)
(rx/timeout 1000 (rx/empty))
(rx/take 1) (rx/take 1)
(rx/ignore))))) (rx/ignore)))))
(->> stream (->> stream
@ -437,5 +438,6 @@
(->> (rx/filter metadata-persisted? stream) (->> (rx/filter metadata-persisted? stream)
(rx/take 1) (rx/take 1)
(rx/ignore)))))) (rx/ignore))))))
(rx/take-until stopper)))))) (rx/take-until stopper)
(rx/retry 10000))))))