Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1iu9Yd-0007mL-Dj for pgsql-gui-dev@arkaria.postgresql.org; Wed, 22 Jan 2020 06:32:07 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.89) (envelope-from ) id 1iu9Yc-0004hh-8k for pgsql-gui-dev@arkaria.postgresql.org; Wed, 22 Jan 2020 06:32:06 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1iu9Yb-0004ha-Ls for pgsql-gui-dev@lists.postgresql.org; Wed, 22 Jan 2020 06:32:06 +0000 Received: from mail-oi1-x241.google.com ([2607:f8b0:4864:20::241]) by makus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1iu9YY-0005FB-9k for pgsql-gui-dev@lists.postgresql.org; Wed, 22 Jan 2020 06:32:04 +0000 Received: by mail-oi1-x241.google.com with SMTP id c77so5094379oib.7 for ; Tue, 21 Jan 2020 22:32:02 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=enterprisedb-com.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=0RYqJYGKNwGgK8oS3SPQ3s3bnxgc6gmr+89DXJPXPb8=; b=I8ZKQ9Y75j8oqBkgsLxa/bwNcOdyaCpdB5KIHsJVGInxzYHwDA8Puu9tFBW7NhsZ3J DWakEMXxUT26Bct1N1rzaL+7XyPuY05xH2wgs59MOFQcXTBrkSdrOiBDJhDLjqZ3jYV9 DCdHw9RBYjVHO/rcWz/KtkYdgdC13hP9yjdWbhgHRfGjIjNe2lx2pal3HZ6asyZh9SrY RK5nSKu9aLuSY+xI/FjMK1bw/U3bBf9rm3xGYhR7ksrcoc6gBQpn0V+ro4cZrC8ZQKpn Exj6Q03FiNGyZh5rCEQ+4kqQ6OXL3azMRYirndmqg8frDUnXvmzidFsOn3iWttZse9OA Ekew== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=0RYqJYGKNwGgK8oS3SPQ3s3bnxgc6gmr+89DXJPXPb8=; b=a/BU/Y9EJqqZRfA352I+KMqr+Ts/TQtpDii8q4yBOrEVg0Esb5avwN2DG4LUGqqi9+ x5hydyaWZdZd0DBdb0CZ6r1w9Gp6XbNSRKHhLbgpsNez8SxHYw3TZYXP1l5tSjOxlEYW 7KSgcJ7yMwFhwskaiv+vsq2hFx/rgA9oggdBt+Gf4gxxuYTjiOfWPeFvJIum1i7hItR8 /FuyU1hBZ5IaeK3fXn8gjRkGAUP9yYayO2ZYY41QFWZWZpMzvDzG80cgz5HLAuZzQVvy mfib1ZDEZbqPHGk/a07r0XoGzkNz1d+8NsgXN5E8mlf7KXdc22IvvsKSArpFD9euA/nq +dpw== X-Gm-Message-State: APjAAAUqkjLi5JgePO8KSSJT270Dw9iRnKFXmXULP+VUkx3cH0Cha/vC crjlssOS/PhnDvRtqQkAf4jZTDp4fe2wdD9EwSXQBh51bCrzd/SA/Fx9DyqmjoArDOU9agXwceu NJdUhLYamcMWThJYuIOE4vK5YwZ3VeIrHE0oHigcMRM4U2yeTCr3BORXxUmicWC+20NgePw4kPW Wq7SDHYxRcJCvwzmU9S6ZdBeiR8QTonfIf+pON4qPh6uVfFki+z48IvDSO7xDVmvXHafs= X-Google-Smtp-Source: APXvYqzlxE1z6IBGEzJKSva41rlCIn8zpg9rl7ewt6udegjALXP3stENcAsGbhvdBWrc4C0tCUfCawlrAls4ai8/kGU= X-Received: by 2002:aca:db41:: with SMTP id s62mr5784452oig.87.1579674721588; Tue, 21 Jan 2020 22:32:01 -0800 (PST) MIME-Version: 1.0 References: In-Reply-To: From: Murtuza Zabuawala Date: Wed, 22 Jan 2020 12:00:12 +0530 Message-ID: Subject: Re: flask db migrate error To: Radoslaw Garbacz Cc: pgsql-gui-dev@lists.postgresql.org Content-Type: multipart/alternative; boundary="000000000000a42cd5059cb4ae2c" X-CLOUD-SEC-AV-Info: edb,google_mail,monitor X-CLOUD-SEC-AV-Sent: true X-Gm-Spam: 0 X-Gm-Phishy: 0 List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Precedence: bulk --000000000000a42cd5059cb4ae2c Content-Type: text/plain; charset="UTF-8" Hi, Please forward your query to *pgadmin-hackers* group. -- Regards, Murtuza Zabuawala EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company On Wed, Jan 22, 2020 at 2:03 AM Radoslaw Garbacz < radoslaw.garbacz@xtremedatainc.com> wrote: > Hi, > > As this is my first post I'd like to thank you for your work on this > project. > > I have a question regarding modifying configuration db model for pgadmin4: > When trying to create a new migration file I get an error: > sqlalchemy.exc.NoSuchTableError: user_old > > The command used: FLASK_APP=pgAdmin4.py flask db migrate -m "Add data > groups" > The db is initialized with: python setup.py, I also tried: > FLASK_APP=pgAdmin4.py flask db init > > When commenting out (just for tests) content of > "web/migrations/versions/35f29b1701bd_.py" I get a similar error but with > "server_old". > So my question is what is the correct procedure to modify configuration db > or how to solve the mentioned issue? > > Thanks in advance, > > DETAILS: > > * pgadmin4 version: cloned from master with latest commit on Jan 13, 2020 > > * Changes in "model/__init__.py": > SCHEMA_VERSION = 25 > ... > class DataGroup(db.Model): > """Define a data group for the treeview""" > __tablename__ = 'datagroup' > id = db.Column(db.Integer, primary_key=True) > user_id = db.Column(db.Integer, db.ForeignKey('user.id'), > nullable=False) > > name = db.Column(db.String(128), nullable=False) > __table_args__ = (db.UniqueConstraint('user_id', 'name'),) > > > * migrate command exception details: > ... > File > "/home/rga/.virtualenvs/pgadmin4/lib/python3.7/site-packages/alembic/util/compat.py", > line 173, in load_module_py > spec.loader.exec_module(module) > File "", line 728, in exec_module > File "", line 219, in > _call_with_frames_removed > File "migrations/env.py", line 94, in > run_migrations_online() > File "migrations/env.py", line 87, in run_migrations_online > context.run_migrations() > File "", line 8, in run_migrations > File > "/home/rga/.virtualenvs/pgadmin4/lib/python3.7/site-packages/alembic/runtime/environment.py", > line 846, in run_migrations > self.get_context().run_migrations(**kw) > File > "/home/rga/.virtualenvs/pgadmin4/lib/python3.7/site-packages/alembic/runtime/migration.py", > line 507, in run_migrations > for step in self._migrations_fn(heads, self): > File > "/home/rga/.virtualenvs/pgadmin4/lib/python3.7/site-packages/alembic/command.py", > line 190, in retrieve_migrations > revision_context.run_autogenerate(rev, context) > File > "/home/rga/.virtualenvs/pgadmin4/lib/python3.7/site-packages/alembic/autogenerate/api.py", > line 442, in run_autogenerate > self._run_environment(rev, migration_context, True) > File > "/home/rga/.virtualenvs/pgadmin4/lib/python3.7/site-packages/alembic/autogenerate/api.py", > line 482, in _run_environment > autogen_context, migration_script > File > "/home/rga/.virtualenvs/pgadmin4/lib/python3.7/site-packages/alembic/autogenerate/compare.py", > line 25, in _populate_migration_script > _produce_net_changes(autogen_context, upgrade_ops) > File > "/home/rga/.virtualenvs/pgadmin4/lib/python3.7/site-packages/alembic/autogenerate/compare.py", > line 51, in _produce_net_changes > autogen_context, upgrade_ops, schemas > File > "/home/rga/.virtualenvs/pgadmin4/lib/python3.7/site-packages/alembic/util/langhelpers.py", > line 303, in go > fn(*arg, **kw) > File > "/home/rga/.virtualenvs/pgadmin4/lib/python3.7/site-packages/alembic/autogenerate/compare.py", > line 83, in _autogen_for_tables > autogen_context, > File > "/home/rga/.virtualenvs/pgadmin4/lib/python3.7/site-packages/alembic/autogenerate/compare.py", > line 195, in _compare_tables > inspector.reflecttable(t, None) > File > "/home/rga/.virtualenvs/pgadmin4/lib/python3.7/site-packages/sqlalchemy/engine/reflection.py", > line 669, in reflecttable > reflection_options, > File > "/home/rga/.virtualenvs/pgadmin4/lib/python3.7/site-packages/sqlalchemy/engine/reflection.py", > line 848, in _reflect_fk > **reflection_options > File "", line 2, in __new__ > File > "/home/rga/.virtualenvs/pgadmin4/lib/python3.7/site-packages/sqlalchemy/util/deprecations.py", > line 128, in warned > return fn(*args, **kwargs) > File > "/home/rga/.virtualenvs/pgadmin4/lib/python3.7/site-packages/sqlalchemy/sql/schema.py", > line 506, in __new__ > metadata._remove_table(name, schema) > File > "/home/rga/.virtualenvs/pgadmin4/lib/python3.7/site-packages/sqlalchemy/util/langhelpers.py", > line 68, in __exit__ > compat.reraise(exc_type, exc_value, exc_tb) > File > "/home/rga/.virtualenvs/pgadmin4/lib/python3.7/site-packages/sqlalchemy/util/compat.py", > line 153, in reraise > raise value > File > "/home/rga/.virtualenvs/pgadmin4/lib/python3.7/site-packages/sqlalchemy/sql/schema.py", > line 501, in __new__ > table._init(name, metadata, *args, **kw) > File > "/home/rga/.virtualenvs/pgadmin4/lib/python3.7/site-packages/sqlalchemy/sql/schema.py", > line 595, in _init > resolve_fks=resolve_fks, > File > "/home/rga/.virtualenvs/pgadmin4/lib/python3.7/site-packages/sqlalchemy/sql/schema.py", > line 619, in _autoload > _extend_on=_extend_on, > File > "/home/rga/.virtualenvs/pgadmin4/lib/python3.7/site-packages/sqlalchemy/engine/base.py", > line 1615, in run_callable > return callable_(self, *args, **kwargs) > File > "/home/rga/.virtualenvs/pgadmin4/lib/python3.7/site-packages/sqlalchemy/engine/default.py", > line 460, in reflecttable > table, include_columns, exclude_columns, resolve_fks, **opts > File > "/home/rga/.virtualenvs/pgadmin4/lib/python3.7/site-packages/sqlalchemy/engine/reflection.py", > line 655, in reflecttable > raise exc.NoSuchTableError(table.name) > sqlalchemy.exc.NoSuchTableError: user_old > > > -- > Best Regards, > > Radoslaw Garbacz > XtremeData Incorporated > --000000000000a42cd5059cb4ae2c Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hi,

