Skip to content

Stack Level Too Deep When NullStore #135

@LRFalk01

Description

@LRFalk01

I'm running into an issue that is kind of difficult to explain. I have a mutation that enters an infinite loop as outlined in the given stack-trace snippet. When I run a query selecting the same thing, it works fine even when caching against a NullStore. The mutation works when caching is enabled. I'm not super sure how to give more detail here. I'm happy to give more information if I'm able. As a test, I went ahead and updated my version of the GQL lib to latest, and this is sell reproducible. I've also as a test reverted #116 and the issue goes away.

 "/graphql-fragment_cache-1.20.5/lib/graphql/fragment_cache/schema/instrumentation.rb:37:in `execute_multiplex'",
 "/graphql-batch-0.6.0/lib/graphql/batch/setup_multiplex.rb:24:in `execute_multiplex'",
 "/graphql-2.3.14/lib/graphql/execution/interpreter.rb:38:in `run_all'",
 "/graphql-2.3.14/lib/graphql/query.rb:243:in `result'",
 "/graphql-fragment_cache-1.20.5/lib/graphql/fragment_cache/fragment.rb:88:in `final_value'",
 "/graphql-fragment_cache-1.20.5/lib/graphql/fragment_cache/fragment.rb:60:in `with_final_value?'",
 "/graphql-fragment_cache-1.20.5/lib/graphql/fragment_cache/cacher.rb:66:in `select'",
 "/graphql-fragment_cache-1.20.5/lib/graphql/fragment_cache/cacher.rb:66:in `select_valid_fragments'",
 "/graphql-fragment_cache-1.20.5/lib/graphql/fragment_cache/cacher.rb:46:in `batched_persist'",
 "/graphql-fragment_cache-1.20.5/lib/graphql/fragment_cache/cacher.rb:37:in `call'",
 "/graphql-fragment_cache-1.20.5/lib/graphql/fragment_cache/schema/instrumentation.rb:18:in `after_query'",
 "/graphql-fragment_cache-1.20.5/lib/graphql/fragment_cache/schema/instrumentation.rb:31:in `execute_query'",
 "/graphql-2.3.14/lib/graphql/execution/interpreter.rb:70:in `block (3 levels) in run_all'",
 "/graphql-2.3.14/lib/graphql/dataloader/null_dataloader.rb:19:in `append_job'",
 "/graphql-2.3.14/lib/graphql/execution/interpreter.rb:58:in `block (2 levels) in run_all'",
 "/graphql-2.3.14/lib/graphql/execution/interpreter.rb:54:in `each'",
 "/graphql-2.3.14/lib/graphql/execution/interpreter.rb:54:in `each_with_index'",
 "/graphql-2.3.14/lib/graphql/execution/interpreter.rb:54:in `block in run_all'",
 "/graphql-2.3.14/lib/graphql/tracing/trace.rb:40:in `execute_multiplex'",
 "/graphql-2.3.14/lib/graphql/backtrace/trace.rb:47:in `execute_multiplex'",
 "/graphql-fragment_cache-1.20.5/lib/graphql/fragment_cache/schema/instrumentation.rb:37:in `execute_multiplex'",
 "/graphql-batch-0.6.0/lib/graphql/batch/setup_multiplex.rb:24:in `execute_multiplex'",
 "/graphql-2.3.14/lib/graphql/execution/interpreter.rb:38:in `run_all'",
 "/graphql-2.3.14/lib/graphql/query.rb:243:in `result'",
 "/graphql-fragment_cache-1.20.5/lib/graphql/fragment_cache/fragment.rb:88:in `final_value'",
 "/graphql-fragment_cache-1.20.5/lib/graphql/fragment_cache/fragment.rb:60:in `with_final_value?'",
 "/graphql-fragment_cache-1.20.5/lib/graphql/fragment_cache/cacher.rb:66:in `select'",
 "/graphql-fragment_cache-1.20.5/lib/graphql/fragment_cache/cacher.rb:66:in `select_valid_fragments'",
 "/graphql-fragment_cache-1.20.5/lib/graphql/fragment_cache/cacher.rb:46:in `batched_persist'",
 "/graphql-fragment_cache-1.20.5/lib/graphql/fragment_cache/cacher.rb:37:in `call'",
 "/graphql-fragment_cache-1.20.5/lib/graphql/fragment_cache/schema/instrumentation.rb:18:in `after_query'",
 "/graphql-fragment_cache-1.20.5/lib/graphql/fragment_cache/schema/instrumentation.rb:31:in `execute_query'",
 "/graphql-2.3.14/lib/graphql/execution/interpreter.rb:70:in `block (3 levels) in run_all'",
 "/graphql-2.3.14/lib/graphql/dataloader/null_dataloader.rb:19:in `append_job'",
 "/graphql-2.3.14/lib/graphql/execution/interpreter.rb:58:in `block (2 levels) in run_all'",
 "/graphql-2.3.14/lib/graphql/execution/interpreter.rb:54:in `each'",
 "/graphql-2.3.14/lib/graphql/execution/interpreter.rb:54:in `each_with_index'",
 "/graphql-2.3.14/lib/graphql/execution/interpreter.rb:54:in `block in run_all'",
 "/graphql-2.3.14/lib/graphql/tracing/trace.rb:40:in `execute_multiplex'",
 "/graphql-2.3.14/lib/graphql/backtrace/trace.rb:47:in `execute_multiplex'",
 "/graphql-fragment_cache-1.20.5/lib/graphql/fragment_cache/schema/instrumentation.rb:37:in `execute_multiplex'",

Metadata

Metadata

Assignees

No one assigned

    Labels

    help wantedExtra attention is needed

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions