[Critical Bug] Google Sheet Reader: Intermittent execution failure with dynamic links (Race Condition?)

Hi team,

I’m reporting a logic-breaking bug with the Google Sheet Reader node using the “Use Link” method.

The Issue: When feeding a dynamic URL (string output from a previous node) into the “Link” field, downstream nodes (for exemple “Combine Lists”) fail intermittently with: 'Combine Lists' node could not be run! Missing input 'input1', did not receive a value.

Crucial Details:

  1. Intermittency: It works ~50% of the time with the exact same input string.

  2. False Negative: Even when the downstream node fails, the Google Sheet Reader logs explicitly show the correct output list generated successfully.

  3. Isolation:

    • Hardcoded URL = Works 100%.

    • Direct Drive File selection = Works 100%.

    • Dynamic String Input = Random failures.

This looks like a race condition where the Reader node signals completion to the workflow runner before the output payload is actually ready/passed to the next node.

Can you please investigate the state handoff for this node when using dynamic inputs? It’s currently making the node unusable for automated workflows.

Thanks.

Hey @EPDB,

This is actually expected behavior based on how the native Google Sheets Reader node works. When you use the “Use Link” method, the node fetches the column schema as its output based on the tab you select. Each column becomes a separate list output that downstream nodes depend on.

When you pass the sheet link dynamically from a previous node, you need to ensure that the same tab name and the same columns still exist in the target sheet as what the node was originally configured with. If the schema doesn’t match – different tab name, missing columns, renamed headers – the node won’t be able to produce the expected outputs, which is why downstream nodes like Combine Lists intermittently report missing inputs.

That’s why hardcoded URLs and direct Drive selection work 100% of the time since the schema is known and consistent.

If you need full dynamic flexibility (reading from sheets with varying structures), I’d recommend using an Sheets MCP node instead. You can create a custom Google Sheets MCP node by:

  1. Dragging the Google Sheets MCP node onto your canvas

  2. Describing what you need (e.g., “Given a Google Sheets URL, output all the contents”)

  3. Gumloop’s AI will generate a custom node that works with any URL dynamically and outputs the content in your required format

This approach doesn’t rely on a pre-defined column schema, so it handles varying sheet structures seamlessly.

For more on how MCP nodes work: https://docs.gumloop.com/learn/native-vs-ai-generated-nodes

Let me know if you have any questions!

1 Like

This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.