Fork me on GitHub
#datomic
<
2017-03-31
>
devth02:03:52

is there a reference for datomic connection strings?

favila02:03:31

The docstring for datomic.api/connect

eraserhd16:03:20

So.. I'm seeing a weird case where d/pull isn't resolving a :db/ident. It works when I use d/entity.

eraserhd16:03:45

I'm pretty sure this had to have worked before.

eraserhd16:03:37

dev=> (d/pull (db) [:taskexec/status] [:taskexec/uuid taskexec-uuid])
#:taskexec{:status #:db{:id 17592186045419}}
dev=> (:taskexec/status (d/entity (db) [:taskexec/uuid taskexec-uuid]))
:taskexec.status/available

pesterhazy16:03:11

@eraserhd that's know difference between pull and entity I believe

eraserhd16:03:56

Ah... I'm seeing some code to fix this up in post. 🙂

pesterhazy16:03:32

I swear it was documented somewhere but I can't find the section in the docs

devth18:03:20

can datomic peers with a newer version of datomic connect to transactors running an older version of datomic? is there a limit to how many versions out of sync they can be?

devth18:03:42

i'm debugging Cannot connect to server(s). Tried with all available servers. with both peer and transactor running in my staging env. verified everything can hit underlying sql storage. verified the certificates are valid. verified peer can hit the transactor endpoint.

marshall18:03:04

depends on the versions @devth

marshall18:03:10

check the CHANGES.md

marshall18:03:14

in the datomic distro

reitzensteinm18:03:30

@eraserhd yeah, I found that quite frustrating. We were using an ident as essentially an enum

devth18:03:16

peer on 0.9.5561 transactor on 0.9.5390. thanks @marshall will do.

marshall18:03:47

some of the somewhat recent updates aren’t backwards compatible

devth18:03:07

would that manifest during connection or during transactions?

marshall18:03:10

older peers to newer txors are largely OK

marshall18:03:14

during connection

devth18:03:28

ah, good to know. so i need to be careful about coordinating upgrades

marshall18:03:50

Upgrade: the transactor and the peer now use ActiveMQ Artemis 1.4.0. Peers from this release forward cannot connect to older transactors. When upgrading to (or past) this release, you must upgrade transactors first.

marshall18:03:55

That’s in 5404 ^^

marshall18:03:08

so, yes, your issue is likely version

devth18:03:27

got it. thanks. we're not in prod yet but preparing to be.

denik19:03:16

Is this possible?

(d/q '[:find ?un (pull ?u [*])
       :where
       [_ :app/user ?u]
       [?u :user/first-name ?f]
       [?u :user/last-name ?l]
       [(str ?f " " ?l) ?un]]
     @conn)

;; result
(["Alyssa Hacker"
  {:db/id 1,
   :user/first-name "Alyssa",
   :user/last-name "Hacker",}])

;; desired result:
{:db/id           1
 :user/first-name "Alyssa"
 :user/last-name  "Hacker"
 :user/full-name  "Alyssa Hacker”}

pesterhazy19:03:09

You're missing the middle initial, P

denik20:03:05

@pesterhazy it’s there just not querying for it 😉

wei23:03:29

is there any way to set the transactor timeout at run-time?

marshall23:03:41

Which timeout? And do you mean at launch or to change it while running?

wei23:03:40

the transaction timeout. and actually, to restate my question, is there an easy way to set the timeout if I’m using the default cloudformation template?

wei23:03:59

I assumed while running would be easier, if it’s supported