Fork me on GitHub
Oliver George09:01:03

Should it be possible to use the aws cloudformation cli to spin up a datomic solo stack? I've not had much luck trying.


Does Datomic on-prem support Java 11? This page says not but I find that surprising:


@cbowdon not yet. we’re working on supporting newer java. hopefully in a release soon


Thanks 🙂


@olivergeorge it should be, although I’ve never tried it myself

Oliver George22:01:14

Thanks. My exploration was somewhat chaotic. I'll try again. Would be nice to have a "one step solo/dev setup" of an app.

Oliver George23:01:44

Yeah, works fine. I'd managed to screw up my aws account somehow.

aws cloudformation create-stack --stack-name MYAPP --template-body  --parameters  --capabilities CAPABILITY_NAMED_IAM
With params of
{"ParameterKey": "KeyName", "ParameterValue": "MYAPP"},
{"ParameterKey": "EnvironmentMap", "ParameterValue": "{:env :dev}"}

Oliver George22:01:00

In case it's of interest. I'm able to reproduce the problem I had before. As a developer, I want to be able to setup and tear down datomic stacks including reusing an old stack name. Steps to repeat: • aws cloudformation create-stack --stack-name MYAPP ... (as above) • (wait) • aws cloudformation delete-stack --stack-name MYAPP • (wait) • aws cloudformation create-stack --stack-name MYAPP ... (as above) Expect: stack comes up cleanly Actual: stack creation fails, storage related even reports: Embedded stack arn:aws:cloudformation:ap-southeast-2:826491830380:stack/actinium-StorageF7F305E7-GDBDL32025UD/d9de1d70-19dd-11e9-b73f-0a7bf1960652 was not successfully created: The following resource(s) failed to create: [DatomicCmk, CatalogTable, FileSystem, LogGroup, LogTable].

Oliver George22:01:38

It's a slow process so hopefully I'm not leading you astray.


You’d have to check the “keep existing storage” the second time you create


which i assume you can pass as a parameter, but not sure how


err. reuse storage


whatever it’s called


also, is this using the master template or are you launching storage and compute separately?

Oliver George02:01:32

Okay, thanks. I suspect there is still something buggy in the delete-stack side of things. Another case which seemed repeatable was (create stack A, delete stack A, create stack B) but the error was different that time. Not hurting me enough to fight anymore as it requires recreating a fresh account each time it gets stuck.

Oliver George02:01:42

I was using the solo master template.

Oliver George02:01:20

Thanks for the tip about needing to specify when reusing existing storage. I'll read up.


Attempting to delete a solo CloudFormation stack, and it’s stuck trying to delete resource with logical ID AvailabilityZones of type Custom::ResourceQuery. I’m afraid I may have tampered with something I shouldn’t have while it was in progress…any tips for manually deleting this resource?


I may be doomed to waiting a few hours for the stack to fail to delete:


Why does Datomic pull return cardinality many values as a vector instead of a set?


depending on the sub-pull, the entries may not be unique


you get one entry per entity



(d/pull d [:db/id {:my-many-ref-attr [:db/id :my-not-unique-str-attr]}] 17592277488932)
{:db/id 17592277488932,
 :my-many-ref-attr [{:db/id 17592277488933,
                     :my-not-unique-str-attr "not-unique-value"}
                    {:db/id 17592277488934,
                     :my-not-unique-str-attr "not-unique-value"}]}

(d/pull d [:db/id {:my-many-ref-attr [:my-not-unique-str-attr]}] 17592277488932)
{:db/id 17592277488932,
 :my-many-ref-attr [{:my-not-unique-str-attr "not-unique-value"}
                    {:my-not-unique-str-attr "not-unique-value"}]}


if it were a set, the second result would not be possible


Oh, that only applies for ref attributes, correct?