I'm using Peer Service to connect to the Datomic. I created Storage Service based on DynamoDB on Amazon by following https://www.youtube.com/watch?v=wG5grJP3jKY tutorial (using CloudFormation service, it's also referenced here http://docs.datomic.com/aws.html). The tutorial ouptus following URI: uri = "datomic:ddb://us-east-1/your-system-name/test-db?aws_access_key_id=&aws_secret_key="; Unfortunately, there's no way for me to put that into URI that connects to the database:
Diametric::Persistence.establish_base_connection({:uri=>"datomic:ddb://us-east-1/your-system-name/test-db?aws_access_key_id=<MY_ACCESS_KEY>&aws_secret_key=<MY_SECRET_KEY>"})
I'm being given
RuntimeError: :db.error/unsupported-protocol Unsupported protocol :ddb
If I change "ddb" into "free" I'm being given
RuntimeError: :db.error/invalid-db-uri Invalid database URI datomic:free://us-east-1/your-system-name/test-db
What would an approach to connect from Diametric directly to remote transactor that's exposed through setting up Datomic by Amazon Cloudformation service? Where do I find that URI?
I need to add, that I can connect to the remote Datomic instance through datomic shell, with
Peer.connect(uri)
Regards!
[EDIT: it was resolved, see my comment below]
OK, it's resolved. Turned out that I was relying on the JAR file of free verions of the Datomic. The trick was to recreate Jarfile.lock file based in gem's directory. One of the makers of diametric lab updated the Wiki page of the library, so now it's easy to follow:
http://github.com/relevance/diametric/wiki/Datomic-Pro-Version-Support