This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2018-08-20
Channels
- # announcements (1)
- # bangalore-clj (27)
- # beginners (82)
- # boot (4)
- # chestnut (1)
- # cider (22)
- # cljs-dev (26)
- # cljsrn (4)
- # clojure (118)
- # clojure-dev (18)
- # clojure-italy (2)
- # clojure-losangeles (1)
- # clojure-nl (2)
- # clojure-russia (1)
- # clojure-spec (15)
- # clojure-uk (125)
- # clojurescript (61)
- # core-async (74)
- # cursive (2)
- # datomic (41)
- # duct (6)
- # editors (7)
- # emacs (3)
- # events (1)
- # figwheel-main (3)
- # fulcro (111)
- # hoplon (11)
- # jobs-discuss (97)
- # lein-figwheel (99)
- # off-topic (34)
- # onyx (4)
- # parinfer (9)
- # pedestal (4)
- # precept (2)
- # re-frame (5)
- # reagent (2)
- # reitit (4)
- # ring-swagger (11)
- # shadow-cljs (104)
- # spacemacs (4)
- # tools-deps (19)
- # vim (8)
- # yada (15)
as of ions becoming available, transaction functions are good to go in cloud, but they do have to be ions
@joshkh FWIW I use a combination of transaction fns and https://cjohansen.no/referentially-transparent-crud/ to ensure writes have all the correct associated effects. works well (but only with Ions or on-prem for txn fns)
We have the same problem! Let me know if you find a workaround, please
you can force trust the certificate locally, but that wonβt work for CI boxes
i hope Cognitect can provide information on how this happened and what they suggest the community of Datomic users do to prevent being blocked like this again. It's not convenient as it stands.
Mm I can trust in the browser, but how I do that with Leiningen?
you need to force-add the certificate to your truststore (different per OS)
Ah ok! I thought I had already done that with IntelliJ. It was asking about that, but I will double check it, thanks
I set up a solo Datomic Ion system last month, but now I'm having trouble getting datomic-socks-proxy
to connect to the bastion, despite verifying that my stack is running and bastion instance is running. I've set AWS keys with aws configure
and manually with export AWS_ACCESS_KEY=...
and secret key.
When I run bash datomic-socks-proxy my-system
, I get (redacted IP and system name):
download: s3://..../datomic/access/private-keys/bastion to ../../.ssh/datomic--my-system-bastion
OpenSSH_7.6p1, LibreSSL 2.6.2
debug1: Reading configuration data /Users/my-user/.ssh/config
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 48: Applying options for *
debug1: Connecting to 34.249... port 22.
ssh: connect to host 34.249... port 22: Operation timed out
What am I doing wrong here?Fixed by adding an inbound rule for SSH port 22 π
The SSL cert on http://my.datomic.com has expired ?
thereβs a thread above about this. no message from Cognitect/Datomic team yet
@len we can't build either π i imagine many are having problems at the moment.
Fixed by adding an inbound rule for SSH port 22 π
hopefully we get some sort of message here π
Sorry for the outage! The problem has been resolved and should not occur. Please use the support system https://www.datomic.com/support.html for time-sensitive issues.
How to do in-memory Datomic testing with datomic.client.api
, e.g. for testing Datomic Ions? Do I need to pull in datomic.api
as well?
We have been using this for about a month now and it has made development much faster and CI testing far easier: https://github.com/ComputeSoftware/datomic-client-memdb
This looks cool and seems to support on-prem Datomic. Have you thought about Cloud support?
@UAMEU7QV7 Not sure what you mean. The purpose of this library is to support local development & testing when you use Datomic Cloud in production π Sorry for the lack of documentation on the lib - haven't had time to write anything.
Oh. I quickly glanced over the code and thought it was on-prem. This looks great! Thanks!
Hi @kenny, thanks for this. I'm having a hard time querying the LocalDb, though. I can transact and retrieve the raw datoms I transacted, but when I query an instance of LocalDb with (dc/q ...), no results are not being returned. It seems that the implementation of q from client-impl/Queryable
is not being called. Also, transact returns datomic.db.Db in :keys [db-after db--before] instead of LocalDb, which can't be queried directly.
Hnnng, resolved: I was calling (dc/transact conn [{:db/id -1 :contact/name "Test Name"}])
(which returned just fine) instead of (dc/transact conn {:tx-data [{:db/id "new-entity" :contact/name "Test Name"}]})
. Queries now run π I hope Spec will detect this kind of thing
@kenny submitted PR for LocalDB casting in transact
: https://github.com/theronic/datomic-client-memdb/pull/1
@U051SPP9Z Yeah, the change in the transact
format has bitten me many times. I've commented in this channel about it before and got no response :man-shrugging::skin-tone-2:.
Hmm, that is a bug. Also a downside to implementing it the way I did. Can you open that PR against the repo?
Originally I implemented the lib using extend-type
on the peer Connection and Db but I ran into the issue of being unable to store extra information on the object (`:db-name` and :t
), so I went with the deftype
approach. The downside there is that now we need to coerce all returned dbs into LocalDb
in order to use them with the Client API.
The other problem was I could not add an implementation of clojure.lang.ILookup
to datomic.db.Db
because ILookup
is an interface, not a protocol. Not sure if there is a workaround for that one.
Question: if I transact the same data twice (same entity, same values) will Datomic create a new transaction for that? i.e. will the transaction counter be updated?
the smallest possible transaction has one datom: [the-new-tx-id :db/txInstant the-transaction-time true the-new-tx-id]
I see. Thanks, @U09R86PA4
Hi @kenny, thanks for this. I'm having a hard time querying the LocalDb, though. I can transact and retrieve the raw datoms I transacted, but when I query an instance of LocalDb with (dc/q ...), no results are not being returned. It seems that the implementation of q from client-impl/Queryable
is not being called. Also, transact returns datomic.db.Db in :keys [db-after db--before] instead of LocalDb, which can't be queried directly.
Hnnng, resolved: I was calling (dc/transact conn [{:db/id -1 :contact/name "Test Name"}])
(which returned just fine) instead of (dc/transact conn {:tx-data [{:db/id "new-entity" :contact/name "Test Name"}]})
. Queries now run π I hope Spec will detect this kind of thing