public inbox for [email protected]  
help / color / mirror / Atom feed
From: Pradip Parkale <[email protected]>
To: Aditya Toshniwal <[email protected]>
Cc: pgadmin-hackers <[email protected]>
Cc: Akshay Joshi <[email protected]>
Subject: Re: [pgAdmin][RM7031]: Database definition wrong
Date: Thu, 2 Dec 2021 15:09:29 +0530
Message-ID: <CAJ9T6SsMhj=XhGmXSZp4Mi6Xcn6e80m8xTts-DBymooWPps+kw@mail.gmail.com> (raw)
In-Reply-To: <CAM9w-_mMoMODHCmXy2MYNY6GucJiwuPCP_n6rD4mYDQaSM7SAg@mail.gmail.com>
References: <CAJ9T6Ss6eaT7zd8aEgqube6JOU4fuqP+WA9horGq7umtXBbKxA@mail.gmail.com>
	<CANxoLDc6_198mxHwv7OTvbYAEkaU06s8WRUAOLLkrSeaHJHznQ@mail.gmail.com>
	<CAM9w-_mMoMODHCmXy2MYNY6GucJiwuPCP_n6rD4mYDQaSM7SAg@mail.gmail.com>

Hi Akshay/Aditya,

Please find the updated patch.

On Wed, Dec 1, 2021 at 5:56 PM Aditya Toshniwal <
[email protected]> wrote:

> Hi Pradip,
>
> You did not include the server_old table for query_history.
>
Fixed.

> Please also remove the commented code:
> +    # db.engine.execute("PRAGMA foreign_keys=ON")
> +
> +    # db.session.commit()
> +
> +    # db.engine.execute("PRAGMA foreign_keys=ON")
> +
>
Fixed.

>
>
>
> On Wed, Dec 1, 2021 at 5:25 PM Akshay Joshi <[email protected]>
> wrote:
>
>> Thanks, the patch applied.
>>
>> On Wed, Dec 1, 2021 at 4:23 PM Pradip Parkale <
>> [email protected]> wrote:
>>
>>> Hi Hackers,
>>>
>>> Please find the attached for #7031 Database definition wrong.
>>>
>>> --
>>> Thanks & Regards,
>>> Pradip Parkale
>>> Software Engineer | EnterpriseDB Corporation
>>>
>>
>>
>> --
>> *Thanks & Regards*
>> *Akshay Joshi*
>> *pgAdmin Hacker | Principal Software Architect*
>> *EDB Postgres <http://edbpostgres.com>*
>>
>> *Mobile: +91 976-788-8246*
>>
>
>
> --
> Thanks,
> Aditya Toshniwal
> pgAdmin Hacker | Software Architect | *edbpostgres.com*
> <http://edbpostgres.com;
> "Don't Complain about Heat, Plant a TREE"
>


-- 
Thanks & Regards,
Pradip Parkale
Software Engineer | EnterpriseDB Corporation


Attachments:

  [application/octet-stream] RM7031_v2.patch (5.2K, 3-RM7031_v2.patch)
  download | inline diff:
diff --git a/web/migrations/versions/09d53fca90c7_.py b/web/migrations/versions/09d53fca90c7_.py
index 3214754f1..b797b6183 100644
--- a/web/migrations/versions/09d53fca90c7_.py
+++ b/web/migrations/versions/09d53fca90c7_.py
@@ -47,7 +47,12 @@ def upgrade():
     if version < 5:
         db.engine.execute('ALTER TABLE server ADD COLUMN role text(64)')
     if version < 6:
-        db.engine.execute("ALTER TABLE server RENAME TO server_old")
+        # To Save previous data, create temp table
+
+        db.engine.execute("create table server_old as select * from server")
+
+        db.engine.execute("DROP TABLE server")
+
         db.engine.execute("""
     CREATE TABLE server (
         id INTEGER NOT NULL,
@@ -161,7 +166,10 @@ def upgrade():
         """)
 
     if version < 12:
-        db.engine.execute("ALTER TABLE server RENAME TO server_old")
+        db.engine.execute("create table server_old as select * from server")
+
+        db.engine.execute("DROP TABLE server")
+
         db.engine.execute("""
     CREATE TABLE server (
         id INTEGER NOT NULL,
diff --git a/web/migrations/versions/35f29b1701bd_.py b/web/migrations/versions/35f29b1701bd_.py
index 653718e20..0599a3434 100644
--- a/web/migrations/versions/35f29b1701bd_.py
+++ b/web/migrations/versions/35f29b1701bd_.py
@@ -49,12 +49,6 @@ def upgrade():
 
     db.engine.execute("DROP TABLE user_old")
 
-    # db.engine.execute("PRAGMA foreign_keys=ON")
-
-    # db.session.commit()
-
-    # db.engine.execute("PRAGMA foreign_keys=ON")
-
 
 def downgrade():
     # pgAdmin only upgrades, downgrade not implemented.
diff --git a/web/migrations/versions/3ce25f562f3b_.py b/web/migrations/versions/3ce25f562f3b_.py
index bf4f266d8..e47651041 100644
--- a/web/migrations/versions/3ce25f562f3b_.py
+++ b/web/migrations/versions/3ce25f562f3b_.py
@@ -24,12 +24,19 @@ depends_on = None
 
 
 def upgrade():
-    db.engine.execute("create table user_old as select * from user")
+    # Rename user table to user_old and again user_old to user to change
+    # the foreign key refernce of user_old table which is not exists
 
-    db.engine.execute("DROP TABLE user")
+    db.engine.execute("ALTER TABLE user RENAME TO user_old")
 
     db.engine.execute("ALTER TABLE user_old RENAME TO user")
 
+    # Rename server table to server_old and again server_old to server to change
+    # the foreign key refernce of server_old table which is not exists
+    db.engine.execute("ALTER TABLE server RENAME TO server_old")
+
+    db.engine.execute("ALTER TABLE server_old RENAME TO server")
+
 
 def downgrade():
     # pgAdmin only upgrades, downgrade not implemented.
diff --git a/web/migrations/versions/50aad68f99c2_.py b/web/migrations/versions/50aad68f99c2_.py
index cadd2e445..a308dc34f 100644
--- a/web/migrations/versions/50aad68f99c2_.py
+++ b/web/migrations/versions/50aad68f99c2_.py
@@ -17,8 +17,11 @@ depends_on = None
 
 
 def upgrade():
-        # To Save previous data
-        db.engine.execute("ALTER TABLE server RENAME TO server_old")
+        # To Save previous data, create temp table
+
+        db.engine.execute("create table server_old as select * from server")
+
+        db.engine.execute("DROP TABLE server")
 
         # With service file some fields won't be mandatory as user can provide
         # them using service file. Removed NOT NULL constraint from few columns
diff --git a/web/migrations/versions/7c56ea250085_.py b/web/migrations/versions/7c56ea250085_.py
index 54a08588c..7d0b6f647 100644
--- a/web/migrations/versions/7c56ea250085_.py
+++ b/web/migrations/versions/7c56ea250085_.py
@@ -19,8 +19,11 @@ depends_on = None
 
 
 def upgrade():
-    # To Save previous data
-    db.engine.execute("ALTER TABLE server RENAME TO server_old")
+    # To Save previous data, create temp table
+
+    db.engine.execute("create table server_old as select * from server")
+
+    db.engine.execute("DROP TABLE server")
 
     # Create table with new constraint definition
     db.engine.execute("""
diff --git a/web/migrations/versions/a39bd015b644_.py b/web/migrations/versions/a39bd015b644_.py
index da887ab2d..a6f2796e1 100644
--- a/web/migrations/versions/a39bd015b644_.py
+++ b/web/migrations/versions/a39bd015b644_.py
@@ -17,8 +17,13 @@ depends_on = None
 
 
 def upgrade():
-    # Rename older table to save previous data
-    db.engine.execute("ALTER TABLE sharedserver RENAME TO sharedserver_old")
+
+    # To Save previous data, create temp table
+
+    db.engine.execute("create table sharedserver_old as "
+                      "select * from sharedserver")
+
+    db.engine.execute("DROP TABLE sharedserver")
 
     # Create new table with removed not null constraints for port column.
     db.engine.execute("""
diff --git a/web/migrations/versions/a77a0932a568_.py b/web/migrations/versions/a77a0932a568_.py
index 2702aa279..ff7fa392c 100644
--- a/web/migrations/versions/a77a0932a568_.py
+++ b/web/migrations/versions/a77a0932a568_.py
@@ -19,8 +19,10 @@ depends_on = None
 
 
 def upgrade():
-    # To Save previous data
-    db.engine.execute("ALTER TABLE server RENAME TO server_old")
+    # To Save previous data, create temp table
+    db.engine.execute("create table server_old as select * from server")
+
+    db.engine.execute("DROP TABLE server")
 
     # Create table with drop constraint for port and username definition
     db.engine.execute("""


view thread (5+ messages)  latest in thread

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: [email protected]
  Cc: [email protected], [email protected], [email protected]
  Subject: Re: [pgAdmin][RM7031]: Database definition wrong
  In-Reply-To: <CAJ9T6SsMhj=XhGmXSZp4Mi6Xcn6e80m8xTts-DBymooWPps+kw@mail.gmail.com>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox