Fork me on GitHub
#datomic
<
2016-11-23
>
robert-stuttaford07:11:52

@zane, if you want the latest transaction for an entity, you’d need to query all its current attributes

robert-stuttaford07:11:38

[:find (max ?tx) :in $ ?e :where [?e _ _ ?tx]] is one approach

grav07:11:53

@marshall Ok, so regarding the Critical failure, cannot continue: Heartbeat failed error: - OS: Mac OS X - transactor command: ./bin/transactor -Xmx4g -Xms4g -Ddatomic.peerConnectionTTLMsec=20000 -Ddatomic.txTimeoutMsec=20000 config/samples/dev-transactor-template.properties - restore command: ./bin/datomic -Xmx4g -Xms4g restore-db file:/Users/mgn/Downloads/import-2016-11-08 datomic: - transactor log:

45741-2016-11-21 10:51:24.134 INFO  default    datomic.kv-cluster - {:event :kv-cluster/create-val, :val-key "5821b80f-e2af-4e7d-a02e-8fb9838bfd56", :bufsize 15561, :phase :begin, :pid 36803, :tid 64}
45742:2016-11-21 10:51:24.153 WARN  default    datomic.backup - {:message "error executing future", :pid 36803, :tid 10}
45743-java.util.concurrent.ExecutionException: java.util.concurrent.ExecutionException: org.h2.jdbc.JdbcSQLException: Connection is broken: "java.net.ConnectException: Connection refused (Connection refused): localhost:4335" [90067-171]
45744-	at java.util.concurrent.FutureTask.report(FutureTask.java:122) [na:1.8.0_111]
45745-	at java.util.concurrent.FutureTask.get(FutureTask.java:192) [na:1.8.0_111]
45746-	at datomic.common$pfuture$reify__319.deref(common.clj:587) ~[datomic-transactor-pro-0.9.5407.jar:na]
45747-	at clojure.core$deref.invokeStatic(core.clj:2228) ~[clojure-1.8.0.jar:na]
45748-	at clojure.core$deref.invoke(core.clj:2214) ~[clojure-1.8.0.jar:na]
45749-	at datomic.backup.ValueRestore.restore_node(backup.clj:446) ~[datomic-transactor-pro-0.9.5407.jar:na]
45750-	at datomic.backup.ValueRestore.restore_node(backup.clj:437) ~[datomic-transactor-pro-0.9.5407.jar:na]
45751-	at datomic.backup$restore_db$fn__9032$fn__9035.invoke(backup.clj:660) ~[datomic-transactor-pro-0.9.5407.jar:na]
45752-	at datomic.backup$restore_db$fn__9032.invoke(backup.clj:656) ~[datomic-transactor-pro-0.9.5407.jar:na]
45753-	at clojure.core$binding_conveyor_fn$fn__4676.invoke(core.clj:1938) [clojure-1.8.0.jar:na]
45754-	at clojure.lang.AFn.call(AFn.java:18) [clojure-1.8.0.jar:na]
45755-	at java.util.concurrent.FutureTask.run(FutureTask.java:266) [na:1.8.0_111]
45756-	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [na:1.8.0_111]
45757-	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [na:1.8.0_111]
45758-	at java.lang.Thread.run(Thread.java:745) [na:1.8.0_111]
45759-Caused by: java.util.concurrent.ExecutionException: org.h2.jdbc.JdbcSQLException: Connection is broken: "java.net.ConnectException: Connection refused (Connection refused): localhost:4335" [90067-171]
45760-	at java.util.concurrent.FutureTask.report(FutureTask.java:122) [na:1.8.0_111]
45761-	at java.util.concurrent.FutureTask.get(FutureTask.java:192) [na:1.8.0_111]
45762-	at datomic.common$pfuture$reify__319.deref(common.clj:587) ~[datomic-transactor-pro-0.9.5407.jar:na]
45763-	at clojure.core$deref.invokeStatic(core.clj:2228) ~[clojure-1.8.0.jar:na]
45764-	at clojure.core$deref.invoke(core.clj:2214) ~[clojure-1.8.0.jar:na]
45765-	at datomic.backup.ValueRestore$fn__8956.invoke(backup.clj:422) ~[datomic-transactor-pro-0.9.5407.jar:na]
45766-	at datomic.backup.ValueRestore.restore_val(backup.clj:419) ~[datomic-transactor-pro-0.9.5407.jar:na]
45767-	at datomic.backup.ValueRestore$fn__8966$fn__8967.invoke(backup.clj:444) ~[datomic-transactor-pro-0.9.5407.jar:na]
45768-	... 6 common frames omitted
45769-Caused by: org.h2.jdbc.JdbcSQLException: Connection is broken: "java.net.ConnectException: Connection refused (Connection refused): localhost:4335" [90067-171]
45770-	at org.h2.message.DbException.getJdbcSQLException(DbException.java:329) ~[h2-1.3.171.jar:1.3.171]
45771-	at org.h2.message.DbException.get(DbException.java:158) ~[h2-1.3.171.jar:1.3.171]
45772-	at org.h2.engine.SessionRemote.connectServer(SessionRemote.java:399) ~[h2-1.3.171.jar:1.3.171]

