Skip to content

Pad container crashes right after startup #88

@emanuele-toma

Description

@emanuele-toma

OS: Ubuntu 22.04.5 LTS
Docker: version 28.1.1, build 4eba377

After following the self-hosted guide I get this error when starting the pad container, did not have any problems until starting the pad container

pad  | INFO:     Waiting for child process [3678]
pad  | INFO:     Child process [3678] died
pad  | INFO:     Started server process [3694]
pad  | INFO:     Waiting for application startup.
pad  | ERROR:    Traceback (most recent call last):
pad  |   File "/usr/local/lib/python3.11/site-packages/sqlalchemy/dialects/postgresql/asyncpg.py", line 545, in _prepare_and_execute
pad  |     self._rows = deque(await prepared_stmt.fetch(*parameters))
pad  |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
pad  |   File "/usr/local/lib/python3.11/site-packages/asyncpg/prepared_stmt.py", line 176, in fetch
pad  |     data = await self.__bind_execute(args, 0, timeout)
pad  |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
pad  |   File "/usr/local/lib/python3.11/site-packages/asyncpg/prepared_stmt.py", line 267, in __bind_execute
pad  |     data, status, _ = await self.__do_execute(
pad  |                       ^^^^^^^^^^^^^^^^^^^^^^^^
pad  |   File "/usr/local/lib/python3.11/site-packages/asyncpg/prepared_stmt.py", line 256, in __do_execute
pad  |     return await executor(protocol)
pad  |            ^^^^^^^^^^^^^^^^^^^^^^^^
pad  |   File "asyncpg/protocol/protocol.pyx", line 206, in bind_execute
pad  | asyncpg.exceptions.InvalidSchemaNameError: schema "pad_ws" does not exist
pad  | 
pad  | The above exception was the direct cause of the following exception:
pad  | 
pad  | Traceback (most recent call last):
pad  |   File "/usr/local/lib/python3.11/site-packages/sqlalchemy/engine/base.py", line 1964, in _exec_single_context
pad  |     self.dialect.do_execute(
pad  |   File "/usr/local/lib/python3.11/site-packages/sqlalchemy/engine/default.py", line 945, in do_execute
pad  |     cursor.execute(statement, parameters)
pad  |   File "/usr/local/lib/python3.11/site-packages/sqlalchemy/dialects/postgresql/asyncpg.py", line 580, in execute
pad  |     self._adapt_connection.await_(
pad  |   File "/usr/local/lib/python3.11/site-packages/sqlalchemy/util/_concurrency_py3k.py", line 132, in await_only
pad  |     return current.parent.switch(awaitable)  # type: ignore[no-any-return,attr-defined] # noqa: E501
pad  |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
pad  |   File "/usr/local/lib/python3.11/site-packages/sqlalchemy/util/_concurrency_py3k.py", line 196, in greenlet_spawn
pad  |     value = await result
pad  |             ^^^^^^^^^^^^
pad  |   File "/usr/local/lib/python3.11/site-packages/sqlalchemy/dialects/postgresql/asyncpg.py", line 558, in _prepare_and_execute
pad  |     self._handle_exception(error)
pad  |   File "/usr/local/lib/python3.11/site-packages/sqlalchemy/dialects/postgresql/asyncpg.py", line 508, in _handle_exception
pad  |     self._adapt_connection._handle_exception(error)
pad  |   File "/usr/local/lib/python3.11/site-packages/sqlalchemy/dialects/postgresql/asyncpg.py", line 792, in _handle_exception
pad  |     raise translated_error from error
pad  | sqlalchemy.dialects.postgresql.asyncpg.AsyncAdapt_asyncpg_dbapi.Error: <class 'asyncpg.exceptions.InvalidSchemaNameError'>: schema "pad_ws" does not exist
pad  | 
pad  | The above exception was the direct cause of the following exception:
pad  | 
pad  | Traceback (most recent call last):
pad  |   File "/usr/local/lib/python3.11/site-packages/starlette/routing.py", line 692, in lifespan
pad  |     async with self.lifespan_context(app) as maybe_state:
pad  |   File "/usr/local/lib/python3.11/contextlib.py", line 210, in __aenter__
pad  |     return await anext(self.gen)
pad  |            ^^^^^^^^^^^^^^^^^^^^^
pad  |   File "/usr/local/lib/python3.11/site-packages/fastapi/routing.py", line 133, in merged_lifespan
pad  |     async with original_context(app) as maybe_original_state:
pad  |   File "/usr/local/lib/python3.11/contextlib.py", line 210, in __aenter__
pad  |     return await anext(self.gen)
pad  |            ^^^^^^^^^^^^^^^^^^^^^
pad  |   File "/usr/local/lib/python3.11/site-packages/fastapi/routing.py", line 133, in merged_lifespan
pad  |     async with original_context(app) as maybe_original_state:
pad  |   File "/usr/local/lib/python3.11/contextlib.py", line 210, in __aenter__
pad  |     return await anext(self.gen)
pad  |            ^^^^^^^^^^^^^^^^^^^^^
pad  |   File "/usr/local/lib/python3.11/site-packages/fastapi/routing.py", line 133, in merged_lifespan
pad  |     async with original_context(app) as maybe_original_state:
pad  |   File "/usr/local/lib/python3.11/contextlib.py", line 210, in __aenter__
pad  |     return await anext(self.gen)
pad  |            ^^^^^^^^^^^^^^^^^^^^^
pad  |   File "/usr/local/lib/python3.11/site-packages/fastapi/routing.py", line 133, in merged_lifespan
pad  |     async with original_context(app) as maybe_original_state:
pad  |   File "/usr/local/lib/python3.11/contextlib.py", line 210, in __aenter__
pad  |     return await anext(self.gen)
pad  |            ^^^^^^^^^^^^^^^^^^^^^
pad  |   File "/usr/local/lib/python3.11/site-packages/fastapi/routing.py", line 133, in merged_lifespan
pad  |     async with original_context(app) as maybe_original_state:
pad  |   File "/usr/local/lib/python3.11/contextlib.py", line 210, in __aenter__
pad  |     return await anext(self.gen)
pad  |            ^^^^^^^^^^^^^^^^^^^^^
pad  |   File "/usr/local/lib/python3.11/site-packages/fastapi/routing.py", line 133, in merged_lifespan
pad  |     async with original_context(app) as maybe_original_state:
pad  |   File "/usr/local/lib/python3.11/contextlib.py", line 210, in __aenter__
pad  |     return await anext(self.gen)
pad  |            ^^^^^^^^^^^^^^^^^^^^^
pad  |   File "/app/main.py", line 81, in lifespan
pad  |     await init_db()
pad  |   File "/app/database/database.py", line 189, in init_db
pad  |     await conn.run_sync(Base.metadata.create_all)
pad  |   File "/usr/local/lib/python3.11/site-packages/sqlalchemy/ext/asyncio/engine.py", line 887, in run_sync
pad  |     return await greenlet_spawn(
pad  |            ^^^^^^^^^^^^^^^^^^^^^
pad  |   File "/usr/local/lib/python3.11/site-packages/sqlalchemy/util/_concurrency_py3k.py", line 201, in greenlet_spawn
pad  |     result = context.throw(*sys.exc_info())
pad  |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
pad  |   File "/usr/local/lib/python3.11/site-packages/sqlalchemy/sql/schema.py", line 5925, in create_all
pad  |     bind._run_ddl_visitor(
pad  |   File "/usr/local/lib/python3.11/site-packages/sqlalchemy/engine/base.py", line 2456, in _run_ddl_visitor
pad  |     visitorcallable(self.dialect, self, **kwargs).traverse_single(element)
pad  |   File "/usr/local/lib/python3.11/site-packages/sqlalchemy/sql/visitors.py", line 664, in traverse_single
pad  |     return meth(obj, **kw)
pad  |            ^^^^^^^^^^^^^^^
pad  |   File "/usr/local/lib/python3.11/site-packages/sqlalchemy/sql/ddl.py", line 981, in visit_metadata
pad  |     self.traverse_single(
pad  |   File "/usr/local/lib/python3.11/site-packages/sqlalchemy/sql/visitors.py", line 664, in traverse_single
pad  |     return meth(obj, **kw)
pad  |            ^^^^^^^^^^^^^^^
pad  |   File "/usr/local/lib/python3.11/site-packages/sqlalchemy/sql/ddl.py", line 1019, in visit_table
pad  |     )._invoke_with(self.connection)
pad  |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
pad  |   File "/usr/local/lib/python3.11/site-packages/sqlalchemy/sql/ddl.py", line 321, in _invoke_with
pad  |     return bind.execute(self)
pad  |            ^^^^^^^^^^^^^^^^^^
pad  |   File "/usr/local/lib/python3.11/site-packages/sqlalchemy/engine/base.py", line 1416, in execute
pad  |     return meth(
pad  |            ^^^^^
pad  |   File "/usr/local/lib/python3.11/site-packages/sqlalchemy/sql/ddl.py", line 187, in _execute_on_connection
pad  |     return connection._execute_ddl(
pad  |            ^^^^^^^^^^^^^^^^^^^^^^^^
pad  |   File "/usr/local/lib/python3.11/site-packages/sqlalchemy/engine/base.py", line 1527, in _execute_ddl
pad  |     ret = self._execute_context(
pad  |           ^^^^^^^^^^^^^^^^^^^^^^
pad  |   File "/usr/local/lib/python3.11/site-packages/sqlalchemy/engine/base.py", line 1843, in _execute_context
pad  |     return self._exec_single_context(
pad  |            ^^^^^^^^^^^^^^^^^^^^^^^^^^
pad  |   File "/usr/local/lib/python3.11/site-packages/sqlalchemy/engine/base.py", line 1983, in _exec_single_context
pad  |     self._handle_dbapi_exception(
pad  |   File "/usr/local/lib/python3.11/site-packages/sqlalchemy/engine/base.py", line 2352, in _handle_dbapi_exception
pad  |     raise sqlalchemy_exception.with_traceback(exc_info[2]) from e
pad  |   File "/usr/local/lib/python3.11/site-packages/sqlalchemy/engine/base.py", line 1964, in _exec_single_context
pad  |     self.dialect.do_execute(
pad  |   File "/usr/local/lib/python3.11/site-packages/sqlalchemy/engine/default.py", line 945, in do_execute
pad  |     cursor.execute(statement, parameters)
pad  |   File "/usr/local/lib/python3.11/site-packages/sqlalchemy/dialects/postgresql/asyncpg.py", line 580, in execute
pad  |     self._adapt_connection.await_(
pad  |   File "/usr/local/lib/python3.11/site-packages/sqlalchemy/util/_concurrency_py3k.py", line 132, in await_only
pad  |     return current.parent.switch(awaitable)  # type: ignore[no-any-return,attr-defined] # noqa: E501
pad  |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
pad  |   File "/usr/local/lib/python3.11/site-packages/sqlalchemy/util/_concurrency_py3k.py", line 196, in greenlet_spawn
pad  |     value = await result
pad  |             ^^^^^^^^^^^^
pad  |   File "/usr/local/lib/python3.11/site-packages/sqlalchemy/dialects/postgresql/asyncpg.py", line 558, in _prepare_and_execute
pad  |     self._handle_exception(error)
pad  |   File "/usr/local/lib/python3.11/site-packages/sqlalchemy/dialects/postgresql/asyncpg.py", line 508, in _handle_exception
pad  |     self._adapt_connection._handle_exception(error)
pad  |   File "/usr/local/lib/python3.11/site-packages/sqlalchemy/dialects/postgresql/asyncpg.py", line 792, in _handle_exception
pad  |     raise translated_error from error
pad  | sqlalchemy.exc.DBAPIError: (sqlalchemy.dialects.postgresql.asyncpg.Error) <class 'asyncpg.exceptions.InvalidSchemaNameError'>: schema "pad_ws" does not exist
pad  | [SQL: 
pad  | CREATE TABLE pad_ws.users (
pad  | 	id UUID NOT NULL, 
pad  | 	username VARCHAR(254) NOT NULL, 
pad  | 	email VARCHAR(254) NOT NULL, 
pad  | 	email_verified BOOLEAN NOT NULL, 
pad  | 	name VARCHAR(254), 
pad  | 	given_name VARCHAR(254), 
pad  | 	family_name VARCHAR(254), 
pad  | 	roles JSONB NOT NULL, 
pad  | 	created_at TIMESTAMP WITH TIME ZONE DEFAULT now(), 
pad  | 	updated_at TIMESTAMP WITH TIME ZONE DEFAULT now(), 
pad  | 	PRIMARY KEY (id), 
pad  | 	UNIQUE (username), 
pad  | 	UNIQUE (email)
pad  | )
pad  | 
pad  | ]
pad  | (Background on this error at: https://sqlalche.me/e/20/dbapi)
pad  | 
pad  | ERROR:    Application startup failed. Exiting.

Metadata

Metadata

Assignees

Labels

bugSomething isn't workingself-hostedRelates to self-hosting pad.ws

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions