Fork me on GitHub
#datomic
<
2017-08-05
>
favila00:08:02

We default to squuids by default, but that doesn't stop us from using namespace uuids (v5) where we have a hash-like use case. We don't notice any operational difference but we're not very sensitive to performance or space

bbloom00:08:27

makes sense

bbloom00:08:37

i’m working on something with a notion of “people with the link” security

bbloom00:08:55

would be nice to have the link be just the ID, unguessable, without having to include a special token

bbloom00:08:52

all the other uses of uuids will be relatively small in number - pretty much all interesting publicly accessible entities in this system can have this security mode

bbloom01:08:27

so i was trying to decide if i should use squuid + token, or random uuid for this - there’s probably no other (immediate) usecase for uuids & most other internal entities can just use datomic long ids

favila01:08:37

if you are doing direct lookup it's probably fine. the downside of not using squuids is fragmentation

bbloom01:08:54

thinking about it more, a special token is probably the right way to go anyway - as you may want to revoke it (ie change the link, or create a new one)

favila01:08:55

so, seqs, locality, etc suffer; indexing takes longer and generates more garbage (disk space)

favila01:08:58

if you don't have scanning queries you're probably fine with the read-side downsides of fragmented index

favila01:08:23

so only the write side matters, and probablu only matters at scale

favila01:08:33

is my thinking anyway. without hard numbers

bbloom01:08:52

yeah - that was basically my thought process, which is why i wanted an excuse to just use totally random 🙂

gonewest81817:08:00

Can someone point me to the recipe for running datomic console with the free transactor? For me the console keeps throwing an exception when I try to run any query.

gonewest81817:08:32

I’m launching with bin/console -p 8080 dev datomic:. This is inside a docker container, where transactor is a linked container.

gonewest81817:08:55

The exception is

console_1     | ActiveMQNotConnectedException[errorType=NOT_CONNECTED message=AMQ119007: Cannot connect to server(s). Tried with all available servers.]
console_1     | 	at org.apache.activemq.artemis.core.client.impl.ServerLocatorImpl.createSessionFactory(ServerLocatorImpl.java:799)
console_1     | 	at datomic.artemis_client$create_session_factory.invokeStatic(artemis_client.clj:114)
console_1     | 	at datomic.artemis_client$create_session_factory.invoke(artemis_client.clj:104)

hmaurer17:08:51

@gonewest818 as far as I remember I had to mess with the alternative host to get it to work last time I tried. It wasn’t the free protocol but the dev protocol, although I guess your problem might be similar

hmaurer17:08:03

by alternative host I mean the “altHost” setting

hmaurer17:08:16

It might not have anything to do with your issue though, just my two cents…

gonewest81817:08:34

in transactor.properties

protocol=free
host=0.0.0.0
alt-host=127.0.0.1
port=4334

gonewest81818:08:49

ok I changed that to alt-host=transactor and I think it’s resolved

hmaurer19:08:29

@gonewest818 sorry I was afk. Glad you got it fixed! 🙂