This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2018-04-26
Channels
- # beginners (20)
- # cider (59)
- # cljsrn (6)
- # clojars (7)
- # clojure (91)
- # clojure-boston (1)
- # clojure-dusseldorf (3)
- # clojure-finland (1)
- # clojure-italy (8)
- # clojure-losangeles (1)
- # clojure-nl (16)
- # clojure-spec (25)
- # clojure-uk (113)
- # clojurescript (126)
- # core-async (27)
- # cursive (5)
- # data-science (3)
- # datomic (22)
- # emacs (24)
- # fulcro (30)
- # garden (7)
- # graphql (7)
- # leiningen (3)
- # nginx (1)
- # off-topic (63)
- # onyx (13)
- # portkey (1)
- # re-frame (1)
- # reagent (28)
- # shadow-cljs (92)
- # tools-deps (1)
- # uncomplicate (1)
- # vim (24)
- # yada (8)
Does the transactor ever create symlinks? We've had a FIM exception where the Link Count changed of our datomic-pro
folder, I can config around it, but I want to know why I'm doing it first.
The link count went up, I believe, because a sub-directory was created: "data". I suspect this one because our FIM configuration ignores this directory. This apparently did not get created within 20 minutes of the system starting, I'm not sure if that's weird or normal?
The data directory is created by Datomic when it needs some local swap space, usually during an indexing job
For search scenarios, is there a good way to get related values? Eg:
(fn [text]
(q '[:find ?id :in $ ?txt % :where [search ?txt ?id]]
(db conn)
text
'[ [[search ?txt ?id] [(fulltext $ :artist/name ?txt) [[?id]]]]
[[search ?txt ?id] [(fulltext $ :track/name ?txt) [[?id]]]]
[[search ?txt ?id] [(fulltext $ :release/name ?txt) [[?id]]]] ]))
Now for any result I want to grab details such as the artist name and a collection of tracks associated. Do I need to encode that into the rules itself? I was also thinking of using get-else
, or get-some
, but it feels clunky. Am I on the right track or is there a better approach?You can grab data with more binding clauses in the where, but this doesn’t allow “null” values and is more verbose
I thought that wasn’t possible? I’ve been using (pull ?id [*])
pull expressions and only get the local id values.
sorry, based on the context it’s either :artist/name
, :track/name
or :release/name
which matches the fulltext of ?txt
. I’ve used (pull ?id)
a lot to get all the attributes+values, but I didn’t realise that you could pull values optionally through entity relations. I’ve been hand constructing queries that manually walk the relations with lots of get-else
to catch missing values.
the (pull ?id [*])
was to my knowledge the most flexible version of this, as in grab all the values related to this entity id.
And suddenly a whole new world has opened up! Thanks @U09R86PA4, I think I’ve worked out how to do it!
For anyone else: https://github.com/Datomic/day-of-datomic/blob/master/tutorial/pull.clj#L72
yes, I guess i mixed something up on the naming of the resource groups. anyway, I think the vpc peering setup is cleaner in our case
I have 2 questions on the permissions: $(S3DatomicArn)/$(SystemName)/datomic/access/dbs/db/$(DbName) 1/ can I specify wildcard db-names? 2/ does this mean that also creation of the db is allowed, or only read/write access to the db itself?
@stijn you should be able to use wildcards - it will follow AWS IAM rules for getObject permissions on S3 objects