GitHub user csronakpadaliya created a discussion: superset db upgrade fails with migration generated immediately after fresh setup of Apache Superset 4.1.4 (PostgreSQL)
Hi team, I have set up Apache Superset 4.1.4 on my local machine. The setup works fine using the default database. After that, I switched the metadata database to PostgreSQL. At this point, without touching or modifying any Superset models, I generated a migration using: `superset db migrate -m "first migration added after setup"` This unexpectedly created a migration file with several schema changes: [2025-11-24_15-50_280e853c977c_first_migration_added_after_setup.py](https://github.com/user-attachments/files/23713247/2025-11-24_15-50_280e853c977c_first_migration_added_after_setup.py) (Generated migration file attached below.) Next, when I run: `superset db upgrade` I get the following error: 2025-11-24 15:52:15,923:INFO:superset.initialization:Setting database isolation level to READ COMMITTED INFO [alembic.env] Starting the migration scripts. INFO [alembic.runtime.migration] Context impl PostgresqlImpl. INFO [alembic.runtime.migration] Will assume transactional DDL. INFO [alembic.runtime.migration] Running upgrade 48cbb571fa3a -> 280e853c977c, first migration added after setup Traceback (most recent call last): File "C:\Ronak\Apache Superset\GitHubRepo\superset\supersetDev\Lib\site-packages\sqlalchemy\engine\base.py", line 1910, in _execute_context self.dialect.do_execute( File "C:\Ronak\Apache Superset\GitHubRepo\superset\supersetDev\Lib\site-packages\sqlalchemy\engine\default.py", line 736, in do_execute cursor.execute(statement, parameters) psycopg2.errors.UndefinedObject: type "limitingfactor" does not exist LINE 1: ...TER TABLE query ALTER COLUMN limiting_factor TYPE limitingfa... ^ The above exception was the direct cause of the following exception: Traceback (most recent call last): File "<frozen runpy>", line 198, in _run_module_as_main File "<frozen runpy>", line 88, in _run_code File "C:\Ronak\Apache Superset\GitHubRepo\superset\supersetDev\scripts\superset.exe\__main__.py", line 6, in <module> File "C:\Ronak\Apache Superset\GitHubRepo\superset\supersetDev\Lib\site-packages\click\core.py", line 1157, in __call__ return self.main(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Ronak\Apache Superset\GitHubRepo\superset\supersetDev\Lib\site-packages\click\core.py", line 1078, in main rv = self.invoke(ctx) ^^^^^^^^^^^^^^^^ File "C:\Ronak\Apache Superset\GitHubRepo\superset\supersetDev\Lib\site-packages\click\core.py", line 1688, in invoke return _process_result(sub_ctx.command.invoke(sub_ctx)) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Ronak\Apache Superset\GitHubRepo\superset\supersetDev\Lib\site-packages\click\core.py", line 1688, in invoke return _process_result(sub_ctx.command.invoke(sub_ctx)) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Ronak\Apache Superset\GitHubRepo\superset\supersetDev\Lib\site-packages\click\core.py", line 1434, in invoke return ctx.invoke(self.callback, **ctx.params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Ronak\Apache Superset\GitHubRepo\superset\supersetDev\Lib\site-packages\click\core.py", line 783, in invoke return __callback(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Ronak\Apache Superset\GitHubRepo\superset\supersetDev\Lib\site-packages\click\decorators.py", line 33, in new_func return f(get_current_context(), *args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Ronak\Apache Superset\GitHubRepo\superset\supersetDev\Lib\site-packages\flask\cli.py", line 358, in decorator return __ctx.invoke(f, *args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Ronak\Apache Superset\GitHubRepo\superset\supersetDev\Lib\site-packages\click\core.py", line 783, in invoke return __callback(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Ronak\Apache Superset\GitHubRepo\superset\supersetDev\Lib\site-packages\flask_migrate\cli.py", line 149, in upgrade _upgrade(directory, revision, sql, tag, x_arg) File "C:\Ronak\Apache Superset\GitHubRepo\superset\supersetDev\Lib\site-packages\flask_migrate\__init__.py", line 98, in wrapped f(*args, **kwargs) File "C:\Ronak\Apache Superset\GitHubRepo\superset\supersetDev\Lib\site-packages\flask_migrate\__init__.py", line 185, in upgrade command.upgrade(config, revision, sql=sql, tag=tag) File "C:\Ronak\Apache Superset\GitHubRepo\superset\supersetDev\Lib\site-packages\alembic\command.py", line 403, in upgrade script.run_env() File "C:\Ronak\Apache Superset\GitHubRepo\superset\supersetDev\Lib\site-packages\alembic\script\base.py", line 583, in run_env util.load_python_file(self.dir, "env.py") File "C:\Ronak\Apache Superset\GitHubRepo\superset\supersetDev\Lib\site-packages\alembic\util\pyfiles.py", line 95, in load_python_file module = load_module_py(module_id, path) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Ronak\Apache Superset\GitHubRepo\superset\supersetDev\Lib\site-packages\alembic\util\pyfiles.py", line 113, in load_module_py spec.loader.exec_module(module) # type: ignore ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "<frozen importlib._bootstrap_external>", line 940, in exec_module File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed File "C:\Ronak\Apache Superset\GitHubRepo\superset\superset\extensions\../migrations\env.py", line 142, in <module> run_migrations_online() File "C:\Ronak\Apache Superset\GitHubRepo\superset\superset\extensions\../migrations\env.py", line 133, in run_migrations_online context.run_migrations() File "<string>", line 8, in run_migrations File "C:\Ronak\Apache Superset\GitHubRepo\superset\supersetDev\Lib\site-packages\alembic\runtime\environment.py", line 948, in run_migrations self.get_context().run_migrations(**kw) File "C:\Ronak\Apache Superset\GitHubRepo\superset\supersetDev\Lib\site-packages\alembic\runtime\migration.py", line 627, in run_migrations step.migration_fn(**kw) File "C:\Ronak\Apache Superset\GitHubRepo\superset\superset\migrations\versions\2025-11-24_15-50_280e853c977c_first_migration_added_after_setup.py", line 71, in upgrade op.alter_column('query', 'limiting_factor', File "<string>", line 8, in alter_column File "<string>", line 3, in alter_column File "C:\Ronak\Apache Superset\GitHubRepo\superset\supersetDev\Lib\site-packages\alembic\operations\ops.py", line 1943, in alter_column return operations.invoke(alt) ^^^^^^^^^^^^^^^^^^^^^^ File "C:\Ronak\Apache Superset\GitHubRepo\superset\supersetDev\Lib\site-packages\alembic\operations\base.py", line 445, in invoke return fn(self, operation) ^^^^^^^^^^^^^^^^^^^ File "C:\Ronak\Apache Superset\GitHubRepo\superset\supersetDev\Lib\site-packages\alembic\operations\toimpl.py", line 53, in alter_column operations.impl.alter_column( File "C:\Ronak\Apache Superset\GitHubRepo\superset\supersetDev\Lib\site-packages\alembic\ddl\postgresql.py", line 174, in alter_column self._exec( File "C:\Ronak\Apache Superset\GitHubRepo\superset\supersetDev\Lib\site-packages\alembic\ddl\impl.py", line 207, in _exec return conn.execute(construct, multiparams) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Ronak\Apache Superset\GitHubRepo\superset\supersetDev\Lib\site-packages\sqlalchemy\engine\base.py", line 1385, in execute return meth(self, multiparams, params, _EMPTY_EXECUTION_OPTS) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Ronak\Apache Superset\GitHubRepo\superset\supersetDev\Lib\site-packages\sqlalchemy\sql\ddl.py", line 80, in _execute_on_connection return connection._execute_ddl( ^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Ronak\Apache Superset\GitHubRepo\superset\supersetDev\Lib\site-packages\sqlalchemy\engine\base.py", line 1477, in _execute_ddl ret = self._execute_context( ^^^^^^^^^^^^^^^^^^^^^^ File "C:\Ronak\Apache Superset\GitHubRepo\superset\supersetDev\Lib\site-packages\sqlalchemy\engine\base.py", line 1953, in _execute_context self._handle_dbapi_exception( File "C:\Ronak\Apache Superset\GitHubRepo\superset\supersetDev\Lib\site-packages\sqlalchemy\engine\base.py", line 2134, in _handle_dbapi_exception util.raise_( File "C:\Ronak\Apache Superset\GitHubRepo\superset\supersetDev\Lib\site-packages\sqlalchemy\util\compat.py", line 211, in raise_ raise exception File "C:\Ronak\Apache Superset\GitHubRepo\superset\supersetDev\Lib\site-packages\sqlalchemy\engine\base.py", line 1910, in _execute_context self.dialect.do_execute( File "C:\Ronak\Apache Superset\GitHubRepo\superset\supersetDev\Lib\site-packages\sqlalchemy\engine\default.py", line 736, in do_execute cursor.execute(statement, parameters) sqlalchemy.exc.ProgrammingError: (psycopg2.errors.UndefinedObject) type "limitingfactor" does not exist LINE 1: ...TER TABLE query ALTER COLUMN limiting_factor TYPE limitingfa... ^ [SQL: ALTER TABLE query ALTER COLUMN limiting_factor TYPE limitingfactor ] (Background on this error at: https://sqlalche.me/e/14/f405) **Expected Behavior:** 1. Running superset db migrate on a fresh install (without changing any models) should not generate schema diffs. 2. Running superset db upgrade should apply migrations successfully without errors. Can anyone gives me solution or flow for how to apply migration in Apache Superset? GitHub link: https://github.com/apache/superset/discussions/36236 ---- This is an automatically sent email for [email protected]. To unsubscribe, please send an email to: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
