dify - 💡(How to fix) Fix cannot extract elements from a scalar

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…

Error Message

no error "Traceback (most recent call last): File /app/api/.venv/lib/python3.12/site-packages/sqlalchemy/engine/base.py, line 1967, in _exec_single_context self.dialect.do_execute( File /app/api/.venv/lib/python3.12/site-packages/sqlalchemy/engine/default.py, line 952, in do_execute cursor.execute(statement, parameters)psycopg2.errors.InvalidParameterValue: cannot extract elements from a scalarThe above exception was the direct cause of the following exception:Traceback (most recent call last): File /app/api/.venv/lib/python3.12/site-packages/flask/app.py, line 917, in full_dispatch_request rv = self.dispatch_request() ^^^^^^^^^^^^^^^^^^^^^^^ File /app/api/.venv/lib/python3.12/site-packages/flask/app.py, line 902, in dispatch_request return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args) # type: ignore[no-any-return] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File /app/api/.venv/lib/python3.12/site-packages/flask_restx/api.py, line 404, in wrapper resp = resource(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^ File /app/api/.venv/lib/python3.12/site-packages/flask/views.py, line 110, in view return current_app.ensure_sync(self.dispatch_request)(**kwargs) # type: ignore[no-any-return] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File /app/api/.venv/lib/python3.12/site-packages/flask_restx/resource.py, line 41, in dispatch_request resp = meth(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^ File /app/api/controllers/console/wraps.py, line 225, in decorated return view(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^ File /app/api/libs/login.py, line 100, in decorated_view return current_app.ensure_sync(func)(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File /app/api/controllers/console/wraps.py, line 44, in decorated return view(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^ File /app/api/controllers/console/datasets/datasets_segments.py, line 188, in get segments = db.paginate(select=query, page=page, per_page=limit, max_per_page=100, error_out=False) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File /app/api/.venv/lib/python3.12/site-packages/flask_sqlalchemy/extension.py, line 839, in paginate return SelectPagination( ^^^^^^^^^^^^^^^^^ File /app/api/.venv/lib/python3.12/site-packages/flask_sqlalchemy/pagination.py, line 72, in init items = self._query_items() ^^^^^^^^^^^^^^^^^^^ File /app/api/.venv/lib/python3.12/site-packages/flask_sqlalchemy/pagination.py, line 339, in _query_items return list(session.execute(select).unique().scalars()) ^^^^^^^^^^^^^^^^^^^^^^^ File /app/api/.venv/lib/python3.12/site-packages/sqlalchemy/orm/session.py, line 2351, in execute return self._execute_internal( ^^^^^^^^^^^^^^^^^^^^^^^ File /app/api/.venv/lib/python3.12/site-packages/sqlalchemy/orm/session.py, line 2249, in _execute_internal result: Result[Any] = compile_state_cls.orm_execute_statement( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File /app/api/.venv/lib/python3.12/site-packages/sqlalchemy/orm/context.py, line 306, in orm_execute_statement result = conn.execute( ^^^^^^^^^^^^^ File /app/api/.venv/lib/python3.12/site-packages/sqlalchemy/engine/base.py, line 1419, in execute return meth( ^^^^^ File /app/api/.venv/lib/python3.12/site-packages/sqlalchemy/sql/elements.py, line 527, in _execute_on_connection return connection._execute_clauseelement( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File /app/api/.venv/lib/python3.12/site-packages/sqlalchemy/engine/base.py, line 1641, in _execute_clauseelement ret = self._execute_context( ^^^^^^^^^^^^^^^^^^^^^^ File /app/api/.venv/lib/python3.12/site-packages/sqlalchemy/engine/base.py, line 1846, in _execute_context return self._exec_single_context( ^^^^^^^^^^^^^^^^^^^^^^^^^^ File /app/api/.venv/lib/python3.12/site-packages/sqlalchemy/engine/base.py, line 1986, in _exec_single_context self._handle_dbapi_exception( File /app/api/.venv/lib/python3.12/site-packages/sqlalchemy/engine/base.py, line 2363, in _handle_dbapi_exception raise sqlalchemy_exception.with_traceback(exc_info[2]) from e File /app/api/.venv/lib/python3.12/site-packages/sqlalchemy/engine/base.py, line 1967, in _exec_single_context self.dialect.do_execute( File /app/api/.venv/lib/python3.12/site-packages/sqlalchemy/engine/default.py, line 952, in do_execute cursor.execute(statement, parameters)sqlalchemy.exc.DataError: (psycopg2.errors.InvalidParameterValue) cannot extract elements from a scalar[SQL: SELECT document_segments.id, document_segments.tenant_id, document_segments.dataset_id, document_segments.document_id, document_segments.position, document_segments.content, document_segments.word_count, document_segments.tokens, document_segments.created_by, document_segments.index_node_id, document_segments.index_node_hash, document_segments.enabled, document_segments.answer, document_segments.keywords, document_segments.disabled_at, document_segments.disabled_by, document_segments.status, document_segments.created_at, document_segments.updated_by, document_segments.updated_at, document_segments.indexing_at, document_segments.completed_at, document_segments.error, document_segments.stopped_at, document_segments.hit_count FROM document_segments WHERE document_segments.document_id = %(document_id_1)s::UUID AND document_segments.tenant_id = %(tenant_id_1)s::UUID AND (document_segments.content ILIKE %(content_1)s ESCAPE '' OR array_to_string(array((SELECT jsonb_array_elements_text(CAST(document_segments.keywords AS JSONB)) AS jsonb_array_elements_text_1)), %(array_to_string_1)s) ILIKE %(array_to_string_2)s ESCAPE '') ORDER BY document_segments.position ASC LIMIT %(param_1)s OFFSET %(param_2)s][parameters: {'document_id_1': '257043f3-6805-4bb6-9e6a-9c2e610c55a4', 'tenant_id_1': 'b322f797-9801-470f-b55d-195d5e6a66a5', 'content_1': '%dify%', 'array_to_string_1': ',', 'array_to_string_2': '%dify%', 'param_1': 10, 'param_2': 0}](Background on this error at: https://sqlalche.me/e/20/9h9h)"

Fix Action

Fix / Workaround

"Traceback (most recent call last): File /app/api/.venv/lib/python3.12/site-packages/sqlalchemy/engine/base.py, line 1967, in _exec_single_context self.dialect.do_execute( File /app/api/.venv/lib/python3.12/site-packages/sqlalchemy/engine/default.py, line 952, in do_execute cursor.execute(statement, parameters)psycopg2.errors.InvalidParameterValue: cannot extract elements from a scalarThe above exception was the direct cause of the following exception:Traceback (most recent call last): File /app/api/.venv/lib/python3.12/site-packages/flask/app.py, line 917, in full_dispatch_request rv = self.dispatch_request() ^^^^^^^^^^^^^^^^^^^^^^^ File /app/api/.venv/lib/python3.12/site-packages/flask/app.py, line 902, in dispatch_request return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args) # type: ignore[no-any-return] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File /app/api/.venv/lib/python3.12/site-packages/flask_restx/api.py, line 404, in wrapper resp = resource(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^ File /app/api/.venv/lib/python3.12/site-packages/flask/views.py, line 110, in view return current_app.ensure_sync(self.dispatch_request)(**kwargs) # type: ignore[no-any-return] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File /app/api/.venv/lib/python3.12/site-packages/flask_restx/resource.py, line 41, in dispatch_request resp = meth(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^ File /app/api/controllers/console/wraps.py, line 225, in decorated return view(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^ File /app/api/libs/login.py, line 100, in decorated_view return current_app.ensure_sync(func)(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File /app/api/controllers/console/wraps.py, line 44, in decorated return view(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^ File /app/api/controllers/console/datasets/datasets_segments.py, line 188, in get segments = db.paginate(select=query, page=page, per_page=limit, max_per_page=100, error_out=False) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File /app/api/.venv/lib/python3.12/site-packages/flask_sqlalchemy/extension.py, line 839, in paginate return SelectPagination( ^^^^^^^^^^^^^^^^^ File /app/api/.venv/lib/python3.12/site-packages/flask_sqlalchemy/pagination.py, line 72, in init items = self._query_items() ^^^^^^^^^^^^^^^^^^^ File /app/api/.venv/lib/python3.12/site-packages/flask_sqlalchemy/pagination.py, line 339, in _query_items return list(session.execute(select).unique().scalars()) ^^^^^^^^^^^^^^^^^^^^^^^ File /app/api/.venv/lib/python3.12/site-packages/sqlalchemy/orm/session.py, line 2351, in execute return self._execute_internal( ^^^^^^^^^^^^^^^^^^^^^^^ File /app/api/.venv/lib/python3.12/site-packages/sqlalchemy/orm/session.py, line 2249, in _execute_internal result: Result[Any] = compile_state_cls.orm_execute_statement( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File /app/api/.venv/lib/python3.12/site-packages/sqlalchemy/orm/context.py, line 306, in orm_execute_statement result = conn.execute( ^^^^^^^^^^^^^ File /app/api/.venv/lib/python3.12/site-packages/sqlalchemy/engine/base.py, line 1419, in execute return meth( ^^^^^ File /app/api/.venv/lib/python3.12/site-packages/sqlalchemy/sql/elements.py, line 527, in _execute_on_connection return connection._execute_clauseelement( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File /app/api/.venv/lib/python3.12/site-packages/sqlalchemy/engine/base.py, line 1641, in _execute_clauseelement ret = self._execute_context( ^^^^^^^^^^^^^^^^^^^^^^ File /app/api/.venv/lib/python3.12/site-packages/sqlalchemy/engine/base.py, line 1846, in _execute_context return self._exec_single_context( ^^^^^^^^^^^^^^^^^^^^^^^^^^ File /app/api/.venv/lib/python3.12/site-packages/sqlalchemy/engine/base.py, line 1986, in _exec_single_context self._handle_dbapi_exception( File /app/api/.venv/lib/python3.12/site-packages/sqlalchemy/engine/base.py, line 2363, in _handle_dbapi_exception raise sqlalchemy_exception.with_traceback(exc_info[2]) from e File /app/api/.venv/lib/python3.12/site-packages/sqlalchemy/engine/base.py, line 1967, in _exec_single_context self.dialect.do_execute( File /app/api/.venv/lib/python3.12/site-packages/sqlalchemy/engine/default.py, line 952, in do_execute cursor.execute(statement, parameters)sqlalchemy.exc.DataError: (psycopg2.errors.InvalidParameterValue) cannot extract elements from a scalar[SQL: SELECT document_segments.id, document_segments.tenant_id, document_segments.dataset_id, document_segments.document_id, document_segments.position, document_segments.content, document_segments.word_count, document_segments.tokens, document_segments.created_by, document_segments.index_node_id, document_segments.index_node_hash, document_segments.enabled, document_segments.answer, document_segments.keywords, document_segments.disabled_at, document_segments.disabled_by, document_segments.status, document_segments.created_at, document_segments.updated_by, document_segments.updated_at, document_segments.indexing_at, document_segments.completed_at, document_segments.error, document_segments.stopped_at, document_segments.hit_count FROM document_segments WHERE document_segments.document_id = %(document_id_1)s::UUID AND document_segments.tenant_id = %(tenant_id_1)s::UUID AND (document_segments.content ILIKE %(content_1)s ESCAPE '' OR array_to_string(array((SELECT jsonb_array_elements_text(CAST(document_segments.keywords AS JSONB)) AS jsonb_array_elements_text_1)), %(array_to_string_1)s) ILIKE %(array_to_string_2)s ESCAPE '') ORDER BY document_segments.position ASC LIMIT %(param_1)s OFFSET %(param_2)s][parameters: {'document_id_1': '257043f3-6805-4bb6-9e6a-9c2e610c55a4', 'tenant_id_1': 'b322f797-9801-470f-b55d-195d5e6a66a5', 'content_1': '%dify%', 'array_to_string_1': ',', 'array_to_string_2': '%dify%', 'param_1': 10, 'param_2': 0}](Background on this error at: https://sqlalche.me/e/20/9h9h)"

