Fork me on GitHub
#datomic
<
2022-01-25
>
Pieter Slabbert07:01:26

I have a transaction id and I want to be able to see everything done in that transaction, but so far I can't find a way to do that. Something like

(d/q '[:find ?e ?attr ?val
       :in $ ?tx
       :where
       [?e ?attr ?val ?tx true]]
     db tx-id)
Gives me :db.error/insufficient-binding Insufficient binding of db clause: [?e ?attr ?val ?tx true] would cause full scan Is there a way to do this?

magnars08:01:27

Maybe you could use tx-range with log ?

Pieter Slabbert09:01:43

@U07FCNURX Thanks! That gave me exactly what I needed!

👍 2
Jem McElwain18:01:02

does anyone have any advice about valcache on eks/k8s? i was originally planning on running our peers as statefulsets to simplify the storage topology, but we’ve recently hit a point where statefulset rollout would be too slow… wondering about strategies for warming dynamically provisioned EBS volumes. was considering running some kind of sync from a RWX EFS mount, but worried about increasing complexity of our solution

ghadi21:01:16

use dynamo + valcache

ghadi21:01:34

not sure you need anything on EBS

Jem McElwain00:01:10

sorry, i’m not sure i understand what you’re suggesting. the peers to need to provision storage dynamically, which in the scope of EKS would be EBS volumes

ghadi01:01:27

I don’t think you need EBS on peers @U02AEH4M8GY

Jem McElwain01:01:22

the alternative to EBS is using direct attached storage on the eks ec2 nodes, but this is a huge anti-pattern in k8s land

ghadi01:01:54

I want to know why you think you need ebs

Jem McElwain01:01:08

because the data for valcache needs to live on an ssd

Jem McElwain01:01:12

per the documentation

ghadi02:01:10

ok you're using valcache, thanks.

ghadi02:01:08

and now I see that you wrote that in the first sentence. facepalm forgive me, I have a new infant @U02AEH4M8GY

❤️ 1
ghadi02:01:21

thanks! would it be possible to provision an ephemeral PV with a good storage class?

ghadi02:01:02

it doesn't need to persist / migrate with pods / be stateful

Jem McElwain02:01:25

yes, totally, i have provisioning dynamic/ephemeral volumes all sorted, but given our shift to k8s is coupled with our desire to increase deployment cadence, i’m worried about cache locality suffering a lot if we’re deploying frequently

Jem McElwain02:01:43

since the volumes will be totally cold each time a peer starts

ghadi02:01:41

you should open up a question with the datomic team (see topic). they'll have helpful answers (I don't work for them)

ghadi02:01:54

totally get your situation now (finally 🙂 )