Fork me on GitHub
#pathom
<
2019-07-24
>
cjmurphy12:07:43

If you think a resolver should be being called, but it is not, is there some place to look for the reason why it was not called?

cjmurphy13:07:14

The desired resolver is being called now. I changed how load is done from Fulcro to be into an ident (worked) rather than into a query (did not). The query was getting into the Pathom parser on the server, then just being ignored.

wilkerlucio15:07:10

@cjmurphy maybe the path you are trying to do is not reachable. pathom will not work until it knows it can get to the result, so, if it tries to compute the paths but none is available (not enough input) then nothing will run, that may explain why you can it with an ident join (since you provide the data point) but not out of it. makes sense?

wilkerlucio15:07:53

are you using the tracing feature? if you do, you can click on the trace line, that will log event details to the console, you can see if a plan was properly computed looking over there

cjmurphy15:07:39

The ident join thing kind of makes sense to me because the ident is [:conflicting-match/id 1], and that is something that the output query needs, and the map that is returned has a kv pair of :conflicting-match/id 1. At the moment all my queries are global, output only - so I don't feel I'm 'into' Pathom yet. Things are working at present, for queries and mutations against Datomic. No I'm not using the tracing feature yet. Maybe using it will help me see the benefits better. To me pull syntax is conveniently generated by the Fulcro client and sometimes (not this particular case) I want to pass it directly through. I've found a way to do that (putting it into env), in which case I'm bypassing Pathom.

wilkerlucio18:07:51

if you don't require inputs then it may be a problem on how the load is triggered, fulcro really relies on idents, its better if you adapt yourself to have idents everywhere, this way your things will scale nicely

cjmurphy23:07:47

I do have idents everywhere in the Fulcro app. I query Datomic through Pathom behind the web server, so the data ends up in Fulcro app client state at particular ident locations. The resolvers are 'global', in that they only have ::pc/output specified (not ::pc/input).