Files
New-planet-api/new-planet-backend/logs/app.log
FDKost 4bbe086cec Refactored:
- пофикшен баг с авторизацией;
- поменен README.md, более подробно описан запуск проекта;
- починен .env для проекта.
Checked:
- docker-compose работает;
- auth работает;
- чат с нейросетью работает, но кидает 400 из за NEWPLANET-AI-AGENTS,нужно настроить подключение.
2025-12-18 17:07:33 +03:00

1344 lines
84 KiB
Plaintext
Raw Blame History

2025-12-18 12:58:53 - root - INFO - Starting up...
2025-12-18 12:58:56 - root - INFO - Starting up...
2025-12-18 12:59:01 - root - INFO - Starting up...
2025-12-18 13:00:55 - app.middleware.error_handler - ERROR - Unhandled exception: (sqlalchemy.dialects.postgresql.asyncpg.ProgrammingError) <class 'asyncpg.exceptions.UndefinedTableError'>: relation "users" does not exist
[SQL: SELECT users.email, users.hashed_password, users.role, users.full_name, users.id, users.created_at, users.updated_at
FROM users
WHERE users.email = $1::VARCHAR]
[parameters: ('user@example.com',)]
(Background on this error at: https://sqlalche.me/e/20/f405)
Traceback (most recent call last):
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\dialects\postgresql\asyncpg.py", line 526, in _prepare_and_execute
prepared_stmt, attributes = await adapt_connection._prepare(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
operation, self._invalidate_schema_cache_asof
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\dialects\postgresql\asyncpg.py", line 773, in _prepare
prepared_stmt = await self._connection.prepare(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
operation, name=self._prepared_statement_name_func()
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\asyncpg\connection.py", line 638, in prepare
return await self._prepare(
^^^^^^^^^^^^^^^^^^^^
...<4 lines>...
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\asyncpg\connection.py", line 657, in _prepare
stmt = await self._get_statement(
^^^^^^^^^^^^^^^^^^^^^^^^^^
...<5 lines>...
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\asyncpg\connection.py", line 443, in _get_statement
statement = await self._protocol.prepare(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
...<5 lines>...
)
^
File "asyncpg/protocol/protocol.pyx", line 165, in prepare
asyncpg.exceptions.UndefinedTableError: relation "users" does not exist
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\engine\base.py", line 1967, in _exec_single_context
self.dialect.do_execute(
~~~~~~~~~~~~~~~~~~~~~~~^
cursor, str_statement, effective_parameters, context
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\engine\default.py", line 952, in do_execute
cursor.execute(statement, parameters)
~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\dialects\postgresql\asyncpg.py", line 585, in execute
self._adapt_connection.await_(
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
self._prepare_and_execute(operation, parameters)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\util\_concurrency_py3k.py", line 132, in await_only
return current.parent.switch(awaitable) # type: ignore[no-any-return,attr-defined] # noqa: E501
~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\util\_concurrency_py3k.py", line 196, in greenlet_spawn
value = await result
^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\dialects\postgresql\asyncpg.py", line 563, in _prepare_and_execute
self._handle_exception(error)
~~~~~~~~~~~~~~~~~~~~~~^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\dialects\postgresql\asyncpg.py", line 513, in _handle_exception
self._adapt_connection._handle_exception(error)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\dialects\postgresql\asyncpg.py", line 797, in _handle_exception
raise translated_error from error
sqlalchemy.dialects.postgresql.asyncpg.AsyncAdapt_asyncpg_dbapi.ProgrammingError: <class 'asyncpg.exceptions.UndefinedTableError'>: relation "users" does not exist
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\middleware\errors.py", line 164, in __call__
await self.app(scope, receive, _send)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\middleware\base.py", line 191, in __call__
with recv_stream, send_stream, collapse_excgroups():
~~~~~~~~~~~~~~~~~~^^
File "C:\Users\yfili\AppData\Local\Programs\Python\Python313\Lib\contextlib.py", line 162, in __exit__
self.gen.throw(value)
~~~~~~~~~~~~~~^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\_utils.py", line 85, in collapse_excgroups
raise exc
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\middleware\base.py", line 193, in __call__
response = await self.dispatch_func(request, call_next)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\app\middleware\rate_limiter.py", line 33, in dispatch
response = await call_next(request)
^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\middleware\base.py", line 168, in call_next
raise app_exc from app_exc.__cause__ or app_exc.__context__
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\middleware\base.py", line 144, in coro
await self.app(scope, receive_or_disconnect, send_no_error)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\middleware\cors.py", line 93, in __call__
await self.simple_response(scope, receive, send, request_headers=headers)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\middleware\cors.py", line 144, in simple_response
await self.app(scope, receive, send)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\middleware\exceptions.py", line 63, in __call__
await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\_exception_handler.py", line 53, in wrapped_app
raise exc
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\_exception_handler.py", line 42, in wrapped_app
await app(scope, receive, sender)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\fastapi\middleware\asyncexitstack.py", line 18, in __call__
await self.app(scope, receive, send)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\routing.py", line 716, in __call__
await self.middleware_stack(scope, receive, send)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\routing.py", line 736, in app
await route.handle(scope, receive, send)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\routing.py", line 290, in handle
await self.app(scope, receive, send)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\fastapi\routing.py", line 118, in app
await wrap_app_handling_exceptions(app, request)(scope, receive, send)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\_exception_handler.py", line 53, in wrapped_app
raise exc
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\_exception_handler.py", line 42, in wrapped_app
await app(scope, receive, sender)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\fastapi\routing.py", line 104, in app
response = await f(request)
^^^^^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\fastapi\routing.py", line 428, in app
raw_response = await run_endpoint_function(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
...<3 lines>...
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\fastapi\routing.py", line 314, in run_endpoint_function
return await dependant.call(**values)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\app\api\v1\auth.py", line 20, in register
user = await auth_service.register(db, user_in)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\app\services\auth_service.py", line 45, in register
existing_user = await crud_user.get_by_email(db, user_in.email)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\app\crud\user.py", line 12, in get_by_email
result = await db.execute(select(User).where(User.email == email))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\ext\asyncio\session.py", line 449, in execute
result = await greenlet_spawn(
^^^^^^^^^^^^^^^^^^^^^
...<6 lines>...
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\util\_concurrency_py3k.py", line 201, in greenlet_spawn
result = context.throw(*sys.exc_info())
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\orm\session.py", line 2351, in execute
return self._execute_internal(
~~~~~~~~~~~~~~~~~~~~~~^
statement,
^^^^^^^^^^
...<4 lines>...
_add_event=_add_event,
^^^^^^^^^^^^^^^^^^^^^^
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\orm\session.py", line 2249, in _execute_internal
result: Result[Any] = compile_state_cls.orm_execute_statement(
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
self,
^^^^^
...<4 lines>...
conn,
^^^^^
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\orm\context.py", line 306, in orm_execute_statement
result = conn.execute(
statement, params or {}, execution_options=execution_options
)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\engine\base.py", line 1419, in execute
return meth(
self,
distilled_parameters,
execution_options or NO_OPTIONS,
)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\sql\elements.py", line 527, in _execute_on_connection
return connection._execute_clauseelement(
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
self, distilled_params, execution_options
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\engine\base.py", line 1641, in _execute_clauseelement
ret = self._execute_context(
dialect,
...<8 lines>...
cache_hit=cache_hit,
)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\engine\base.py", line 1846, in _execute_context
return self._exec_single_context(
~~~~~~~~~~~~~~~~~~~~~~~~~^
dialect, context, statement, parameters
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\engine\base.py", line 1986, in _exec_single_context
self._handle_dbapi_exception(
~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
e, str_statement, effective_parameters, cursor, context
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\engine\base.py", line 2363, in _handle_dbapi_exception
raise sqlalchemy_exception.with_traceback(exc_info[2]) from e
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\engine\base.py", line 1967, in _exec_single_context
self.dialect.do_execute(
~~~~~~~~~~~~~~~~~~~~~~~^
cursor, str_statement, effective_parameters, context
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\engine\default.py", line 952, in do_execute
cursor.execute(statement, parameters)
~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\dialects\postgresql\asyncpg.py", line 585, in execute
self._adapt_connection.await_(
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
self._prepare_and_execute(operation, parameters)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\util\_concurrency_py3k.py", line 132, in await_only
return current.parent.switch(awaitable) # type: ignore[no-any-return,attr-defined] # noqa: E501
~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\util\_concurrency_py3k.py", line 196, in greenlet_spawn
value = await result
^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\dialects\postgresql\asyncpg.py", line 563, in _prepare_and_execute
self._handle_exception(error)
~~~~~~~~~~~~~~~~~~~~~~^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\dialects\postgresql\asyncpg.py", line 513, in _handle_exception
self._adapt_connection._handle_exception(error)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\dialects\postgresql\asyncpg.py", line 797, in _handle_exception
raise translated_error from error
sqlalchemy.exc.ProgrammingError: (sqlalchemy.dialects.postgresql.asyncpg.ProgrammingError) <class 'asyncpg.exceptions.UndefinedTableError'>: relation "users" does not exist
[SQL: SELECT users.email, users.hashed_password, users.role, users.full_name, users.id, users.created_at, users.updated_at
FROM users
WHERE users.email = $1::VARCHAR]
[parameters: ('user@example.com',)]
(Background on this error at: https://sqlalche.me/e/20/f405)
2025-12-18 13:03:24 - app.middleware.error_handler - ERROR - Unhandled exception: (sqlalchemy.dialects.postgresql.asyncpg.ProgrammingError) <class 'asyncpg.exceptions.UndefinedTableError'>: relation "users" does not exist
[SQL: SELECT users.email, users.hashed_password, users.role, users.full_name, users.id, users.created_at, users.updated_at
FROM users
WHERE users.email = $1::VARCHAR]
[parameters: ('test-user@example.com',)]
(Background on this error at: https://sqlalche.me/e/20/f405)
Traceback (most recent call last):
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\dialects\postgresql\asyncpg.py", line 526, in _prepare_and_execute
prepared_stmt, attributes = await adapt_connection._prepare(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
operation, self._invalidate_schema_cache_asof
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\dialects\postgresql\asyncpg.py", line 773, in _prepare
prepared_stmt = await self._connection.prepare(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
operation, name=self._prepared_statement_name_func()
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\asyncpg\connection.py", line 638, in prepare
return await self._prepare(
^^^^^^^^^^^^^^^^^^^^
...<4 lines>...
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\asyncpg\connection.py", line 657, in _prepare
stmt = await self._get_statement(
^^^^^^^^^^^^^^^^^^^^^^^^^^
...<5 lines>...
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\asyncpg\connection.py", line 443, in _get_statement
statement = await self._protocol.prepare(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
...<5 lines>...
)
^
File "asyncpg/protocol/protocol.pyx", line 165, in prepare
asyncpg.exceptions.UndefinedTableError: relation "users" does not exist
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\engine\base.py", line 1967, in _exec_single_context
self.dialect.do_execute(
~~~~~~~~~~~~~~~~~~~~~~~^
cursor, str_statement, effective_parameters, context
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\engine\default.py", line 952, in do_execute
cursor.execute(statement, parameters)
~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\dialects\postgresql\asyncpg.py", line 585, in execute
self._adapt_connection.await_(
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
self._prepare_and_execute(operation, parameters)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\util\_concurrency_py3k.py", line 132, in await_only
return current.parent.switch(awaitable) # type: ignore[no-any-return,attr-defined] # noqa: E501
~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\util\_concurrency_py3k.py", line 196, in greenlet_spawn
value = await result
^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\dialects\postgresql\asyncpg.py", line 563, in _prepare_and_execute
self._handle_exception(error)
~~~~~~~~~~~~~~~~~~~~~~^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\dialects\postgresql\asyncpg.py", line 513, in _handle_exception
self._adapt_connection._handle_exception(error)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\dialects\postgresql\asyncpg.py", line 797, in _handle_exception
raise translated_error from error
sqlalchemy.dialects.postgresql.asyncpg.AsyncAdapt_asyncpg_dbapi.ProgrammingError: <class 'asyncpg.exceptions.UndefinedTableError'>: relation "users" does not exist
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\middleware\errors.py", line 164, in __call__
await self.app(scope, receive, _send)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\middleware\base.py", line 191, in __call__
with recv_stream, send_stream, collapse_excgroups():
~~~~~~~~~~~~~~~~~~^^
File "C:\Users\yfili\AppData\Local\Programs\Python\Python313\Lib\contextlib.py", line 162, in __exit__
self.gen.throw(value)
~~~~~~~~~~~~~~^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\_utils.py", line 85, in collapse_excgroups
raise exc
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\middleware\base.py", line 193, in __call__
response = await self.dispatch_func(request, call_next)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\app\middleware\rate_limiter.py", line 33, in dispatch
response = await call_next(request)
^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\middleware\base.py", line 168, in call_next
raise app_exc from app_exc.__cause__ or app_exc.__context__
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\middleware\base.py", line 144, in coro
await self.app(scope, receive_or_disconnect, send_no_error)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\middleware\cors.py", line 93, in __call__
await self.simple_response(scope, receive, send, request_headers=headers)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\middleware\cors.py", line 144, in simple_response
await self.app(scope, receive, send)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\middleware\exceptions.py", line 63, in __call__
await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\_exception_handler.py", line 53, in wrapped_app
raise exc
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\_exception_handler.py", line 42, in wrapped_app
await app(scope, receive, sender)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\fastapi\middleware\asyncexitstack.py", line 18, in __call__
await self.app(scope, receive, send)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\routing.py", line 716, in __call__
await self.middleware_stack(scope, receive, send)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\routing.py", line 736, in app
await route.handle(scope, receive, send)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\routing.py", line 290, in handle
await self.app(scope, receive, send)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\fastapi\routing.py", line 118, in app
await wrap_app_handling_exceptions(app, request)(scope, receive, send)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\_exception_handler.py", line 53, in wrapped_app
raise exc
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\_exception_handler.py", line 42, in wrapped_app
await app(scope, receive, sender)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\fastapi\routing.py", line 104, in app
response = await f(request)
^^^^^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\fastapi\routing.py", line 428, in app
raw_response = await run_endpoint_function(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
...<3 lines>...
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\fastapi\routing.py", line 314, in run_endpoint_function
return await dependant.call(**values)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\app\api\v1\auth.py", line 20, in register
user = await auth_service.register(db, user_in)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\app\services\auth_service.py", line 45, in register
existing_user = await crud_user.get_by_email(db, user_in.email)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\app\crud\user.py", line 12, in get_by_email
result = await db.execute(select(User).where(User.email == email))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\ext\asyncio\session.py", line 449, in execute
result = await greenlet_spawn(
^^^^^^^^^^^^^^^^^^^^^
...<6 lines>...
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\util\_concurrency_py3k.py", line 201, in greenlet_spawn
result = context.throw(*sys.exc_info())
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\orm\session.py", line 2351, in execute
return self._execute_internal(
~~~~~~~~~~~~~~~~~~~~~~^
statement,
^^^^^^^^^^
...<4 lines>...
_add_event=_add_event,
^^^^^^^^^^^^^^^^^^^^^^
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\orm\session.py", line 2249, in _execute_internal
result: Result[Any] = compile_state_cls.orm_execute_statement(
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
self,
^^^^^
...<4 lines>...
conn,
^^^^^
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\orm\context.py", line 306, in orm_execute_statement
result = conn.execute(
statement, params or {}, execution_options=execution_options
)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\engine\base.py", line 1419, in execute
return meth(
self,
distilled_parameters,
execution_options or NO_OPTIONS,
)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\sql\elements.py", line 527, in _execute_on_connection
return connection._execute_clauseelement(
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
self, distilled_params, execution_options
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\engine\base.py", line 1641, in _execute_clauseelement
ret = self._execute_context(
dialect,
...<8 lines>...
cache_hit=cache_hit,
)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\engine\base.py", line 1846, in _execute_context
return self._exec_single_context(
~~~~~~~~~~~~~~~~~~~~~~~~~^
dialect, context, statement, parameters
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\engine\base.py", line 1986, in _exec_single_context
self._handle_dbapi_exception(
~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
e, str_statement, effective_parameters, cursor, context
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\engine\base.py", line 2363, in _handle_dbapi_exception
raise sqlalchemy_exception.with_traceback(exc_info[2]) from e
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\engine\base.py", line 1967, in _exec_single_context
self.dialect.do_execute(
~~~~~~~~~~~~~~~~~~~~~~~^
cursor, str_statement, effective_parameters, context
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\engine\default.py", line 952, in do_execute
cursor.execute(statement, parameters)
~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\dialects\postgresql\asyncpg.py", line 585, in execute
self._adapt_connection.await_(
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
self._prepare_and_execute(operation, parameters)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\util\_concurrency_py3k.py", line 132, in await_only
return current.parent.switch(awaitable) # type: ignore[no-any-return,attr-defined] # noqa: E501
~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\util\_concurrency_py3k.py", line 196, in greenlet_spawn
value = await result
^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\dialects\postgresql\asyncpg.py", line 563, in _prepare_and_execute
self._handle_exception(error)
~~~~~~~~~~~~~~~~~~~~~~^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\dialects\postgresql\asyncpg.py", line 513, in _handle_exception
self._adapt_connection._handle_exception(error)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\dialects\postgresql\asyncpg.py", line 797, in _handle_exception
raise translated_error from error
sqlalchemy.exc.ProgrammingError: (sqlalchemy.dialects.postgresql.asyncpg.ProgrammingError) <class 'asyncpg.exceptions.UndefinedTableError'>: relation "users" does not exist
[SQL: SELECT users.email, users.hashed_password, users.role, users.full_name, users.id, users.created_at, users.updated_at
FROM users
WHERE users.email = $1::VARCHAR]
[parameters: ('test-user@example.com',)]
(Background on this error at: https://sqlalche.me/e/20/f405)
2025-12-18 13:04:36 - root - INFO - Shutting down...
2025-12-18 13:04:39 - root - INFO - Starting up...
2025-12-18 13:04:42 - root - INFO - Starting up...
2025-12-18 13:04:42 - root - INFO - Shutting down...
2025-12-18 13:04:48 - root - INFO - Shutting down...
2025-12-18 13:04:51 - root - INFO - Starting up...
2025-12-18 13:04:54 - root - INFO - Starting up...
2025-12-18 13:09:52 - root - INFO - Shutting down...
2025-12-18 13:09:56 - root - INFO - Starting up...
2025-12-18 13:11:01 - root - INFO - Starting up...
2025-12-18 13:11:11 - root - INFO - Shutting down...
2025-12-18 13:11:13 - root - INFO - Starting up...
2025-12-18 13:11:26 - passlib.handlers.bcrypt - WARNING - (trapped) error reading bcrypt version
Traceback (most recent call last):
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\passlib\handlers\bcrypt.py", line 620, in _load_backend_mixin
version = _bcrypt.__about__.__version__
^^^^^^^^^^^^^^^^^
AttributeError: module 'bcrypt' has no attribute '__about__'
2025-12-18 13:11:56 - root - INFO - Shutting down...
2025-12-18 13:12:01 - root - INFO - Starting up...
2025-12-18 13:12:14 - root - INFO - Starting up...
2025-12-18 13:12:41 - passlib.handlers.bcrypt - WARNING - (trapped) error reading bcrypt version
Traceback (most recent call last):
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\passlib\handlers\bcrypt.py", line 620, in _load_backend_mixin
version = _bcrypt.__about__.__version__
^^^^^^^^^^^^^^^^^
AttributeError: module 'bcrypt' has no attribute '__about__'
2025-12-18 13:13:10 - root - INFO - Shutting down...
2025-12-18 13:13:13 - root - INFO - Starting up...
2025-12-18 13:13:20 - root - INFO - Shutting down...
2025-12-18 13:13:22 - root - INFO - Starting up...
2025-12-18 13:13:29 - root - INFO - Shutting down...
2025-12-18 13:13:32 - root - INFO - Starting up...
2025-12-18 13:13:35 - root - INFO - Shutting down...
2025-12-18 13:13:38 - root - INFO - Starting up...
2025-12-18 13:15:48 - passlib.handlers.bcrypt - WARNING - (trapped) error reading bcrypt version
Traceback (most recent call last):
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\passlib\handlers\bcrypt.py", line 620, in _load_backend_mixin
version = _bcrypt.__about__.__version__
^^^^^^^^^^^^^^^^^
AttributeError: module 'bcrypt' has no attribute '__about__'
2025-12-18 13:16:12 - root - INFO - Shutting down...
2025-12-18 13:16:15 - root - INFO - Starting up...
2025-12-18 13:16:17 - root - INFO - Starting up...
2025-12-18 13:16:22 - root - INFO - Shutting down...
2025-12-18 13:16:25 - root - INFO - Starting up...
2025-12-18 13:16:35 - root - INFO - Shutting down...
2025-12-18 13:16:38 - root - INFO - Starting up...
2025-12-18 13:16:59 - root - INFO - Shutting down...
2025-12-18 13:17:03 - root - INFO - Starting up...
2025-12-18 13:17:10 - root - INFO - Shutting down...
2025-12-18 13:17:13 - root - INFO - Starting up...
2025-12-18 13:21:15 - root - INFO - Shutting down...
2025-12-18 13:21:18 - root - INFO - Starting up...
2025-12-18 13:21:21 - root - INFO - Starting up...
2025-12-18 13:26:01 - passlib.handlers.bcrypt - WARNING - (trapped) error reading bcrypt version
Traceback (most recent call last):
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\passlib\handlers\bcrypt.py", line 620, in _load_backend_mixin
version = _bcrypt.__about__.__version__
^^^^^^^^^^^^^^^^^
AttributeError: module 'bcrypt' has no attribute '__about__'
2025-12-18 13:26:01 - passlib.handlers.bcrypt - WARNING - (trapped) error reading bcrypt version
Traceback (most recent call last):
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\app\core\security.py", line 38, in get_password_hash
return pwd_context.hash(password)
~~~~~~~~~~~~~~~~^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\passlib\context.py", line 2258, in hash
return record.hash(secret, **kwds)
~~~~~~~~~~~^^^^^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\passlib\utils\handlers.py", line 779, in hash
self.checksum = self._calc_checksum(secret)
~~~~~~~~~~~~~~~~~~~^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\passlib\handlers\bcrypt.py", line 591, in _calc_checksum
self._stub_requires_backend()
~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\passlib\utils\handlers.py", line 2254, in _stub_requires_backend
cls.set_backend()
~~~~~~~~~~~~~~~^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\passlib\utils\handlers.py", line 2156, in set_backend
return owner.set_backend(name, dryrun=dryrun)
~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\passlib\utils\handlers.py", line 2163, in set_backend
return cls.set_backend(name, dryrun=dryrun)
~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\passlib\utils\handlers.py", line 2188, in set_backend
cls._set_backend(name, dryrun)
~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\passlib\utils\handlers.py", line 2311, in _set_backend
super(SubclassBackendMixin, cls)._set_backend(name, dryrun)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\passlib\utils\handlers.py", line 2224, in _set_backend
ok = loader(**kwds)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\passlib\handlers\bcrypt.py", line 626, in _load_backend_mixin
return mixin_cls._finalize_backend_mixin(name, dryrun)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\passlib\handlers\bcrypt.py", line 421, in _finalize_backend_mixin
if detect_wrap_bug(IDENT_2A):
~~~~~~~~~~~~~~~^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\passlib\handlers\bcrypt.py", line 380, in detect_wrap_bug
if verify(secret, bug_hash):
~~~~~~^^^^^^^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\passlib\utils\handlers.py", line 792, in verify
return consteq(self._calc_checksum(secret), chk)
~~~~~~~~~~~~~~~~~~~^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\passlib\handlers\bcrypt.py", line 655, in _calc_checksum
hash = _bcrypt.hashpw(secret, config)
ValueError: password cannot be longer than 72 bytes, truncate manually if necessary (e.g. my_password[:72])
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\passlib\handlers\bcrypt.py", line 620, in _load_backend_mixin
version = _bcrypt.__about__.__version__
^^^^^^^^^^^^^^^^^
AttributeError: module 'bcrypt' has no attribute '__about__'
2025-12-18 13:26:31 - root - INFO - Shutting down...
2025-12-18 13:26:35 - root - INFO - Starting up...
2025-12-18 13:26:38 - root - INFO - Shutting down...
2025-12-18 13:26:41 - root - INFO - Starting up...
2025-12-18 13:26:56 - root - INFO - Shutting down...
2025-12-18 13:26:59 - root - INFO - Starting up...
2025-12-18 13:27:05 - root - INFO - Shutting down...
2025-12-18 13:27:08 - root - INFO - Starting up...
2025-12-18 13:27:17 - root - INFO - Shutting down...
2025-12-18 13:27:19 - root - INFO - Starting up...
2025-12-18 13:27:44 - passlib.handlers.bcrypt - WARNING - (trapped) error reading bcrypt version
Traceback (most recent call last):
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\passlib\handlers\bcrypt.py", line 620, in _load_backend_mixin
version = _bcrypt.__about__.__version__
^^^^^^^^^^^^^^^^^
AttributeError: module 'bcrypt' has no attribute '__about__'
2025-12-18 13:27:44 - passlib.handlers.bcrypt - WARNING - (trapped) error reading bcrypt version
Traceback (most recent call last):
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\app\core\security.py", line 38, in get_password_hash
# <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> 72 <20><><EFBFBD><EFBFBD>
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\passlib\context.py", line 2258, in hash
return record.hash(secret, **kwds)
~~~~~~~~~~~^^^^^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\passlib\utils\handlers.py", line 779, in hash
self.checksum = self._calc_checksum(secret)
~~~~~~~~~~~~~~~~~~~^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\passlib\handlers\bcrypt.py", line 591, in _calc_checksum
self._stub_requires_backend()
~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\passlib\utils\handlers.py", line 2254, in _stub_requires_backend
cls.set_backend()
~~~~~~~~~~~~~~~^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\passlib\utils\handlers.py", line 2156, in set_backend
return owner.set_backend(name, dryrun=dryrun)
~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\passlib\utils\handlers.py", line 2163, in set_backend
return cls.set_backend(name, dryrun=dryrun)
~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\passlib\utils\handlers.py", line 2188, in set_backend
cls._set_backend(name, dryrun)
~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\passlib\utils\handlers.py", line 2311, in _set_backend
super(SubclassBackendMixin, cls)._set_backend(name, dryrun)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\passlib\utils\handlers.py", line 2224, in _set_backend
ok = loader(**kwds)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\passlib\handlers\bcrypt.py", line 626, in _load_backend_mixin
return mixin_cls._finalize_backend_mixin(name, dryrun)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\passlib\handlers\bcrypt.py", line 421, in _finalize_backend_mixin
if detect_wrap_bug(IDENT_2A):
~~~~~~~~~~~~~~~^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\passlib\handlers\bcrypt.py", line 380, in detect_wrap_bug
if verify(secret, bug_hash):
~~~~~~^^^^^^^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\passlib\utils\handlers.py", line 792, in verify
return consteq(self._calc_checksum(secret), chk)
~~~~~~~~~~~~~~~~~~~^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\passlib\handlers\bcrypt.py", line 655, in _calc_checksum
hash = _bcrypt.hashpw(secret, config)
ValueError: password cannot be longer than 72 bytes, truncate manually if necessary (e.g. my_password[:72])
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\passlib\handlers\bcrypt.py", line 620, in _load_backend_mixin
version = _bcrypt.__about__.__version__
^^^^^^^^^^^^^^^^^
AttributeError: module 'bcrypt' has no attribute '__about__'
2025-12-18 13:29:06 - root - INFO - Shutting down...
2025-12-18 13:29:09 - root - INFO - Starting up...
2025-12-18 13:29:14 - root - INFO - Shutting down...
2025-12-18 13:29:18 - root - INFO - Starting up...
2025-12-18 13:29:22 - root - INFO - Starting up...
2025-12-18 13:29:23 - root - INFO - Shutting down...
2025-12-18 13:29:26 - root - INFO - Starting up...
2025-12-18 13:30:36 - root - INFO - Shutting down...
2025-12-18 13:30:43 - root - INFO - Starting up...
2025-12-18 13:31:05 - passlib.handlers.bcrypt - WARNING - (trapped) error reading bcrypt version
Traceback (most recent call last):
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\passlib\handlers\bcrypt.py", line 620, in _load_backend_mixin
version = _bcrypt.__about__.__version__
^^^^^^^^^^^^^^^^^
AttributeError: module 'bcrypt' has no attribute '__about__'
2025-12-18 13:31:05 - passlib.handlers.bcrypt - WARNING - (trapped) error reading bcrypt version
Traceback (most recent call last):
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\app\core\security.py", line 38, in get_password_hash
def get_password_hash(password: str) -> str:
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\passlib\context.py", line 2258, in hash
return record.hash(secret, **kwds)
~~~~~~~~~~~^^^^^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\passlib\utils\handlers.py", line 779, in hash
self.checksum = self._calc_checksum(secret)
~~~~~~~~~~~~~~~~~~~^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\passlib\handlers\bcrypt.py", line 591, in _calc_checksum
self._stub_requires_backend()
~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\passlib\utils\handlers.py", line 2254, in _stub_requires_backend
cls.set_backend()
~~~~~~~~~~~~~~~^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\passlib\utils\handlers.py", line 2156, in set_backend
return owner.set_backend(name, dryrun=dryrun)
~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\passlib\utils\handlers.py", line 2163, in set_backend
return cls.set_backend(name, dryrun=dryrun)
~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\passlib\utils\handlers.py", line 2188, in set_backend
cls._set_backend(name, dryrun)
~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\passlib\utils\handlers.py", line 2311, in _set_backend
super(SubclassBackendMixin, cls)._set_backend(name, dryrun)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\passlib\utils\handlers.py", line 2224, in _set_backend
ok = loader(**kwds)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\passlib\handlers\bcrypt.py", line 626, in _load_backend_mixin
return mixin_cls._finalize_backend_mixin(name, dryrun)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\passlib\handlers\bcrypt.py", line 421, in _finalize_backend_mixin
if detect_wrap_bug(IDENT_2A):
~~~~~~~~~~~~~~~^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\passlib\handlers\bcrypt.py", line 380, in detect_wrap_bug
if verify(secret, bug_hash):
~~~~~~^^^^^^^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\passlib\utils\handlers.py", line 792, in verify
return consteq(self._calc_checksum(secret), chk)
~~~~~~~~~~~~~~~~~~~^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\passlib\handlers\bcrypt.py", line 655, in _calc_checksum
hash = _bcrypt.hashpw(secret, config)
ValueError: password cannot be longer than 72 bytes, truncate manually if necessary (e.g. my_password[:72])
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\passlib\handlers\bcrypt.py", line 620, in _load_backend_mixin
version = _bcrypt.__about__.__version__
^^^^^^^^^^^^^^^^^
AttributeError: module 'bcrypt' has no attribute '__about__'
2025-12-18 13:31:19 - root - INFO - Shutting down...
2025-12-18 13:31:22 - root - INFO - Starting up...
2025-12-18 13:31:24 - root - INFO - Starting up...
2025-12-18 13:33:16 - root - INFO - Shutting down...
2025-12-18 13:33:19 - root - INFO - Starting up...
2025-12-18 13:33:22 - root - INFO - Starting up...
2025-12-18 13:33:24 - root - INFO - Starting up...
2025-12-18 13:33:28 - root - INFO - Shutting down...
2025-12-18 13:33:35 - root - INFO - Starting up...
2025-12-18 13:33:45 - root - INFO - Shutting down...
2025-12-18 13:33:48 - root - INFO - Starting up...
2025-12-18 13:33:50 - root - INFO - Starting up...
2025-12-18 13:34:07 - app.middleware.error_handler - ERROR - Unhandled exception: (sqlalchemy.dialects.postgresql.asyncpg.ProgrammingError) <class 'asyncpg.exceptions.UndefinedFunctionError'>: operator does not exist: character varying = uuid
HINT: No operator matches the given name and argument types. You might need to add explicit type casts.
[SQL: SELECT users.email, users.hashed_password, users.role, users.full_name, users.id, users.created_at, users.updated_at
FROM users
WHERE users.id = $1::UUID]
[parameters: ('adae0851-85c1-431e-8e09-f8f7ebcbb50c',)]
(Background on this error at: https://sqlalche.me/e/20/f405)
Traceback (most recent call last):
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\dialects\postgresql\asyncpg.py", line 526, in _prepare_and_execute
prepared_stmt, attributes = await adapt_connection._prepare(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
operation, self._invalidate_schema_cache_asof
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\dialects\postgresql\asyncpg.py", line 773, in _prepare
prepared_stmt = await self._connection.prepare(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
operation, name=self._prepared_statement_name_func()
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\asyncpg\connection.py", line 638, in prepare
return await self._prepare(
^^^^^^^^^^^^^^^^^^^^
...<4 lines>...
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\asyncpg\connection.py", line 657, in _prepare
stmt = await self._get_statement(
^^^^^^^^^^^^^^^^^^^^^^^^^^
...<5 lines>...
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\asyncpg\connection.py", line 443, in _get_statement
statement = await self._protocol.prepare(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
...<5 lines>...
)
^
File "asyncpg/protocol/protocol.pyx", line 165, in prepare
asyncpg.exceptions.UndefinedFunctionError: operator does not exist: character varying = uuid
HINT: No operator matches the given name and argument types. You might need to add explicit type casts.
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\engine\base.py", line 1967, in _exec_single_context
self.dialect.do_execute(
~~~~~~~~~~~~~~~~~~~~~~~^
cursor, str_statement, effective_parameters, context
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\engine\default.py", line 952, in do_execute
cursor.execute(statement, parameters)
~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\dialects\postgresql\asyncpg.py", line 585, in execute
self._adapt_connection.await_(
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
self._prepare_and_execute(operation, parameters)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\util\_concurrency_py3k.py", line 132, in await_only
return current.parent.switch(awaitable) # type: ignore[no-any-return,attr-defined] # noqa: E501
~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\util\_concurrency_py3k.py", line 196, in greenlet_spawn
value = await result
^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\dialects\postgresql\asyncpg.py", line 563, in _prepare_and_execute
self._handle_exception(error)
~~~~~~~~~~~~~~~~~~~~~~^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\dialects\postgresql\asyncpg.py", line 513, in _handle_exception
self._adapt_connection._handle_exception(error)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\dialects\postgresql\asyncpg.py", line 797, in _handle_exception
raise translated_error from error
sqlalchemy.dialects.postgresql.asyncpg.AsyncAdapt_asyncpg_dbapi.ProgrammingError: <class 'asyncpg.exceptions.UndefinedFunctionError'>: operator does not exist: character varying = uuid
HINT: No operator matches the given name and argument types. You might need to add explicit type casts.
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\middleware\errors.py", line 164, in __call__
await self.app(scope, receive, _send)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\middleware\base.py", line 191, in __call__
with recv_stream, send_stream, collapse_excgroups():
~~~~~~~~~~~~~~~~~~^^
File "C:\Users\yfili\AppData\Local\Programs\Python\Python313\Lib\contextlib.py", line 162, in __exit__
self.gen.throw(value)
~~~~~~~~~~~~~~^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\_utils.py", line 85, in collapse_excgroups
raise exc
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\middleware\base.py", line 193, in __call__
response = await self.dispatch_func(request, call_next)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\app\middleware\rate_limiter.py", line 33, in dispatch
response = await call_next(request)
^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\middleware\base.py", line 168, in call_next
raise app_exc from app_exc.__cause__ or app_exc.__context__
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\middleware\base.py", line 144, in coro
await self.app(scope, receive_or_disconnect, send_no_error)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\middleware\cors.py", line 93, in __call__
await self.simple_response(scope, receive, send, request_headers=headers)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\middleware\cors.py", line 144, in simple_response
await self.app(scope, receive, send)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\middleware\exceptions.py", line 63, in __call__
await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\_exception_handler.py", line 53, in wrapped_app
raise exc
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\_exception_handler.py", line 42, in wrapped_app
await app(scope, receive, sender)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\fastapi\middleware\asyncexitstack.py", line 18, in __call__
await self.app(scope, receive, send)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\routing.py", line 716, in __call__
await self.middleware_stack(scope, receive, send)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\routing.py", line 736, in app
await route.handle(scope, receive, send)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\routing.py", line 290, in handle
await self.app(scope, receive, send)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\fastapi\routing.py", line 118, in app
await wrap_app_handling_exceptions(app, request)(scope, receive, send)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\_exception_handler.py", line 53, in wrapped_app
raise exc
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\_exception_handler.py", line 42, in wrapped_app
await app(scope, receive, sender)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\fastapi\routing.py", line 104, in app
response = await f(request)
^^^^^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\fastapi\routing.py", line 428, in app
raw_response = await run_endpoint_function(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
...<3 lines>...
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\fastapi\routing.py", line 314, in run_endpoint_function
return await dependant.call(**values)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\app\api\v1\auth.py", line 20, in register
user = await auth_service.register(db, user_in)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\app\services\auth_service.py", line 52, in register
db_user = await crud_user.create(db, user_in, hashed_password)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\app\crud\user.py", line 25, in create
await db.refresh(db_obj)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\ext\asyncio\session.py", line 329, in refresh
await greenlet_spawn(
...<4 lines>...
)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\util\_concurrency_py3k.py", line 201, in greenlet_spawn
result = context.throw(*sys.exc_info())
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\orm\session.py", line 3154, in refresh
loading.load_on_ident(
~~~~~~~~~~~~~~~~~~~~~^
self,
^^^^^
...<10 lines>...
is_user_refresh=True,
^^^^^^^^^^^^^^^^^^^^^
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\orm\loading.py", line 510, in load_on_ident
return load_on_pk_identity(
session,
...<11 lines>...
is_user_refresh=is_user_refresh,
)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\orm\loading.py", line 695, in load_on_pk_identity
session.execute(
~~~~~~~~~~~~~~~^
q,
^^
...<2 lines>...
bind_arguments=bind_arguments,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\orm\session.py", line 2351, in execute
return self._execute_internal(
~~~~~~~~~~~~~~~~~~~~~~^
statement,
^^^^^^^^^^
...<4 lines>...
_add_event=_add_event,
^^^^^^^^^^^^^^^^^^^^^^
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\orm\session.py", line 2249, in _execute_internal
result: Result[Any] = compile_state_cls.orm_execute_statement(
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
self,
^^^^^
...<4 lines>...
conn,
^^^^^
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\orm\context.py", line 306, in orm_execute_statement
result = conn.execute(
statement, params or {}, execution_options=execution_options
)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\engine\base.py", line 1419, in execute
return meth(
self,
distilled_parameters,
execution_options or NO_OPTIONS,
)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\sql\elements.py", line 527, in _execute_on_connection
return connection._execute_clauseelement(
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
self, distilled_params, execution_options
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\engine\base.py", line 1641, in _execute_clauseelement
ret = self._execute_context(
dialect,
...<8 lines>...
cache_hit=cache_hit,
)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\engine\base.py", line 1846, in _execute_context
return self._exec_single_context(
~~~~~~~~~~~~~~~~~~~~~~~~~^
dialect, context, statement, parameters
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\engine\base.py", line 1986, in _exec_single_context
self._handle_dbapi_exception(
~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
e, str_statement, effective_parameters, cursor, context
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\engine\base.py", line 2363, in _handle_dbapi_exception
raise sqlalchemy_exception.with_traceback(exc_info[2]) from e
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\engine\base.py", line 1967, in _exec_single_context
self.dialect.do_execute(
~~~~~~~~~~~~~~~~~~~~~~~^
cursor, str_statement, effective_parameters, context
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\engine\default.py", line 952, in do_execute
cursor.execute(statement, parameters)
~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\dialects\postgresql\asyncpg.py", line 585, in execute
self._adapt_connection.await_(
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
self._prepare_and_execute(operation, parameters)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\util\_concurrency_py3k.py", line 132, in await_only
return current.parent.switch(awaitable) # type: ignore[no-any-return,attr-defined] # noqa: E501
~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\util\_concurrency_py3k.py", line 196, in greenlet_spawn
value = await result
^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\dialects\postgresql\asyncpg.py", line 563, in _prepare_and_execute
self._handle_exception(error)
~~~~~~~~~~~~~~~~~~~~~~^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\dialects\postgresql\asyncpg.py", line 513, in _handle_exception
self._adapt_connection._handle_exception(error)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\dialects\postgresql\asyncpg.py", line 797, in _handle_exception
raise translated_error from error
sqlalchemy.exc.ProgrammingError: (sqlalchemy.dialects.postgresql.asyncpg.ProgrammingError) <class 'asyncpg.exceptions.UndefinedFunctionError'>: operator does not exist: character varying = uuid
HINT: No operator matches the given name and argument types. You might need to add explicit type casts.
[SQL: SELECT users.email, users.hashed_password, users.role, users.full_name, users.id, users.created_at, users.updated_at
FROM users
WHERE users.id = $1::UUID]
[parameters: ('adae0851-85c1-431e-8e09-f8f7ebcbb50c',)]
(Background on this error at: https://sqlalche.me/e/20/f405)
2025-12-18 13:34:56 - root - INFO - Shutting down...
2025-12-18 13:34:59 - root - INFO - Starting up...
2025-12-18 13:35:05 - root - INFO - Shutting down...
2025-12-18 13:35:08 - root - INFO - Starting up...
2025-12-18 13:35:09 - root - INFO - Shutting down...
2025-12-18 13:35:16 - root - INFO - Starting up...
2025-12-18 13:36:03 - app.middleware.error_handler - ERROR - Unhandled exception: (sqlalchemy.dialects.postgresql.asyncpg.ProgrammingError) <class 'asyncpg.exceptions.UndefinedFunctionError'>: operator does not exist: character varying = uuid
HINT: No operator matches the given name and argument types. You might need to add explicit type casts.
[SQL: SELECT users.email, users.hashed_password, users.role, users.full_name, users.id, users.created_at, users.updated_at
FROM users
WHERE users.id = $1::UUID]
[parameters: ('48890596-1070-4969-af32-74644b69346a',)]
(Background on this error at: https://sqlalche.me/e/20/f405)
Traceback (most recent call last):
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\dialects\postgresql\asyncpg.py", line 526, in _prepare_and_execute
prepared_stmt, attributes = await adapt_connection._prepare(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
operation, self._invalidate_schema_cache_asof
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\dialects\postgresql\asyncpg.py", line 773, in _prepare
prepared_stmt = await self._connection.prepare(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
operation, name=self._prepared_statement_name_func()
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\asyncpg\connection.py", line 638, in prepare
return await self._prepare(
^^^^^^^^^^^^^^^^^^^^
...<4 lines>...
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\asyncpg\connection.py", line 657, in _prepare
stmt = await self._get_statement(
^^^^^^^^^^^^^^^^^^^^^^^^^^
...<5 lines>...
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\asyncpg\connection.py", line 443, in _get_statement
statement = await self._protocol.prepare(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
...<5 lines>...
)
^
File "asyncpg/protocol/protocol.pyx", line 165, in prepare
asyncpg.exceptions.UndefinedFunctionError: operator does not exist: character varying = uuid
HINT: No operator matches the given name and argument types. You might need to add explicit type casts.
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\engine\base.py", line 1967, in _exec_single_context
self.dialect.do_execute(
~~~~~~~~~~~~~~~~~~~~~~~^
cursor, str_statement, effective_parameters, context
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\engine\default.py", line 952, in do_execute
cursor.execute(statement, parameters)
~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\dialects\postgresql\asyncpg.py", line 585, in execute
self._adapt_connection.await_(
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
self._prepare_and_execute(operation, parameters)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\util\_concurrency_py3k.py", line 132, in await_only
return current.parent.switch(awaitable) # type: ignore[no-any-return,attr-defined] # noqa: E501
~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\util\_concurrency_py3k.py", line 196, in greenlet_spawn
value = await result
^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\dialects\postgresql\asyncpg.py", line 563, in _prepare_and_execute
self._handle_exception(error)
~~~~~~~~~~~~~~~~~~~~~~^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\dialects\postgresql\asyncpg.py", line 513, in _handle_exception
self._adapt_connection._handle_exception(error)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\dialects\postgresql\asyncpg.py", line 797, in _handle_exception
raise translated_error from error
sqlalchemy.dialects.postgresql.asyncpg.AsyncAdapt_asyncpg_dbapi.ProgrammingError: <class 'asyncpg.exceptions.UndefinedFunctionError'>: operator does not exist: character varying = uuid
HINT: No operator matches the given name and argument types. You might need to add explicit type casts.
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\middleware\errors.py", line 164, in __call__
await self.app(scope, receive, _send)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\middleware\base.py", line 191, in __call__
with recv_stream, send_stream, collapse_excgroups():
~~~~~~~~~~~~~~~~~~^^
File "C:\Users\yfili\AppData\Local\Programs\Python\Python313\Lib\contextlib.py", line 162, in __exit__
self.gen.throw(value)
~~~~~~~~~~~~~~^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\_utils.py", line 85, in collapse_excgroups
raise exc
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\middleware\base.py", line 193, in __call__
response = await self.dispatch_func(request, call_next)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\app\middleware\rate_limiter.py", line 33, in dispatch
response = await call_next(request)
^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\middleware\base.py", line 168, in call_next
raise app_exc from app_exc.__cause__ or app_exc.__context__
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\middleware\base.py", line 144, in coro
await self.app(scope, receive_or_disconnect, send_no_error)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\middleware\cors.py", line 93, in __call__
await self.simple_response(scope, receive, send, request_headers=headers)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\middleware\cors.py", line 144, in simple_response
await self.app(scope, receive, send)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\middleware\exceptions.py", line 63, in __call__
await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\_exception_handler.py", line 53, in wrapped_app
raise exc
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\_exception_handler.py", line 42, in wrapped_app
await app(scope, receive, sender)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\fastapi\middleware\asyncexitstack.py", line 18, in __call__
await self.app(scope, receive, send)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\routing.py", line 716, in __call__
await self.middleware_stack(scope, receive, send)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\routing.py", line 736, in app
await route.handle(scope, receive, send)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\routing.py", line 290, in handle
await self.app(scope, receive, send)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\fastapi\routing.py", line 118, in app
await wrap_app_handling_exceptions(app, request)(scope, receive, send)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\_exception_handler.py", line 53, in wrapped_app
raise exc
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\starlette\_exception_handler.py", line 42, in wrapped_app
await app(scope, receive, sender)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\fastapi\routing.py", line 104, in app
response = await f(request)
^^^^^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\fastapi\routing.py", line 428, in app
raw_response = await run_endpoint_function(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
...<3 lines>...
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\fastapi\routing.py", line 314, in run_endpoint_function
return await dependant.call(**values)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\app\api\v1\auth.py", line 20, in register
user = await auth_service.register(db, user_in)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\app\services\auth_service.py", line 52, in register
db_user = await crud_user.create(db, user_in, hashed_password)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\app\crud\user.py", line 25, in create
await db.refresh(db_obj)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\ext\asyncio\session.py", line 329, in refresh
await greenlet_spawn(
...<4 lines>...
)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\util\_concurrency_py3k.py", line 201, in greenlet_spawn
result = context.throw(*sys.exc_info())
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\orm\session.py", line 3154, in refresh
loading.load_on_ident(
~~~~~~~~~~~~~~~~~~~~~^
self,
^^^^^
...<10 lines>...
is_user_refresh=True,
^^^^^^^^^^^^^^^^^^^^^
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\orm\loading.py", line 510, in load_on_ident
return load_on_pk_identity(
session,
...<11 lines>...
is_user_refresh=is_user_refresh,
)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\orm\loading.py", line 695, in load_on_pk_identity
session.execute(
~~~~~~~~~~~~~~~^
q,
^^
...<2 lines>...
bind_arguments=bind_arguments,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\orm\session.py", line 2351, in execute
return self._execute_internal(
~~~~~~~~~~~~~~~~~~~~~~^
statement,
^^^^^^^^^^
...<4 lines>...
_add_event=_add_event,
^^^^^^^^^^^^^^^^^^^^^^
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\orm\session.py", line 2249, in _execute_internal
result: Result[Any] = compile_state_cls.orm_execute_statement(
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
self,
^^^^^
...<4 lines>...
conn,
^^^^^
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\orm\context.py", line 306, in orm_execute_statement
result = conn.execute(
statement, params or {}, execution_options=execution_options
)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\engine\base.py", line 1419, in execute
return meth(
self,
distilled_parameters,
execution_options or NO_OPTIONS,
)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\sql\elements.py", line 527, in _execute_on_connection
return connection._execute_clauseelement(
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
self, distilled_params, execution_options
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\engine\base.py", line 1641, in _execute_clauseelement
ret = self._execute_context(
dialect,
...<8 lines>...
cache_hit=cache_hit,
)
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\engine\base.py", line 1846, in _execute_context
return self._exec_single_context(
~~~~~~~~~~~~~~~~~~~~~~~~~^
dialect, context, statement, parameters
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\engine\base.py", line 1986, in _exec_single_context
self._handle_dbapi_exception(
~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
e, str_statement, effective_parameters, cursor, context
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\engine\base.py", line 2363, in _handle_dbapi_exception
raise sqlalchemy_exception.with_traceback(exc_info[2]) from e
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\engine\base.py", line 1967, in _exec_single_context
self.dialect.do_execute(
~~~~~~~~~~~~~~~~~~~~~~~^
cursor, str_statement, effective_parameters, context
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\engine\default.py", line 952, in do_execute
cursor.execute(statement, parameters)
~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\dialects\postgresql\asyncpg.py", line 585, in execute
self._adapt_connection.await_(
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
self._prepare_and_execute(operation, parameters)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\util\_concurrency_py3k.py", line 132, in await_only
return current.parent.switch(awaitable) # type: ignore[no-any-return,attr-defined] # noqa: E501
~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\util\_concurrency_py3k.py", line 196, in greenlet_spawn
value = await result
^^^^^^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\dialects\postgresql\asyncpg.py", line 563, in _prepare_and_execute
self._handle_exception(error)
~~~~~~~~~~~~~~~~~~~~~~^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\dialects\postgresql\asyncpg.py", line 513, in _handle_exception
self._adapt_connection._handle_exception(error)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^
File "C:\Users\yfili\Desktop\Planet\New-planet-api\new-planet-backend\.venv\Lib\site-packages\sqlalchemy\dialects\postgresql\asyncpg.py", line 797, in _handle_exception
raise translated_error from error
sqlalchemy.exc.ProgrammingError: (sqlalchemy.dialects.postgresql.asyncpg.ProgrammingError) <class 'asyncpg.exceptions.UndefinedFunctionError'>: operator does not exist: character varying = uuid
HINT: No operator matches the given name and argument types. You might need to add explicit type casts.
[SQL: SELECT users.email, users.hashed_password, users.role, users.full_name, users.id, users.created_at, users.updated_at
FROM users
WHERE users.id = $1::UUID]
[parameters: ('48890596-1070-4969-af32-74644b69346a',)]
(Background on this error at: https://sqlalche.me/e/20/f405)
2025-12-18 13:38:35 - root - INFO - Shutting down...
2025-12-18 13:38:46 - root - INFO - Starting up...
2025-12-18 13:38:48 - root - INFO - Shutting down...
2025-12-18 13:38:52 - root - INFO - Starting up...
2025-12-18 13:48:03 - root - INFO - Shutting down...
2025-12-18 13:48:08 - root - INFO - Starting up...
2025-12-18 13:48:11 - root - INFO - Starting up...
2025-12-18 13:48:16 - root - INFO - Shutting down...
2025-12-18 13:48:19 - root - INFO - Starting up...
2025-12-18 13:48:49 - root - INFO - Shutting down...
2025-12-18 13:48:52 - root - INFO - Starting up...
2025-12-18 13:48:55 - root - INFO - Starting up...
2025-12-18 13:49:33 - root - INFO - Shutting down...
2025-12-18 13:49:38 - root - INFO - Starting up...
2025-12-18 13:51:42 - root - INFO - Shutting down...