datahike 2025-11-13

When my app attempts to transact to the datahike-server, I am getting execution error No method in multimethod 'store-identity' for dispatch value: :jdbc.

The full error (from my client app) is:

DEBUG [datahike.http.writer:33] - Creating datahike-server writer for  #datahike/Connection[[:jdbc "postgresql" "d7ve533vj5jfre" nil] :db] {:backend :datahike-server, :url "", :token "securerandompassword"}
2025-11-13T00:06:31.529779+00:00 app[web.1]: 2025-11-13T00:06:31.529Z 6dfa75bc-49d8-4893-8365-c2da1a63978e DEBUG [datahike.http.writer:16] - Sending operation to datahike-server: transact!
2025-11-13T00:06:32.324837+00:00 app[web.1]: Execution error (ExceptionInfo) at datahike.http.client/request-json$fn (client.clj:123).
2025-11-13T00:06:32.324849+00:00 app[web.1]: No method in multimethod 'store-identity' for dispatch value: :jdbc

you need to make sure that the datahike-jdbc namespace is required in the server before you try to connect; @alekcz360 has a way to inject setup code into the server startup for this

I was able to resolve but now I am seeing:

ERROR [datahike.connector:87] - Database was written with newer Datahike version. {:type :db-was-written-with-newer-datahike-version, :stored "0.6.1594", :now "0.6.1554", ...
@alekcz360 The version of datahike made available in your Github fixed to 0.6.1554?

i think you should be able to bump versions

Ok. Alek's instructions in "Building the image yourself" has this note:

... (contains modifications for runtime backend loading) ...

i will let alex answer about the repo, but i think you should be able to bump the datahike version

@feedmyinbox02_clojuri you need two env vars or you need to put them in your config:

DH_EXTRA_DEPS=[[io.replikativ/datahike-jdbc "0.3.50  [org.postgresql/postgresql "42.7.5"]]

DH_STORES=datahike-jdbc.core
This loads the jdbc lib and it's deps when the server boots

My Heroku config vars have been:

DATAHIKE_EXTRA_DEPS=[[io.replikativ/datahike-jdbc "0.3.47"]
  [io.replikativ/datahike-postgres "0.1.0"]
  [alekcz/konserve-jdbc "0.2.0-SNAPSHOT"]]
and
DATAHIKE_STORES=datahike-jdbc.core

I am creating the configuration from Heroku config vars bc I have been able to get that to work; I am still getting the following:

Database was written with newer Datahike version. {:type :db-was-written-with-newer-datahike-version, :stored "0.6.1594", :now "0.6.1554", :config ... }

I didn't expect this to work but I now have a functioning writer after adding [io.replikativ/datahike "0.6.1594"] to my DATAHIKE_EXTRA_DEPS.

The error is because the main datahike repo only includes the file and memory store by default.