This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2018-07-17
Channels
- # beginners (42)
- # cider (1)
- # cljs-dev (20)
- # clojure (73)
- # clojure-italy (8)
- # clojure-nl (53)
- # clojure-spec (11)
- # clojure-uk (88)
- # clojurescript (170)
- # clojutre (6)
- # core-async (26)
- # css (2)
- # cursive (13)
- # data-science (10)
- # datomic (15)
- # editors (3)
- # figwheel (28)
- # figwheel-main (67)
- # fulcro (57)
- # graphql (2)
- # immutant (2)
- # jobs (1)
- # jvm (4)
- # lein-figwheel (3)
- # leiningen (1)
- # off-topic (5)
- # pedestal (28)
- # re-frame (86)
- # reagent (18)
- # reitit (8)
- # ring (3)
- # ring-swagger (2)
- # shadow-cljs (78)
- # spacemacs (10)
- # specter (12)
- # tools-deps (32)
- # vim (3)
Hi, I'm trying to load about 0.5GB of data into datomic. Can anyone confirm that transact
is not lazy, i.e. when passing it an ISeq
that sequence will be reified into a list/and or the head of that sequence will be held onto?
@rodinhart are you trying to transact that amount of data as a single transaction?
Well, I'd like to. The follow-up question, as expected, would be: how do I batch data that has references to earlier entities?
That’s almost certainly far too much data for a single transaction. To batch you’ll want to build up batches with some kind of identifier on your entities. Like using lookup refs or unique identities that you create. The tempid’s map that is returned from transact can be used to map entities.
And are you saying if I give entities a temp id for :db/id
, the return value of transact
will give me a mapping from those temp ids to the actual ids in the db?
@rodinhart https://docs.datomic.com/cloud/transactions/transaction-processing.html#tempid-resolution
Anybody know why after removing the backslashes for the ion deploy step from the :group
tag and other tags the backslashes still occur in :rev
and :uname
?
hi @U0CJ19XAM you should not need backslashes anywhere
clojure -A:dev -m datomic.ion.dev '{:op :push :uname "ch357"}'
Downloading: com/datomic/java-io/0.1.11/java-io-0.1.11.pom from
(cognitect.s3-libs.s3/upload "datomic-code-f070a20d-8cb2-44f6-b83a-a47dd69ed035" [{:local-zip "target/datomic/apps/someapp/unrepro/ch357.zip", :s3-zip "datomic/apps/someapp/unrepro/ch357.zip"}] {:op :push, :uname "ch357"})
{:uname "ch357",
:deploy-groups (someapp-compute),
:dependency-conflicts
{:deps #:com.cognitect{http-client #:mvn{:version "0.1.80"}},
:doc
"The :push operation overrode these dependencies to match versions already running in Datomic Cloud. To test locally, add these explicit deps to your deps.edn."},
:deploy-command
"clojure -Adev -m datomic.ion.dev '{:op :deploy, :group someapp-compute, :uname \"ch357\"}'",
:doc "To deploy to someapp-compute, issue the :deploy-command"}
I have to pull backslashes off of the output of the above command still, I realize you all removed the backslashes from the other commands (thank you!), but these still seem to remain.
clojure -Adev -m datomic.ion.dev '{:op :deploy, :group someapp-compute, :uname "ch357"}'
@U072WS7PE Just Tried it again from Vanilla Bash, same issue, now with :rev
instead of :uname
bash-3.2$ clojure -A:dev -m datomic.ion.dev '{:op :push}'
Downloading: com/datomic/java-io/0.1.11/java-io-0.1.11.pom from
(cognitect.s3-libs.s3/upload "datomic-code-f070a20d-8cb2-44f6-b83a-a47dd69ed035" [{:local-zip "target/datomic/apps/someapp/stable/a510fee0af59e67a9ba99cfff20c935b7b02d517.zip", :s3-zip "datomic/apps/someapp/stable/a510fee0af59e67a9ba99cfff20c935b7b02d517.zip"}] {:op :push})
{:rev "a510fee0af59e67a9ba99cfff20c935b7b02d517",
:deploy-groups (someapp-compute),
:dependency-conflicts
{:deps #:com.cognitect{http-client #:mvn{:version "0.1.80"}},
:doc
"The :push operation overrode these dependencies to match versions already running in Datomic Cloud. To test locally, add these explicit deps to your deps.edn."},
:deploy-command
"clojure -Adev -m datomic.ion.dev '{:op :deploy, :group someapp-compute, :rev \"a510fee0af59e67a9ba99cfff20c935b7b02d517\"}'",
:doc "To deploy to someapp-compute, issue the :deploy-command"}
@U072WS7PE I have the same issue with @U0CJ19XAM. Even after the latest update, I still get unnecessary backslashes whenever I "push". For the other ops, this does not occur.