ExecutorResponse.GeneratorNode in the SQL agent subgraph.ExecutorNodepackages/nl2sql/src/nl2sql/pipeline/nodes/executor/node.pysupports_sql.ExecutorRequest.Upstream:
GeneratorNodeDownstream:
Trigger conditions:
flowchart LR
Generator[GeneratorNode] --> Executor[ExecutorNode] --> EndNode[SubgraphEnd]
From SubgraphExecutionState:
generator_response.sql_draft (required)sub_query.datasource_id (required)sub_query.schema_version (optional)trace_id, subgraph_name, user_contextFrom NL2SQLContext:
ds_registrytenant_idValidation performed:
MISSING_SQLMISSING_DATASOURCE_IDINVALID_STATEMutations to SubgraphExecutionState:
executor_response (ExecutorResponse)errors and reasoningSide effects:
supports_sql; otherwise return INVALID_STATE.ExecutorRequest with trace/subgraph identifiers and schema version.ExecutorResponse.EXECUTOR_CRASH.Implements a LangGraph node callable:
def __call__(self, state: SubgraphExecutionState) -> Dict[str, Any]
Key contracts:
ExecutorRequestExecutorResponseEmits PipelineError with:
MISSING_SQLMISSING_DATASOURCE_IDINVALID_STATEEXECUTOR_CRASHexecutortenant_id from settings.SqlExecutorService to alter execution behavior.build_sql_agent_graph() to alter execution behavior.../../execution/isolation.md).packages/nl2sql/src/nl2sql/pipeline/nodes/executor/node.pypackages/nl2sql/src/nl2sql/execution/executor/sql_executor.py