Please forward your query = to=C2=A0pgadmin-hackers group.

=
--=
Regards,
Murtuza Zabuawala
EnterpriseDB:=C2=A0http://www.enter= prisedb.com
The Enterprise PostgreSQL Company

=


On Wed, Jan 22, 2020 at= 2:03 AM Radoslaw Garbacz <radoslaw.garbacz@xtremedatainc.com> wrote= :
Hi,

<= div>As this is my first post I'd like to thank you for your work on thi= s project.

I have a question regarding modifying c= onfiguration db model for pgadmin4:
When trying to cre= ate a new migration file I get an error: sqlalchemy.exc.NoSuchTableError: u= ser_old

The command used: FLASK_APP=3DpgAdmin4.py = flask db migrate -m "Add data groups"
The db is initial= ized with: python setup.py, I also tried: FLASK_APP=3DpgAdmin4.py flask db = init

When commenting out (just for tests) content = of "web/migrations/versions/35f29b1701bd_.py" I get a similar err= or but with "server_old".
So my question is what is the= correct procedure to modify configuration db or how to solve the mentioned= issue?

Thanks in advance,

<= /div>
DETAILS:

* pgadmin4 version: cloned from= master with latest commit on Jan 13, 2020

* Changes in "model/__init__.py"= ;:
SCHEMA_VERSION =3D 25
...
class DataGroup(= db.Model):
=C2=A0 =C2=A0 """Define a data group for the t= reeview"""
=C2=A0 =C2=A0 __tablename__ =3D 'datagroup= '
=C2=A0 =C2=A0 id =3D db.Column(db.Integer, primary_key=3DTrue)
= =C2=A0 =C2=A0 user_id =3D db.Column(db.Integer, db.ForeignKey('user.id'), nullable=3DFalse)<= br>
=C2=A0 =C2=A0 name =3D db.Column(db.String(128), nullable=3DFalse)=C2=A0 =C2=A0 __table_args__ =3D (db.UniqueConstraint('user_id', = 'name'),)


* migrate com= mand exception details:
...
=C2=A0File "/home/rga/= .virtualenvs/pgadmin4/lib/python3.7/site-packages/alembic/util/compat.py&qu= ot;, line 173, in load_module_py
=C2=A0 =C2=A0 spec.loader.exec_module(m= odule)
=C2=A0 File "<frozen importlib._bootstrap_external>&qu= ot;, line 728, in exec_module
=C2=A0 File "<frozen importlib._bo= otstrap>", line 219, in _call_with_frames_removed
=C2=A0 File &q= uot;migrations/env.py", line 94, in <module>
=C2=A0 =C2=A0 ru= n_migrations_online()
=C2=A0 File "migrations/env.py", line 87= , in run_migrations_online
=C2=A0 =C2=A0 context.run_migrations()
=C2= =A0 File "<string>", line 8, in run_migrations
=C2=A0 Fi= le "/home/rga/.virtualenvs/pgadmin4/lib/python3.7/site-packages/alembi= c/runtime/environment.py", line 846, in run_migrations
=C2=A0 =C2= =A0 self.get_context().run_migrations(**kw)
=C2=A0 File "/home/rga/= .virtualenvs/pgadmin4/lib/python3.7/site-packages/alembic/runtime/migration= .py", line 507, in run_migrations
=C2=A0 =C2=A0 for step in self._m= igrations_fn(heads, self):
=C2=A0 File "/home/rga/.virtualenvs/pgad= min4/lib/python3.7/site-packages/alembic/command.py", line 190, in ret= rieve_migrations
=C2=A0 =C2=A0 revision_context.run_autogenerate(rev, co= ntext)
=C2=A0 File "/home/rga/.virtualenvs/pgadmin4/lib/python3.7/s= ite-packages/alembic/autogenerate/api.py", line 442, in run_autogenera= te
=C2=A0 =C2=A0 self._run_environment(rev, migration_context, True)
= =C2=A0 File "/home/rga/.virtualenvs/pgadmin4/lib/python3.7/site-packag= es/alembic/autogenerate/api.py", line 482, in _run_environment
=C2= =A0 =C2=A0 autogen_context, migration_script
=C2=A0 File "/home/rga= /.virtualenvs/pgadmin4/lib/python3.7/site-packages/alembic/autogenerate/com= pare.py", line 25, in _populate_migration_script
=C2=A0 =C2=A0 _pro= duce_net_changes(autogen_context, upgrade_ops)
=C2=A0 File "/home/r= ga/.virtualenvs/pgadmin4/lib/python3.7/site-packages/alembic/autogenerate/c= ompare.py", line 51, in _produce_net_changes
=C2=A0 =C2=A0 autogen_= context, upgrade_ops, schemas
=C2=A0 File "/home/rga/.virtualenvs/p= gadmin4/lib/python3.7/site-packages/alembic/util/langhelpers.py", line= 303, in go
=C2=A0 =C2=A0 fn(*arg, **kw)
=C2=A0 File "/home/rga/= .virtualenvs/pgadmin4/lib/python3.7/site-packages/alembic/autogenerate/comp= are.py", line 83, in _autogen_for_tables
=C2=A0 =C2=A0 autogen_cont= ext,
=C2=A0 File "/home/rga/.virtualenvs/pgadmin4/lib/python3.7/sit= e-packages/alembic/autogenerate/compare.py", line 195, in _compare_tab= les
=C2=A0 =C2=A0 inspector.reflecttable(t, None)
=C2=A0 File "/= home/rga/.virtualenvs/pgadmin4/lib/python3.7/site-packages/sqlalchemy/engin= e/reflection.py", line 669, in reflecttable
=C2=A0 =C2=A0 reflectio= n_options,
=C2=A0 File "/home/rga/.virtualenvs/pgadmin4/lib/python3= .7/site-packages/sqlalchemy/engine/reflection.py", line 848, in _refle= ct_fk
=C2=A0 =C2=A0 **reflection_options
=C2=A0 File "<string= >", line 2, in __new__
=C2=A0 File "/home/rga/.virtualenvs/= pgadmin4/lib/python3.7/site-packages/sqlalchemy/util/deprecations.py",= line 128, in warned
=C2=A0 =C2=A0 return fn(*args, **kwargs)
=C2=A0 = File "/home/rga/.virtualenvs/pgadmin4/lib/python3.7/site-packages/sqla= lchemy/sql/schema.py", line 506, in __new__
=C2=A0 =C2=A0 metadata.= _remove_table(name, schema)
=C2=A0 File "/home/rga/.virtualenvs/pga= dmin4/lib/python3.7/site-packages/sqlalchemy/util/langhelpers.py", lin= e 68, in __exit__
=C2=A0 =C2=A0 compat.reraise(exc_type, exc_value, exc_= tb)
=C2=A0 File "/home/rga/.virtualenvs/pgadmin4/lib/python3.7/site= -packages/sqlalchemy/util/compat.py", line 153, in reraise
=C2=A0 = =C2=A0 raise value
=C2=A0 File "/home/rga/.virtualenvs/pgadmin4/lib= /python3.7/site-packages/sqlalchemy/sql/schema.py", line 501, in __new= __
=C2=A0 =C2=A0 table._init(name, metadata, *args, **kw)
=C2=A0 File= "/home/rga/.virtualenvs/pgadmin4/lib/python3.7/site-packages/sqlalche= my/sql/schema.py", line 595, in _init
=C2=A0 =C2=A0 resolve_fks=3Dr= esolve_fks,
=C2=A0 File "/home/rga/.virtualenvs/pgadmin4/lib/python= 3.7/site-packages/sqlalchemy/sql/schema.py", line 619, in _autoload=C2=A0 =C2=A0 _extend_on=3D_extend_on,
=C2=A0 File "/home/rga/.vir= tualenvs/pgadmin4/lib/python3.7/site-packages/sqlalchemy/engine/base.py&quo= t;, line 1615, in run_callable
=C2=A0 =C2=A0 return callable_(self, *arg= s, **kwargs)
=C2=A0 File "/home/rga/.virtualenvs/pgadmin4/lib/pytho= n3.7/site-packages/sqlalchemy/engine/default.py", line 460, in reflect= table
=C2=A0 =C2=A0 table, include_columns, exclude_columns, resolve_fks= , **opts
=C2=A0 File "/home/rga/.virtualenvs/pgadmin4/lib/python3.7= /site-packages/sqlalchemy/engine/reflection.py", line 655, in reflectt= able
=C2=A0 =C2=A0 raise exc.NoSuchTableError(table.name)
sqlalchemy.exc.NoSuchTableError: u= ser_old


--
Best Regards,

Radoslaw Garbacz
XtremeData Incorporated
--000000000000a42cd5059cb4ae2c--