[GH-ISSUE #20666] issue: knowledge sharing in groups member broken #57921

Closed
opened 2026-05-05 21:56:31 -05:00 by GiteaMirror · 2 comments
Owner

Originally created by @janl772 on GitHub (Jan 14, 2026).
Original GitHub issue: https://github.com/open-webui/open-webui/issues/20666

Check Existing Issues

  • I have searched for any existing and/or related issues.
  • I have searched for any existing and/or related discussions.
  • I have also searched in the CLOSED issues AND CLOSED discussions and found no related items (your issue might already be addressed on the development branch!).
  • I am using the latest version of Open WebUI.

Installation Method

Docker

Open WebUI Version

v0.7.2

Ollama Version (if applicable)

0.13.5

Operating System

Debian 12

Browser (if applicable)

firefox 146.0.1, edge 143.0.3650.96

Confirmation

  • I have read and followed all instructions in README.md.
  • I am using the latest version of both Open WebUI and Ollama.
  • I have included the browser console logs.
  • I have included the Docker container logs.
  • I have provided every relevant configuration, setting, and environment variable used in my setup.
  • I have clearly listed every relevant configuration, custom setting, environment variable, and command-line option that influences my setup (such as Docker Compose overrides, .env values, browser settings, authentication configurations, etc).
  • I have documented step-by-step reproduction instructions that are precise, sequential, and leave nothing to interpretation. My steps:
  • Start with the initial platform/version/OS and dependencies used,
  • Specify exact install/launch/configure commands,
  • List URLs visited, user input (incl. example values/emails/passwords if needed),
  • Describe all options and toggles enabled or changed,
  • Include any files or environmental changes,
  • Identify the expected and actual result at each stage,
  • Ensure any reasonably skilled user can follow and hit the same issue.

Expected Behavior

I am part of a group named "TestGroup" and admin has sharing permissions enabled for "members" for this group as well as USER_PERMISSIONS_WORKSPACE_KNOWLEDGE_ALLOW_SHARING=True.

When I create a knowledge database and want to share to "TestGroup", I should be able to select it and share knowledge accordingly to fellow members of that group.

Actual Behavior

When I open sharing window, app freezes and I have to reload. I cannot select my "TestGroup" for sharing:

Image

Steps to Reproduce

  1. Start OWUI using latest version, see my compose file compose.yaml.txt
  2. as admin create a test group with user 1 and allow sharing to "members"
Image
  1. switch to user 1 and create knowledge database
  2. try sharing knowledge database with test group

Logs & Screenshots

2026-01-14 14:42:06.187 | ERROR | uvicorn.protocols.http.httptools_impl:run_asgi:421 - Exception in ASGI application

Traceback (most recent call last):

File "/usr/local/lib/python3.11/site-packages/sqlalchemy/engine/base.py", line 1967, in _exec_single_context
self.dialect.do_execute(
│ │ └ <function DefaultDialect.do_execute at 0x7f9fc8996ac0>
│ └ <sqlalchemy.dialects.postgresql.psycopg2.PGDialect_psycopg2 object at 0x7f9f0bfcff90>
└ <sqlalchemy.engine.base.Connection object at 0x7f9e4293c910>
File "/usr/local/lib/python3.11/site-packages/sqlalchemy/engine/default.py", line 952, in do_execute
cursor.execute(statement, parameters)
│ │ │ └ {'data_1': 'config', 'param_1': 'share', 'param_2': 'members', 'user_id_1': 'e74c4770-cdee-44e9-9d7c-d74365a479c6'}
│ │ └ 'SELECT "group".id AS group_id, "group".user_id AS group_user_id, "group".name AS group_name, "group".description AS group_de...
│ └ <method 'execute' of 'psycopg2.extensions.cursor' objects>
└ <cursor object at 0x7f9e402ebb50; closed: -1>

psycopg2.errors.InvalidTextRepresentation: invalid input syntax for type boolean: "members"

The above exception was the direct cause of the following exception:

Traceback (most recent call last):

File "", line 198, in _run_module_as_main
File "", line 88, in _run_code
File "/usr/local/lib/python3.11/site-packages/uvicorn/main.py", line 4, in
uvicorn.main()
│ └
└ <module 'uvicorn' from '/usr/local/lib/python3.11/site-packages/uvicorn/init.py'>
File "/usr/local/lib/python3.11/site-packages/click/core.py", line 1485, in call
return self.main(args, **kwargs)
│ │ │ └ {}
│ │ └ ()
│ └ <function Command.main at 0x7f9fca2dae80>

File "/usr/local/lib/python3.11/site-packages/click/core.py", line 1406, in main
rv = self.invoke(ctx)
│ │ └ <click.core.Context object at 0x7f9fcb06d450>
│ └ <function Command.invoke at 0x7f9fca2dab60>

File "/usr/local/lib/python3.11/site-packages/click/core.py", line 1269, in invoke
return ctx.invoke(self.callback, **ctx.params)
│ │ │ │ │ └ {'host': '0.0.0.0', 'port': 8080, 'forwarded_allow_ips': '
', 'workers': 1, 'app': 'open_webui.main:app', 'uds': None, 'fd': ...
│ │ │ │ └ <click.core.Context object at 0x7f9fcb06d450>
│ │ │ └ <function main at 0x7f9fc9fb0b80>
│ │ └
│ └ <function Context.invoke at 0x7f9fca2d9da0>
└ <click.core.Context object at 0x7f9fcb06d450>
File "/usr/local/lib/python3.11/site-packages/click/core.py", line 824, in invoke
return callback(args, **kwargs)
│ │ └ {'host': '0.0.0.0', 'port': 8080, 'forwarded_allow_ips': '
', 'workers': 1, 'app': 'open_webui.main:app', 'uds': None, 'fd': ...
│ └ ()
└ <function main at 0x7f9fc9fb0b80>
File "/usr/local/lib/python3.11/site-packages/uvicorn/main.py", line 424, in main
run(
└ <function run at 0x7f9fca2354e0>
File "/usr/local/lib/python3.11/site-packages/uvicorn/main.py", line 594, in run
server.run()
│ └ <function Server.run at 0x7f9fca234d60>
└ <uvicorn.server.Server object at 0x7f9fca3b3c50>
File "/usr/local/lib/python3.11/site-packages/uvicorn/server.py", line 67, in run
return asyncio_run(self.serve(sockets=sockets), loop_factory=self.config.get_loop_factory())
│ │ │ │ │ │ └ <function Config.get_loop_factory at 0x7f9fca1bd4e0>
│ │ │ │ │ └ <uvicorn.config.Config object at 0x7f9fc9fc3f10>
│ │ │ │ └ <uvicorn.server.Server object at 0x7f9fca3b3c50>
│ │ │ └ None
│ │ └ <function Server.serve at 0x7f9fca234e00>
│ └ <uvicorn.server.Server object at 0x7f9fca3b3c50>
└ <function asyncio_run at 0x7f9fca2e1e40>
File "/usr/local/lib/python3.11/site-packages/uvicorn/_compat.py", line 30, in asyncio_run
return runner.run(main)
│ │ └ <coroutine object Server.serve at 0x7f9fc9fad990>
│ └ <function Runner.run at 0x7f9fca574fe0>
└ <asyncio.runners.Runner object at 0x7f9fca1d4710>
File "/usr/local/lib/python3.11/asyncio/runners.py", line 118, in run
return self._loop.run_until_complete(task)
│ │ │ └ <Task pending name='Task-1' coro=<Server.serve() running at /usr/local/lib/python3.11/site-packages/uvicorn/server.py:71> wai...
│ │ └ <cyfunction Loop.run_until_complete at 0x7f9fca024040>
│ └ <uvloop.Loop running=True closed=False debug=False>
└ <asyncio.runners.Runner object at 0x7f9fca1d4710>

File "/usr/local/lib/python3.11/site-packages/uvicorn/protocols/http/httptools_impl.py", line 416, in run_asgi
result = await app( # type: ignore[func-returns-value]
└ <uvicorn.middleware.proxy_headers.ProxyHeadersMiddleware object at 0x7f9e429aa510>
File "/usr/local/lib/python3.11/site-packages/uvicorn/middleware/proxy_headers.py", line 60, in call
return await self.app(scope, receive, send)
│ │ │ │ └ <bound method RequestResponseCycle.send of <uvicorn.protocols.http.httptools_impl.RequestResponseCycle object at 0x7f9e3852f6...
│ │ │ └ <bound method RequestResponseCycle.receive of <uvicorn.protocols.http.httptools_impl.RequestResponseCycle object at 0x7f9e385...
│ │ └ {'type': 'http', 'asgi': {'version': '3.0', 'spec_version': '2.3'}, 'http_version': '1.1', 'server': ('000', 8080), 'c...
│ └ <fastapi.applications.FastAPI object at 0x7f9e43df2a50>
└ <uvicorn.middleware.proxy_headers.ProxyHeadersMiddleware object at 0x7f9e429aa510>
File "/usr/local/lib/python3.11/site-packages/fastapi/applications.py", line 1135, in call
await super().call(scope, receive, send)
│ │ └ <bound method RequestResponseCycle.send of <uvicorn.protocols.http.httptools_impl.RequestResponseCycle object at 0x7f9e3852f6...
│ └ <bound method RequestResponseCycle.receive of <uvicorn.protocols.http.httptools_impl.RequestResponseCycle object at 0x7f9e385...
└ {'type': 'http', 'asgi': {'version': '3.0', 'spec_version': '2.3'}, 'http_version': '1.1', 'server': ('000', 8080), 'c...
File "/usr/local/lib/python3.11/site-packages/starlette/applications.py", line 107, in call
await self.middleware_stack(scope, receive, send)
│ │ │ │ └ <bound method RequestResponseCycle.send of <uvicorn.protocols.http.httptools_impl.RequestResponseCycle object at 0x7f9e3852f6...
│ │ │ └ <bound method RequestResponseCycle.receive of <uvicorn.protocols.http.httptools_impl.RequestResponseCycle object at 0x7f9e385...
│ │ └ {'type': 'http', 'asgi': {'version': '3.0', 'spec_version': '2.3'}, 'http_version': '1.1', 'server': ('000', 8080), 'c...
│ └ <starlette.middleware.errors.ServerErrorMiddleware object at 0x7f9e432a7a90>
└ <fastapi.applications.FastAPI object at 0x7f9e43df2a50>
File "/usr/local/lib/python3.11/site-packages/starlette/middleware/errors.py", line 186, in call
raise exc
File "/usr/local/lib/python3.11/site-packages/starlette/middleware/errors.py", line 164, in call
await self.app(scope, receive, _send)
│ │ │ │ └ <function ServerErrorMiddleware.call.._send at 0x7f9e3859a7a0>
│ │ │ └ <bound method RequestResponseCycle.receive of <uvicorn.protocols.http.httptools_impl.RequestResponseCycle object at 0x7f9e385...
│ │ └ {'type': 'http', 'asgi': {'version': '3.0', 'spec_version': '2.3'}, 'http_version': '1.1', 'server': ('000', 8080), 'c...
│ └ <starlette.middleware.sessions.SessionMiddleware object at 0x7f9e42abd610>
└ <starlette.middleware.errors.ServerErrorMiddleware object at 0x7f9e432a7a90>
File "/usr/local/lib/python3.11/site-packages/starlette/middleware/sessions.py", line 85, in call
await self.app(scope, receive, send_wrapper)
│ │ │ │ └ <function SessionMiddleware.call..send_wrapper at 0x7f9e38598540>
│ │ │ └ <bound method RequestResponseCycle.receive of <uvicorn.protocols.http.httptools_impl.RequestResponseCycle object at 0x7f9e385...
│ │ └ {'type': 'http', 'asgi': {'version': '3.0', 'spec_version': '2.3'}, 'http_version': '1.1', 'server': ('000', 8080), 'c...
│ └ <open_webui.utils.audit.AuditLoggingMiddleware object at 0x7f9e43e1e010>
└ <starlette.middleware.sessions.SessionMiddleware object at 0x7f9e42abd610>

File "/app/backend/open_webui/utils/audit.py", line 154, in call
return await self.app(scope, receive, send)
│ │ │ │ └ <function SessionMiddleware.call..send_wrapper at 0x7f9e38598540>
│ │ │ └ <bound method RequestResponseCycle.receive of <uvicorn.protocols.http.httptools_impl.RequestResponseCycle object at 0x7f9e385...
│ │ └ {'type': 'http', 'asgi': {'version': '3.0', 'spec_version': '2.3'}, 'http_version': '1.1', 'server': ('000', 8080), 'c...
│ └ <starlette.middleware.cors.CORSMiddleware object at 0x7f9e4279d7d0>
└ <open_webui.utils.audit.AuditLoggingMiddleware object at 0x7f9e43e1e010>

File "/usr/local/lib/python3.11/site-packages/starlette/middleware/cors.py", line 85, in call
await self.app(scope, receive, send)
│ │ │ │ └ <function SessionMiddleware.call..send_wrapper at 0x7f9e38598540>
│ │ │ └ <bound method RequestResponseCycle.receive of <uvicorn.protocols.http.httptools_impl.RequestResponseCycle object at 0x7f9e385...
│ │ └ {'type': 'http', 'asgi': {'version': '3.0', 'spec_version': '2.3'}, 'http_version': '1.1', 'server': ('000', 8080), 'c...
│ └ <starlette.middleware.base.BaseHTTPMiddleware object at 0x7f9e42cb60d0>
└ <starlette.middleware.cors.CORSMiddleware object at 0x7f9e4279d7d0>
File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 191, in call
with recv_stream, send_stream, collapse_excgroups():
│ │ └ <function collapse_excgroups at 0x7f9fc78914e0>
│ └ MemoryObjectSendStream(_state=_MemoryObjectStreamState(max_buffer_size=0, buffer=deque([]), open_send_channels=0, open_receiv...
└ MemoryObjectReceiveStream(_state=_MemoryObjectStreamState(max_buffer_size=0, buffer=deque([]), open_send_channels=0, open_rec...
File "/usr/local/lib/python3.11/contextlib.py", line 158, in exit
self.gen.throw(typ, value, traceback)
│ │ │ │ │ └ <traceback object at 0x7f9e4381c600>
│ │ │ │ └ ExceptionGroup('unhandled errors in a TaskGroup', [DataError('(psycopg2.errors.InvalidTextRepresentation) invalid input synta...
│ │ │ └ <class 'ExceptionGroup'>
│ │ └ <method 'throw' of 'generator' objects>
│ └ <generator object collapse_excgroups at 0x7f9e40082180>
└ <contextlib._GeneratorContextManager object at 0x7f9e40212c10>
File "/usr/local/lib/python3.11/site-packages/starlette/_utils.py", line 85, in collapse_excgroups
raise exc
File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 193, in call
response = await self.dispatch_func(request, call_next)
│ │ │ └ <function BaseHTTPMiddleware.call..call_next at 0x7f9e38598ea0>
│ │ └ <starlette.middleware.base._CachedRequest object at 0x7f9e4019e750>
│ └ <function inspect_websocket at 0x7f9e42a616c0>
└ <starlette.middleware.base.BaseHTTPMiddleware object at 0x7f9e42cb60d0>

File "/app/backend/open_webui/main.py", line 1392, in inspect_websocket
return await call_next(request)
│ └ <starlette.middleware.base._CachedRequest object at 0x7f9e4019e750>
└ <function BaseHTTPMiddleware.call..call_next at 0x7f9e38598ea0>

File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 168, in call_next
raise app_exc from app_exc.cause or app_exc.context
│ │ │ │ └ <attribute 'context' of 'BaseException' objects>
│ │ │ └ DataError('(psycopg2.errors.InvalidTextRepresentation) invalid input syntax for type boolean: "members"\n')
│ │ └ <attribute 'cause' of 'BaseException' objects>
│ └ DataError('(psycopg2.errors.InvalidTextRepresentation) invalid input syntax for type boolean: "members"\n')
└ DataError('(psycopg2.errors.InvalidTextRepresentation) invalid input syntax for type boolean: "members"\n')
File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 144, in coro
await self.app(scope, receive_or_disconnect, send_no_error)
│ │ │ │ └ <function BaseHTTPMiddleware.call..call_next..send_no_error at 0x7f9e3859bce0>
│ │ │ └ <function BaseHTTPMiddleware.call..call_next..receive_or_disconnect at 0x7f9e38599760>
│ │ └ {'type': 'http', 'asgi': {'version': '3.0', 'spec_version': '2.3'}, 'http_version': '1.1', 'server': ('000', 8080), 'c...
│ └ <starlette.middleware.base.BaseHTTPMiddleware object at 0x7f9e42a89bd0>
└ <starlette.middleware.base.BaseHTTPMiddleware object at 0x7f9e42cb60d0>
File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 191, in call
with recv_stream, send_stream, collapse_excgroups():
│ │ └ <function collapse_excgroups at 0x7f9fc78914e0>
│ └ MemoryObjectSendStream(_state=_MemoryObjectStreamState(max_buffer_size=0, buffer=deque([]), open_send_channels=0, open_receiv...
└ MemoryObjectReceiveStream(_state=_MemoryObjectStreamState(max_buffer_size=0, buffer=deque([]), open_send_channels=0, open_rec...
File "/usr/local/lib/python3.11/contextlib.py", line 158, in exit
self.gen.throw(typ, value, traceback)
│ │ │ │ │ └ <traceback object at 0x7f9e43831a00>
│ │ │ │ └ ExceptionGroup('unhandled errors in a TaskGroup', [DataError('(psycopg2.errors.InvalidTextRepresentation) invalid input synta...
│ │ │ └ <class 'ExceptionGroup'>
│ │ └ <method 'throw' of 'generator' objects>
│ └ <generator object collapse_excgroups at 0x7f9e385d03c0>
└ <contextlib._GeneratorContextManager object at 0x7f9e401c52d0>
File "/usr/local/lib/python3.11/site-packages/starlette/_utils.py", line 85, in collapse_excgroups
raise exc
File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 193, in call
response = await self.dispatch_func(request, call_next)
│ │ │ └ <function BaseHTTPMiddleware.call..call_next at 0x7f9e38599300>
│ │ └ <starlette.middleware.base._CachedRequest object at 0x7f9e38563750>
│ └ <function check_url at 0x7f9e42a61620>
└ <starlette.middleware.base.BaseHTTPMiddleware object at 0x7f9e42a89bd0>

File "/app/backend/open_webui/main.py", line 1371, in check_url
response = await call_next(request)
│ └ <starlette.middleware.base._CachedRequest object at 0x7f9e38563750>
└ <function BaseHTTPMiddleware.call..call_next at 0x7f9e38599300>

File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 168, in call_next
raise app_exc from app_exc.cause or app_exc.context
│ │ │ │ └ <attribute 'context' of 'BaseException' objects>
│ │ │ └ DataError('(psycopg2.errors.InvalidTextRepresentation) invalid input syntax for type boolean: "members"\n')
│ │ └ <attribute 'cause' of 'BaseException' objects>
│ └ DataError('(psycopg2.errors.InvalidTextRepresentation) invalid input syntax for type boolean: "members"\n')
└ DataError('(psycopg2.errors.InvalidTextRepresentation) invalid input syntax for type boolean: "members"\n')
File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 144, in coro
await self.app(scope, receive_or_disconnect, send_no_error)
│ │ │ │ └ <function BaseHTTPMiddleware.call..call_next..send_no_error at 0x7f9e38599c60>
│ │ │ └ <function BaseHTTPMiddleware.call..call_next..receive_or_disconnect at 0x7f9e3859b420>
│ │ └ {'type': 'http', 'asgi': {'version': '3.0', 'spec_version': '2.3'}, 'http_version': '1.1', 'server': ('000', 8080), 'c...
│ └ <starlette.middleware.base.BaseHTTPMiddleware object at 0x7f9e429622d0>
└ <starlette.middleware.base.BaseHTTPMiddleware object at 0x7f9e42a89bd0>
File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 191, in call
with recv_stream, send_stream, collapse_excgroups():
│ │ └ <function collapse_excgroups at 0x7f9fc78914e0>
│ └ MemoryObjectSendStream(_state=_MemoryObjectStreamState(max_buffer_size=0, buffer=deque([]), open_send_channels=0, open_receiv...
└ MemoryObjectReceiveStream(_state=_MemoryObjectStreamState(max_buffer_size=0, buffer=deque([]), open_send_channels=0, open_rec...
File "/usr/local/lib/python3.11/contextlib.py", line 158, in exit
self.gen.throw(typ, value, traceback)
│ │ │ │ │ └ <traceback object at 0x7f9e43832840>
│ │ │ │ └ ExceptionGroup('unhandled errors in a TaskGroup', [DataError('(psycopg2.errors.InvalidTextRepresentation) invalid input synta...
│ │ │ └ <class 'ExceptionGroup'>
│ │ └ <method 'throw' of 'generator' objects>
│ └ <generator object collapse_excgroups at 0x7f9e385d2500>
└ <contextlib._GeneratorContextManager object at 0x7f9e400d4f50>
File "/usr/local/lib/python3.11/site-packages/starlette/_utils.py", line 85, in collapse_excgroups
raise exc
File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 193, in call
response = await self.dispatch_func(request, call_next)
│ │ │ └ <function BaseHTTPMiddleware.call..call_next at 0x7f9e3859a840>
│ │ └ <starlette.middleware.base._CachedRequest object at 0x7f9e38553350>
│ └ <function commit_session_after_request at 0x7f9e42a61580>
└ <starlette.middleware.base.BaseHTTPMiddleware object at 0x7f9e429622d0>

File "/app/backend/open_webui/main.py", line 1357, in commit_session_after_request
response = await call_next(request)
│ └ <starlette.middleware.base._CachedRequest object at 0x7f9e38553350>
└ <function BaseHTTPMiddleware.call..call_next at 0x7f9e3859a840>

File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 168, in call_next
raise app_exc from app_exc.cause or app_exc.context
│ │ │ │ └ <attribute 'context' of 'BaseException' objects>
│ │ │ └ DataError('(psycopg2.errors.InvalidTextRepresentation) invalid input syntax for type boolean: "members"\n')
│ │ └ <attribute 'cause' of 'BaseException' objects>
│ └ DataError('(psycopg2.errors.InvalidTextRepresentation) invalid input syntax for type boolean: "members"\n')
└ DataError('(psycopg2.errors.InvalidTextRepresentation) invalid input syntax for type boolean: "members"\n')
File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 144, in coro
await self.app(scope, receive_or_disconnect, send_no_error)
│ │ │ │ └ <function BaseHTTPMiddleware.call..call_next..send_no_error at 0x7f9e38598680>
│ │ │ └ <function BaseHTTPMiddleware.call..call_next..receive_or_disconnect at 0x7f9e3859a8e0>
│ │ └ {'type': 'http', 'asgi': {'version': '3.0', 'spec_version': '2.3'}, 'http_version': '1.1', 'server': ('000', 8080), 'c...
│ └ <open_webui.main.APIKeyRestrictionMiddleware object at 0x7f9e4293d650>
└ <starlette.middleware.base.BaseHTTPMiddleware object at 0x7f9e429622d0>
File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 191, in call
with recv_stream, send_stream, collapse_excgroups():
│ │ └ <function collapse_excgroups at 0x7f9fc78914e0>
│ └ MemoryObjectSendStream(_state=_MemoryObjectStreamState(max_buffer_size=0, buffer=deque([]), open_send_channels=0, open_receiv...
└ MemoryObjectReceiveStream(_state=_MemoryObjectStreamState(max_buffer_size=0, buffer=deque([]), open_send_channels=0, open_rec...
File "/usr/local/lib/python3.11/contextlib.py", line 158, in exit
self.gen.throw(typ, value, traceback)
│ │ │ │ │ └ <traceback object at 0x7f9e401fa100>
│ │ │ │ └ ExceptionGroup('unhandled errors in a TaskGroup', [DataError('(psycopg2.errors.InvalidTextRepresentation) invalid input synta...
│ │ │ └ <class 'ExceptionGroup'>
│ │ └ <method 'throw' of 'generator' objects>
│ └ <generator object collapse_excgroups at 0x7f9e385d2a40>
└ <contextlib._GeneratorContextManager object at 0x7f9e4381e710>
File "/usr/local/lib/python3.11/site-packages/starlette/_utils.py", line 85, in collapse_excgroups
raise exc
File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 193, in call
response = await self.dispatch_func(request, call_next)
│ │ │ └ <function BaseHTTPMiddleware.call..call_next at 0x7f9e3859b6a0>
│ │ └ <starlette.middleware.base._CachedRequest object at 0x7f9e4381e990>
│ └ <bound method APIKeyRestrictionMiddleware.dispatch of <open_webui.main.APIKeyRestrictionMiddleware object at 0x7f9e4293d650>>
└ <open_webui.main.APIKeyRestrictionMiddleware object at 0x7f9e4293d650>

File "/app/backend/open_webui/main.py", line 1348, in dispatch
response = await call_next(request)
│ └ <starlette.middleware.base._CachedRequest object at 0x7f9e4381e990>
└ <function BaseHTTPMiddleware.call..call_next at 0x7f9e3859b6a0>

File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 168, in call_next
raise app_exc from app_exc.cause or app_exc.context
│ │ │ │ └ <attribute 'context' of 'BaseException' objects>
│ │ │ └ DataError('(psycopg2.errors.InvalidTextRepresentation) invalid input syntax for type boolean: "members"\n')
│ │ └ <attribute 'cause' of 'BaseException' objects>
│ └ DataError('(psycopg2.errors.InvalidTextRepresentation) invalid input syntax for type boolean: "members"\n')
└ DataError('(psycopg2.errors.InvalidTextRepresentation) invalid input syntax for type boolean: "members"\n')
File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 144, in coro
await self.app(scope, receive_or_disconnect, send_no_error)
│ │ │ │ └ <function BaseHTTPMiddleware.call..call_next..send_no_error at 0x7f9e3859a2a0>
│ │ │ └ <function BaseHTTPMiddleware.call..call_next..receive_or_disconnect at 0x7f9e385984a0>
│ │ └ {'type': 'http', 'asgi': {'version': '3.0', 'spec_version': '2.3'}, 'http_version': '1.1', 'server': ('000', 8080), 'c...
│ └ <open_webui.utils.security_headers.SecurityHeadersMiddleware object at 0x7f9e43eadd90>
└ <open_webui.main.APIKeyRestrictionMiddleware object at 0x7f9e4293d650>
File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 191, in call
with recv_stream, send_stream, collapse_excgroups():
│ │ └ <function collapse_excgroups at 0x7f9fc78914e0>
│ └ MemoryObjectSendStream(_state=_MemoryObjectStreamState(max_buffer_size=0, buffer=deque([]), open_send_channels=0, open_receiv...
└ MemoryObjectReceiveStream(_state=_MemoryObjectStreamState(max_buffer_size=0, buffer=deque([]), open_send_channels=0, open_rec...
File "/usr/local/lib/python3.11/contextlib.py", line 158, in exit
self.gen.throw(typ, value, traceback)
│ │ │ │ │ └ <traceback object at 0x7f9e43802d40>
│ │ │ │ └ ExceptionGroup('unhandled errors in a TaskGroup', [DataError('(psycopg2.errors.InvalidTextRepresentation) invalid input synta...
│ │ │ └ <class 'ExceptionGroup'>
│ │ └ <method 'throw' of 'generator' objects>
│ └ <generator object collapse_excgroups at 0x7f9e401f6960>
└ <contextlib._GeneratorContextManager object at 0x7f9e437d2750>
File "/usr/local/lib/python3.11/site-packages/starlette/_utils.py", line 85, in collapse_excgroups
raise exc
File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 193, in call
response = await self.dispatch_func(request, call_next)
│ │ │ └ <function BaseHTTPMiddleware.call..call_next at 0x7f9e3859bd80>
│ │ └ <starlette.middleware.base._CachedRequest object at 0x7f9e43832c90>
│ └ <bound method SecurityHeadersMiddleware.dispatch of <open_webui.utils.security_headers.SecurityHeadersMiddleware object at 0x...
└ <open_webui.utils.security_headers.SecurityHeadersMiddleware object at 0x7f9e43eadd90>

File "/app/backend/open_webui/utils/security_headers.py", line 11, in dispatch
response = await call_next(request)
│ └ <starlette.middleware.base._CachedRequest object at 0x7f9e43832c90>
└ <function BaseHTTPMiddleware.call..call_next at 0x7f9e3859bd80>

File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 168, in call_next
raise app_exc from app_exc.cause or app_exc.context
│ │ │ │ └ <attribute 'context' of 'BaseException' objects>
│ │ │ └ DataError('(psycopg2.errors.InvalidTextRepresentation) invalid input syntax for type boolean: "members"\n')
│ │ └ <attribute 'cause' of 'BaseException' objects>
│ └ DataError('(psycopg2.errors.InvalidTextRepresentation) invalid input syntax for type boolean: "members"\n')
└ DataError('(psycopg2.errors.InvalidTextRepresentation) invalid input syntax for type boolean: "members"\n')
File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 144, in coro
await self.app(scope, receive_or_disconnect, send_no_error)
│ │ │ │ └ <function BaseHTTPMiddleware.call..call_next..send_no_error at 0x7f9e3859bc40>
│ │ │ └ <function BaseHTTPMiddleware.call..call_next..receive_or_disconnect at 0x7f9e3859a480>
│ │ └ {'type': 'http', 'asgi': {'version': '3.0', 'spec_version': '2.3'}, 'http_version': '1.1', 'server': ('000', 8080), 'c...
│ └ <open_webui.main.RedirectMiddleware object at 0x7f9e42b0bad0>
└ <open_webui.utils.security_headers.SecurityHeadersMiddleware object at 0x7f9e43eadd90>
File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 191, in call
with recv_stream, send_stream, collapse_excgroups():
│ │ └ <function collapse_excgroups at 0x7f9fc78914e0>
│ └ MemoryObjectSendStream(_state=_MemoryObjectStreamState(max_buffer_size=0, buffer=deque([]), open_send_channels=0, open_receiv...
└ MemoryObjectReceiveStream(_state=_MemoryObjectStreamState(max_buffer_size=0, buffer=deque([]), open_send_channels=0, open_rec...
File "/usr/local/lib/python3.11/contextlib.py", line 158, in exit
self.gen.throw(typ, value, traceback)
│ │ │ │ │ └ <traceback object at 0x7f9e3856f5c0>
│ │ │ │ └ ExceptionGroup('unhandled errors in a TaskGroup', [DataError('(psycopg2.errors.InvalidTextRepresentation) invalid input synta...
│ │ │ └ <class 'ExceptionGroup'>
│ │ └ <method 'throw' of 'generator' objects>
│ └ <generator object collapse_excgroups at 0x7f9e401f6260>
└ <contextlib._GeneratorContextManager object at 0x7f9e401f9cd0>
File "/usr/local/lib/python3.11/site-packages/starlette/_utils.py", line 85, in collapse_excgroups
raise exc
File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 193, in call
response = await self.dispatch_func(request, call_next)
│ │ │ └ <function BaseHTTPMiddleware.call..call_next at 0x7f9e3859af20>
│ │ └ <starlette.middleware.base._CachedRequest object at 0x7f9e431aaf50>
│ └ <bound method RedirectMiddleware.dispatch of <open_webui.main.RedirectMiddleware object at 0x7f9e42b0bad0>>
└ <open_webui.main.RedirectMiddleware object at 0x7f9e42b0bad0>

File "/app/backend/open_webui/main.py", line 1304, in dispatch
response = await call_next(request)
│ └ <starlette.middleware.base._CachedRequest object at 0x7f9e431aaf50>
└ <function BaseHTTPMiddleware.call..call_next at 0x7f9e3859af20>

File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 168, in call_next
raise app_exc from app_exc.cause or app_exc.context
│ │ │ │ └ <attribute 'context' of 'BaseException' objects>
│ │ │ └ DataError('(psycopg2.errors.InvalidTextRepresentation) invalid input syntax for type boolean: "members"\n')
│ │ └ <attribute 'cause' of 'BaseException' objects>
│ └ DataError('(psycopg2.errors.InvalidTextRepresentation) invalid input syntax for type boolean: "members"\n')
└ DataError('(psycopg2.errors.InvalidTextRepresentation) invalid input syntax for type boolean: "members"\n')
File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 144, in coro
await self.app(scope, receive_or_disconnect, send_no_error)
│ │ │ │ └ <function BaseHTTPMiddleware.call..call_next..send_no_error at 0x7f9e3859b560>
│ │ │ └ <function BaseHTTPMiddleware.call..call_next..receive_or_disconnect at 0x7f9e38599940>
│ │ └ {'type': 'http', 'asgi': {'version': '3.0', 'spec_version': '2.3'}, 'http_version': '1.1', 'server': ('000', 8080), 'c...
│ └ <starlette_compress.CompressMiddleware object at 0x7f9fca011fd0>
└ <open_webui.main.RedirectMiddleware object at 0x7f9e42b0bad0>
File "/usr/local/lib/python3.11/site-packages/starlette_compress/init.py", line 92, in call
return await self._zstd(scope, receive, send)
│ │ │ │ └ <function BaseHTTPMiddleware.call..call_next..send_no_error at 0x7f9e3859b560>
│ │ │ └ <function BaseHTTPMiddleware.call..call_next..receive_or_disconnect at 0x7f9e38599940>
│ │ └ {'type': 'http', 'asgi': {'version': '3.0', 'spec_version': '2.3'}, 'http_version': '1.1', 'server': ('000', 8080), 'c...
│ └ <member '_zstd' of 'CompressMiddleware' objects>
└ <starlette_compress.CompressMiddleware object at 0x7f9fca011fd0>
File "/usr/local/lib/python3.11/site-packages/starlette_compress/_zstd_legacy.py", line 100, in call
await self.app(scope, receive, wrapper)
│ │ │ │ └ <function ZstdResponder.call..wrapper at 0x7f9e3859a200>
│ │ │ └ <function BaseHTTPMiddleware.call..call_next..receive_or_disconnect at 0x7f9e38599940>
│ │ └ {'type': 'http', 'asgi': {'version': '3.0', 'spec_version': '2.3'}, 'http_version': '1.1', 'server': ('000', 8080), 'c...
│ └ <member 'app' of 'ZstdResponder' objects>
└ <starlette_compress._zstd_legacy.ZstdResponder object at 0x7f9e429aa300>
File "/usr/local/lib/python3.11/site-packages/starlette/middleware/exceptions.py", line 63, in call
await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send)
│ │ │ │ │ │ └ <function ZstdResponder.call..wrapper at 0x7f9e3859a200>
│ │ │ │ │ └ <function BaseHTTPMiddleware.call..call_next..receive_or_disconnect at 0x7f9e38599940>
│ │ │ │ └ {'type': 'http', 'asgi': {'version': '3.0', 'spec_version': '2.3'}, 'http_version': '1.1', 'server': ('000', 8080), 'c...
│ │ │ └ <starlette.requests.Request object at 0x7f9e402283d0>
│ │ └ <fastapi.middleware.asyncexitstack.AsyncExitStackMiddleware object at 0x7f9e42765210>
│ └ <starlette.middleware.exceptions.ExceptionMiddleware object at 0x7f9e4279d810>
└ <function wrap_app_handling_exceptions at 0x7f9fc796c0e0>
File "/usr/local/lib/python3.11/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app
raise exc
File "/usr/local/lib/python3.11/site-packages/starlette/_exception_handler.py", line 42, in wrapped_app
await app(scope, receive, sender)
│ │ │ └ <function wrap_app_handling_exceptions..wrapped_app..sender at 0x7f9e3859bf60>
│ │ └ <function BaseHTTPMiddleware.call..call_next..receive_or_disconnect at 0x7f9e38599940>
│ └ {'type': 'http', 'asgi': {'version': '3.0', 'spec_version': '2.3'}, 'http_version': '1.1', 'server': ('000', 8080), 'c...
└ <fastapi.middleware.asyncexitstack.AsyncExitStackMiddleware object at 0x7f9e42765210>
File "/usr/local/lib/python3.11/site-packages/fastapi/middleware/asyncexitstack.py", line 18, in call
await self.app(scope, receive, send)
│ │ │ │ └ <function wrap_app_handling_exceptions..wrapped_app..sender at 0x7f9e3859bf60>
│ │ │ └ <function BaseHTTPMiddleware.call..call_next..receive_or_disconnect at 0x7f9e38599940>
│ │ └ {'type': 'http', 'asgi': {'version': '3.0', 'spec_version': '2.3'}, 'http_version': '1.1', 'server': ('000', 8080), 'c...
│ └ <fastapi.routing.APIRouter object at 0x7f9e42c8e250>
└ <fastapi.middleware.asyncexitstack.AsyncExitStackMiddleware object at 0x7f9e42765210>
File "/usr/local/lib/python3.11/site-packages/starlette/routing.py", line 716, in call
await self.middleware_stack(scope, receive, send)
│ │ │ │ └ <function wrap_app_handling_exceptions..wrapped_app..sender at 0x7f9e3859bf60>
│ │ │ └ <function BaseHTTPMiddleware.call..call_next..receive_or_disconnect at 0x7f9e38599940>
│ │ └ {'type': 'http', 'asgi': {'version': '3.0', 'spec_version': '2.3'}, 'http_version': '1.1', 'server': ('000', 8080), 'c...
│ └ <bound method Router.app of <fastapi.routing.APIRouter object at 0x7f9e42c8e250>>
└ <fastapi.routing.APIRouter object at 0x7f9e42c8e250>
File "/usr/local/lib/python3.11/site-packages/starlette/routing.py", line 736, in app
await route.handle(scope, receive, send)
│ │ │ │ └ <function wrap_app_handling_exceptions..wrapped_app..sender at 0x7f9e3859bf60>
│ │ │ └ <function BaseHTTPMiddleware.call..call_next..receive_or_disconnect at 0x7f9e38599940>
│ │ └ {'type': 'http', 'asgi': {'version': '3.0', 'spec_version': '2.3'}, 'http_version': '1.1', 'server': ('000', 8080), 'c...
│ └ <function Route.handle at 0x7f9fc796d760>
└ APIRoute(path='/api/v1/groups/', name='get_groups', methods=['GET'])
File "/usr/local/lib/python3.11/site-packages/starlette/routing.py", line 290, in handle
await self.app(scope, receive, send)
│ │ │ │ └ <function wrap_app_handling_exceptions..wrapped_app..sender at 0x7f9e3859bf60>
│ │ │ └ <function BaseHTTPMiddleware.call..call_next..receive_or_disconnect at 0x7f9e38599940>
│ │ └ {'type': 'http', 'asgi': {'version': '3.0', 'spec_version': '2.3'}, 'http_version': '1.1', 'server': ('000', 8080), 'c...
│ └ <function request_response..app at 0x7f9e42570a40>
└ APIRoute(path='/api/v1/groups/', name='get_groups', methods=['GET'])
File "/usr/local/lib/python3.11/site-packages/fastapi/routing.py", line 115, in app
await wrap_app_handling_exceptions(app, request)(scope, receive, send)
│ │ │ │ │ └ <function wrap_app_handling_exceptions..wrapped_app..sender at 0x7f9e3859bf60>
│ │ │ │ └ <function BaseHTTPMiddleware.call..call_next..receive_or_disconnect at 0x7f9e38599940>
│ │ │ └ {'type': 'http', 'asgi': {'version': '3.0', 'spec_version': '2.3'}, 'http_version': '1.1', 'server': ('000', 8080), 'c...
│ │ └ <starlette.requests.Request object at 0x7f9e40073950>
│ └ <function request_response..app..app at 0x7f9e38598d60>
└ <function wrap_app_handling_exceptions at 0x7f9fc796c0e0>
File "/usr/local/lib/python3.11/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app
raise exc
File "/usr/local/lib/python3.11/site-packages/starlette/_exception_handler.py", line 42, in wrapped_app
await app(scope, receive, sender)
│ │ │ └ <function wrap_app_handling_exceptions..wrapped_app..sender at 0x7f9e3859b740>
│ │ └ <function BaseHTTPMiddleware.call..call_next..receive_or_disconnect at 0x7f9e38599940>
│ └ {'type': 'http', 'asgi': {'version': '3.0', 'spec_version': '2.3'}, 'http_version': '1.1', 'server': ('000', 8080), 'c...
└ <function request_response..app..app at 0x7f9e38598d60>
File "/usr/local/lib/python3.11/site-packages/fastapi/routing.py", line 101, in app
response = await f(request)
│ └ <starlette.requests.Request object at 0x7f9e40073950>
└ <function get_request_handler..app at 0x7f9e42570900>
File "/usr/local/lib/python3.11/site-packages/fastapi/routing.py", line 355, in app
raw_response = await run_endpoint_function(
└ <function run_endpoint_function at 0x7f9fc796f6a0>
File "/usr/local/lib/python3.11/site-packages/fastapi/routing.py", line 243, in run_endpoint_function
return await dependant.call(**values)
│ │ └ {'user': UserModel(id='e74c4770-cdee-44e9-9d7c-d74365a479c6', email='jan.kammerer-liebnitzky@bmftr.bund.de', username=None, r...
│ └ <function get_groups at 0x7f9e43fd1f80>
└ Dependant(path_params=[], query_params=[ModelField(field_info=Query(None), name='share', mode='validation', config=None)], he...

File "/app/backend/open_webui/routers/groups.py", line 49, in get_groups
groups = Groups.get_groups(filter=filter, db=db)
│ │ │ └ <sqlalchemy.orm.session.Session object at 0x7f9e3852ff50>
│ │ └ {'member_id': 'e74c4770-cdee-44e9-9d7c-d74365a479c6', 'share': True}
│ └ <function GroupTable.get_groups at 0x7f9f099b4720>
└ <open_webui.models.groups.GroupTable object at 0x7f9f099bf710>

File "/app/backend/open_webui/models/groups.py", line 207, in get_groups
groups = query.order_by(Group.updated_at.desc()).all()
│ │ │ │ └ <function ColumnOperators.desc at 0x7f9fc8dadb20>
│ │ │ └ <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f9f09977420>
│ │ └ <class 'open_webui.models.groups.Group'>
│ └ <function Query.order_by at 0x7f9f0aca28e0>
└ <sqlalchemy.orm.query.Query object at 0x7f9e400d56d0>

File "/usr/local/lib/python3.11/site-packages/sqlalchemy/orm/query.py", line 2704, in all
return self._iter().all() # type: ignore
│ └ <function Query._iter at 0x7f9f0aca8f40>
└ <sqlalchemy.orm.query.Query object at 0x7f9e440fc190>
File "/usr/local/lib/python3.11/site-packages/sqlalchemy/orm/query.py", line 2857, in _iter
result: Union[ScalarResult[_T], Result[_T]] = self.session.execute(
│ │ │ │ │ │ └ <function Session.execute at 0x7f9f0ab5dda0>
│ │ │ │ │ └ <sqlalchemy.orm.session.Session object at 0x7f9e40091ed0>
│ │ │ │ └ <sqlalchemy.orm.query.Query object at 0x7f9e440fc190>
│ │ │ └ ~_T
│ │ └ <class 'sqlalchemy.engine.result.Result'>
│ └ ~_T
└ typing.Union
File "/usr/local/lib/python3.11/site-packages/sqlalchemy/orm/session.py", line 2351, in execute
return self._execute_internal(
│ └ <function Session._execute_internal at 0x7f9f0ab5db20>
└ <sqlalchemy.orm.session.Session object at 0x7f9e40091ed0>
File "/usr/local/lib/python3.11/site-packages/sqlalchemy/orm/session.py", line 2249, in _execute_internal
result: Result[Any] = compile_state_cls.orm_execute_statement(
│ │ └ <classmethod(<function AbstractORMCompileState.orm_execute_statement at 0x7f9f0ae028e0>)>
│ └ <class 'sqlalchemy.orm.context.ORMSelectCompileState'>
└ typing.Any
File "/usr/local/lib/python3.11/site-packages/sqlalchemy/orm/context.py", line 306, in orm_execute_statement
result = conn.execute(
│ └ <function Connection.execute at 0x7f9fc87c6660>
└ <sqlalchemy.engine.base.Connection object at 0x7f9e4293c910>
File "/usr/local/lib/python3.11/site-packages/sqlalchemy/engine/base.py", line 1419, in execute
return meth(
└ <bound method ClauseElement._execute_on_connection of <sqlalchemy.sql.selectable.Select object at 0x7f9e43832550>>
File "/usr/local/lib/python3.11/site-packages/sqlalchemy/sql/elements.py", line 527, in _execute_on_connection
return connection._execute_clauseelement(
│ └ <function Connection._execute_clauseelement at 0x7f9fc87c6980>
└ <sqlalchemy.engine.base.Connection object at 0x7f9e4293c910>
File "/usr/local/lib/python3.11/site-packages/sqlalchemy/engine/base.py", line 1641, in _execute_clauseelement
ret = self._execute_context(
│ └ <function Connection._execute_context at 0x7f9fc87c6b60>
└ <sqlalchemy.engine.base.Connection object at 0x7f9e4293c910>
File "/usr/local/lib/python3.11/site-packages/sqlalchemy/engine/base.py", line 1846, in _execute_context
return self._exec_single_context(
│ └ <function Connection._exec_single_context at 0x7f9fc87c6c00>
└ <sqlalchemy.engine.base.Connection object at 0x7f9e4293c910>
File "/usr/local/lib/python3.11/site-packages/sqlalchemy/engine/base.py", line 1986, in _exec_single_context
self._handle_dbapi_exception(
│ └ <function Connection._handle_dbapi_exception at 0x7f9fc87c6e80>
└ <sqlalchemy.engine.base.Connection object at 0x7f9e4293c910>
File "/usr/local/lib/python3.11/site-packages/sqlalchemy/engine/base.py", line 2363, in _handle_dbapi_exception
raise sqlalchemy_exception.with_traceback(exc_info[2]) from e
│ │ │ └ InvalidTextRepresentation('invalid input syntax for type boolean: "members"\n')
│ │ └ (<class 'psycopg2.errors.InvalidTextRepresentation'>, InvalidTextRepresentation('invalid input syntax for type boolean: "memb...
│ └ <method 'with_traceback' of 'BaseException' objects>
└ DataError('(psycopg2.errors.InvalidTextRepresentation) invalid input syntax for type boolean: "members"\n')
File "/usr/local/lib/python3.11/site-packages/sqlalchemy/engine/base.py", line 1967, in _exec_single_context
self.dialect.do_execute(
│ │ └ <function DefaultDialect.do_execute at 0x7f9fc8996ac0>
│ └ <sqlalchemy.dialects.postgresql.psycopg2.PGDialect_psycopg2 object at 0x7f9f0bfcff90>
└ <sqlalchemy.engine.base.Connection object at 0x7f9e4293c910>
File "/usr/local/lib/python3.11/site-packages/sqlalchemy/engine/default.py", line 952, in do_execute
cursor.execute(statement, parameters)
│ │ │ └ {'data_1': 'config', 'param_1': 'share', 'param_2': 'members', 'user_id_1': 'e74c4770-cdee-44e9-9d7c-d74365a479c6'}
│ │ └ 'SELECT "group".id AS group_id, "group".user_id AS group_user_id, "group".name AS group_name, "group".description AS group_de...
│ └ <method 'execute' of 'psycopg2.extensions.cursor' objects>
└ <cursor object at 0x7f9e402ebb50; closed: -1>

sqlalchemy.exc.DataError: (psycopg2.errors.InvalidTextRepresentation) invalid input syntax for type boolean: "members"

[SQL: SELECT "group".id AS group_id, "group".user_id AS group_user_id, "group".name AS group_name, "group".description AS group_description, "group".data AS group_data, "group".meta AS group_meta, "group".permissions AS group_permissions, "group".created_at AS group_created_at, "group".updated_at AS group_updated_at
FROM "group"
WHERE "group".data IS NULL OR CAST((("group".data -> %(data_1)s) ->> %(param_1)s) AS BOOLEAN) IS NULL OR CAST((("group".data -> %(data_1)s) ->> %(param_1)s) AS BOOLEAN) = true OR CAST((("group".data -> %(data_1)s) ->> %(param_1)s) AS VARCHAR) = %(param_2)s AND "group".id IN (SELECT anon_1.group_id
FROM (SELECT group_member.group_id AS group_id
FROM group_member
WHERE group_member.user_id = %(user_id_1)s) AS anon_1) ORDER BY "group".updated_at DESC]
[parameters: {'data_1': 'config', 'param_1': 'share', 'param_2': 'members', 'user_id_1': 'e74c4770-cdee-44e9-9d7c-d74365a479c6'}]
(Background on this error at: https://sqlalche.me/e/20/9h9h)

Additional Information

No response

Originally created by @janl772 on GitHub (Jan 14, 2026). Original GitHub issue: https://github.com/open-webui/open-webui/issues/20666 ### Check Existing Issues - [x] I have searched for any existing and/or related issues. - [x] I have searched for any existing and/or related discussions. - [x] I have also searched in the CLOSED issues AND CLOSED discussions and found no related items (your issue might already be addressed on the development branch!). - [x] I am using the latest version of Open WebUI. ### Installation Method Docker ### Open WebUI Version v0.7.2 ### Ollama Version (if applicable) 0.13.5 ### Operating System Debian 12 ### Browser (if applicable) firefox 146.0.1, edge 143.0.3650.96 ### Confirmation - [x] I have read and followed all instructions in `README.md`. - [x] I am using the latest version of **both** Open WebUI and Ollama. - [x] I have included the browser console logs. - [x] I have included the Docker container logs. - [x] I have **provided every relevant configuration, setting, and environment variable used in my setup.** - [x] I have clearly **listed every relevant configuration, custom setting, environment variable, and command-line option that influences my setup** (such as Docker Compose overrides, .env values, browser settings, authentication configurations, etc). - [x] I have documented **step-by-step reproduction instructions that are precise, sequential, and leave nothing to interpretation**. My steps: - Start with the initial platform/version/OS and dependencies used, - Specify exact install/launch/configure commands, - List URLs visited, user input (incl. example values/emails/passwords if needed), - Describe all options and toggles enabled or changed, - Include any files or environmental changes, - Identify the expected and actual result at each stage, - Ensure any reasonably skilled user can follow and hit the same issue. ### Expected Behavior I am part of a group named "TestGroup" and admin has sharing permissions enabled for "members" for this group as well as USER_PERMISSIONS_WORKSPACE_KNOWLEDGE_ALLOW_SHARING=True. When I create a knowledge database and want to share to "TestGroup", I should be able to select it and share knowledge accordingly to fellow members of that group. ### Actual Behavior When I open sharing window, app freezes and I have to reload. I cannot select my "TestGroup" for sharing: <img width="787" height="322" alt="Image" src="https://github.com/user-attachments/assets/8a060481-8071-4041-b166-ab027abc4532" /> ### Steps to Reproduce 1. Start OWUI using latest version, see my compose file [compose.yaml.txt](https://github.com/user-attachments/files/24615929/compose.yaml.txt) 2. as admin create a test group with user 1 and allow sharing to "members" <img width="1500" height="895" alt="Image" src="https://github.com/user-attachments/assets/42afb3f3-5e07-4666-a980-363fd990ad4a" /> 4. switch to user 1 and create knowledge database 5. try sharing knowledge database with test group ### Logs & Screenshots 2026-01-14 14:42:06.187 | ERROR | uvicorn.protocols.http.httptools_impl:run_asgi:421 - Exception in ASGI application Traceback (most recent call last): File "/usr/local/lib/python3.11/site-packages/sqlalchemy/engine/base.py", line 1967, in _exec_single_context self.dialect.do_execute( │ │ └ <function DefaultDialect.do_execute at 0x7f9fc8996ac0> │ └ <sqlalchemy.dialects.postgresql.psycopg2.PGDialect_psycopg2 object at 0x7f9f0bfcff90> └ <sqlalchemy.engine.base.Connection object at 0x7f9e4293c910> File "/usr/local/lib/python3.11/site-packages/sqlalchemy/engine/default.py", line 952, in do_execute cursor.execute(statement, parameters) │ │ │ └ {'data_1': 'config', 'param_1': 'share', 'param_2': 'members', 'user_id_1': 'e74c4770-cdee-44e9-9d7c-d74365a479c6'} │ │ └ 'SELECT "group".id AS group_id, "group".user_id AS group_user_id, "group".name AS group_name, "group".description AS group_de... │ └ <method 'execute' of 'psycopg2.extensions.cursor' objects> └ <cursor object at 0x7f9e402ebb50; closed: -1> psycopg2.errors.InvalidTextRepresentation: invalid input syntax for type boolean: "members" The above exception was the direct cause of the following exception: Traceback (most recent call last): File "<frozen runpy>", line 198, in _run_module_as_main File "<frozen runpy>", line 88, in _run_code File "/usr/local/lib/python3.11/site-packages/uvicorn/__main__.py", line 4, in <module> uvicorn.main() │ └ <Command main> └ <module 'uvicorn' from '/usr/local/lib/python3.11/site-packages/uvicorn/__init__.py'> File "/usr/local/lib/python3.11/site-packages/click/core.py", line 1485, in __call__ return self.main(*args, **kwargs) │ │ │ └ {} │ │ └ () │ └ <function Command.main at 0x7f9fca2dae80> └ <Command main> File "/usr/local/lib/python3.11/site-packages/click/core.py", line 1406, in main rv = self.invoke(ctx) │ │ └ <click.core.Context object at 0x7f9fcb06d450> │ └ <function Command.invoke at 0x7f9fca2dab60> └ <Command main> File "/usr/local/lib/python3.11/site-packages/click/core.py", line 1269, in invoke return ctx.invoke(self.callback, **ctx.params) │ │ │ │ │ └ {'host': '0.0.0.0', 'port': 8080, 'forwarded_allow_ips': '*', 'workers': 1, 'app': 'open_webui.main:app', 'uds': None, 'fd': ... │ │ │ │ └ <click.core.Context object at 0x7f9fcb06d450> │ │ │ └ <function main at 0x7f9fc9fb0b80> │ │ └ <Command main> │ └ <function Context.invoke at 0x7f9fca2d9da0> └ <click.core.Context object at 0x7f9fcb06d450> File "/usr/local/lib/python3.11/site-packages/click/core.py", line 824, in invoke return callback(*args, **kwargs) │ │ └ {'host': '0.0.0.0', 'port': 8080, 'forwarded_allow_ips': '*', 'workers': 1, 'app': 'open_webui.main:app', 'uds': None, 'fd': ... │ └ () └ <function main at 0x7f9fc9fb0b80> File "/usr/local/lib/python3.11/site-packages/uvicorn/main.py", line 424, in main run( └ <function run at 0x7f9fca2354e0> File "/usr/local/lib/python3.11/site-packages/uvicorn/main.py", line 594, in run server.run() │ └ <function Server.run at 0x7f9fca234d60> └ <uvicorn.server.Server object at 0x7f9fca3b3c50> File "/usr/local/lib/python3.11/site-packages/uvicorn/server.py", line 67, in run return asyncio_run(self.serve(sockets=sockets), loop_factory=self.config.get_loop_factory()) │ │ │ │ │ │ └ <function Config.get_loop_factory at 0x7f9fca1bd4e0> │ │ │ │ │ └ <uvicorn.config.Config object at 0x7f9fc9fc3f10> │ │ │ │ └ <uvicorn.server.Server object at 0x7f9fca3b3c50> │ │ │ └ None │ │ └ <function Server.serve at 0x7f9fca234e00> │ └ <uvicorn.server.Server object at 0x7f9fca3b3c50> └ <function asyncio_run at 0x7f9fca2e1e40> File "/usr/local/lib/python3.11/site-packages/uvicorn/_compat.py", line 30, in asyncio_run return runner.run(main) │ │ └ <coroutine object Server.serve at 0x7f9fc9fad990> │ └ <function Runner.run at 0x7f9fca574fe0> └ <asyncio.runners.Runner object at 0x7f9fca1d4710> File "/usr/local/lib/python3.11/asyncio/runners.py", line 118, in run return self._loop.run_until_complete(task) │ │ │ └ <Task pending name='Task-1' coro=<Server.serve() running at /usr/local/lib/python3.11/site-packages/uvicorn/server.py:71> wai... │ │ └ <cyfunction Loop.run_until_complete at 0x7f9fca024040> │ └ <uvloop.Loop running=True closed=False debug=False> └ <asyncio.runners.Runner object at 0x7f9fca1d4710> > File "/usr/local/lib/python3.11/site-packages/uvicorn/protocols/http/httptools_impl.py", line 416, in run_asgi result = await app( # type: ignore[func-returns-value] └ <uvicorn.middleware.proxy_headers.ProxyHeadersMiddleware object at 0x7f9e429aa510> File "/usr/local/lib/python3.11/site-packages/uvicorn/middleware/proxy_headers.py", line 60, in __call__ return await self.app(scope, receive, send) │ │ │ │ └ <bound method RequestResponseCycle.send of <uvicorn.protocols.http.httptools_impl.RequestResponseCycle object at 0x7f9e3852f6... │ │ │ └ <bound method RequestResponseCycle.receive of <uvicorn.protocols.http.httptools_impl.RequestResponseCycle object at 0x7f9e385... │ │ └ {'type': 'http', 'asgi': {'version': '3.0', 'spec_version': '2.3'}, 'http_version': '1.1', 'server': ('000', 8080), 'c... │ └ <fastapi.applications.FastAPI object at 0x7f9e43df2a50> └ <uvicorn.middleware.proxy_headers.ProxyHeadersMiddleware object at 0x7f9e429aa510> File "/usr/local/lib/python3.11/site-packages/fastapi/applications.py", line 1135, in __call__ await super().__call__(scope, receive, send) │ │ └ <bound method RequestResponseCycle.send of <uvicorn.protocols.http.httptools_impl.RequestResponseCycle object at 0x7f9e3852f6... │ └ <bound method RequestResponseCycle.receive of <uvicorn.protocols.http.httptools_impl.RequestResponseCycle object at 0x7f9e385... └ {'type': 'http', 'asgi': {'version': '3.0', 'spec_version': '2.3'}, 'http_version': '1.1', 'server': ('000', 8080), 'c... File "/usr/local/lib/python3.11/site-packages/starlette/applications.py", line 107, in __call__ await self.middleware_stack(scope, receive, send) │ │ │ │ └ <bound method RequestResponseCycle.send of <uvicorn.protocols.http.httptools_impl.RequestResponseCycle object at 0x7f9e3852f6... │ │ │ └ <bound method RequestResponseCycle.receive of <uvicorn.protocols.http.httptools_impl.RequestResponseCycle object at 0x7f9e385... │ │ └ {'type': 'http', 'asgi': {'version': '3.0', 'spec_version': '2.3'}, 'http_version': '1.1', 'server': ('000', 8080), 'c... │ └ <starlette.middleware.errors.ServerErrorMiddleware object at 0x7f9e432a7a90> └ <fastapi.applications.FastAPI object at 0x7f9e43df2a50> File "/usr/local/lib/python3.11/site-packages/starlette/middleware/errors.py", line 186, in __call__ raise exc File "/usr/local/lib/python3.11/site-packages/starlette/middleware/errors.py", line 164, in __call__ await self.app(scope, receive, _send) │ │ │ │ └ <function ServerErrorMiddleware.__call__.<locals>._send at 0x7f9e3859a7a0> │ │ │ └ <bound method RequestResponseCycle.receive of <uvicorn.protocols.http.httptools_impl.RequestResponseCycle object at 0x7f9e385... │ │ └ {'type': 'http', 'asgi': {'version': '3.0', 'spec_version': '2.3'}, 'http_version': '1.1', 'server': ('000', 8080), 'c... │ └ <starlette.middleware.sessions.SessionMiddleware object at 0x7f9e42abd610> └ <starlette.middleware.errors.ServerErrorMiddleware object at 0x7f9e432a7a90> File "/usr/local/lib/python3.11/site-packages/starlette/middleware/sessions.py", line 85, in __call__ await self.app(scope, receive, send_wrapper) │ │ │ │ └ <function SessionMiddleware.__call__.<locals>.send_wrapper at 0x7f9e38598540> │ │ │ └ <bound method RequestResponseCycle.receive of <uvicorn.protocols.http.httptools_impl.RequestResponseCycle object at 0x7f9e385... │ │ └ {'type': 'http', 'asgi': {'version': '3.0', 'spec_version': '2.3'}, 'http_version': '1.1', 'server': ('000', 8080), 'c... │ └ <open_webui.utils.audit.AuditLoggingMiddleware object at 0x7f9e43e1e010> └ <starlette.middleware.sessions.SessionMiddleware object at 0x7f9e42abd610> File "/app/backend/open_webui/utils/audit.py", line 154, in __call__ return await self.app(scope, receive, send) │ │ │ │ └ <function SessionMiddleware.__call__.<locals>.send_wrapper at 0x7f9e38598540> │ │ │ └ <bound method RequestResponseCycle.receive of <uvicorn.protocols.http.httptools_impl.RequestResponseCycle object at 0x7f9e385... │ │ └ {'type': 'http', 'asgi': {'version': '3.0', 'spec_version': '2.3'}, 'http_version': '1.1', 'server': ('000', 8080), 'c... │ └ <starlette.middleware.cors.CORSMiddleware object at 0x7f9e4279d7d0> └ <open_webui.utils.audit.AuditLoggingMiddleware object at 0x7f9e43e1e010> File "/usr/local/lib/python3.11/site-packages/starlette/middleware/cors.py", line 85, in __call__ await self.app(scope, receive, send) │ │ │ │ └ <function SessionMiddleware.__call__.<locals>.send_wrapper at 0x7f9e38598540> │ │ │ └ <bound method RequestResponseCycle.receive of <uvicorn.protocols.http.httptools_impl.RequestResponseCycle object at 0x7f9e385... │ │ └ {'type': 'http', 'asgi': {'version': '3.0', 'spec_version': '2.3'}, 'http_version': '1.1', 'server': ('000', 8080), 'c... │ └ <starlette.middleware.base.BaseHTTPMiddleware object at 0x7f9e42cb60d0> └ <starlette.middleware.cors.CORSMiddleware object at 0x7f9e4279d7d0> File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 191, in __call__ with recv_stream, send_stream, collapse_excgroups(): │ │ └ <function collapse_excgroups at 0x7f9fc78914e0> │ └ MemoryObjectSendStream(_state=_MemoryObjectStreamState(max_buffer_size=0, buffer=deque([]), open_send_channels=0, open_receiv... └ MemoryObjectReceiveStream(_state=_MemoryObjectStreamState(max_buffer_size=0, buffer=deque([]), open_send_channels=0, open_rec... File "/usr/local/lib/python3.11/contextlib.py", line 158, in __exit__ self.gen.throw(typ, value, traceback) │ │ │ │ │ └ <traceback object at 0x7f9e4381c600> │ │ │ │ └ ExceptionGroup('unhandled errors in a TaskGroup', [DataError('(psycopg2.errors.InvalidTextRepresentation) invalid input synta... │ │ │ └ <class 'ExceptionGroup'> │ │ └ <method 'throw' of 'generator' objects> │ └ <generator object collapse_excgroups at 0x7f9e40082180> └ <contextlib._GeneratorContextManager object at 0x7f9e40212c10> File "/usr/local/lib/python3.11/site-packages/starlette/_utils.py", line 85, in collapse_excgroups raise exc File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 193, in __call__ response = await self.dispatch_func(request, call_next) │ │ │ └ <function BaseHTTPMiddleware.__call__.<locals>.call_next at 0x7f9e38598ea0> │ │ └ <starlette.middleware.base._CachedRequest object at 0x7f9e4019e750> │ └ <function inspect_websocket at 0x7f9e42a616c0> └ <starlette.middleware.base.BaseHTTPMiddleware object at 0x7f9e42cb60d0> File "/app/backend/open_webui/main.py", line 1392, in inspect_websocket return await call_next(request) │ └ <starlette.middleware.base._CachedRequest object at 0x7f9e4019e750> └ <function BaseHTTPMiddleware.__call__.<locals>.call_next at 0x7f9e38598ea0> File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 168, in call_next raise app_exc from app_exc.__cause__ or app_exc.__context__ │ │ │ │ └ <attribute '__context__' of 'BaseException' objects> │ │ │ └ DataError('(psycopg2.errors.InvalidTextRepresentation) invalid input syntax for type boolean: "members"\n') │ │ └ <attribute '__cause__' of 'BaseException' objects> │ └ DataError('(psycopg2.errors.InvalidTextRepresentation) invalid input syntax for type boolean: "members"\n') └ DataError('(psycopg2.errors.InvalidTextRepresentation) invalid input syntax for type boolean: "members"\n') File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 144, in coro await self.app(scope, receive_or_disconnect, send_no_error) │ │ │ │ └ <function BaseHTTPMiddleware.__call__.<locals>.call_next.<locals>.send_no_error at 0x7f9e3859bce0> │ │ │ └ <function BaseHTTPMiddleware.__call__.<locals>.call_next.<locals>.receive_or_disconnect at 0x7f9e38599760> │ │ └ {'type': 'http', 'asgi': {'version': '3.0', 'spec_version': '2.3'}, 'http_version': '1.1', 'server': ('000', 8080), 'c... │ └ <starlette.middleware.base.BaseHTTPMiddleware object at 0x7f9e42a89bd0> └ <starlette.middleware.base.BaseHTTPMiddleware object at 0x7f9e42cb60d0> File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 191, in __call__ with recv_stream, send_stream, collapse_excgroups(): │ │ └ <function collapse_excgroups at 0x7f9fc78914e0> │ └ MemoryObjectSendStream(_state=_MemoryObjectStreamState(max_buffer_size=0, buffer=deque([]), open_send_channels=0, open_receiv... └ MemoryObjectReceiveStream(_state=_MemoryObjectStreamState(max_buffer_size=0, buffer=deque([]), open_send_channels=0, open_rec... File "/usr/local/lib/python3.11/contextlib.py", line 158, in __exit__ self.gen.throw(typ, value, traceback) │ │ │ │ │ └ <traceback object at 0x7f9e43831a00> │ │ │ │ └ ExceptionGroup('unhandled errors in a TaskGroup', [DataError('(psycopg2.errors.InvalidTextRepresentation) invalid input synta... │ │ │ └ <class 'ExceptionGroup'> │ │ └ <method 'throw' of 'generator' objects> │ └ <generator object collapse_excgroups at 0x7f9e385d03c0> └ <contextlib._GeneratorContextManager object at 0x7f9e401c52d0> File "/usr/local/lib/python3.11/site-packages/starlette/_utils.py", line 85, in collapse_excgroups raise exc File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 193, in __call__ response = await self.dispatch_func(request, call_next) │ │ │ └ <function BaseHTTPMiddleware.__call__.<locals>.call_next at 0x7f9e38599300> │ │ └ <starlette.middleware.base._CachedRequest object at 0x7f9e38563750> │ └ <function check_url at 0x7f9e42a61620> └ <starlette.middleware.base.BaseHTTPMiddleware object at 0x7f9e42a89bd0> File "/app/backend/open_webui/main.py", line 1371, in check_url response = await call_next(request) │ └ <starlette.middleware.base._CachedRequest object at 0x7f9e38563750> └ <function BaseHTTPMiddleware.__call__.<locals>.call_next at 0x7f9e38599300> File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 168, in call_next raise app_exc from app_exc.__cause__ or app_exc.__context__ │ │ │ │ └ <attribute '__context__' of 'BaseException' objects> │ │ │ └ DataError('(psycopg2.errors.InvalidTextRepresentation) invalid input syntax for type boolean: "members"\n') │ │ └ <attribute '__cause__' of 'BaseException' objects> │ └ DataError('(psycopg2.errors.InvalidTextRepresentation) invalid input syntax for type boolean: "members"\n') └ DataError('(psycopg2.errors.InvalidTextRepresentation) invalid input syntax for type boolean: "members"\n') File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 144, in coro await self.app(scope, receive_or_disconnect, send_no_error) │ │ │ │ └ <function BaseHTTPMiddleware.__call__.<locals>.call_next.<locals>.send_no_error at 0x7f9e38599c60> │ │ │ └ <function BaseHTTPMiddleware.__call__.<locals>.call_next.<locals>.receive_or_disconnect at 0x7f9e3859b420> │ │ └ {'type': 'http', 'asgi': {'version': '3.0', 'spec_version': '2.3'}, 'http_version': '1.1', 'server': ('000', 8080), 'c... │ └ <starlette.middleware.base.BaseHTTPMiddleware object at 0x7f9e429622d0> └ <starlette.middleware.base.BaseHTTPMiddleware object at 0x7f9e42a89bd0> File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 191, in __call__ with recv_stream, send_stream, collapse_excgroups(): │ │ └ <function collapse_excgroups at 0x7f9fc78914e0> │ └ MemoryObjectSendStream(_state=_MemoryObjectStreamState(max_buffer_size=0, buffer=deque([]), open_send_channels=0, open_receiv... └ MemoryObjectReceiveStream(_state=_MemoryObjectStreamState(max_buffer_size=0, buffer=deque([]), open_send_channels=0, open_rec... File "/usr/local/lib/python3.11/contextlib.py", line 158, in __exit__ self.gen.throw(typ, value, traceback) │ │ │ │ │ └ <traceback object at 0x7f9e43832840> │ │ │ │ └ ExceptionGroup('unhandled errors in a TaskGroup', [DataError('(psycopg2.errors.InvalidTextRepresentation) invalid input synta... │ │ │ └ <class 'ExceptionGroup'> │ │ └ <method 'throw' of 'generator' objects> │ └ <generator object collapse_excgroups at 0x7f9e385d2500> └ <contextlib._GeneratorContextManager object at 0x7f9e400d4f50> File "/usr/local/lib/python3.11/site-packages/starlette/_utils.py", line 85, in collapse_excgroups raise exc File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 193, in __call__ response = await self.dispatch_func(request, call_next) │ │ │ └ <function BaseHTTPMiddleware.__call__.<locals>.call_next at 0x7f9e3859a840> │ │ └ <starlette.middleware.base._CachedRequest object at 0x7f9e38553350> │ └ <function commit_session_after_request at 0x7f9e42a61580> └ <starlette.middleware.base.BaseHTTPMiddleware object at 0x7f9e429622d0> File "/app/backend/open_webui/main.py", line 1357, in commit_session_after_request response = await call_next(request) │ └ <starlette.middleware.base._CachedRequest object at 0x7f9e38553350> └ <function BaseHTTPMiddleware.__call__.<locals>.call_next at 0x7f9e3859a840> File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 168, in call_next raise app_exc from app_exc.__cause__ or app_exc.__context__ │ │ │ │ └ <attribute '__context__' of 'BaseException' objects> │ │ │ └ DataError('(psycopg2.errors.InvalidTextRepresentation) invalid input syntax for type boolean: "members"\n') │ │ └ <attribute '__cause__' of 'BaseException' objects> │ └ DataError('(psycopg2.errors.InvalidTextRepresentation) invalid input syntax for type boolean: "members"\n') └ DataError('(psycopg2.errors.InvalidTextRepresentation) invalid input syntax for type boolean: "members"\n') File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 144, in coro await self.app(scope, receive_or_disconnect, send_no_error) │ │ │ │ └ <function BaseHTTPMiddleware.__call__.<locals>.call_next.<locals>.send_no_error at 0x7f9e38598680> │ │ │ └ <function BaseHTTPMiddleware.__call__.<locals>.call_next.<locals>.receive_or_disconnect at 0x7f9e3859a8e0> │ │ └ {'type': 'http', 'asgi': {'version': '3.0', 'spec_version': '2.3'}, 'http_version': '1.1', 'server': ('000', 8080), 'c... │ └ <open_webui.main.APIKeyRestrictionMiddleware object at 0x7f9e4293d650> └ <starlette.middleware.base.BaseHTTPMiddleware object at 0x7f9e429622d0> File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 191, in __call__ with recv_stream, send_stream, collapse_excgroups(): │ │ └ <function collapse_excgroups at 0x7f9fc78914e0> │ └ MemoryObjectSendStream(_state=_MemoryObjectStreamState(max_buffer_size=0, buffer=deque([]), open_send_channels=0, open_receiv... └ MemoryObjectReceiveStream(_state=_MemoryObjectStreamState(max_buffer_size=0, buffer=deque([]), open_send_channels=0, open_rec... File "/usr/local/lib/python3.11/contextlib.py", line 158, in __exit__ self.gen.throw(typ, value, traceback) │ │ │ │ │ └ <traceback object at 0x7f9e401fa100> │ │ │ │ └ ExceptionGroup('unhandled errors in a TaskGroup', [DataError('(psycopg2.errors.InvalidTextRepresentation) invalid input synta... │ │ │ └ <class 'ExceptionGroup'> │ │ └ <method 'throw' of 'generator' objects> │ └ <generator object collapse_excgroups at 0x7f9e385d2a40> └ <contextlib._GeneratorContextManager object at 0x7f9e4381e710> File "/usr/local/lib/python3.11/site-packages/starlette/_utils.py", line 85, in collapse_excgroups raise exc File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 193, in __call__ response = await self.dispatch_func(request, call_next) │ │ │ └ <function BaseHTTPMiddleware.__call__.<locals>.call_next at 0x7f9e3859b6a0> │ │ └ <starlette.middleware.base._CachedRequest object at 0x7f9e4381e990> │ └ <bound method APIKeyRestrictionMiddleware.dispatch of <open_webui.main.APIKeyRestrictionMiddleware object at 0x7f9e4293d650>> └ <open_webui.main.APIKeyRestrictionMiddleware object at 0x7f9e4293d650> File "/app/backend/open_webui/main.py", line 1348, in dispatch response = await call_next(request) │ └ <starlette.middleware.base._CachedRequest object at 0x7f9e4381e990> └ <function BaseHTTPMiddleware.__call__.<locals>.call_next at 0x7f9e3859b6a0> File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 168, in call_next raise app_exc from app_exc.__cause__ or app_exc.__context__ │ │ │ │ └ <attribute '__context__' of 'BaseException' objects> │ │ │ └ DataError('(psycopg2.errors.InvalidTextRepresentation) invalid input syntax for type boolean: "members"\n') │ │ └ <attribute '__cause__' of 'BaseException' objects> │ └ DataError('(psycopg2.errors.InvalidTextRepresentation) invalid input syntax for type boolean: "members"\n') └ DataError('(psycopg2.errors.InvalidTextRepresentation) invalid input syntax for type boolean: "members"\n') File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 144, in coro await self.app(scope, receive_or_disconnect, send_no_error) │ │ │ │ └ <function BaseHTTPMiddleware.__call__.<locals>.call_next.<locals>.send_no_error at 0x7f9e3859a2a0> │ │ │ └ <function BaseHTTPMiddleware.__call__.<locals>.call_next.<locals>.receive_or_disconnect at 0x7f9e385984a0> │ │ └ {'type': 'http', 'asgi': {'version': '3.0', 'spec_version': '2.3'}, 'http_version': '1.1', 'server': ('000', 8080), 'c... │ └ <open_webui.utils.security_headers.SecurityHeadersMiddleware object at 0x7f9e43eadd90> └ <open_webui.main.APIKeyRestrictionMiddleware object at 0x7f9e4293d650> File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 191, in __call__ with recv_stream, send_stream, collapse_excgroups(): │ │ └ <function collapse_excgroups at 0x7f9fc78914e0> │ └ MemoryObjectSendStream(_state=_MemoryObjectStreamState(max_buffer_size=0, buffer=deque([]), open_send_channels=0, open_receiv... └ MemoryObjectReceiveStream(_state=_MemoryObjectStreamState(max_buffer_size=0, buffer=deque([]), open_send_channels=0, open_rec... File "/usr/local/lib/python3.11/contextlib.py", line 158, in __exit__ self.gen.throw(typ, value, traceback) │ │ │ │ │ └ <traceback object at 0x7f9e43802d40> │ │ │ │ └ ExceptionGroup('unhandled errors in a TaskGroup', [DataError('(psycopg2.errors.InvalidTextRepresentation) invalid input synta... │ │ │ └ <class 'ExceptionGroup'> │ │ └ <method 'throw' of 'generator' objects> │ └ <generator object collapse_excgroups at 0x7f9e401f6960> └ <contextlib._GeneratorContextManager object at 0x7f9e437d2750> File "/usr/local/lib/python3.11/site-packages/starlette/_utils.py", line 85, in collapse_excgroups raise exc File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 193, in __call__ response = await self.dispatch_func(request, call_next) │ │ │ └ <function BaseHTTPMiddleware.__call__.<locals>.call_next at 0x7f9e3859bd80> │ │ └ <starlette.middleware.base._CachedRequest object at 0x7f9e43832c90> │ └ <bound method SecurityHeadersMiddleware.dispatch of <open_webui.utils.security_headers.SecurityHeadersMiddleware object at 0x... └ <open_webui.utils.security_headers.SecurityHeadersMiddleware object at 0x7f9e43eadd90> File "/app/backend/open_webui/utils/security_headers.py", line 11, in dispatch response = await call_next(request) │ └ <starlette.middleware.base._CachedRequest object at 0x7f9e43832c90> └ <function BaseHTTPMiddleware.__call__.<locals>.call_next at 0x7f9e3859bd80> File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 168, in call_next raise app_exc from app_exc.__cause__ or app_exc.__context__ │ │ │ │ └ <attribute '__context__' of 'BaseException' objects> │ │ │ └ DataError('(psycopg2.errors.InvalidTextRepresentation) invalid input syntax for type boolean: "members"\n') │ │ └ <attribute '__cause__' of 'BaseException' objects> │ └ DataError('(psycopg2.errors.InvalidTextRepresentation) invalid input syntax for type boolean: "members"\n') └ DataError('(psycopg2.errors.InvalidTextRepresentation) invalid input syntax for type boolean: "members"\n') File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 144, in coro await self.app(scope, receive_or_disconnect, send_no_error) │ │ │ │ └ <function BaseHTTPMiddleware.__call__.<locals>.call_next.<locals>.send_no_error at 0x7f9e3859bc40> │ │ │ └ <function BaseHTTPMiddleware.__call__.<locals>.call_next.<locals>.receive_or_disconnect at 0x7f9e3859a480> │ │ └ {'type': 'http', 'asgi': {'version': '3.0', 'spec_version': '2.3'}, 'http_version': '1.1', 'server': ('000', 8080), 'c... │ └ <open_webui.main.RedirectMiddleware object at 0x7f9e42b0bad0> └ <open_webui.utils.security_headers.SecurityHeadersMiddleware object at 0x7f9e43eadd90> File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 191, in __call__ with recv_stream, send_stream, collapse_excgroups(): │ │ └ <function collapse_excgroups at 0x7f9fc78914e0> │ └ MemoryObjectSendStream(_state=_MemoryObjectStreamState(max_buffer_size=0, buffer=deque([]), open_send_channels=0, open_receiv... └ MemoryObjectReceiveStream(_state=_MemoryObjectStreamState(max_buffer_size=0, buffer=deque([]), open_send_channels=0, open_rec... File "/usr/local/lib/python3.11/contextlib.py", line 158, in __exit__ self.gen.throw(typ, value, traceback) │ │ │ │ │ └ <traceback object at 0x7f9e3856f5c0> │ │ │ │ └ ExceptionGroup('unhandled errors in a TaskGroup', [DataError('(psycopg2.errors.InvalidTextRepresentation) invalid input synta... │ │ │ └ <class 'ExceptionGroup'> │ │ └ <method 'throw' of 'generator' objects> │ └ <generator object collapse_excgroups at 0x7f9e401f6260> └ <contextlib._GeneratorContextManager object at 0x7f9e401f9cd0> File "/usr/local/lib/python3.11/site-packages/starlette/_utils.py", line 85, in collapse_excgroups raise exc File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 193, in __call__ response = await self.dispatch_func(request, call_next) │ │ │ └ <function BaseHTTPMiddleware.__call__.<locals>.call_next at 0x7f9e3859af20> │ │ └ <starlette.middleware.base._CachedRequest object at 0x7f9e431aaf50> │ └ <bound method RedirectMiddleware.dispatch of <open_webui.main.RedirectMiddleware object at 0x7f9e42b0bad0>> └ <open_webui.main.RedirectMiddleware object at 0x7f9e42b0bad0> File "/app/backend/open_webui/main.py", line 1304, in dispatch response = await call_next(request) │ └ <starlette.middleware.base._CachedRequest object at 0x7f9e431aaf50> └ <function BaseHTTPMiddleware.__call__.<locals>.call_next at 0x7f9e3859af20> File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 168, in call_next raise app_exc from app_exc.__cause__ or app_exc.__context__ │ │ │ │ └ <attribute '__context__' of 'BaseException' objects> │ │ │ └ DataError('(psycopg2.errors.InvalidTextRepresentation) invalid input syntax for type boolean: "members"\n') │ │ └ <attribute '__cause__' of 'BaseException' objects> │ └ DataError('(psycopg2.errors.InvalidTextRepresentation) invalid input syntax for type boolean: "members"\n') └ DataError('(psycopg2.errors.InvalidTextRepresentation) invalid input syntax for type boolean: "members"\n') File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 144, in coro await self.app(scope, receive_or_disconnect, send_no_error) │ │ │ │ └ <function BaseHTTPMiddleware.__call__.<locals>.call_next.<locals>.send_no_error at 0x7f9e3859b560> │ │ │ └ <function BaseHTTPMiddleware.__call__.<locals>.call_next.<locals>.receive_or_disconnect at 0x7f9e38599940> │ │ └ {'type': 'http', 'asgi': {'version': '3.0', 'spec_version': '2.3'}, 'http_version': '1.1', 'server': ('000', 8080), 'c... │ └ <starlette_compress.CompressMiddleware object at 0x7f9fca011fd0> └ <open_webui.main.RedirectMiddleware object at 0x7f9e42b0bad0> File "/usr/local/lib/python3.11/site-packages/starlette_compress/__init__.py", line 92, in __call__ return await self._zstd(scope, receive, send) │ │ │ │ └ <function BaseHTTPMiddleware.__call__.<locals>.call_next.<locals>.send_no_error at 0x7f9e3859b560> │ │ │ └ <function BaseHTTPMiddleware.__call__.<locals>.call_next.<locals>.receive_or_disconnect at 0x7f9e38599940> │ │ └ {'type': 'http', 'asgi': {'version': '3.0', 'spec_version': '2.3'}, 'http_version': '1.1', 'server': ('000', 8080), 'c... │ └ <member '_zstd' of 'CompressMiddleware' objects> └ <starlette_compress.CompressMiddleware object at 0x7f9fca011fd0> File "/usr/local/lib/python3.11/site-packages/starlette_compress/_zstd_legacy.py", line 100, in __call__ await self.app(scope, receive, wrapper) │ │ │ │ └ <function ZstdResponder.__call__.<locals>.wrapper at 0x7f9e3859a200> │ │ │ └ <function BaseHTTPMiddleware.__call__.<locals>.call_next.<locals>.receive_or_disconnect at 0x7f9e38599940> │ │ └ {'type': 'http', 'asgi': {'version': '3.0', 'spec_version': '2.3'}, 'http_version': '1.1', 'server': ('000', 8080), 'c... │ └ <member 'app' of 'ZstdResponder' objects> └ <starlette_compress._zstd_legacy.ZstdResponder object at 0x7f9e429aa300> File "/usr/local/lib/python3.11/site-packages/starlette/middleware/exceptions.py", line 63, in __call__ await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send) │ │ │ │ │ │ └ <function ZstdResponder.__call__.<locals>.wrapper at 0x7f9e3859a200> │ │ │ │ │ └ <function BaseHTTPMiddleware.__call__.<locals>.call_next.<locals>.receive_or_disconnect at 0x7f9e38599940> │ │ │ │ └ {'type': 'http', 'asgi': {'version': '3.0', 'spec_version': '2.3'}, 'http_version': '1.1', 'server': ('000', 8080), 'c... │ │ │ └ <starlette.requests.Request object at 0x7f9e402283d0> │ │ └ <fastapi.middleware.asyncexitstack.AsyncExitStackMiddleware object at 0x7f9e42765210> │ └ <starlette.middleware.exceptions.ExceptionMiddleware object at 0x7f9e4279d810> └ <function wrap_app_handling_exceptions at 0x7f9fc796c0e0> File "/usr/local/lib/python3.11/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app raise exc File "/usr/local/lib/python3.11/site-packages/starlette/_exception_handler.py", line 42, in wrapped_app await app(scope, receive, sender) │ │ │ └ <function wrap_app_handling_exceptions.<locals>.wrapped_app.<locals>.sender at 0x7f9e3859bf60> │ │ └ <function BaseHTTPMiddleware.__call__.<locals>.call_next.<locals>.receive_or_disconnect at 0x7f9e38599940> │ └ {'type': 'http', 'asgi': {'version': '3.0', 'spec_version': '2.3'}, 'http_version': '1.1', 'server': ('000', 8080), 'c... └ <fastapi.middleware.asyncexitstack.AsyncExitStackMiddleware object at 0x7f9e42765210> File "/usr/local/lib/python3.11/site-packages/fastapi/middleware/asyncexitstack.py", line 18, in __call__ await self.app(scope, receive, send) │ │ │ │ └ <function wrap_app_handling_exceptions.<locals>.wrapped_app.<locals>.sender at 0x7f9e3859bf60> │ │ │ └ <function BaseHTTPMiddleware.__call__.<locals>.call_next.<locals>.receive_or_disconnect at 0x7f9e38599940> │ │ └ {'type': 'http', 'asgi': {'version': '3.0', 'spec_version': '2.3'}, 'http_version': '1.1', 'server': ('000', 8080), 'c... │ └ <fastapi.routing.APIRouter object at 0x7f9e42c8e250> └ <fastapi.middleware.asyncexitstack.AsyncExitStackMiddleware object at 0x7f9e42765210> File "/usr/local/lib/python3.11/site-packages/starlette/routing.py", line 716, in __call__ await self.middleware_stack(scope, receive, send) │ │ │ │ └ <function wrap_app_handling_exceptions.<locals>.wrapped_app.<locals>.sender at 0x7f9e3859bf60> │ │ │ └ <function BaseHTTPMiddleware.__call__.<locals>.call_next.<locals>.receive_or_disconnect at 0x7f9e38599940> │ │ └ {'type': 'http', 'asgi': {'version': '3.0', 'spec_version': '2.3'}, 'http_version': '1.1', 'server': ('000', 8080), 'c... │ └ <bound method Router.app of <fastapi.routing.APIRouter object at 0x7f9e42c8e250>> └ <fastapi.routing.APIRouter object at 0x7f9e42c8e250> File "/usr/local/lib/python3.11/site-packages/starlette/routing.py", line 736, in app await route.handle(scope, receive, send) │ │ │ │ └ <function wrap_app_handling_exceptions.<locals>.wrapped_app.<locals>.sender at 0x7f9e3859bf60> │ │ │ └ <function BaseHTTPMiddleware.__call__.<locals>.call_next.<locals>.receive_or_disconnect at 0x7f9e38599940> │ │ └ {'type': 'http', 'asgi': {'version': '3.0', 'spec_version': '2.3'}, 'http_version': '1.1', 'server': ('000', 8080), 'c... │ └ <function Route.handle at 0x7f9fc796d760> └ APIRoute(path='/api/v1/groups/', name='get_groups', methods=['GET']) File "/usr/local/lib/python3.11/site-packages/starlette/routing.py", line 290, in handle await self.app(scope, receive, send) │ │ │ │ └ <function wrap_app_handling_exceptions.<locals>.wrapped_app.<locals>.sender at 0x7f9e3859bf60> │ │ │ └ <function BaseHTTPMiddleware.__call__.<locals>.call_next.<locals>.receive_or_disconnect at 0x7f9e38599940> │ │ └ {'type': 'http', 'asgi': {'version': '3.0', 'spec_version': '2.3'}, 'http_version': '1.1', 'server': ('000', 8080), 'c... │ └ <function request_response.<locals>.app at 0x7f9e42570a40> └ APIRoute(path='/api/v1/groups/', name='get_groups', methods=['GET']) File "/usr/local/lib/python3.11/site-packages/fastapi/routing.py", line 115, in app await wrap_app_handling_exceptions(app, request)(scope, receive, send) │ │ │ │ │ └ <function wrap_app_handling_exceptions.<locals>.wrapped_app.<locals>.sender at 0x7f9e3859bf60> │ │ │ │ └ <function BaseHTTPMiddleware.__call__.<locals>.call_next.<locals>.receive_or_disconnect at 0x7f9e38599940> │ │ │ └ {'type': 'http', 'asgi': {'version': '3.0', 'spec_version': '2.3'}, 'http_version': '1.1', 'server': ('000', 8080), 'c... │ │ └ <starlette.requests.Request object at 0x7f9e40073950> │ └ <function request_response.<locals>.app.<locals>.app at 0x7f9e38598d60> └ <function wrap_app_handling_exceptions at 0x7f9fc796c0e0> File "/usr/local/lib/python3.11/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app raise exc File "/usr/local/lib/python3.11/site-packages/starlette/_exception_handler.py", line 42, in wrapped_app await app(scope, receive, sender) │ │ │ └ <function wrap_app_handling_exceptions.<locals>.wrapped_app.<locals>.sender at 0x7f9e3859b740> │ │ └ <function BaseHTTPMiddleware.__call__.<locals>.call_next.<locals>.receive_or_disconnect at 0x7f9e38599940> │ └ {'type': 'http', 'asgi': {'version': '3.0', 'spec_version': '2.3'}, 'http_version': '1.1', 'server': ('000', 8080), 'c... └ <function request_response.<locals>.app.<locals>.app at 0x7f9e38598d60> File "/usr/local/lib/python3.11/site-packages/fastapi/routing.py", line 101, in app response = await f(request) │ └ <starlette.requests.Request object at 0x7f9e40073950> └ <function get_request_handler.<locals>.app at 0x7f9e42570900> File "/usr/local/lib/python3.11/site-packages/fastapi/routing.py", line 355, in app raw_response = await run_endpoint_function( └ <function run_endpoint_function at 0x7f9fc796f6a0> File "/usr/local/lib/python3.11/site-packages/fastapi/routing.py", line 243, in run_endpoint_function return await dependant.call(**values) │ │ └ {'user': UserModel(id='e74c4770-cdee-44e9-9d7c-d74365a479c6', email='jan.kammerer-liebnitzky@bmftr.bund.de', username=None, r... │ └ <function get_groups at 0x7f9e43fd1f80> └ Dependant(path_params=[], query_params=[ModelField(field_info=Query(None), name='share', mode='validation', config=None)], he... File "/app/backend/open_webui/routers/groups.py", line 49, in get_groups groups = Groups.get_groups(filter=filter, db=db) │ │ │ └ <sqlalchemy.orm.session.Session object at 0x7f9e3852ff50> │ │ └ {'member_id': 'e74c4770-cdee-44e9-9d7c-d74365a479c6', 'share': True} │ └ <function GroupTable.get_groups at 0x7f9f099b4720> └ <open_webui.models.groups.GroupTable object at 0x7f9f099bf710> File "/app/backend/open_webui/models/groups.py", line 207, in get_groups groups = query.order_by(Group.updated_at.desc()).all() │ │ │ │ └ <function ColumnOperators.desc at 0x7f9fc8dadb20> │ │ │ └ <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f9f09977420> │ │ └ <class 'open_webui.models.groups.Group'> │ └ <function Query.order_by at 0x7f9f0aca28e0> └ <sqlalchemy.orm.query.Query object at 0x7f9e400d56d0> File "/usr/local/lib/python3.11/site-packages/sqlalchemy/orm/query.py", line 2704, in all return self._iter().all() # type: ignore │ └ <function Query._iter at 0x7f9f0aca8f40> └ <sqlalchemy.orm.query.Query object at 0x7f9e440fc190> File "/usr/local/lib/python3.11/site-packages/sqlalchemy/orm/query.py", line 2857, in _iter result: Union[ScalarResult[_T], Result[_T]] = self.session.execute( │ │ │ │ │ │ └ <function Session.execute at 0x7f9f0ab5dda0> │ │ │ │ │ └ <sqlalchemy.orm.session.Session object at 0x7f9e40091ed0> │ │ │ │ └ <sqlalchemy.orm.query.Query object at 0x7f9e440fc190> │ │ │ └ ~_T │ │ └ <class 'sqlalchemy.engine.result.Result'> │ └ ~_T └ typing.Union File "/usr/local/lib/python3.11/site-packages/sqlalchemy/orm/session.py", line 2351, in execute return self._execute_internal( │ └ <function Session._execute_internal at 0x7f9f0ab5db20> └ <sqlalchemy.orm.session.Session object at 0x7f9e40091ed0> File "/usr/local/lib/python3.11/site-packages/sqlalchemy/orm/session.py", line 2249, in _execute_internal result: Result[Any] = compile_state_cls.orm_execute_statement( │ │ └ <classmethod(<function AbstractORMCompileState.orm_execute_statement at 0x7f9f0ae028e0>)> │ └ <class 'sqlalchemy.orm.context.ORMSelectCompileState'> └ typing.Any File "/usr/local/lib/python3.11/site-packages/sqlalchemy/orm/context.py", line 306, in orm_execute_statement result = conn.execute( │ └ <function Connection.execute at 0x7f9fc87c6660> └ <sqlalchemy.engine.base.Connection object at 0x7f9e4293c910> File "/usr/local/lib/python3.11/site-packages/sqlalchemy/engine/base.py", line 1419, in execute return meth( └ <bound method ClauseElement._execute_on_connection of <sqlalchemy.sql.selectable.Select object at 0x7f9e43832550>> File "/usr/local/lib/python3.11/site-packages/sqlalchemy/sql/elements.py", line 527, in _execute_on_connection return connection._execute_clauseelement( │ └ <function Connection._execute_clauseelement at 0x7f9fc87c6980> └ <sqlalchemy.engine.base.Connection object at 0x7f9e4293c910> File "/usr/local/lib/python3.11/site-packages/sqlalchemy/engine/base.py", line 1641, in _execute_clauseelement ret = self._execute_context( │ └ <function Connection._execute_context at 0x7f9fc87c6b60> └ <sqlalchemy.engine.base.Connection object at 0x7f9e4293c910> File "/usr/local/lib/python3.11/site-packages/sqlalchemy/engine/base.py", line 1846, in _execute_context return self._exec_single_context( │ └ <function Connection._exec_single_context at 0x7f9fc87c6c00> └ <sqlalchemy.engine.base.Connection object at 0x7f9e4293c910> File "/usr/local/lib/python3.11/site-packages/sqlalchemy/engine/base.py", line 1986, in _exec_single_context self._handle_dbapi_exception( │ └ <function Connection._handle_dbapi_exception at 0x7f9fc87c6e80> └ <sqlalchemy.engine.base.Connection object at 0x7f9e4293c910> File "/usr/local/lib/python3.11/site-packages/sqlalchemy/engine/base.py", line 2363, in _handle_dbapi_exception raise sqlalchemy_exception.with_traceback(exc_info[2]) from e │ │ │ └ InvalidTextRepresentation('invalid input syntax for type boolean: "members"\n') │ │ └ (<class 'psycopg2.errors.InvalidTextRepresentation'>, InvalidTextRepresentation('invalid input syntax for type boolean: "memb... │ └ <method 'with_traceback' of 'BaseException' objects> └ DataError('(psycopg2.errors.InvalidTextRepresentation) invalid input syntax for type boolean: "members"\n') File "/usr/local/lib/python3.11/site-packages/sqlalchemy/engine/base.py", line 1967, in _exec_single_context self.dialect.do_execute( │ │ └ <function DefaultDialect.do_execute at 0x7f9fc8996ac0> │ └ <sqlalchemy.dialects.postgresql.psycopg2.PGDialect_psycopg2 object at 0x7f9f0bfcff90> └ <sqlalchemy.engine.base.Connection object at 0x7f9e4293c910> File "/usr/local/lib/python3.11/site-packages/sqlalchemy/engine/default.py", line 952, in do_execute cursor.execute(statement, parameters) │ │ │ └ {'data_1': 'config', 'param_1': 'share', 'param_2': 'members', 'user_id_1': 'e74c4770-cdee-44e9-9d7c-d74365a479c6'} │ │ └ 'SELECT "group".id AS group_id, "group".user_id AS group_user_id, "group".name AS group_name, "group".description AS group_de... │ └ <method 'execute' of 'psycopg2.extensions.cursor' objects> └ <cursor object at 0x7f9e402ebb50; closed: -1> **sqlalchemy.exc.DataError: (psycopg2.errors.InvalidTextRepresentation) invalid input syntax for type boolean: "members"** [SQL: SELECT "group".id AS group_id, "group".user_id AS group_user_id, "group".name AS group_name, "group".description AS group_description, "group".data AS group_data, "group".meta AS group_meta, "group".permissions AS group_permissions, "group".created_at AS group_created_at, "group".updated_at AS group_updated_at FROM "group" WHERE "group".data IS NULL OR CAST((("group".data -> %(data_1)s) ->> %(param_1)s) AS BOOLEAN) IS NULL OR CAST((("group".data -> %(data_1)s) ->> %(param_1)s) AS BOOLEAN) = true OR CAST((("group".data -> %(data_1)s) ->> %(param_1)s) AS VARCHAR) = %(param_2)s AND "group".id IN (SELECT anon_1.group_id FROM (SELECT group_member.group_id AS group_id FROM group_member WHERE group_member.user_id = %(user_id_1)s) AS anon_1) ORDER BY "group".updated_at DESC] [parameters: {'data_1': 'config', 'param_1': 'share', 'param_2': 'members', 'user_id_1': 'e74c4770-cdee-44e9-9d7c-d74365a479c6'}] (Background on this error at: https://sqlalche.me/e/20/9h9h) ### Additional Information _No response_
GiteaMirror added the bug label 2026-05-05 21:56:32 -05:00
Author
Owner

@owui-terminator[bot] commented on GitHub (Jan 14, 2026):

🔍 Similar Issues Found

I found some existing issues that might be related to this one. Please check if any of these are duplicates or contain helpful solutions:

  1. #19752 issue: minor UI Bug: knowledge sharing
    by mahenning • Dec 04, 2025 • bug, confirmed issue

  2. #20229 issue: Knowledge Base not visible when shared with multiple groups (SQLite)
    by taka817123 • Dec 29, 2025 • bug, confirmed issue

  3. #19485 issue: relation "group_member" does not exist
    by c-brock • Nov 25, 2025 • bug

  4. #19426 issue: Strange Behavior With Groups
    by matthew-kusz • Nov 24, 2025 • bug

  5. #19475 issue: A users groups aren't always updated on OAuh login
    by tobiasge • Nov 25, 2025 • bug

Show 5 more related issues
  1. #19461 issue: Models shared with write permission to group no longer visible in workspace
    by destination-one • Nov 25, 2025 • bug

  2. #19701 issue: knowledge can not multiple upload file
    by willy808 • Dec 03, 2025 • bug

  3. #19588 issue: Model group permissions
    by apunkt • Nov 29, 2025 • bug

  4. #20236 issue: Select knowledge within Folders
    by liucoj • Dec 29, 2025 • bug

  5. #19329 issue: Sharepoint integration not working
    by Joly0 • Nov 20, 2025 • bug


💡 Tips:

  • If this is a duplicate, please consider closing this issue and adding any additional details to the existing one
  • If you found a solution in any of these issues, please share it here to help others

This comment was generated automatically by a bot. Please react with a 👍 if this comment was helpful, or a 👎 if it was not.

<!-- gh-comment-id:3749975272 --> @owui-terminator[bot] commented on GitHub (Jan 14, 2026): 🔍 **Similar Issues Found** I found some existing issues that might be related to this one. Please check if any of these are duplicates or contain helpful solutions: 1. [#19752](https://github.com/open-webui/open-webui/issues/19752) **issue: minor UI Bug: knowledge sharing** *by mahenning • Dec 04, 2025 • `bug`, `confirmed issue`* 2. [#20229](https://github.com/open-webui/open-webui/issues/20229) **issue: Knowledge Base not visible when shared with multiple groups (SQLite)** *by taka817123 • Dec 29, 2025 • `bug`, `confirmed issue`* 3. [#19485](https://github.com/open-webui/open-webui/issues/19485) **issue: relation "group_member" does not exist** *by c-brock • Nov 25, 2025 • `bug`* 4. [#19426](https://github.com/open-webui/open-webui/issues/19426) **issue: Strange Behavior With Groups** *by matthew-kusz • Nov 24, 2025 • `bug`* 5. [#19475](https://github.com/open-webui/open-webui/issues/19475) **issue: A users groups aren't always updated on OAuh login** *by tobiasge • Nov 25, 2025 • `bug`* <details> <summary>Show 5 more related issues</summary> 6. [#19461](https://github.com/open-webui/open-webui/issues/19461) **issue: Models shared with write permission to group no longer visible in workspace** *by destination-one • Nov 25, 2025 • `bug`* 7. [#19701](https://github.com/open-webui/open-webui/issues/19701) **issue: knowledge can not multiple upload file** *by willy808 • Dec 03, 2025 • `bug`* 8. [#19588](https://github.com/open-webui/open-webui/issues/19588) **issue: Model group permissions** *by apunkt • Nov 29, 2025 • `bug`* 9. [#20236](https://github.com/open-webui/open-webui/issues/20236) **issue: Select knowledge within Folders** *by liucoj • Dec 29, 2025 • `bug`* 10. [#19329](https://github.com/open-webui/open-webui/issues/19329) **issue: Sharepoint integration not working** *by Joly0 • Nov 20, 2025 • `bug`* </details> --- 💡 **Tips:** - If this is a duplicate, please consider closing this issue and adding any additional details to the existing one - If you found a solution in any of these issues, please share it here to help others *This comment was generated automatically by a bot.* Please react with a 👍 if this comment was helpful, or a 👎 if it was not.
Author
Owner

@Classic298 commented on GitHub (Jan 14, 2026):

Fixed in dev thanks!

<!-- gh-comment-id:3750151852 --> @Classic298 commented on GitHub (Jan 14, 2026): Fixed in dev thanks!
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/open-webui#57921