datomic

Ask questions on the official Q&A site at https://ask.datomic.com!
jcf 2021-01-05T12:40:35.202Z

Hello hello! I have a call to (datomic.ion.cast/initialize-redirect :stdout) in a code base I'm working on but I see no log output from calls to cast/dev. It looks like someone has already asked the question over on http://ask.datomic.com: https://ask.datomic.com/index.php/556/how-do-i-use-datomic-ion-cast-to-log-on-my-development-machine Has anyone else encountered this issue? Is anyone seeing log output from calls to cast/* ?

jcf 2021-01-05T12:42:18.202900Z

@onetom this is how I've solved this issue previously. I set secret vars in CircleCI and pull those in via the XML file you've described.

1đź‘Ť
jcf 2021-01-05T12:43:13.204Z

If you're using GitHub actions there's a Maven action that will do the settings.xml dance for you based on strings in YAML rather than XML. 🤷

ChicĂŁo 2021-01-05T12:45:15.205500Z

Hi, may someone can help me? I've try to deploy datomic to aws ec2 and when I've starting the transactor i've got this error:

Caused by: com.amazonaws.SdkClientException: Unable to load AWS credentials from any provider in the chain: [EnvironmentVariableCredentialsProvid
and i've configure aws cli on ec2 and export AWS_ACCESS_KEY_ID and AWS_SECRET. someone have any idea what could be?

jcf 2021-01-05T12:45:23.205600Z

I need to take the dog for a walk. Be back in an hour or so. 🚶

jcf 2021-01-05T12:45:58.205800Z

The env vars should be AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY if I remember correctly.

jcf 2021-01-05T12:46:19.206Z

That said, you'll likely be told you shouldn't use env vars for authenticating EC2 instances. AWS handles that for you via IAM roles etc.

ChicĂŁo 2021-01-05T12:53:49.206500Z

Oh, thank I'll try configure IAM roles

jcf 2021-01-05T12:58:12.208400Z

The environment variables should work mind. Could be good enough to get things going depending on what it is you’re building. Good luck, @matheusfrancisco001!

1đź‘Ť
tatut 2021-01-05T13:22:34.209600Z

something weird in datomic cloud vs dev-local string length limits https://ask.datomic.com/index.php/567/string-length-limit-cloud-vs-dev-local (both are purportedly 4k chars), but we have over 4k in some environments and ran into problem when importing it to dev-local

tatut 2021-01-07T06:14:04.214100Z

it worries me that this is left to the application developer, I would expect the database tx would throw exception if I try to put in db breaking things in it

tatut 2021-01-07T06:15:44.214300Z

and that this isn’t documented with suitably scary disclaimers “you need to check this length yourself, or your database might break”

favila 2021-01-07T13:51:52.214500Z

I agree. I’m in the midst of a painful project to backfill this into a large database

favila 2021-01-05T14:33:57.209900Z

Regardless of the “real” limit, operationally I suggest never, ever installing a string-typed attribute on any datomic (onprem, cloud, local) without an attribute predicate that limits its length to at least 4k but probably shorter. (same with other values which contain strings, like tuples, symbols, keywords.) Datomic’s dirnode/segment storage structure doesn’t work well with single large values because all values are completely inlined. Large segments can’t be cached by memcached (> 1MB), you may even hit size limits of the underlying storage, essentially breaking your database. IO cost is harder to predict, and your object cache becomes bloated with “nearby” large values that you may not be using.

favila 2021-01-05T14:35:17.210100Z

Put large values into something else and store a reference in datomic