https://github.com/nextjournal/datalevin-example.apps.garden
A demo for setting up datalevin within application.garden projects
https://github.com/nextjournal/datalevin-example.apps.garden
application-garden
Last synced: 9 months ago
JSON representation
A demo for setting up datalevin within application.garden projects
- Host: GitHub
- URL: https://github.com/nextjournal/datalevin-example.apps.garden
- Owner: nextjournal
- Created: 2024-02-28T13:59:50.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2024-06-24T12:36:14.000Z (over 1 year ago)
- Last Synced: 2025-04-11T21:09:11.227Z (9 months ago)
- Topics: application-garden
- Language: Clojure
- Homepage:
- Size: 4.88 KB
- Stars: 4
- Watchers: 6
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# [datalevin-example.apps.garden](https://datalevin-example.apps.garden)
A demo for setting up [datalevin](https://github.com/juji-io/datalevin?tab=readme-ov-file#datalevin) within [application.garden](https://application.garden) projects.
## Deploy Strategy
When using Datalevin with file storage back-end, app must be restarted on re-deploy, otherwise you'll see resource unavailable errors or similar:
`Platform constant error code: EAGAIN Resource temporarily unavailable (11)`
Make sure to include `:deploy-strategy :restart` in your `garden.edn` file.
## JVM Opts
These JVM opts are required for Datalevin to access the file storage, make sure to include them in `:nextjournal/garden` alias in `deps.edn`:
```clojure
{:aliases
:nextjournal/garden
{:exec-fn your.ns/-main
:jvm-opts ["--add-opens=java.base/java.nio=ALL-UNNAMED"
"--add-opens=java.base/sun.nio.ch=ALL-UNNAMED"]}}
```
You can find more details in the Datalevin's [install docs](https://github.com/juji-io/datalevin/blob/master/doc/install.md#clojure-library).