RAW_BUFFERClick to expand / collapse

Self Checks

  • I have read the Contributing Guide and Language Policy.
  • This is only for bug report, if you would like to ask a question, please head to Discussions.
  • I have searched for existing issues search for existing issues, including closed ones.
  • I confirm that I am using English to submit this report, otherwise it will be closed.
  • 【中文用户 & Non English User】请使用英语提交,否则会被关闭 :)
  • Please do not modify this template :) and fill in all the required fields.

Dify version

1.14.2

Cloud or Self Hosted

Self Hosted (Docker)

Steps to reproduce

  1. create index document
  2. search index document
  3. search failed

✔️ Expected Behavior

no error

❌ Actual Behavior

"Traceback (most recent call last): File /app/api/.venv/lib/python3.12/site-packages/sqlalchemy/engine/base.py, line 1967, in _exec_single_context self.dialect.do_execute( File /app/api/.venv/lib/python3.12/site-packages/sqlalchemy/engine/default.py, line 952, in do_execute cursor.execute(statement, parameters)psycopg2.errors.InvalidParameterValue: cannot extract elements from a scalarThe above exception was the direct cause of the following exception:Traceback (most recent call last): File /app/api/.venv/lib/python3.12/site-packages/flask/app.py, line 917, in full_dispatch_request rv = self.dispatch_request() ^^^^^^^^^^^^^^^^^^^^^^^ File /app/api/.venv/lib/python3.12/site-packages/flask/app.py, line 902, in dispatch_request return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args) # type: ignore[no-any-return] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File /app/api/.venv/lib/python3.12/site-packages/flask_restx/api.py, line 404, in wrapper resp = resource(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^ File /app/api/.venv/lib/python3.12/site-packages/flask/views.py, line 110, in view return current_app.ensure_sync(self.dispatch_request)(**kwargs) # type: ignore[no-any-return] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File /app/api/.venv/lib/python3.12/site-packages/flask_restx/resource.py, line 41, in dispatch_request resp = meth(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^ File /app/api/controllers/console/wraps.py, line 225, in decorated return view(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^ File /app/api/libs/login.py, line 100, in decorated_view return current_app.ensure_sync(func)(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File /app/api/controllers/console/wraps.py, line 44, in decorated return view(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^ File /app/api/controllers/console/datasets/datasets_segments.py, line 188, in get segments = db.paginate(select=query, page=page, per_page=limit, max_per_page=100, error_out=False) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File /app/api/.venv/lib/python3.12/site-packages/flask_sqlalchemy/extension.py, line 839, in paginate return SelectPagination( ^^^^^^^^^^^^^^^^^ File /app/api/.venv/lib/python3.12/site-packages/flask_sqlalchemy/pagination.py, line 72, in init items = self._query_items() ^^^^^^^^^^^^^^^^^^^ File /app/api/.venv/lib/python3.12/site-packages/flask_sqlalchemy/pagination.py, line 339, in _query_items return list(session.execute(select).unique().scalars()) ^^^^^^^^^^^^^^^^^^^^^^^ File /app/api/.venv/lib/python3.12/site-packages/sqlalchemy/orm/session.py, line 2351, in execute return self._execute_internal( ^^^^^^^^^^^^^^^^^^^^^^^ File /app/api/.venv/lib/python3.12/site-packages/sqlalchemy/orm/session.py, line 2249, in _execute_internal result: Result[Any] = compile_state_cls.orm_execute_statement( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File /app/api/.venv/lib/python3.12/site-packages/sqlalchemy/orm/context.py, line 306, in orm_execute_statement result = conn.execute( ^^^^^^^^^^^^^ File /app/api/.venv/lib/python3.12/site-packages/sqlalchemy/engine/base.py, line 1419, in execute return meth( ^^^^^ File /app/api/.venv/lib/python3.12/site-packages/sqlalchemy/sql/elements.py, line 527, in _execute_on_connection return connection._execute_clauseelement( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File /app/api/.venv/lib/python3.12/site-packages/sqlalchemy/engine/base.py, line 1641, in _execute_clauseelement ret = self._execute_context( ^^^^^^^^^^^^^^^^^^^^^^ File /app/api/.venv/lib/python3.12/site-packages/sqlalchemy/engine/base.py, line 1846, in _execute_context return self._exec_single_context( ^^^^^^^^^^^^^^^^^^^^^^^^^^ File /app/api/.venv/lib/python3.12/site-packages/sqlalchemy/engine/base.py, line 1986, in _exec_single_context self._handle_dbapi_exception( File /app/api/.venv/lib/python3.12/site-packages/sqlalchemy/engine/base.py, line 2363, in _handle_dbapi_exception raise sqlalchemy_exception.with_traceback(exc_info[2]) from e File /app/api/.venv/lib/python3.12/site-packages/sqlalchemy/engine/base.py, line 1967, in _exec_single_context self.dialect.do_execute( File /app/api/.venv/lib/python3.12/site-packages/sqlalchemy/engine/default.py, line 952, in do_execute cursor.execute(statement, parameters)sqlalchemy.exc.DataError: (psycopg2.errors.InvalidParameterValue) cannot extract elements from a scalar[SQL: SELECT document_segments.id, document_segments.tenant_id, document_segments.dataset_id, document_segments.document_id, document_segments.position, document_segments.content, document_segments.word_count, document_segments.tokens, document_segments.created_by, document_segments.index_node_id, document_segments.index_node_hash, document_segments.enabled, document_segments.answer, document_segments.keywords, document_segments.disabled_at, document_segments.disabled_by, document_segments.status, document_segments.created_at, document_segments.updated_by, document_segments.updated_at, document_segments.indexing_at, document_segments.completed_at, document_segments.error, document_segments.stopped_at, document_segments.hit_count FROM document_segments WHERE document_segments.document_id = %(document_id_1)s::UUID AND document_segments.tenant_id = %(tenant_id_1)s::UUID AND (document_segments.content ILIKE %(content_1)s ESCAPE '' OR array_to_string(array((SELECT jsonb_array_elements_text(CAST(document_segments.keywords AS JSONB)) AS jsonb_array_elements_text_1)), %(array_to_string_1)s) ILIKE %(array_to_string_2)s ESCAPE '') ORDER BY document_segments.position ASC LIMIT %(param_1)s OFFSET %(param_2)s][parameters: {'document_id_1': '257043f3-6805-4bb6-9e6a-9c2e610c55a4', 'tenant_id_1': 'b322f797-9801-470f-b55d-195d5e6a66a5', 'content_1': '%dify%', 'array_to_string_1': ',', 'array_to_string_2': '%dify%', 'param_1': 10, 'param_2': 0}](Background on this error at: https://sqlalche.me/e/20/9h9h)"

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING