This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2021-08-16
Channels
- # announcements (3)
- # babashka (48)
- # beginners (35)
- # calva (3)
- # chlorine-clover (5)
- # clj-kondo (9)
- # cljdoc (20)
- # cljsrn (1)
- # clojure (55)
- # clojure-europe (33)
- # clojure-nl (3)
- # clojure-norway (6)
- # clojure-spec (7)
- # clojure-uk (27)
- # clojurescript (95)
- # closh (1)
- # conjure (1)
- # cursive (16)
- # datomic (30)
- # emacs (7)
- # honeysql (1)
- # hugsql (2)
- # introduce-yourself (2)
- # jobs (1)
- # lsp (30)
- # malli (22)
- # nbb (11)
- # news-and-articles (1)
- # off-topic (8)
- # pathom (21)
- # polylith (41)
- # portal (4)
- # practicalli (4)
- # protojure (1)
- # re-frame (14)
- # releases (1)
- # restql (1)
- # reveal (24)
- # sci (1)
- # sql (21)
- # vim (11)
- # xtdb (33)
Not sure where to report, there is a typo at https://docs.datomic.com/on-prem/operation/capacity.html#multiple-databases : "database, or or colocating multiple databases" and "For sh, is is not uncommon"
A question about multiple DBs and transactors. https://docs.datomic.com/on-prem/operation/capacity.html#multiple-databases: > When you serve multiple databases with Datomic, you have a choice of provisioning separate transactor pairs per database, or or colocating multiple databases on a single transactor pair. But I cannot find where to configure that. The only https://docs.datomic.com/on-prem/configuration/system-properties.html#transactor-properties or that can be https://docs.datomic.com/on-prem/overview/storage.html#cassandra is related to the storage cluster, nothing about individual DBs. I know I can start multiple peers / peer group and point each to a particular subset of DBs but I do not see how to run a number of transactors, each serving only a subset of DBs, and how to get the peers to connect to the correct transactor?
Yes, it seems so. So how should I understand this sentence: "you have a choice of provisioning separate transactor pairs per database"? 🙏
I see, thank you. So in the case of Cassandra, I would need one Cassandra cluster per a set of DBs. That makes sense.
The Datomic on-prem license is "per system". Do you know what a "system" is? Is it essentially per one HA transactor pair?
Thanks a lot!
Hope you don’t mind that I try again.
I’m seeing No space left on device - /opt/codedeploy-agent/deployment-root/.../bundle.tar
types of errors during deployments DownloadBundle
step. Seems like code deploy agent is running out of space for revisions archive.
Is there a way to change the root volume size that’s attached to the compute instance (running 884-9095, on t3.small w/ the default 8GB storage)?
Any idea why I might be getting "Could not transfer artifact com.datomic:datomic-pro:pom:1.0.6316 from/to http://my.datomic.com (https://my.datomic.com/repo): status code: 401, reason phrase: Unauthorized (401)" even though I have added <server<id>
to ~/.m2/settings.xml
as suggested by https://my.datomic.com/account ? 🙏 Could it be because my account is too new?
no, deps.edn / clj
Is there any open source code for the functionality of (selective) respooling datomic databases?
selectively lift data from an old db to a new one (as mentioned in some talks from Nubank).
history preserving but possibly rewriting/never transact certain things (GDPR use cases among other things).
The history-preserving method is usually called “decanting”. I’m not aware of any open source code for this and having written a few I’m not sure what it would contain--it tends to be very bespoke and depend on the data model
decanting is the word. Thanks for confirming that this tends to be use-case specific. This means we don't waste our time thinking about if with the ambition to build something from scratch.
the basic technique is read the tx log in order, transact that into the target db, and retain somewhere a mapping of eids in the old db to the new id as you go.
I guess https://github.com/fulcrologic/datomic-cloud-backup/ could be a good starting point? It also supports filtering/rerwriting data so that prod data can be used in a stage env in a privacy-friendly way
Thanks for the pointers and hints. We will look into this for our particular use-case. The devil is in the details, as always.
Hi! If I understand it right, you can enforce integrity constraints on data but must remember to include the relevant :db/ensure
on any transaction that creates/modifies the entity in question. How does that work for you in practice? Is it a non-problem or does it happen that a developer forgets to include it and makes a change that leads to invalid data (such as creating an employee without a (required) department)? Thank you!