FlowiseAI/Flowise · error · Error

${e}

Error message

${e}

What it means

Retriever_Agentflow.run()'s catch block re-throws every exception as `new Error(e)`. Like errors 20/28/35, `new Error(<Error>)` stringifies the original ("Error: ...") and discards its stack and type. The successfully-built returnOutput above is abandoned.

Source

Thrown at packages/components/nodes/agentflow/Retriever/Retriever.ts:216

            }

            newState = processTemplateVariables(newState, finalOutput)

            const returnOutput = {
                id: nodeData.id,
                name: this.name,
                input: {
                    question: retrieverQuery || input
                },
                output: {
                    content: finalOutput
                },
                state: newState
            }

            return returnOutput
        } catch (e) {
            throw new Error(e)
        }
    }
}

module.exports = { nodeClass: Retriever_Agentflow }

View on GitHub (pinned to abe4a8601a)

Solutions

  1. Check server logs for the retriever's original error printed before the re-throw (if logged) — otherwise enable verbose logging.
  2. Verify the embedder model credential and that the vector store connection is healthy.
  3. Confirm the collection/index and any metadata filter exist.
  4. Patch the throw to `throw new Error(e instanceof Error ? e.message : String(e), { cause: e })` to keep the stack.

Example fix

// before
        } catch (e) {
            throw new Error(e)
        }
// after
        } catch (e) {
            throw new Error(e instanceof Error ? e.message : String(e), { cause: e })
        }
Defensive patterns

Strategy: try-catch

Validate before calling

const query = nodeData.inputs?.retrieverQuery || input
if (!query || (typeof query === 'string' && query.trim() === '')) {
  throw new Error('Retriever requires a non-empty query')
}

Try / catch

try {
  await retrieverNode.run(nodeData, input, options)
} catch (e) {
  // original stack lost; check vector-store health and embedder credential
  throw e
}

Prevention

When it happens

Trigger: The underlying vector store / retriever call fails: missing API key for embeddings, collection/index not found, embedding dimension mismatch, document store unreachable, empty query when retriever requires one.

Common situations: Vector DB not started or wrong connection string; embedder credential missing; queried a non-existent namespace/filter; Pinecone/Weaviate/Qdrant quota or network issue.

Related errors


AI-assisted analysis of FlowiseAI/Flowise@abe4a8601a (2026-08-12). Data as JSON: /api/errors/83ff2a55c4d77f66. Report an issue: GitHub.