<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
<channel>
<title>Datomic Knowledgebase - Recent questions and answers in Datomic</title>
<link>https://ask.datomic.com/index.php/qa/datomic</link>
<description>Powered by Question2Answer</description>
<item>
<title>Answered: Datomic Pro's executable shell scripts (e.g. transactor.sh) fail on NixOS</title>
<link>https://ask.datomic.com/index.php/1880/datomic-pros-executable-shell-scripts-transactor-fail-nixos?show=1881#a1881</link>
<description>&lt;p&gt;Thanks for the report, I will assess options and confirm &lt;code&gt;#!/usr/bin/env bash&lt;/code&gt; works on existing environments.  &lt;/p&gt;
</description>
<category>On-Prem</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/1880/datomic-pros-executable-shell-scripts-transactor-fail-nixos?show=1881#a1881</guid>
<pubDate>Fri, 19 Dec 2025 14:10:14 +0000</pubDate>
</item>
<item>
<title>Answered: Why does changing the #inst reader make my query fail?</title>
<link>https://ask.datomic.com/index.php/1867/why-does-changing-the-inst-reader-make-my-query-fail?show=1871#a1871</link>
<description>&lt;p&gt;Favilla &lt;a rel=&quot;nofollow&quot; href=&quot;https://clojurians.slack.com/archives/C03RZMDSH/p1760974965677649?thread_ts=1760920013.654789&amp;amp;cid=C03RZMDSH&quot;&gt;answered this on Clojurians slack&lt;/a&gt;:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;Function expressions in queries are compiled with &lt;code&gt;eval&lt;/code&gt;. In your case it would be evaluating something like  &lt;code&gt;(clojure.core/fn [?exit] (java.util.Date/.before ?exit &amp;lt;j.u.Date-object&amp;gt;) ) &lt;/code&gt; &lt;br&gt;
But for reasons I don't know, clojure eval &lt;code&gt;invokes&lt;/code&gt; the reader on the date object:&lt;/p&gt;
&lt;/blockquote&gt;
&lt;pre&gt;&lt;code&gt;(def dr-instant
  (assoc *data-readers* 'inst (fn [cs] (java.util.Date/.toInstant (clojure.instant/read-instant-date cs)))))

(let [expr [(java.util.Date.)]]
  (-&amp;gt; (binding [*data-readers* dr-instant]
        (eval expr))
      first
      class))
;; =&amp;gt; java.time.Instant

(let [expr (list 'do (java.util.Date.))]
  (-&amp;gt; (binding [*data-readers* dr-instant]
        (eval expr))
      class))
;; =&amp;gt; java.util.Date

(let [expr (java.util.Date.)]
  (-&amp;gt; (binding [*data-readers* dr-instant]
        (eval expr))
      class))
;; =&amp;gt; java.util.Date
&lt;/code&gt;&lt;/pre&gt;
</description>
<category>On-Prem</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/1867/why-does-changing-the-inst-reader-make-my-query-fail?show=1871#a1871</guid>
<pubDate>Wed, 22 Oct 2025 00:04:36 +0000</pubDate>
</item>
<item>
<title>Using a collection of datoms as input to a query</title>
<link>https://ask.datomic.com/index.php/1089/using-a-collection-of-datoms-as-input-to-a-query</link>
<description>&lt;p&gt;I was wondering if there is a way to use a collection of datoms obtained from &lt;code&gt;d/tx-range + get a single tx&lt;/code&gt; or received from a listener that subscribed to a tx queue as input to &lt;code&gt; d/q&lt;/code&gt;? The nature of this collection looks very similar to history db which can be used with &lt;code&gt;d/q&lt;/code&gt;, however passing this collection as input does not produce the expected result. Neither there is any error.&lt;/p&gt;
</description>
<category>On-Prem</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/1089/using-a-collection-of-datoms-as-input-to-a-query</guid>
<pubDate>Thu, 24 Apr 2025 12:51:36 +0000</pubDate>
</item>
<item>
<title>Answered: Why does Datomic store all databases in a single datomic_kvs table instead of having a separate table per database?</title>
<link>https://ask.datomic.com/index.php/1085/datomic-databases-datomickvs-instead-separate-database?show=1086#a1086</link>
<description>&lt;p&gt;Hi Nikolay,&lt;/p&gt;
&lt;p&gt;Understood your desire for a separate KV table provisioned per DB. &lt;/p&gt;
&lt;p&gt;For Datomic Pro we tend to recommend that large mission-critical database have their own dedicated transactor and peer processes.  We discuss this in the documentation here &lt;a rel=&quot;nofollow&quot; href=&quot;https://docs.datomic.com/operation/capacity.html#multiple-databases&quot;&gt;https://docs.datomic.com/operation/capacity.html#multiple-databases&lt;/a&gt; because garbage collection pauses impact across all databases and other shared resources can impact one databases performance over another.&lt;/p&gt;
&lt;p&gt;I do want to point out that you can currently move your databases to their own separately provisioned systems, separate tables and transactor pairs + peers using backup and restore.  Backup one DB and move to a new table. &lt;a rel=&quot;nofollow&quot; href=&quot;https://docs.datomic.com/operation/backup.html&quot;&gt;https://docs.datomic.com/operation/backup.html&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;I have shared your feedback with the team, and we will consider features in this space. &lt;/p&gt;
&lt;p&gt;Thanks,&lt;br&gt;
Jaret&lt;/p&gt;
</description>
<category>On-Prem</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/1085/datomic-databases-datomickvs-instead-separate-database?show=1086#a1086</guid>
<pubDate>Tue, 18 Mar 2025 12:05:10 +0000</pubDate>
</item>
<item>
<title>Answered: &quot;No suitable driver&quot; when starting peer</title>
<link>https://ask.datomic.com/index.php/1068/no-suitable-driver-when-starting-peer?show=1078#a1078</link>
<description>&lt;p&gt;Hi Chip,&lt;/p&gt;
&lt;p&gt;Sorry for the late reply, you need to give your peer (the repl) the postgres dep so it has the driver:&lt;/p&gt;
&lt;p&gt;org.postgresql/postgresql {:mvn/version &quot;42.5.1&quot;}&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://docs.datomic.com/operation/storage.html#jdbc-drivers&quot;&gt;https://docs.datomic.com/operation/storage.html#jdbc-drivers&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;We only include this dep on the transactor and peers still require configuration.&lt;/p&gt;
&lt;p&gt;Cheers,&lt;br&gt;
Jaret&lt;/p&gt;
</description>
<category>On-Prem</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/1068/no-suitable-driver-when-starting-peer?show=1078#a1078</guid>
<pubDate>Tue, 25 Feb 2025 12:31:30 +0000</pubDate>
</item>
<item>
<title>Answered: Regression in latest datomic when transacting data &amp; schema in one tx</title>
<link>https://ask.datomic.com/index.php/1070/regression-latest-datomic-when-transacting-data-schema-one?show=1076#a1076</link>
<description>&lt;p&gt;@Mike&lt;/p&gt;
&lt;p&gt;You cannot create and use an attribute in the same transaction.  You have to separate them.  Without installed schema resulting from a transaction, datomic cannot perform tasks like uniqueness checks on subsequent transactions or be aware of the existence of the attribute.&lt;/p&gt;
&lt;p&gt;It would be great if you could recover what version of Datomic this ever &quot;worked&quot; on so I could understand the circumstances.  The only thing I can think of is this appeared to work perhaps on a &lt;code&gt;mem&lt;/code&gt; database? &lt;/p&gt;
&lt;p&gt;Thanks,&lt;br&gt;
Jaret&lt;/p&gt;
</description>
<category>On-Prem</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/1070/regression-latest-datomic-when-transacting-data-schema-one?show=1076#a1076</guid>
<pubDate>Tue, 25 Feb 2025 12:25:28 +0000</pubDate>
</item>
<item>
<title>Answered: How to deprecate a composite tuple?</title>
<link>https://ask.datomic.com/index.php/1035/how-to-deprecate-a-composite-tuple?show=1053#a1053</link>
<description>&lt;p&gt;I had the same problem, actually it was problem when an old composite tuple attribute was marked as unique so the solution was to retract unique constraint&lt;/p&gt;
</description>
<category>On-Prem</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/1035/how-to-deprecate-a-composite-tuple?show=1053#a1053</guid>
<pubDate>Mon, 06 Jan 2025 09:24:47 +0000</pubDate>
</item>
<item>
<title>Answered: transactor on-prem logging</title>
<link>https://ask.datomic.com/index.php/1037/transactor-on-prem-logging?show=1052#a1052</link>
<description>&lt;p&gt;You can utilize the logback.xml and logback configuration to turn down logging, turning off entire namespaces of logs or changing the level lower.&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://docs.datomic.com/operation/configuring-logging.html&quot;&gt;https://docs.datomic.com/operation/configuring-logging.html&lt;/a&gt;&lt;br&gt;
&lt;a rel=&quot;nofollow&quot; href=&quot;https://logback.qos.ch/&quot;&gt;https://logback.qos.ch/&lt;/a&gt;&lt;/p&gt;
</description>
<category>On-Prem</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/1037/transactor-on-prem-logging?show=1052#a1052</guid>
<pubDate>Fri, 03 Jan 2025 17:00:50 +0000</pubDate>
</item>
<item>
<title>Answered: import-cloud fails with &quot;No reader function for tag object&quot;</title>
<link>https://ask.datomic.com/index.php/999/import-cloud-fails-with-no-reader-function-for-tag-object?show=1034#a1034</link>
<description>&lt;p&gt;One hack I tried to get around this bug is to remove the key-value pair that irreversibly encodes the credentials provider in the db-local files.  The relevant file appears to be&lt;/p&gt;
&lt;p&gt;&lt;code&gt;./datomic/&amp;lt;system&amp;gt;/&amp;lt;db&amp;gt;/db-root-0000000000&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;This file seems to be a simple EDN file.&lt;/p&gt;
&lt;p&gt;But even if I remove the &lt;code&gt;:creds-provider&lt;/code&gt; key (which should not be required after the db is imported), I still can't connect to the imported db.  The &lt;code&gt;d/connect&lt;/code&gt; process gets much further along after a log of &lt;code&gt;Loading.....&lt;/code&gt;, but still ultimately fails with the same error.&lt;/p&gt;
&lt;p&gt;Maybe the creds providers is encoded somewhere else ...&lt;/p&gt;
</description>
<category>Cloud</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/999/import-cloud-fails-with-no-reader-function-for-tag-object?show=1034#a1034</guid>
<pubDate>Fri, 13 Sep 2024 13:37:11 +0000</pubDate>
</item>
<item>
<title>Answered: Dockerize Datomic</title>
<link>https://ask.datomic.com/index.php/441/dockerize-datomic?show=1024#a1024</link>
<description>&lt;p&gt;If folks are interested in an official Docker Image we would love to hear from you on your preferred JDK, storage protocol, classpath functions usage, and metrics callback.&lt;/p&gt;
&lt;p&gt;It would help us tremendously to understand what users are already doing in this area with their own images.  Please feel free to add a comment here with your current docker setup or wishlist.&lt;/p&gt;
</description>
<category>On-Prem</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/441/dockerize-datomic?show=1024#a1024</guid>
<pubDate>Mon, 24 Jun 2024 18:37:58 +0000</pubDate>
</item>
<item>
<title>Answered: is there a &quot;un-divert&quot; to undo divert-system</title>
<link>https://ask.datomic.com/index.php/1021/is-there-a-un-divert-to-undo-divert-system?show=1023#a1023</link>
<description>&lt;p&gt;@Phil&lt;/p&gt;
&lt;p&gt;No we do not currently have a feature to un-divert and switch back to the original endpoint.  I have logged this request with the dev team, but currently you would need to kill the process and start a new connection.  You can alternatively call divert again to a new &lt;code&gt;storage-dir&lt;/code&gt; location, but you cannot un-divert so that client calls go to the original endpoint.&lt;/p&gt;
&lt;p&gt;Cheers,&lt;br&gt;
Jaret&lt;/p&gt;
</description>
<category>Cloud</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/1021/is-there-a-un-divert-to-undo-divert-system?show=1023#a1023</guid>
<pubDate>Wed, 05 Jun 2024 11:39:51 +0000</pubDate>
</item>
<item>
<title>Answered: equality on d/entity ignores db</title>
<link>https://ask.datomic.com/index.php/859/equality-on-d-entity-ignores-db?show=1014#a1014</link>
<description>&lt;p&gt;Hi Datomic peeps. Would you please consider a fix for this, or open-sourcing Datomic? Beginners are getting bitten by this using Datomic with reactive engines like Electric. I only use &lt;code&gt;d/pull&lt;/code&gt; now and shy away from &lt;code&gt;d/entity&lt;/code&gt; to avoid this bug. Datomic's tx listener is well-suited to reactive engines.&lt;/p&gt;
</description>
<category>On-Prem</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/859/equality-on-d-entity-ignores-db?show=1014#a1014</guid>
<pubDate>Wed, 01 May 2024 08:38:35 +0000</pubDate>
</item>
<item>
<title>Using Valcache via Docker bind mounts</title>
<link>https://ask.datomic.com/index.php/1012/using-valcache-via-docker-bind-mounts</link>
<description>&lt;p&gt;I'm evaluating caching options for Datomic Pro. Valcache sounds like a great fit, but there is one thing that might be a showstopper.&lt;/p&gt;
&lt;p&gt;The &lt;a rel=&quot;nofollow&quot; href=&quot;https://docs.datomic.com/pro/operation/valcache.html#prerequisites&quot;&gt;Prerequisites docs&lt;/a&gt; says that &quot;Valcache relies on an SSD with the strictatime and lazytime flags set&quot;. This requirement I can meet pretty easily by remounting the disk on the hosts running the peers.&lt;/p&gt;
&lt;p&gt;Now, the applications that are Datomic peers, who would be the users of these Valcaches, run as Docker containers in a Docker Swarm. The idea is to mount the Valcache as a &lt;a rel=&quot;nofollow&quot; href=&quot;https://docs.docker.com/storage/bind-mounts/&quot;&gt;Docker bind mount&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Would this work? The underlaying SSD disk would be mounted with strictatime and lazytime, but would whatever mechanism that requires these flags to be set work through a Docker bind mount?&lt;/p&gt;
</description>
<category>On-Prem</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/1012/using-valcache-via-docker-bind-mounts</guid>
<pubDate>Thu, 11 Apr 2024 09:50:54 +0000</pubDate>
</item>
<item>
<title>Answered: How do I restart a gc-deleted-dbs after it got canceled in &quot;Deleting garbage segments&quot; phase?</title>
<link>https://ask.datomic.com/index.php/1004/restart-deleted-canceled-deleting-garbage-segments-phase?show=1007#a1007</link>
<description>&lt;p&gt;@TuggyNE&lt;/p&gt;
&lt;p&gt;What is your evidence that the job has not started again?  Is it simply that you are not seeing work being done?  You say it &quot;no longer recognizes any need to clean up garbage segments, the third stage&quot; what is the output of running it again?  Is there an error or does it complete?&lt;/p&gt;
</description>
<category>On-Prem</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/1004/restart-deleted-canceled-deleting-garbage-segments-phase?show=1007#a1007</guid>
<pubDate>Fri, 22 Mar 2024 11:45:48 +0000</pubDate>
</item>
<item>
<title>Possibly security issue with the dev H2 storage?</title>
<link>https://ask.datomic.com/index.php/1003/possibly-security-issue-with-the-dev-h2-storage</link>
<description>&lt;p&gt;While trying to understand more about the behaviour of Datomic dev (mainly from a security/encryption point of view), I attempted to connect to datomic.mv.db from an instance of the H2 console. I accidentally tried to log in as &quot;admin&quot; with a blank password and was surprised when I connected successfully. Connecting as &quot;admin&quot; with any password fails, so it seems explicitly to be blank. As far as I can tell I only have public  schema access and can't see any transacted data, but I am able to run SQL queries in the console.&lt;/p&gt;
&lt;p&gt;Clearly a dev transactor isn't intended to be high security, but admin with a blank password seems risky even for a dev environment. In most SQL environments I work with, the sa/admin account is just disabled if not used. Am I missing something?&lt;/p&gt;
&lt;p&gt;As an aside, does the dev transactor use H2's AES encryption or is the resulting data file unencrypted?&lt;/p&gt;
</description>
<category>On-Prem</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/1003/possibly-security-issue-with-the-dev-h2-storage</guid>
<pubDate>Wed, 13 Mar 2024 21:58:26 +0000</pubDate>
</item>
<item>
<title>Answered: Why is the pull pattern for wild card giving me an error?</title>
<link>https://ask.datomic.com/index.php/984/why-is-the-pull-pattern-for-wild-card-giving-me-an-error?show=985#a985</link>
<description>&lt;p&gt;It seems that the documentation is not clear on this, and the problem is related with the fact that you need to use [:*] in these situations, instead of the documented '[*].&lt;/p&gt;
</description>
<category>On-Prem</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/984/why-is-the-pull-pattern-for-wild-card-giving-me-an-error?show=985#a985</guid>
<pubDate>Wed, 31 Jan 2024 16:27:48 +0000</pubDate>
</item>
<item>
<title>Answered: how to run a dev transactor from the same process as a peer?</title>
<link>https://ask.datomic.com/index.php/964/how-to-run-a-dev-transactor-from-the-same-process-as-a-peer?show=977#a977</link>
<description>&lt;p&gt;Hi @Chpill.  The peer library can act in standalone mode, using an in-memory database as a stand-in for the other components. A memory DB is in the same process as your peer:&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://docs.datomic.com/pro/getting-started/connect-to-a-database.html#create-db&quot;&gt;https://docs.datomic.com/pro/getting-started/connect-to-a-database.html#create-db&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;code&gt;`&lt;/code&gt;(def db-uri &quot;datomic:mem://hello&quot;)&lt;code&gt;`&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;It will not persist and is entirely in memory, but seems like what you are after for development purposes.  Otherwise, as you have alluded we recommend process isolation per the design: &lt;a rel=&quot;nofollow&quot; href=&quot;https://docs.datomic.com/pro/operation/deployment.html?search=isolation#process-isolation&quot;&gt;https://docs.datomic.com/pro/operation/deployment.html?search=isolation#process-isolation&lt;/a&gt;?&lt;/p&gt;
</description>
<category>On-Prem</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/964/how-to-run-a-dev-transactor-from-the-same-process-as-a-peer?show=977#a977</guid>
<pubDate>Mon, 29 Jan 2024 00:10:49 +0000</pubDate>
</item>
<item>
<title>Answered: java.lang.IllegalStateException: Can't set!: *io-index* from non-binding thread</title>
<link>https://ask.datomic.com/index.php/965/java-lang-illegalstateexception-cant-index-binding-thread?show=967#a967</link>
<description>&lt;p&gt;I figured out this was caused by a custom transaction function that used &lt;code&gt;pmap&lt;/code&gt; to concurrently do &lt;code&gt;d/q&lt;/code&gt; queries.&lt;/p&gt;
&lt;p&gt;This used to work, but I assume it was never supported and stopped in recent releases.&lt;/p&gt;
&lt;p&gt;Just leaving this here in case anyone else hits this issue in the future.&lt;/p&gt;
</description>
<category>On-Prem</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/965/java-lang-illegalstateexception-cant-index-binding-thread?show=967#a967</guid>
<pubDate>Thu, 25 Jan 2024 22:44:55 +0000</pubDate>
</item>
<item>
<title>Answered: Can I run recent versions of Datomic in Windows?</title>
<link>https://ask.datomic.com/index.php/662/can-i-run-recent-versions-of-datomic-in-windows?show=963#a963</link>
<description>&lt;p&gt;My working solution:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;I have the necessity to run Datomic on a Windows Server which does not have a WSL and the following PowerShell script works.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;pre&gt;&lt;code&gt;if (-not $args[0]) {
        echo &quot;Usage: $PSCommandPath properties-file-or-uri&quot;
        return
}

$CP_LIST = &quot;bin;resources;&quot; + ((ls *transactor*.jar, lib\*.jar | % { $_.FullName }) -join ';')

java -server -Xms1024m -Xmx1024m -XX:+UseG1GC -cp $CP_LIST clojure.main --main datomic.launcher $args[0]
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;When placed under .\bin\transactor.ps1 I can run the command from the PowerShell and it successfully starts the server.&lt;/p&gt;
&lt;p&gt;Other scripts need also an update but at least I've got the transactor to run.&lt;/p&gt;
</description>
<category>On-Prem</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/662/can-i-run-recent-versions-of-datomic-in-windows?show=963#a963</guid>
<pubDate>Thu, 14 Dec 2023 17:29:11 +0000</pubDate>
</item>
<item>
<title>Answered: Is it possible to run a transactor within the scope of my application?</title>
<link>https://ask.datomic.com/index.php/957/is-it-possible-run-transactor-within-the-scope-application?show=960#a960</link>
<description>&lt;p&gt;Hi Tom,&lt;/p&gt;
&lt;p&gt;It's possible, but not recommended for the reasons you highlight around concerns for resource contention and more importantly the ability to reason about performance and reliability.  At scale you're going to want to have these things separated out.  Here are our docs:&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://docs.datomic.com/pro/operation/deployment.html#process-isolation&quot;&gt;https://docs.datomic.com/pro/operation/deployment.html#process-isolation&lt;/a&gt;?&lt;/p&gt;
&lt;p&gt;Cheers,&lt;br&gt;
Jaret&lt;/p&gt;
</description>
<category>On-Prem</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/957/is-it-possible-run-transactor-within-the-scope-application?show=960#a960</guid>
<pubDate>Tue, 12 Dec 2023 12:54:29 +0000</pubDate>
</item>
<item>
<title>Answered: Is it possible to separate Datomic On-Prem from Cloud?</title>
<link>https://ask.datomic.com/index.php/956/is-it-possible-to-separate-datomic-on-prem-from-cloud?show=958#a958</link>
<description>&lt;p&gt;Hi Tom,&lt;/p&gt;
&lt;p&gt;We have included the whole AWS SDK for historical reasons, but we are currently evaluating narrowing down the list to just the required dependencies in a future release of Pro.  I suspect this work will be prioritized in Q1, but please poke for updates.  The subset of what we need from the SDK is essentially S3, DynamoDB, KMS, SNS, EC2, ELB, CloudWatch, IAM, and CF.   You could attempt to narrow down the list yourself if you can't wait until we pick this work up. I may be forgetting something and if I am please do circle back with what you find as you might expedite our audit :).&lt;/p&gt;
&lt;p&gt;Cheers,&lt;br&gt;
Jaret&lt;/p&gt;
</description>
<category>On-Prem</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/956/is-it-possible-to-separate-datomic-on-prem-from-cloud?show=958#a958</guid>
<pubDate>Mon, 04 Dec 2023 15:55:33 +0000</pubDate>
</item>
<item>
<title>Answered: Database functions, Classpath functions, and Transaction functions</title>
<link>https://ask.datomic.com/index.php/948/database-functions-classpath-functions-transaction-functions?show=955#a955</link>
<description>&lt;p&gt;I think it could be clearer in our docs and I will talk about this with the team, but Class path functions are transaction functions as well as query functions.  You can add them in a different way, &lt;em&gt;the class path&lt;/em&gt;, vs just transacting the fn to the db&lt;/p&gt;
&lt;p&gt;Yes transaction functions/class path functions must be pure and free of side-effects: &lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://docs.datomic.com/cloud/transactions/transaction-functions.html#creating&quot;&gt;https://docs.datomic.com/cloud/transactions/transaction-functions.html#creating&lt;/a&gt;&lt;/p&gt;
</description>
<category>On-Prem</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/948/database-functions-classpath-functions-transaction-functions?show=955#a955</guid>
<pubDate>Fri, 03 Nov 2023 11:37:46 +0000</pubDate>
</item>
<item>
<title>Answered: Support java.time.instant</title>
<link>https://ask.datomic.com/index.php/449/support-java-time-instant?show=953#a953</link>
<description>&lt;p&gt;The lack of &lt;code&gt;java.time&lt;/code&gt; support is getting more and more annoying as our code-base grows.&lt;br&gt;
It turned out that even passing a &lt;code&gt;YearMonth&lt;/code&gt; value to a transaction function, which would convert it to &lt;code&gt;java.util.Date&lt;/code&gt; is not possible.&lt;/p&gt;
&lt;p&gt;I've tried to extend the transit reader &amp;amp; writer handlers, but it was not sufficient, because somewhere along the way the &lt;code&gt;YearMonth&lt;/code&gt; instance has been converted into a &lt;code&gt;com.cognitect.transit.impl.TaggedValueImpl&lt;/code&gt; and stayed like that when it reached our transaction function.&lt;/p&gt;
&lt;p&gt;The same transaction worked with &lt;code&gt;d/with&lt;/code&gt; though, because it doesn't seem to involve marshalling and unmarshalling.&lt;/p&gt;
&lt;p&gt;I've even checked within &lt;code&gt;datomic.client.impl.shared.io/marshal&lt;/code&gt;, that the marshalled byte-array, when unmarshalled, is equal to the input (&lt;code&gt;m&lt;/code&gt;)&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;(defn- marshal
  &quot;Encodes val as Transit data in msgpack. Returns a map with keys:

  :bytes - a Java byte array of the marshalled data
  :length - the length in bytes of the marshalled data.

  Note that for efficiency's sake the byte array may be longer than
  the returned length.&quot;
  [m]
  (clojure.pprint/pprint m)
  (let [stm (BytesOutputStream.)
        w (transit/writer stm :msgpack {:handlers write-handlers})]
    (transit/write w m)
    (let [unmarshalled (unmarshal (java.io.ByteArrayInputStream. (.internalBuffer stm)))]
      (clojure.pprint/pprint [unmarshalled (= m unmarshalled)]))
    {:bytes  (.internalBuffer stm)
     :length (.length stm)}))
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;the result:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;{:t 3857,
 :next-t 3858,
 :db-name &quot;predict&quot;,
 :database-id &quot;6652bfa3-2e73-445f-8379-2448f824cbf3&quot;,
 :tx-id #uuid &quot;25c92f68-a931-44b7-b96d-c4be8fa147fb&quot;,
 :tx-data
 [[ginoco.datomic.component/loophole #time/year-month &quot;2000-01&quot;]],
 :op :transact}

[{:t 3857,
  :next-t 3858,
  :db-name &quot;predict&quot;,
  :database-id &quot;6652bfa3-2e73-445f-8379-2448f824cbf3&quot;,
  :tx-id #uuid &quot;25c92f68-a931-44b7-b96d-c4be8fa147fb&quot;,
  :tx-data
  [[ginoco.datomic.component/loophole #time/year-month &quot;2000-01&quot;]],
  :op :transact}
 true]
&lt;/code&gt;&lt;/pre&gt;
</description>
<category>Datomic</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/449/support-java-time-instant?show=953#a953</guid>
<pubDate>Fri, 03 Nov 2023 06:22:11 +0000</pubDate>
</item>
<item>
<title>Answered: Is there way to use s3 compatible backup storage</title>
<link>https://ask.datomic.com/index.php/946/is-there-way-to-use-s3-compatible-backup-storage?show=951#a951</link>
<description>&lt;p&gt;@Dspiteself&lt;/p&gt;
&lt;p&gt;You're interested in backing up to a google cloud storage that is similar to S3?  Right now we only support s3 and file.  Does providing a file location to Google's storage option work? &lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://docs.datomic.com/pro/operation/backup.html#uri-syntax&quot;&gt;https://docs.datomic.com/pro/operation/backup.html#uri-syntax&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Which google storage are you hoping to use that is similar to S3? We can review to see if we can provide that option as a target for backup.&lt;/p&gt;
&lt;p&gt;-Jaret&lt;/p&gt;
</description>
<category>On-Prem</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/946/is-there-way-to-use-s3-compatible-backup-storage?show=951#a951</guid>
<pubDate>Wed, 01 Nov 2023 16:39:36 +0000</pubDate>
</item>
<item>
<title>Answered: Equivalents for d/with; transaction function test scaffold story when using cloud</title>
<link>https://ask.datomic.com/index.php/949/equivalents-transaction-function-scaffold-story-using-cloud?show=950#a950</link>
<description>&lt;p&gt;Hi Mike! &lt;/p&gt;
&lt;p&gt;The peer api is not usable in Cloud, but after thinking about your situation I have a few points. &lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;The client api has d/with: &lt;a rel=&quot;nofollow&quot; href=&quot;https://docs.datomic.com/client-api/datomic.client.api.html#var-with&quot;&gt;https://docs.datomic.com/client-api/datomic.client.api.html#var-with&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;I would recommend doing this kind of testing using Datomic local.  &lt;a rel=&quot;nofollow&quot; href=&quot;https://docs.datomic.com/cloud/datomic-local.html&quot;&gt;https://docs.datomic.com/cloud/datomic-local.html&lt;/a&gt;. (added benefit you can actually import your DB and test against it with import-cloud + utilize an in-memory DB locally).&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Does that cover your need for testing in Cloud?&lt;/p&gt;
&lt;p&gt;All that being said, I have captured your question and use case here for our on-going consideration of apis for Cloud/Pro.&lt;/p&gt;
&lt;p&gt;Cheers,&lt;br&gt;
Jaret&lt;/p&gt;
</description>
<category>Cloud</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/949/equivalents-transaction-function-scaffold-story-using-cloud?show=950#a950</guid>
<pubDate>Wed, 01 Nov 2023 16:34:58 +0000</pubDate>
</item>
<item>
<title>Answered: Why do values of :db.type/uri return as com.cognitect.transit.impl.URIImpl?</title>
<link>https://ask.datomic.com/index.php/943/why-values-type-uri-return-com-cognitect-transit-impl-uriimpl?show=944#a944</link>
<description>&lt;p&gt;I've reproduced this problem and we are working on a fix for a future release.  Will updated when I have more details.  &lt;/p&gt;
&lt;p&gt;Cheers,&lt;br&gt;
Jaret&lt;/p&gt;
</description>
<category>Cloud</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/943/why-values-type-uri-return-com-cognitect-transit-impl-uriimpl?show=944#a944</guid>
<pubDate>Tue, 10 Oct 2023 12:04:08 +0000</pubDate>
</item>
<item>
<title>Answered: Why does :db/ensure appear as an attribute in my entities?</title>
<link>https://ask.datomic.com/index.php/681/why-does-db-ensure-appear-as-an-attribute-in-my-entities?show=938#a938</link>
<description>&lt;p&gt;I just described the same question in &lt;a rel=&quot;nofollow&quot; href=&quot;https://forum.datomic.com/t/db-ensure-doesnt-seem-virtual/2296&quot;&gt;https://forum.datomic.com/t/db-ensure-doesnt-seem-virtual/2296&lt;/a&gt; with my own example.&lt;/p&gt;
&lt;p&gt;Based on the long silence, I'm guessing, it's just a mistake, imprecision or ambiguity in the documentation, that the &lt;code&gt;:db/ensure&lt;/code&gt; is described as virtual.&lt;/p&gt;
&lt;p&gt;It would be really helpful to clarify this in the docs, because people will just keep wasting time on wondering about it.&lt;/p&gt;
</description>
<category>Cloud</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/681/why-does-db-ensure-appear-as-an-attribute-in-my-entities?show=938#a938</guid>
<pubDate>Sat, 15 Jul 2023 04:50:52 +0000</pubDate>
</item>
<item>
<title>Is `(pull $db2 ?e [*])` supported officially?</title>
<link>https://ask.datomic.com/index.php/937/is-pull-db2-e-supported-officially</link>
<description>&lt;p&gt;The &lt;a rel=&quot;nofollow&quot; href=&quot;https://docs.datomic.com/cloud/query/query-data-reference.html?search=p#pull-expressions&quot;&gt;documentation&lt;/a&gt; only mentions the syntax without a &lt;code&gt;src-var&lt;/code&gt;:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;pull-expr                  = ['pull' variable pattern]&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;but found that this syntax also works:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;pull-expr                  = ['pull' src-var variable pattern]&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;I have a self-contained code example here, which demonstrates a use-case, where an entity is split between 2 Datomic databases, for privacy reasons:&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://forum.datomic.com/t/pull-db-entity-pattern-is-undocumented/2299&quot;&gt;https://forum.datomic.com/t/pull-db-entity-pattern-is-undocumented/2299&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Is this variant of the &lt;code&gt;pull-expr&lt;/code&gt; in Datalog queries are not supported officially?&lt;/p&gt;
&lt;p&gt;Should I use it in production or does it have some undefined behaviour, compared to its binary arity variant?&lt;/p&gt;
&lt;p&gt;Or the documentation is just incomplete?&lt;/p&gt;
</description>
<category>Cloud</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/937/is-pull-db2-e-supported-officially</guid>
<pubDate>Sat, 15 Jul 2023 04:42:45 +0000</pubDate>
</item>
<item>
<title>Datomic Cloud IAM role drift on setup - is this normal?</title>
<link>https://ask.datomic.com/index.php/935/datomic-cloud-iam-role-drift-on-setup-is-this-normal</link>
<description>&lt;p&gt;hi, just set up DC for the first time (ran the two AWS cloudformation templates). The storage stack is showing drift on the IAM managed policy &lt;code&gt;datomic-admin-...&lt;/code&gt;, shows 'MODIFIED', in red. Is this normal upon setup? (checking the changes in the 'versions' tab, the difference is addition of autoscaling and s3 actions to the policy; the second version, presumably causing the 'drift', was added during the provisioning). Is this just a setup artifact nothing to worry about? &lt;/p&gt;
</description>
<category>Cloud</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/935/datomic-cloud-iam-role-drift-on-setup-is-this-normal</guid>
<pubDate>Wed, 12 Jul 2023 09:34:33 +0000</pubDate>
</item>
<item>
<title>Answered: How create more one production compute?</title>
<link>https://ask.datomic.com/index.php/930/how-create-more-one-production-compute?show=931#a931</link>
<description>&lt;p&gt;Hi @Tatiana,&lt;/p&gt;
&lt;p&gt;If you are looking to add more compute to a Datomic Cloud system you have a few options:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;You can increase the compute size of your compute nodes.  &lt;a rel=&quot;nofollow&quot; href=&quot;https://docs.datomic.com/cloud/operation/growing-your-system.html&quot;&gt;https://docs.datomic.com/cloud/operation/growing-your-system.html&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;You can add more compute nodes via ASG (however, you will not see much benefits to scaling compute this way on a single DB system).&lt;/li&gt;
&lt;li&gt;This is probably, what you want... you can launch a query group against the same storage stack.  (&lt;a rel=&quot;nofollow&quot; href=&quot;https://docs.datomic.com/cloud/operation/growing-your-system.html#task-specific-query-groups&quot;&gt;https://docs.datomic.com/cloud/operation/growing-your-system.html#task-specific-query-groups&lt;/a&gt;) with more docs here explaining that query groups are a kind of compute group: &lt;a rel=&quot;nofollow&quot; href=&quot;https://docs.datomic.com/cloud/whatis/architecture.html#compute-groups&quot;&gt;https://docs.datomic.com/cloud/whatis/architecture.html#compute-groups&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Let me know if you have questions or more information on what specifically you are hoping to scale.&lt;/p&gt;
&lt;p&gt;Cheers,&lt;br&gt;
Jaret&lt;/p&gt;
</description>
<category>Cloud</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/930/how-create-more-one-production-compute?show=931#a931</guid>
<pubDate>Wed, 05 Jul 2023 14:35:00 +0000</pubDate>
</item>
<item>
<title>Answered: Why is this error message saying the entity can't be resolved?</title>
<link>https://ask.datomic.com/index.php/897/why-is-this-error-message-saying-the-entity-cant-be-resolved?show=900#a900</link>
<description>&lt;p&gt;Hi Chris,&lt;/p&gt;
&lt;p&gt;What is the schema for &lt;code&gt;:shape/source-shape&lt;/code&gt;? And can you query it?  I am suspect of this being related to the data type and unable to resolve the bigInt.  Also what version of Datomic are you using?&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;(d/q '[:find ?e
         :where [?e :shape/source-shape 1.7592186046217E13]]
       (d/db conn) )
   
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Cheers,&lt;br&gt;
Jaret&lt;/p&gt;
</description>
<category>On-Prem</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/897/why-is-this-error-message-saying-the-entity-cant-be-resolved?show=900#a900</guid>
<pubDate>Fri, 19 May 2023 13:20:22 +0000</pubDate>
</item>
<item>
<title>Answered: Support for DynamoDB compatible services</title>
<link>https://ask.datomic.com/index.php/898/support-for-dynamodb-compatible-services?show=899#a899</link>
<description>&lt;p&gt;Mikhail, &lt;/p&gt;
&lt;p&gt;Could you explain what you are actually trying to do?  Are you trying to use YDB as the underlying storage for Datomic? If so, why as in what specific properties are you interested in? &lt;/p&gt;
&lt;p&gt;Datomic pro uses all underlying storages in the same way as KV store.  Given that YDB is SQL you may already be able to get it running by following our &lt;a rel=&quot;nofollow&quot; href=&quot;https://docs.datomic.com/pro/overview/storage.html#sql-database&quot;&gt;SQL docs&lt;/a&gt; however, we have not tested YDB or evalutated if that storage is different enough to warrant it's own protocol and if that storage stack would have the requirements of a Datomic DB.  From reading the marketing on the site, it does indicate that it is strongly consistent which is the primary requirement for configuring a table space &lt;/p&gt;
&lt;p&gt;Or are you trying to utilize YDB from a Datomic system you are operating? &lt;/p&gt;
</description>
<category>On-Prem</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/898/support-for-dynamodb-compatible-services?show=899#a899</guid>
<pubDate>Fri, 19 May 2023 13:15:54 +0000</pubDate>
</item>
<item>
<title>Answered: How much does Datomic Pro Edition cost?</title>
<link>https://ask.datomic.com/index.php/177/how-much-does-datomic-pro-edition-cost?show=895#a895</link>
<description>&lt;p&gt;License is free. There are still support contracts available.&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://docs.datomic.com/pro/releases.html&quot;&gt;https://docs.datomic.com/pro/releases.html&lt;/a&gt;&lt;/p&gt;
</description>
<category>On-Prem</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/177/how-much-does-datomic-pro-edition-cost?show=895#a895</guid>
<pubDate>Sun, 30 Apr 2023 20:38:08 +0000</pubDate>
</item>
<item>
<title>Answered: Can a tuple value be added when one of the parts of the tuple is an lookup-ref?</title>
<link>https://ask.datomic.com/index.php/891/can-tuple-value-added-when-one-the-parts-the-tuple-lookup-ref?show=892#a892</link>
<description>&lt;p&gt;You don't have to specify the composite key's value usually, just its constituent attributes, because those imply the composite key and Datomic will add it to the resulting transaction automatically. &lt;/p&gt;
&lt;p&gt;So this should be sufficient:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;(d/transact
 (db/get-connection)
 {:tx-data [{:molecule-part/molecule [:molecule/legacy-id 717],
             :molecule-part/number 1}]})
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;That being said, if you want to update an existing entity, you do have to provide an attribute in a transaction, which is a &lt;code&gt;:db.unique/identity&lt;/code&gt;, so you would need the &lt;code&gt;:molecule-part/number+molecule [1 [:molecule/legacy-id 717]]&lt;/code&gt; map entry, which doesn't work.&lt;/p&gt;
&lt;p&gt;As discussed here:&lt;br&gt;
&lt;a rel=&quot;nofollow&quot; href=&quot;https://forum.datomic.com/t/troubles-with-upsert-on-composite-tuples/1355/6&quot;&gt;https://forum.datomic.com/t/troubles-with-upsert-on-composite-tuples/1355/6&lt;/a&gt;&lt;br&gt;
you would need to create a &lt;a rel=&quot;nofollow&quot; href=&quot;https://docs.datomic.com/cloud/transactions/transaction-functions.html#custom&quot;&gt;custom transaction function&lt;/a&gt;, which resolves the lookup refs used in your unique tuple attr and return entity IDs instead.&lt;/p&gt;
</description>
<category>Cloud</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/891/can-tuple-value-added-when-one-the-parts-the-tuple-lookup-ref?show=892#a892</guid>
<pubDate>Sun, 30 Apr 2023 15:38:18 +0000</pubDate>
</item>
<item>
<title>Answered: What defines a datomic on-prem system?</title>
<link>https://ask.datomic.com/index.php/883/what-defines-a-datomic-on-prem-system?show=889#a889</link>
<description>&lt;p&gt;A Datomic system is defined as a transactor pair (Active and Standby for HA) and all associated peers.  In addition, a Datomic system also includes the ability to run dev/staging/test environments in support of the licensed system. &lt;/p&gt;
</description>
<category>On-Prem</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/883/what-defines-a-datomic-on-prem-system?show=889#a889</guid>
<pubDate>Sat, 15 Apr 2023 02:38:28 +0000</pubDate>
</item>
<item>
<title>Answered: Backup Datomic Cloud to another account</title>
<link>https://ask.datomic.com/index.php/884/backup-datomic-cloud-to-another-account?show=888#a888</link>
<description>&lt;p&gt;Hi J,&lt;/p&gt;
&lt;p&gt;There is currently no backup solution for Datomic Cloud.  Nor is there an ability to import from s3.  This is an area we are very interested in providing a solution for and frankly has been an area the community has desired for a long time. We are actively working on features around this issue. &lt;/p&gt;
&lt;p&gt;I want to clarify what Cloud does have:&lt;/p&gt;
&lt;p&gt;All data in Datomic Cloud is stored in S3 (as well as other highly durable storages), which provides very high durability guarantees, making secondary data loss prevention (i.e. backup) unnecessary.&lt;/p&gt;
&lt;p&gt;However, we understand that in certain circumstances it may be desirable to ‘roll back’ a database. Datomic Cloud does not yet include the ability to ‘revert’ a database to a prior state.  Nor does it have the ability to move a database across system or across account.  We are working on features in this area and while I cannot provide a timeline for the features I do want to say we understand the need you have expressed.&lt;/p&gt;
&lt;p&gt;If you have any questions or would like to discuss operational concerns like this in Cloud I would be happy to have a call and you can reach me and our team at support@datomic.com to setup such a call.&lt;/p&gt;
&lt;p&gt;Cheers,&lt;br&gt;
Jaret&lt;/p&gt;
</description>
<category>Cloud</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/884/backup-datomic-cloud-to-another-account?show=888#a888</guid>
<pubDate>Fri, 14 Apr 2023 19:03:29 +0000</pubDate>
</item>
<item>
<title>Answered: Could not find artifact com.datomic:ion:jar:0.9.48 in central</title>
<link>https://ask.datomic.com/index.php/546/could-not-find-artifact-com-datomic-ion-jar-0-9-48-in-central?show=886#a886</link>
<description>&lt;p&gt;For those who have stumbled upon this very same issue, here are the permissions you need:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;{
    &quot;Version&quot;: &quot;2012-10-17&quot;,
    &quot;Statement&quot;: [
        {
            &quot;Sid&quot;: &quot;VisualEditor0&quot;,
            &quot;Effect&quot;: &quot;Allow&quot;,
            &quot;Action&quot;: [
                &quot;s3:GetObject&quot;,
                &quot;s3:GetBucketCORS&quot;,
                &quot;s3:ListBucket&quot;,
                &quot;s3:GetBucketLocation&quot;
            ],
            &quot;Resource&quot;: [
                &quot;arn:aws:s3:::*/*&quot;,
                &quot;arn:aws:s3:::datomic-releases-1fc2183a &quot;
            ]
        },
        {
            &quot;Sid&quot;: &quot;VisualEditor1&quot;,
            &quot;Effect&quot;: &quot;Allow&quot;,
            &quot;Action&quot;: &quot;s3:GetBucketLocation&quot;,
            &quot;Resource&quot;: &quot;arn:aws:s3:::*&quot;
        }
    ]
}
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Further steps would be to:&lt;br&gt;
 1. Create a dedicated Policy in AWS IAM&lt;br&gt;
 2. Create a dedicated User in AWS IAM specifically for Clojure CLI (e.g. &lt;code&gt;tools.deps&lt;/code&gt;)&lt;br&gt;
 3. Grant the User the previously created Policy (&quot;Permissions&quot; tab &amp;gt; &quot;Permission policies&quot;)&lt;br&gt;
 4. Create an Access key for the User (&quot;Security credentials&quot; tab &amp;gt; &quot;Access keys&quot;)&lt;br&gt;
 5. Save the generated AWS Access Key ID and AWS Secret Access Key&lt;br&gt;
 6. Add an S3 repo server to your local Maven config as per &lt;a rel=&quot;nofollow&quot; href=&quot;https://clojure.org/reference/deps_and_cli#_maven_s3_repos&quot;&gt;Deps and CLI docs&lt;/a&gt;, using &lt;code&gt;datomic-cloud&lt;/code&gt; as a server &lt;code&gt;id&lt;/code&gt;, so that &lt;code&gt;tools.deps&lt;/code&gt; are able to pick them up&lt;/p&gt;
&lt;p&gt;All these steps will help you to run &lt;code&gt;clojure -P&lt;/code&gt; (with whatever aliases you use in your project, e.g. &lt;code&gt;ion-dev&lt;/code&gt; or simply &lt;code&gt;dev&lt;/code&gt;) without the above error.&lt;/p&gt;
&lt;p&gt;P.S. It also makes sense to grant this permission to all other Administrators or PowerUsers via the same Policy.&lt;/p&gt;
</description>
<category>Cloud</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/546/could-not-find-artifact-com-datomic-ion-jar-0-9-48-in-central?show=886#a886</guid>
<pubDate>Tue, 04 Apr 2023 11:40:53 +0000</pubDate>
</item>
<item>
<title>Request Entity Too Large - clojure.lang.ExceptionInfo: Response body did not conform to Datomic client protocol</title>
<link>https://ask.datomic.com/index.php/882/request-clojure-exceptioninfo-response-conform-protocol</link>
<description>&lt;p&gt;There seems to be a bug in Datomic 990-9202 that breaks the d/tx-range function.&lt;/p&gt;
&lt;p&gt;Earlier I could use the tx-range function the fetch data from my database.&lt;/p&gt;
&lt;p&gt;But after upgrading to Datomic 990-9202 I get and exception when a transaction has too much data. &lt;/p&gt;
&lt;p&gt;&lt;code&gt;`&lt;/code&gt;&lt;br&gt;
clojure.lang.ExceptionInfo: Response body did not conform to Datomic client protocol&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;cognitect.anomalies/category: :cognitect.anomalies/incorrect
 cognitect.anomalies/message: &quot;Response body did not conform to Datomic client protocol&quot;
                 http-result: {:status 413,
                               :headers
                               {&quot;apigw-requestid&quot; &quot;Vg4UxisCDoEEJsQ=&quot;,
                                &quot;server&quot; &quot;Jetty(9.4.44.v20210927)&quot;,
                                &quot;connection&quot; &quot;keep-alive&quot;,
                                &quot;content-length&quot; &quot;38&quot;,
                                &quot;date&quot; &quot;Tue, 19 Jul 2022 12:17:47 GMT&quot;,
                                &quot;content-type&quot; &quot;application/json&quot;},
                               :body &quot;{\&quot;message\&quot;:\&quot;Request Entity Too Large\&quot;}&quot;}
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;code&gt;`&lt;/code&gt;&lt;/p&gt;
</description>
<category>Cloud</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/882/request-clojure-exceptioninfo-response-conform-protocol</guid>
<pubDate>Tue, 21 Mar 2023 12:26:20 +0000</pubDate>
</item>
<item>
<title>Answered: How can I connect to Datomic after upgrade to 990-9202, the bastion disappeared?</title>
<link>https://ask.datomic.com/index.php/880/how-connect-datomic-after-upgrade-9202-bastion-disappeared?show=881#a881</link>
<description>&lt;p&gt;I got it working!&lt;/p&gt;
&lt;p&gt;You don't need the the socks proxy anymore with the datomic client since the bastion is replaced with an  AWS api gateway.&lt;/p&gt;
&lt;p&gt;Go to your AWS console and look at the api gatewats&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://eu-central-1.console.aws.amazon.com/apigateway/main/apis&quot;&gt;https://eu-central-1.console.aws.amazon.com/apigateway/main/apis&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Click on datomic-YOUR-SYSTEM-NAME-client-api&lt;/p&gt;
&lt;p&gt;Use the Invoke URL as the value for the endpoint in your configuration when connecting to datomic.&lt;/p&gt;
&lt;p&gt;{:server-type :ion&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;      :region &quot;eu-central-1&quot; ;; e.g. us-east-1
      :system SYSTEM_NAME
      :endpoint  INVOKE_URL}
&lt;/code&gt;&lt;/pre&gt;
</description>
<category>Cloud</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/880/how-connect-datomic-after-upgrade-9202-bastion-disappeared?show=881#a881</guid>
<pubDate>Mon, 20 Mar 2023 14:23:59 +0000</pubDate>
</item>
<item>
<title>Answered: Could not find artifact com.datomic:datomic-free:jar:1.0.6610</title>
<link>https://ask.datomic.com/index.php/871/could-not-find-artifact-com-datomic-datomic-free-jar-1-0-6610?show=874#a874</link>
<description>&lt;p&gt;Hi Matt,&lt;/p&gt;
&lt;p&gt;You're correct in pointing to &lt;a rel=&quot;nofollow&quot; href=&quot;https://ask.datomic.com/index.php/453/datomic-free-releases-arent-uploaded-public-clojars-anymore&quot;&gt;https://ask.datomic.com/index.php/453/datomic-free-releases-arent-uploaded-public-clojars-anymore&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt; Datomic 0.9.5697, datomic-free is the last version of Datomic-free uploaded. Dev-local is the successor to datomic-free and is documented at: &lt;a rel=&quot;nofollow&quot; href=&quot;https://docs.datomic.com/cloud/dev-local.html&quot;&gt;https://docs.datomic.com/cloud/dev-local.html&lt;/a&gt; and you can get the latest dev-local here: &lt;a rel=&quot;nofollow&quot; href=&quot;https://cognitect.com/dev-tools&quot;&gt;https://cognitect.com/dev-tools&lt;/a&gt;. &lt;/p&gt;
&lt;p&gt;The problems raised in that thread for use cases of dev-local are all captured and being worked on for future releases of Dev local.&lt;/p&gt;
&lt;p&gt;Thanks,&lt;br&gt;
Jaret&lt;/p&gt;
</description>
<category>Cloud</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/871/could-not-find-artifact-com-datomic-datomic-free-jar-1-0-6610?show=874#a874</guid>
<pubDate>Thu, 02 Mar 2023 15:21:54 +0000</pubDate>
</item>
<item>
<title>Is it possible for Datomic On-prem to get the storage credentials from Secrets Manager or similar software?</title>
<link>https://ask.datomic.com/index.php/873/possible-datomic-storage-credentials-manager-similar-software</link>
<description>&lt;p&gt;Is there a way to run the transactor service without storing the credentials to disk?&lt;/p&gt;
</description>
<category>On-Prem</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/873/possible-datomic-storage-credentials-manager-similar-software</guid>
<pubDate>Thu, 02 Mar 2023 10:50:19 +0000</pubDate>
</item>
<item>
<title>Answered: d/with crashes when called rapidly in dev-local</title>
<link>https://ask.datomic.com/index.php/866/d-with-crashes-when-called-rapidly-in-dev-local?show=868#a868</link>
<description>&lt;p&gt;Thanks for the report!  I've made a ticket for Dev to review after the break.  &lt;/p&gt;
</description>
<category>Cloud</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/866/d-with-crashes-when-called-rapidly-in-dev-local?show=868#a868</guid>
<pubDate>Tue, 27 Dec 2022 12:30:15 +0000</pubDate>
</item>
<item>
<title>What's the state of the art in distributed Datomic?</title>
<link>https://ask.datomic.com/index.php/863/whats-the-state-of-the-art-in-distributed-datomic</link>
<description>&lt;p&gt;I'd like to get an idea of the state of the art in distributed Datomic.  FWIW, my wish list includes the ability for selected processing nodes to have local images and/or participate in federated global images, linked by CRDTs, etc. And a pony.&lt;/p&gt;
&lt;p&gt;-r&lt;/p&gt;
</description>
<category>Cloud</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/863/whats-the-state-of-the-art-in-distributed-datomic</guid>
<pubDate>Sun, 18 Dec 2022 00:37:33 +0000</pubDate>
</item>
<item>
<title>Querying 2000+ entities, by passing in uuids (Really slow)</title>
<link>https://ask.datomic.com/index.php/862/querying-2000-entities-by-passing-in-uuids-really-slow</link>
<description>&lt;p&gt;Passing in over 2000 uuids to mysql for a fairly simple query takes milliseconds to retrieve relevant data. However we're running into an issue with datomic where it takes noticeable longer. Is there a specific syntax to use when processing such long lists, or is the linked example the only way? &lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://docs.datomic.com/on-prem/query/query.html#collection-binding&quot;&gt;https://docs.datomic.com/on-prem/query/query.html#collection-binding&lt;/a&gt;&lt;/p&gt;
</description>
<category>Cloud</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/862/querying-2000-entities-by-passing-in-uuids-really-slow</guid>
<pubDate>Wed, 14 Dec 2022 09:24:29 +0000</pubDate>
</item>
<item>
<title>Inconsistency between d/pull and d/q + pull for non-existent entities</title>
<link>https://ask.datomic.com/index.php/860/inconsistency-between-pull-and-pull-for-existent-entities</link>
<description>&lt;p&gt;Inconsistency between d/pull and d/q + pull for non-existent entities&lt;/p&gt;
&lt;p&gt;Datomic returns a map with the &lt;code&gt;:db/id&lt;/code&gt; of the entity being pulled, even if the entity doesn't exist in the database. For example:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;(d/pull (d/db conn) '[*] 9999999999)
=&amp;gt; #:db{:id 9999999999}
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;This behavior is somewhat confusing, especially when using &lt;code&gt;d/pull&lt;/code&gt; with time filters. I was expecting &lt;code&gt;d/pull&lt;/code&gt; to return &lt;code&gt;nil&lt;/code&gt; or &lt;code&gt;#:db{:id nil}&lt;/code&gt; if the entity wasn't created at the given point in time. However, Datomic always returns a map with the entity ID:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;(d/pull (as-of (d/db conn) 1) '[*] 9999999999)
=&amp;gt; #:db{:id 9999999999}
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Surprisingly, I see the expected behavior if I pull the entity information from a query using &lt;code&gt;d/q&lt;/code&gt;:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;(d/q '{:find [(pull ?e [*])]
        :in   [?e]}
      (d/db conn) 9999999999)
=&amp;gt; [[#:db{:id nil}]]
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Is that difference in behavior expected? How can I determine if an entity existed at any point in time using &lt;code&gt;d/pull&lt;/code&gt;?&lt;/p&gt;
</description>
<category>Cloud</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/860/inconsistency-between-pull-and-pull-for-existent-entities</guid>
<pubDate>Sat, 10 Dec 2022 15:55:29 +0000</pubDate>
</item>
<item>
<title>How do you add relationship properties, e.g. the time a person met another person?</title>
<link>https://ask.datomic.com/index.php/854/how-you-relationship-properties-time-person-another-person</link>
<description>&lt;p&gt;I have some experience with Neo4j / cypher. In cypher relationships are first-class citizens, so they can have properties, which I really like.&lt;/p&gt;
&lt;p&gt;How do I do something similar with datalog? Do I have to have a &quot;mapping entity&quot; in between two entities that have a relationship?&lt;/p&gt;
</description>
<category>Cloud</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/854/how-you-relationship-properties-time-person-another-person</guid>
<pubDate>Mon, 07 Nov 2022 08:35:28 +0000</pubDate>
</item>
<item>
<title>Answered: How do you visualize your schema ?</title>
<link>https://ask.datomic.com/index.php/725/how-do-you-visualize-your-schema?show=743#a743</link>
<description>&lt;p&gt;&lt;strong&gt; Cross Posting From Clojurians Slack &lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://clojurians.slack.com/archives/C03RZMDSH/p1657539767346129?thread_ts=1657289252.653549&amp;amp;cid=C03RZMDSH&quot;&gt;Link to thread&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&quot;For anyone reading this thread the best available tool for processing native datomic schemata at the time of reading is schema-cartographer and it is free including the UI web app tool (thanks again @jarrodctaylor).&lt;/p&gt;
&lt;p&gt;I have played both with the UI and the serialization of schema into edn files. It takes some time to become adapted to the schema language/format and absorb the differences from the Entity-Relationship diagram and modeling but it definitely worth it.&lt;/p&gt;
&lt;p&gt;Newcomers into Datomic DBMS should pay attention that schema-cartographer utilizes Datomic Client-peer server connection, i.e. it requires datomic.client.api but it is not hard to read the code and change it to work with in-memory database and other kinds of connectivity. &quot;&lt;/p&gt;
</description>
<category>On-Prem</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/725/how-do-you-visualize-your-schema?show=743#a743</guid>
<pubDate>Tue, 06 Sep 2022 18:30:27 +0000</pubDate>
</item>
<item>
<title>Answered: Is there a way to create permanent aliases for reverse relationships?</title>
<link>https://ask.datomic.com/index.php/739/there-way-create-permanent-aliases-reverse-relationships?show=740#a740</link>
<description>&lt;p&gt;No, we currently do not allow you to make a permanent alias.  However, you could write a function to present this alias or are you saying that your example pull pattern does not work for displaying the alias in the results?  Finally, this example was counterintuitive to me too, but perhaps that is because to my eyes the relationship between part and whole seems backwards.  Is this exactly your schema or an example to try to capture the problem you were trying to solve for?&lt;/p&gt;
</description>
<category>Cloud</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/739/there-way-create-permanent-aliases-reverse-relationships?show=740#a740</guid>
<pubDate>Fri, 02 Sep 2022 14:59:50 +0000</pubDate>
</item>
<item>
<title>Answered: Hi guys, I need to retrieve id's from all users in database that are older then 30 days, every user has creation date.</title>
<link>https://ask.datomic.com/index.php/728/retrieve-users-database-that-older-days-every-user-creation?show=729#a729</link>
<description>&lt;p&gt;Howdy,&lt;/p&gt;
&lt;p&gt;There are a few ways to do this depending on your needs and how deep you want to go.   Datomic allows you to use functions in query.  So in this case, you can use the greater than comparator with clauses like:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;;Defining a date_start and date_end 30 day window
[?e :user/created ?d]
[(&amp;gt; ?d ?date_start)]
[(&amp;lt; ?d ?date_end)]
&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;We have an example using year here: &lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://docs.datomic.com/on-prem/query/query.html#predicate-expressions&quot;&gt;https://docs.datomic.com/on-prem/query/query.html#predicate-expressions&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;I hope this helps!&lt;/p&gt;
</description>
<category>On-Prem</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/728/retrieve-users-database-that-older-days-every-user-creation?show=729#a729</guid>
<pubDate>Tue, 09 Aug 2022 19:00:12 +0000</pubDate>
</item>
<item>
<title>Answered: How to add new entities (as references) to the many attribute of an existing entity?</title>
<link>https://ask.datomic.com/index.php/726/how-add-entities-references-many-attribute-existing-entity?show=727#a727</link>
<description>&lt;p&gt;This was answered here: &lt;a rel=&quot;nofollow&quot; href=&quot;https://stackoverflow.com/questions/73142317/in-datomic-how-to-add-new-entities-as-references-to-the-many-attribute-of-an&quot;&gt;https://stackoverflow.com/questions/73142317/in-datomic-how-to-add-new-entities-as-references-to-the-many-attribute-of-an&lt;/a&gt;&lt;br&gt;
Basically the 2nd and 3rd attempts are correct. I was trying to perform a cardinality Many operation on a cardinality One attribute.&lt;/p&gt;
</description>
<category>On-Prem</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/726/how-add-entities-references-many-attribute-existing-entity?show=727#a727</guid>
<pubDate>Thu, 28 Jul 2022 06:02:04 +0000</pubDate>
</item>
</channel>
</rss>