<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
<channel>
<title>Datomic Knowledgebase - Recent questions and answers in On-Prem</title>
<link>https://ask.datomic.com/index.php/qa/datomic/on-prem</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: 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: 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: 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: 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: 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>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: 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: 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>
<item>
<title>Answered: Transactor timeout on transaction function throw</title>
<link>https://ask.datomic.com/index.php/718/transactor-timeout-on-transaction-function-throw?show=723#a723</link>
<description>&lt;p&gt;Hi David,&lt;/p&gt;
&lt;p&gt;Thanks for the summary. I have noted that the error is not reported properly. This is a good candidate for a future enhancement. &lt;/p&gt;
&lt;p&gt;Currently the recommendation (as you noted above) is to not return arbitrary things in the payload of the exception. Attempting to serialize arbitrary data will not be future functionality.&lt;/p&gt;
</description>
<category>On-Prem</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/718/transactor-timeout-on-transaction-function-throw?show=723#a723</guid>
<pubDate>Wed, 08 Jun 2022 20:55:29 +0000</pubDate>
</item>
<item>
<title>Answered: Inconsistent return value using set?</title>
<link>https://ask.datomic.com/index.php/717/inconsistent-return-value-using-set?show=722#a722</link>
<description>&lt;p&gt;Hello David,&lt;/p&gt;
&lt;p&gt;Thanks for the question. Fressian serialization between tx and peer guarantees only the Java collection interfaces. We have updated the &lt;a rel=&quot;nofollow&quot; href=&quot;https://docs.datomic.com/on-prem/reference/database-functions.html#limitations-of-transaction-functions&quot;&gt;docs&lt;/a&gt; to include this detail.&lt;/p&gt;
</description>
<category>On-Prem</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/717/inconsistent-return-value-using-set?show=722#a722</guid>
<pubDate>Wed, 08 Jun 2022 20:25:14 +0000</pubDate>
</item>
<item>
<title>Is using entid function to resolve lookup refs a supported behaviour?</title>
<link>https://ask.datomic.com/index.php/721/using-entid-function-resolve-lookup-refs-supported-behaviour</link>
<description>&lt;p&gt;I'm using &lt;code&gt;datomic.api/entid&lt;/code&gt; to resolve a lookup ref to an entity ID, like&lt;br&gt;
&lt;code&gt;$ (entid db [:user/id &quot;test@test.com&quot;])
17592186045432&lt;/code&gt;&lt;br&gt;
This works fine, but a colleague pointed out this is not a documented behaviour.&lt;br&gt;
&amp;gt;Usage: (entid db ident)&lt;br&gt;
&amp;gt;Returns the entity id associated with a symbolic keyword, or the id&lt;br&gt;
itself if passed.&lt;/p&gt;
&lt;p&gt;Is this a gap in documentation, or is this behaviour accidental and not recommended to rely on?&lt;/p&gt;
</description>
<category>On-Prem</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/721/using-entid-function-resolve-lookup-refs-supported-behaviour</guid>
<pubDate>Wed, 08 Jun 2022 13:30:29 +0000</pubDate>
</item>
<item>
<title>Answered: Advice on CVEs of h2 version 1.3.171</title>
<link>https://ask.datomic.com/index.php/713/advice-on-cves-of-h2-version-1-3-171?show=714#a714</link>
<description>&lt;p&gt;These CVEs should not affect your Datomic System.&lt;/p&gt;
&lt;p&gt;We are continually adjusting our dependencies to account for security issues. I would not suggest trying to override this dependency on your own as it could cause issues with your system.&lt;/p&gt;
&lt;p&gt;In the future I suggest creating a support ticket via support@cognitect.com. We have a 2 day response SLA for customers.&lt;/p&gt;
</description>
<category>On-Prem</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/713/advice-on-cves-of-h2-version-1-3-171?show=714#a714</guid>
<pubDate>Wed, 20 Apr 2022 12:50:16 +0000</pubDate>
</item>
<item>
<title>Answered: Long blocking on event `:kv-cluster/get-val` without timeout/retry/failover semantics?</title>
<link>https://ask.datomic.com/index.php/631/blocking-event-cluster-without-timeout-failover-semantics?show=700#a700</link>
<description>&lt;p&gt;I think the most probably culprit for this is a lack of &lt;code&gt;socketTimeout&lt;/code&gt; property on the PostgreSQL connection string. Here is a quote from HikariCP's Rapid Recovery page:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;When TCP communication is abruptly interrupted, the client or server&lt;br&gt;
can be left awaiting the acknowledgement of a packet that will never&lt;br&gt;
come. The connection is therefore &quot;stuck&quot;, until an operating system&lt;br&gt;
level TCP timeout occurs. This can be as long as several hours,&lt;br&gt;
depending on the operating system TCP stack tuning.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;And it continues:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;In order to avoid this condition, it is imperative that the&lt;br&gt;
application configures the driver-level TCP socket timeout. Each&lt;br&gt;
driver differs in how this timeout is set, but nearly all drivers&lt;br&gt;
support it. &lt;/p&gt;
&lt;p&gt;HikariCP recommends that the driver-level socket timeout be set to (at&lt;br&gt;
least) 2-3x the longest running SQL transaction, or 30 seconds,&lt;br&gt;
whichever is longer. However, your own recovery time targets should&lt;br&gt;
determine the appropriate timeout for your application.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://github.com/brettwooldridge/HikariCP/wiki/Rapid-Recovery&quot;&gt;https://github.com/brettwooldridge/HikariCP/wiki/Rapid-Recovery&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;We have been facing a similar situation, and after setting &lt;code&gt;socketTimeout=30&lt;/code&gt;, &lt;code&gt;:kv-cluster/get-val&lt;/code&gt; will recover after 30s instead of 16 minutes.&lt;/p&gt;
&lt;p&gt;Here is an example Datomic and PostgreSQL connection string:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;datomic:sql://somedb?jdbc:postgresql://somehost:5432/datomic?user=datomic@somedb&amp;amp;password=xxx&amp;amp;sslmode=require&amp;amp;socketTimeout=30
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Notice &lt;code&gt;&amp;amp;socketTimeout=30&lt;/code&gt; at the end.&lt;/p&gt;
&lt;p&gt;Please note that the timeout value of 15 or 16 minutes is something that the OS decides. Running on Azure (&quot;our OS&quot;), we have been waiting for a TCP packet for about 24 hours.&lt;/p&gt;
&lt;p&gt;I think the Datomic setup instructions should definitely recommend setting the &lt;code&gt;socketTimeout&lt;/code&gt; parameter.&lt;/p&gt;
&lt;p&gt;Best regards.&lt;/p&gt;
</description>
<category>On-Prem</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/631/blocking-event-cluster-without-timeout-failover-semantics?show=700#a700</guid>
<pubDate>Thu, 27 Jan 2022 17:28:31 +0000</pubDate>
</item>
<item>
<title>Answered: Retrieving tx from a entity - attribute pair without doing a query on history db</title>
<link>https://ask.datomic.com/index.php/693/retrieving-from-entity-attribute-without-doing-query-history?show=695#a695</link>
<description>&lt;p&gt;In the normal database the tuple &lt;code&gt;[E A V Tx added?]&lt;/code&gt; is availiable for all datoms added but not retracted (all visible datoms).&lt;/p&gt;
&lt;p&gt;If you know the datom you refer in the query exists (is added but not retracted) you can just give &lt;code&gt;my-db&lt;/code&gt; as the argument to the query, you don't have to create a history db of it.&lt;/p&gt;
</description>
<category>On-Prem</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/693/retrieving-from-entity-attribute-without-doing-query-history?show=695#a695</guid>
<pubDate>Mon, 10 Jan 2022 21:58:59 +0000</pubDate>
</item>
<item>
<title>Answered: Why is :db.unique/identity only allowed on :db.cardinality/one?</title>
<link>https://ask.datomic.com/index.php/690/why-is-db-unique-identity-only-allowed-on-db-cardinality-one?show=691#a691</link>
<description>&lt;p&gt;I decided to not trust the documentation and, as of version &lt;em&gt;0.9.5697&lt;/em&gt; of datomic-free, &lt;strong&gt;:db.cardinality/many&lt;/strong&gt; attributes can be &lt;strong&gt;:db.unique/identity&lt;/strong&gt;, in disagreement with:&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://docs.datomic.com/on-prem/schema/identity.html#unique-identities&quot;&gt;https://docs.datomic.com/on-prem/schema/identity.html#unique-identities&lt;/a&gt;&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;Uniqueness can be declared on attributes of any value type, including&lt;br&gt;
references (:db.type/ref). Only (:db.cardinality/one) attributes can&lt;br&gt;
be unique.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;In testing I found that the schema of a &lt;strong&gt;:db.cardinality/many :db.unique/identity&lt;/strong&gt; attribute was accepted and that entity upsert worked fine across multiple instances of the attribute (i.e. the right behavior).&lt;/p&gt;
&lt;p&gt;How can we get the documentation updated?&lt;/p&gt;
</description>
<category>On-Prem</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/690/why-is-db-unique-identity-only-allowed-on-db-cardinality-one?show=691#a691</guid>
<pubDate>Tue, 21 Dec 2021 18:47:10 +0000</pubDate>
</item>
<item>
<title>Answered: Renaming attribute best practice in development</title>
<link>https://ask.datomic.com/index.php/635/renaming-attribute-best-practice-in-development?show=666#a666</link>
<description>&lt;p&gt;I would suggest you look into &lt;a rel=&quot;nofollow&quot; href=&quot;https://github.com/avescodes/conformity&quot;&gt;https://github.com/avescodes/conformity&lt;/a&gt;, which helps you solve the issue by making the various norms dependent on each other, and probably saves you some time if you restart your environment often.&lt;/p&gt;
</description>
<category>On-Prem</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/635/renaming-attribute-best-practice-in-development?show=666#a666</guid>
<pubDate>Wed, 22 Sep 2021 22:05:30 +0000</pubDate>
</item>
<item>
<title>Retracting entities, including tuples with refs</title>
<link>https://ask.datomic.com/index.php/660/retracting-entities-including-tuples-with-refs</link>
<description>&lt;p&gt;In my schema I have attributes of type tuple that has :db.type/ref as one of the tuple's types.&lt;br&gt;
My usecase is maintaining a set of ordered to-many relations.&lt;/p&gt;
&lt;p&gt;When I retract an entity using :db/retractEntity, the tuple attrs that refer to the retracted entity still remain, continuing to refer to a now non-existent entity.&lt;br&gt;
I'm not sure whether this is the intended behaviour, and if so, what would be a standard approach to clean up these tuples? My intention would be for these tuples to be completely redacted. As I'm using this in a cardinality-many setup, I'd expect the attribute to retain all tuple values, except the one that does include the ref to the retracted entity in any position.&lt;br&gt;
Should I be writing a custom retractEntity-like transaction function?&lt;br&gt;
Thanks!&lt;/p&gt;
</description>
<category>On-Prem</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/660/retracting-entities-including-tuples-with-refs</guid>
<pubDate>Tue, 31 Aug 2021 13:36:44 +0000</pubDate>
</item>
<item>
<title>Answered: How do I remove a unique tuple constraint?</title>
<link>https://ask.datomic.com/index.php/523/how-do-i-remove-a-unique-tuple-constraint?show=629#a629</link>
<description>&lt;p&gt;Hi, you just need to execute retract attribute value:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;(:db/retract :ps2st/product-set+style-tier :unique :db.unique/identity)
&lt;/code&gt;&lt;/pre&gt;
</description>
<category>On-Prem</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/523/how-do-i-remove-a-unique-tuple-constraint?show=629#a629</guid>
<pubDate>Fri, 18 Jun 2021 15:07:24 +0000</pubDate>
</item>
<item>
<title>Answered: Do Peers work with Java 11?</title>
<link>https://ask.datomic.com/index.php/625/do-peers-work-with-java-11?show=626#a626</link>
<description>&lt;p&gt;Yes, we are committed to supporting and testing on the LTS (long-term support) versions of Java (8 and now 11). We will support and test with Java 17 the upcoming LTS release for 2021.  That being said, other versions of Java will likely work with both transactors and peers, but we only support and test LTS versions.&lt;/p&gt;
</description>
<category>On-Prem</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/625/do-peers-work-with-java-11?show=626#a626</guid>
<pubDate>Thu, 10 Jun 2021 22:15:29 +0000</pubDate>
</item>
<item>
<title>Does the transactor eagerly fill memcached with indexed segments?</title>
<link>https://ask.datomic.com/index.php/605/does-transactor-eagerly-fill-memcached-with-indexed-segments</link>
<description>&lt;p&gt;The datomic &lt;a rel=&quot;nofollow&quot; href=&quot;https://docs.datomic.com/on-prem/overview/caching.html#memcached&quot;&gt;transactor memcached documentation&lt;/a&gt; says this:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;When configured to used memcached, a Datomic process will automatically write into memcached any segment it needs that is not already present in memcached. &lt;strong&gt;In addition, the transactor (only) will write index and log segments to memcached as the segments are produced.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;(Emphasis mine.)&lt;/p&gt;
&lt;p&gt;Based on this sentence and assuming a memcached memory pool larger than the storage size that is shared by transactor and peer, my expectation is the following:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;As the transactor is building an index, it writes newly-created index segments to storage &lt;em&gt;and&lt;/em&gt; to memcached at roughly the same time.&lt;/li&gt;
&lt;li&gt;When the index is finished, it commits the new index root and informs all peers of the new index.&lt;/li&gt;
&lt;li&gt;Any peers using the &lt;em&gt;same&lt;/em&gt; memcached cluster should, at the moment the index is released:&lt;ul&gt;
&lt;li&gt;have a &lt;em&gt;decreasing&lt;/em&gt; ObjectCache hitrate because newly-indexed segments are not cached&lt;/li&gt;
&lt;li&gt;but an &lt;em&gt;increasing&lt;/em&gt; memcached GET count&lt;/li&gt;
&lt;li&gt;and a flat StorageGet and MemcachedPut count because the segments are already in memcached&lt;/li&gt;
&lt;li&gt;For an overall flat or increasing memcached hitrate.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Instead, what I actually see is that when peers accept a new index,&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;there's a &lt;em&gt;dramatic&lt;/em&gt; decrease in Memcached hitrate&lt;/li&gt;
&lt;li&gt;and increase in MemcachedPut counts and Storage Get counts.&lt;/li&gt;
&lt;li&gt;The &lt;code&gt;IndexWrite&lt;/code&gt; count reported by the transactor is very similar to the MemcachedPut count reported by the peer.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;This behavior is consistent with the transactor &lt;em&gt;not&lt;/em&gt; writing newly-indexed segments into memcached eagerly while indexing, which is contrary to the documentation.&lt;/p&gt;
&lt;p&gt;So the question: &lt;strong&gt;Does the transactor &lt;em&gt;really&lt;/em&gt; write index segments to memcached as it is indexing?&lt;/strong&gt;&lt;/p&gt;
</description>
<category>On-Prem</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/605/does-transactor-eagerly-fill-memcached-with-indexed-segments</guid>
<pubDate>Wed, 07 Apr 2021 15:21:18 +0000</pubDate>
</item>
<item>
<title>Answered: “Error communicating with HOST localhost on PORT 4334” on fresh install of 1.0.6165</title>
<link>https://ask.datomic.com/index.php/588/error-communicating-with-host-localhost-port-fresh-install?show=589#a589</link>
<description>&lt;p&gt;Circling back here as Micah resolved this issue and shared with us the resolution.  This issue was caused by running on Java 15 which is not supported.  LTS versions of Java are supported with Datomic on-prem.&lt;/p&gt;
</description>
<category>On-Prem</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/588/error-communicating-with-host-localhost-port-fresh-install?show=589#a589</guid>
<pubDate>Thu, 11 Feb 2021 13:06:35 +0000</pubDate>
</item>
<item>
<title>Answered: Error message when querying dev-local</title>
<link>https://ask.datomic.com/index.php/552/error-message-when-querying-dev-local?show=559#a559</link>
<description>&lt;p&gt;Hi!  The error you are getting indicates that &lt;code&gt;:release/name&lt;/code&gt; is not an installed attribute.  From the snippet you shared it looks like you are creating your own DB.  But I believe you might have meant to use the provided samples.  To do that you need to download our samples zip and unzip into your &lt;code&gt;:storage-dir&lt;/code&gt;.  The link for the zip and instructions on unzipping the Datomic samples can be found here:&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://docs.datomic.com/cloud/dev-local.html#samples&quot;&gt;https://docs.datomic.com/cloud/dev-local.html#samples&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Let me know if you have any issues!&lt;/p&gt;
</description>
<category>On-Prem</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/552/error-message-when-querying-dev-local?show=559#a559</guid>
<pubDate>Thu, 17 Dec 2020 15:38:00 +0000</pubDate>
</item>
<item>
<title>Answered: What does the memcached/item-too-large log warning mean?</title>
<link>https://ask.datomic.com/index.php/484/what-does-the-memcached-item-too-large-log-warning-mean?show=485#a485</link>
<description>&lt;p&gt;&lt;code&gt;MemcacheditemTooLarge&lt;/code&gt; represents a segment that is too big to fit in &lt;code&gt;memcached&lt;/code&gt;; the limit for this is (i think) 1Mb. Segments are made up of many &lt;code&gt;datoms&lt;/code&gt; and can become large when you’re storing blobs. However, they can also be large due to frequently updated string values with the same leading sections and another common cause is large (as in # of &lt;code&gt;datoms&lt;/code&gt;) transactions.  Datomic does not split individual transactions across segment boundaries.&lt;/p&gt;
&lt;p&gt;Having the occasional item too large to fit into memcached can be expected, but I would recommend investigating to make sure that:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;your hit rate is not dropping too low (something you've already reviewed)&lt;/li&gt;
&lt;li&gt;understand what particular flavor of item too large you have and see if you can address&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;You can investigate further by looking at what particular segment was too large to fit into memcached and addressing  what you're storing or how large your transactions are.  &lt;/p&gt;
&lt;p&gt;We'd be happy to walk you through the process of investigating a segment via our support portal.  Please feel free to log a ticket here and we can describe the process:&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://support.cognitect.com/hc/en-us/requests/new&quot;&gt;https://support.cognitect.com/hc/en-us/requests/new&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://docs.datomic.com/on-prem/caching.html#memcached&quot;&gt;Documentation on Memcached&lt;/a&gt;&lt;/p&gt;
</description>
<category>On-Prem</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/484/what-does-the-memcached-item-too-large-log-warning-mean?show=485#a485</guid>
<pubDate>Tue, 27 Oct 2020 18:50:31 +0000</pubDate>
</item>
<item>
<title>Answered: Relation between T and :db/txInstant</title>
<link>https://ask.datomic.com/index.php/457/relation-between-t-and-db-txinstant?show=479#a479</link>
<description>&lt;p&gt;Hi! &lt;/p&gt;
&lt;p&gt;The relationship between &lt;code&gt;t&lt;/code&gt; and &lt;code&gt;tx&lt;/code&gt; is that each transaction has an associated &lt;code&gt;t&lt;/code&gt; time.  Every &lt;code&gt;t&lt;/code&gt; has associated &lt;code&gt;tx(s)&lt;/code&gt;. You can use the Datomic On-Prem peer api &lt;code&gt;t-&amp;gt;tx&lt;/code&gt; api to return the associated &lt;code&gt;txid(s)&lt;/code&gt;:&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://docs.datomic.com/on-prem/clojure/index.html#datomic.api/t-%3Etx&quot;&gt;https://docs.datomic.com/on-prem/clojure/index.html#datomic.api/t-&amp;gt;tx&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Alternatively, you can use Datomic On-prem peer api &lt;code&gt;tx-&amp;gt;t&lt;/code&gt; api to return the &lt;code&gt;t&lt;/code&gt; associated with a transaction:&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://docs.datomic.com/on-prem/clojure/index.html#datomic.api/tx-%3Et&quot;&gt;https://docs.datomic.com/on-prem/clojure/index.html#datomic.api/tx-&amp;gt;t&lt;/a&gt;&lt;/p&gt;
</description>
<category>On-Prem</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/457/relation-between-t-and-db-txinstant?show=479#a479</guid>
<pubDate>Mon, 26 Oct 2020 17:27:35 +0000</pubDate>
</item>
<item>
<title>Expose an alt-port transactor configuration property</title>
<link>https://ask.datomic.com/index.php/469/expose-an-alt-port-transactor-configuration-property</link>
<description>&lt;p&gt;The alt-host configuration property is great and helps in many scenarios, but not having an equivalent for the port (alt-port?) is a blocker in some other scenarios. It would be great to have such property, which would default to the same port as the transactor is listening.&lt;/p&gt;
</description>
<category>On-Prem</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/469/expose-an-alt-port-transactor-configuration-property</guid>
<pubDate>Sun, 25 Oct 2020 19:45:14 +0000</pubDate>
</item>
<item>
<title>Allow for setting transactor properties using environment variables</title>
<link>https://ask.datomic.com/index.php/470/allow-setting-transactor-properties-environment-variables</link>
<description>&lt;p&gt;Datomic should be able to read it's settings from environment variables, following a naming standard like what Spring Boot does. E.g.:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;DATOMIC_LICENSE_KEY&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;DATOMIC_PROTOCOL&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;DATOMIC_PORT&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;…&lt;/li&gt;
&lt;/ul&gt;
</description>
<category>On-Prem</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/470/allow-setting-transactor-properties-environment-variables</guid>
<pubDate>Sun, 25 Oct 2020 18:08:09 +0000</pubDate>
</item>
<item>
<title>Support AWS dynamo point in time backup in on-prem.</title>
<link>https://ask.datomic.com/index.php/468/support-aws-dynamo-point-in-time-backup-in-on-prem</link>
<description>&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://aws.amazon.com/blogs/aws/new-amazon-dynamodb-continuous-backups-and-point-in-time-recovery-pitr/&quot;&gt;https://aws.amazon.com/blogs/aws/new-amazon-dynamodb-continuous-backups-and-point-in-time-recovery-pitr/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Currently Datomic supplies backup/restore capability here:&lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://docs.datomic.com/on-prem/backup.html&quot;&gt;https://docs.datomic.com/on-prem/backup.html&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Dynamo's PITR remains untested for use with Datomic DBs. Implementation of this feature would ensure that using Dynamo's PITR causes no issues on a Datomic DB.&lt;/p&gt;
</description>
<category>On-Prem</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/468/support-aws-dynamo-point-in-time-backup-in-on-prem</guid>
<pubDate>Sun, 25 Oct 2020 16:57:02 +0000</pubDate>
</item>
<item>
<title>New engine for executing java scripts on the transactor</title>
<link>https://ask.datomic.com/index.php/455/new-engine-for-executing-java-scripts-on-the-transactor</link>
<description>&lt;p&gt;Is it planned to consider another script executing engines than &lt;strong&gt;janino&lt;/strong&gt;? There is script evaluator provided by &lt;strong&gt;groovy.lang.GroovyShell&lt;/strong&gt; which can execute java scripts too. I  have compared the time to evaluate the same java script by both engines and groovy engine executes significantly faster. Another positive side effect: support of groovy scripts. I believe using of new script evaluator will make improvements to the time of executing transactor functions written in java &lt;/p&gt;
&lt;p&gt;&lt;a rel=&quot;nofollow&quot; href=&quot;https://docs.groovy-lang.org/latest/html/api/groovy/lang/GroovyShell.html&quot;&gt;https://docs.groovy-lang.org/latest/html/api/groovy/lang/GroovyShell.html&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;UPD.&lt;/strong&gt; How much are java transactor scripts executted longer than clojure transactor scripts?&lt;/p&gt;
</description>
<category>On-Prem</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/455/new-engine-for-executing-java-scripts-on-the-transactor</guid>
<pubDate>Fri, 23 Oct 2020 13:52:54 +0000</pubDate>
</item>
<item>
<title>Can datomic.api/q be used inside or/or-join to query data from other DB?</title>
<link>https://ask.datomic.com/index.php/454/can-datomic-api-be-used-inside-or-or-join-query-data-from-other</link>
<description>&lt;p&gt;Hi, when I'm executing query in repl in such way:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;(d/q &quot;[:find
 [?Post ...]
 :in
 $
 $comment
 [?Post_value_0 ...]
 :where

[?Post :IModel/typeName ?Post_value_0]
(or-join 
 [?Post ?Comment_text_value_3]

 [(datomic.api/q
   \&quot;[:find [?Comment_uid_2 ...] :in $ :where 
   [?Comment_by_text_1 :Comment/text _]
   [?Comment_by_text_1 :IModel/uid ?Comment_uid_2]
   ]\&quot;
   $comment)
  [?Comment_uid_2 ...]]

  [(datomic.api/q
   \&quot;[:find [?Comment_uid_2 ...] :in $ :where 
   [?Comment_by_text_1 :Comment/text _]
   [?Comment_by_text_1 :IModel/uid ?Comment_uid_2]
   ]\&quot;
   $comment)
  [?Comment_uid_2 ...]]

)
 [?Post :Post/comments ?Comment_uid_2]
]
&quot; (d/db conn) (d/db connComment) #{&quot;Post&quot;})
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;The next error is returned:&lt;br&gt;
&lt;strong&gt;:db.error/not-an-entity Unable to resolve entity: :Comment/text&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;My supposing is that query inside &lt;strong&gt;datomic.api/q&lt;/strong&gt; is executed for database returned by &lt;strong&gt;(d/db conn)&lt;/strong&gt; but not &lt;strong&gt;(d/db connComment)&lt;/strong&gt; because if I create &lt;strong&gt;:Comment/text&lt;/strong&gt; for the first database from input list then query is executed without errors.&lt;/p&gt;
&lt;p&gt;If to avoid &lt;strong&gt;or-join&lt;/strong&gt; and execute the query in the next way:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;(d/q &quot;[:find
 [?Post ...]
 :in
 $
 $comment
 [?Post_value_0 ...]
 :where

[?Post :IModel/typeName ?Post_value_0]
 [?Post ?Comment_text_value_3]

 [(datomic.api/q
   \&quot;[:find [?Comment_uid_2 ...] :in $ :where 
   [?Comment_by_text_1 :Comment/text _]
   [?Comment_by_text_1 :IModel/uid ?Comment_uid_2]
   ]\&quot;
   $comment)
  [?Comment_uid_2 ...]]

  [(datomic.api/q
   \&quot;[:find [?Comment_uid_2 ...] :in $ :where 
   [?Comment_by_text_1 :Comment/text _]
   [?Comment_by_text_1 :IModel/uid ?Comment_uid_2]
   ]\&quot;
   $comment)
  [?Comment_uid_2 ...]]


 [?Post :Post/comments ?Comment_uid_2]
]
&quot; (d/db conn) (d/db connComment) #{&quot;Post&quot;})
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;then query is executed without errors.&lt;/p&gt;
&lt;p&gt;Datamic on prem 0.9.6.* version&lt;/p&gt;
</description>
<category>On-Prem</category>
<guid isPermaLink="true">https://ask.datomic.com/index.php/454/can-datomic-api-be-used-inside-or-or-join-query-data-from-other</guid>
<pubDate>Fri, 23 Oct 2020 10:53:08 +0000</pubDate>
</item>
</channel>
</rss>