grav08:11:06

Oh, I get some exceptions before that, eg:

2016-11-23 09:07:43.231 INFO  default    datomic.kv-cluster - {:event :kv-cluster/retry, :StoragePutBackoffMsec 0, :attempts 0, :max-retries 9, :cause "org.h2.jdbc.JdbcSQLException", :pid 47395, :tid 64}
2016-11-23 09:07:43.231 INFO  default    datomic.kv-cluster - {:event :kv-cluster/retry, :StorageGetBackoffMsec 0, :attempts 0, :max-retries 9, :cause "org.h2.jdbc.JdbcSQLException", :pid 47395, :tid 87}
2016-11-23 09:07:43.283 INFO  default    datomic.kv-cluster - {:event :kv-cluster/retry, :StoragePutBackoffMsec 50.0, :attempts 1, :max-retries 9, :cause "org.h2.jdbc.JdbcSQLException", :pid 47395, :tid 64}
2016-11-23 09:07:43.306 INFO  default    datomic.kv-cluster - {:event :kv-cluster/retry, :StorageGetBackoffMsec 50.0, :attempts 1, :max-retries 9, :cause "org.h2.jdbc.JdbcSQLException", :pid 47395, :tid 87}
2016-11-23 09:07:43.385 INFO  default    datomic.kv-cluster - {:event :kv-cluster/retry, :StoragePutBackoffMsec 100.0, :attempts 2, :max-retries 9, :cause "org.h2.jdbc.JdbcSQLException", :pid 47395, :tid 64}
2016-11-23 09:07:43.408 INFO  default    datomic.kv-cluster - {:event :kv-cluster/retry, :StorageGetBackoffMsec 100.0, :attempts 2, :max-retries 9, :cause "org.h2.jdbc.JdbcSQLException", :pid 47395, :tid 87}
2016-11-23 09:07:43.586 INFO  default    datomic.kv-cluster - {:event :kv-cluster/retry, :StoragePutBackoffMsec 200.0, :attempts 3, :max-retries 9, :cause "org.h2.jdbc.JdbcSQLException", :pid 47395, :tid 64}
2016-11-23 09:07:43.613 INFO  default    datomic.kv-cluster - {:event :kv-cluster/retry, :StorageGetBackoffMsec 200.0, :attempts 3, :max-retries 9, :cause "org.h2.jdbc.JdbcSQLException", :pid 47395, :tid 87}
2016-11-23 09:07:43.987 INFO  default    datomic.kv-cluster - {:event :kv-cluster/retry, :StoragePutBackoffMsec 400.0, :attempts 4, :max-retries 9, :cause "org.h2.jdbc.JdbcSQLException", :pid 47395, :tid 64}
2016-11-23 09:07:44.018 INFO  default    datomic.kv-cluster - {:event :kv-cluster/retry, :StorageGetBackoffMsec 400.0, :attempts 4, :max-retries 9, :cause "org.h2.jdbc.JdbcSQLException", :pid 47395, :tid 87}
2016-11-23 09:07:44.310 INFO  default    datomic.process-monitor - {:tid 11, :StoragePutMsec {:lo 0, :hi 18500, :sum 134937, :count 1898}, :AvailableMB 3190.0, :StorageGetMsec {:lo 0, :hi 3370, :sum 22493, :count 1917}, :pid 47395, :event :metrics, :StoragePutBytes {:lo 5641, :hi 19880, :sum 29298291, :count 1903}, :MetricsReport {:lo 1, :hi 1, :sum 1, :count 1}, :StoragePutBackoffMsec {:lo 0, :hi 400, :sum 750, :count 5}, :StorageGetBackoffMsec {:lo 0, :hi 400, :sum 750, :co

jonpither09:11:29

Hi - Anyone setup logstash with Datomic (am using the AMI at present) - any tips appreciated!

karol.adamiec10:11:10

morning, i will shamelessly repeat my question i case anyone missed it 🙂.

[
{
       :db/id #db/id[:db.part/user -1]
       ;notice the lookup ref usage to obtain references. Lovely.
       :basket/owner [:user/email ""]
}
[:assertWithRetracts #db/id[:db.part/user -1] :basket/items []]
]
Why the above is not working? is #db/id[:db.part/user -1] working only inside an ‘expression’ and not in a whole transaction? Is there any way to tie that in so i do not have to write logic in code? 🤓

karol.adamiec11:11:35

BTW: what is transactional semantics in transact? all forms from the vector are part of one transaction i assume?

drankard12:11:07

Does anyone have an example of how to run gc-storage from the REST API ?

jonpither12:11:07

following the datomic SQL script to creata the Datomic RB and I get ERROR: permission denied for tablespace pg_default in RDS

zane14:11:04

@robert-stuttaford: Yeah, that's our current implementation. It's not particularly performant so we were looking for something faster. One option is to have an explicit attribute for updatedAt, but we're trying to avoid that.

pheuter14:11:32

We’d like to upgrade the process count on our current Datomic Pro License, how can we do so? Doesn’t seem like there’s a way via http://my.datomic.com