Fork me on GitHub
#datomic
<
2021-10-27
>
Tobias Sjögren06:10:33

Anyone knows if offline support including some write capability has been talked about? One idea could be to support creation of new entities offline for syncing later when online..

Tobias Sjögren07:10:07

Has anyone examined or thought about a possible connection between Datomic and “Local-First Software” ? (https://martin.kleppmann.com/papers/local-first.pdf)

César Olea19:10:03

I read this paper some time ago and couldn't find it later. And now all of a sudden here it is. Thank you!

Ivan Fedorov11:10:04

I’ve runned into Could not find artifact com.datomic:ion:jar:0.9.50 in central () I see it was discussed previously, but I don’t understand the investigation scenario so far. I’ve checked the ~/.m2/settings.xml and the ~/.clojure/deps.edn and it all looks as in the instruction. Project’s deps.edn also works for other team members. How can I diagnose if I’m connecting to the right datomic cloud with the right credentials? __ upd: I’ve found the tip about the IAM user and the S3FullAccess policy, but I’m too bad at AWS language.

xceno12:10:58

> I’ve found the tip about the IAM user and the S3FullAccess policy, but I’m too bad at AWS language What that means is, that you also need to setup the AWS CLI V1 as described in the docs, with your AWS keys that you get in the AWS console in the top right corner under "my security credentials". Your AWS user also needs Read-Access to S3

Ivan Fedorov12:10:50

Yeah, got it, on it, thanks!

Ivan Fedorov13:10:26

Got to

Error building classpath. Could not transfer artifact software.amazon.ion:ion-java:jar:1.0.2 from/to central (): status code: 416, reason phrase: Range Not Satisfiable (416)

xceno15:10:44

Yeah I encountered that a lot too. Try deleting your maven cache and try again

❤️ 1
Ivan Fedorov16:10:22

this helped, thanks!

conan11:10:47

Has anyone got Metabase connected to Datomic? I'm unable to authenticate using Presto, seems to be an SSL issue

Linus Ericsson09:10:30

I have not tried, but I there has been quite a lot of changes (for the better) in both JDK 8 and JDK 11, what JDK(s) are you using?

Jeff Evans18:11:01

(engineer at Metabase here, who has worked on the Presto driver specifically) do you have a full stack trace of the error?

favila15:10:51

(d/q '[:find ?x
            :where
            [(ground :foo) ?x]
            (not [_ :db/ident :does-not-exist])]
           db))
=> #{} ;; expect #{[:foo]}
What’s going on here?

favila15:10:38

before anyone asks, this ident definitely doesn’t exist:

favila15:10:42

(d/q '[:find ?x
       :where
       [(ground :foo) ?x]
       [_ :db/ident :does-not-exist]]
     db)
=> #{}

favila15:10:17

Context: I’m trying to write a query which will work (i.e. not error and produce a default value) before an attribute is installed.

favila15:10:44

workaround:

favila15:10:46

(d/q '[:find ?x
       :where
       [(ground :foo) ?x]
       [(ground :does-not-exist) ?v]
       (not-join [?v]
            [_ :db/ident ?v])]
     db)
=> #{[:foo]}

👏 1
Fredrik16:10:55

Will it still work with not instead of`not-join?`

Fredrik16:10:43

Since there are no logic variables in the not-clause

favila16:10:43

yes

(d/q '[:find ?x
       :where
       [(ground :foo) ?x]
       [(ground :does-not-exist) ?v]
       (not [_ :db/ident ?v])]
     db)

=> #{[:foo]}

favila16:10:35

I’ve had problems with _ unifying with itself and with the non-explicit -join doing the wrong thing or throwing an error--so it’s just a paranoid tick at this point

Fredrik16:10:57

What do you mean by "_ unifying with itself"?

favila16:10:02

I destructured something like [(re-matches #"a (b) (c)" "a b c") [_ _ ?c]] and it would never produce a ?c because the two _ were unequal. the workaround was [?_ignore1 ?___ignore2 ?c]

favila16:10:27

i.e. it appeared to be unifying _

favila16:10:42

I can’t do it now though, maybe it’s been fixed, or the conditions were more complicated

Fredrik16:10:54

Still strange that your original query doesn't work as expected. Perhaps there should be at least one bound variable in a not?

Mike Richards19:10:48

Is there a “correct” way to shut down Datomic (client peer api, on prem) at the end of a one-off task, say a maintenance script? I’ve tried a number of variations on this sort of code, but frequently (though not always) end up with exceptions:

(d/release connection) ; seems to happen wither I call release or not
(d/shutdown false)     ; true/false does not have an impact here either
(shutdown-agents)
The exceptions are always “AMQ219019: Session is closed”, e.g.
[datomic.slf4j] (clojure-agent-send-off-pool-4) {:message "Caught exception", :pid 1, :tid 38}
org.apache.activemq.artemis.api.core.ActiveMQObjectClosedException: AMQ219019: Session is closed

uwo15:06:49

Did you ever get an answer for this? I'm dealing with a one-off script as well