Fork me on GitHub
#datomic
<
2016-11-29
>
ustunozgur12:11:30

The licensing changes seem to be 2 steps forward, 1 step back. However, from a business perspective, I do sympathize with Cognitect.

kardan13:11:21

Yes, I fully understand that there need to be a path to pay. But I do find myself asking myself if I think my next project will become serious enough in a year to make me want to pay that yearly fee.

kardan13:11:15

But I know too little about Datomic to really say much. Maybe running on the same version is totally fine

robert-stuttaford13:11:46

considering what hassles using Datomic has saved us, the price is very cheap.

kardan13:11:41

I can image that. Reading back I might have sounded a bit harsh. But still something that one needs to be convinced about to take that path

robert-stuttaford13:11:55

of course. i suppose i didn’t take much convincing. don’t regret the decision for a second. it’ll be 4 years in production in Jan

robert-stuttaford13:11:46

@jaret @marshall typo on the tutorial Notice that /:db.cardinality/many captures ...

stask14:11:54

is there a way to automagically create a database when running peer-server if it doesn’t exist yet? i’m trying to build environment consisting of dev transactor and peer-server using docker-compose

marshall15:11:32

Peer Server can ‘create’ memory DBs, but you’ll need to use a Peer to create dev (or other storage) databases

jdubie15:11:43

i doesn’t seem like there is an index for this but is there anyway to get a vector or lazy-seq of all entity ids in a datomic database? these both throw exceptions

(datomic.api/index-range db :db/id nil nil)
(datomic.api/q '[:find ?e
                 :in $
                 :where [?e :db/id]]
                db))
CompilerException java.lang.IllegalArgumentException: :db.error/not-an-entity Unable to resolve entity: :db/id, compiling: ...
                                  ...                   
              datomic.api/index-range      api.clj:  178
             datomic.db.Db/indexRange       db.clj: 1747
          datomic.db/attr-index-range       db.clj:  799
                datomic.db/require-id       db.clj:  555
                    datomic.error/arg    error.clj:   55
                    datomic.error/arg    error.clj:   57
datomic.impl.Exceptions$IllegalArgumentExceptionInfo: :db.error/not-an-entity Unable to resolve entity: :db/id
    data: {:db/error :db.error/not-an-entity}
             clojure.lang.Compiler$CompilerException: java.lang.IllegalArgumentException: :db.error/not-an-entity Unable to resolve entity: :db/id, compiling: …

stask15:11:10

@marshal thanks, i was hoping to be able to create a full environment (transactor, peer-server, applications using client api) using docker-compose, will probably add some utility that uses peer library and just creates new db after transactor starts and before the peer-server starts

marshall16:11:20

@stask Yep - you should be able to ‘script’ that via a Peer

timgilbert16:11:37

Hey, looks like the Clojure API docs here are out of date: http://docs.datomic.com/clojure/index.html#datomic.api/log ...given that the memory database does now support the log API: http://blog.datomic.com/2016/08/log-api-for-memory-databases.html

marshall16:11:10

@timgilbert Thanks - i’ll fix it!

timgilbert16:11:34

Thanks @marshall! Also, can you point me to any docs for (d/history) apart from the docstring in the API docs?

timgilbert16:11:06

Awesome, thanks

shaunxcode18:11:37

are there any published details on the implementation of the peer server/client e.g. what network protocol is it using etc?

Alex Miller (Clojure team)19:11:24

There will be a lot more info released on that in the future