Patch Changes
-
#3137
637408c
Thanks @benjie! - Fixes a planning bug where
adding a non-unary dependency A to a unary step B correctly converts B to be
non-unary... but didn't cascade that change to unary steps that depend on B.
The result was runtime (rather than plantime) exceptions:
GrafastInternalError<58bc38e2-8722-4c19-ba38-fd01a020654b>: unary step SomeStep[17] cannot be made dependent on non-unary step SomeOtherStep[29]!
This is now resolved by cascading the change. -
#3116
19af784
Thanks @benjie! - Address a slow memory leak in
GraphQL subscriptions that can cause OOM errors when a single subscription
hits many hundreds of thousands of events. The cause was racing an
abortPromise with each event, causing the abort promise to build up a large
list of callbacks in its internal Promise mechanics when the event always won
the race. The fix was to move from using a promise for abort to an
AbortController, where the abort task can be released after each event
successfully resolves, avoiding memory buildup. Also applied this fix to
similar patterns elsewhere in the codebase, albeit places much less sensitive
to this issue. -
#3128
56e8708
Thanks @benjie! - Fix a bug wheretrap()would
prevent connection-capable list steps from resolving correctly (often
replacing them withnull). -
Updated dependencies
[4d113fa]:- graphile-config@1.1.1