Re: ROLLBACK syntax error in pgadmin4

From: Melvin Davidson <melvin6925(at)yahoo(dot)com>
To: Malik Rumi <malik(dot)a(dot)rumi(at)gmail(dot)com>, PgAdmin Support <pgadmin-support(at)postgresql(dot)org>
Subject: Re: ROLLBACK syntax error in pgadmin4
Date: 2016-11-29 20:59:17
Message-ID: 253885551.3518821.1480453157147@mail.yahoo.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgadmin-support

Malik,
First things first.1. This is not the correct forum for this problem.
PgAdmin is a utility for managing PostgreSQL.
You are better off re-submitting this problem to pgsql-general(at)postgresql(dot)orgbut you stand a better chance if you also includeA. O/SB. Exact version of PostgreSQLC. SQL code to reproduce the problem.

As for "ERROR: current transaction is aborted, commands ignored until end of transaction block"It means all commands from BEGIN; until the error occurs are rolled back. No further commandsafter the error occurs are executed.
 Melvin Davidson
I reserve the right to fantasize.  Whether or not you
wish to share my fantasy is entirely up to you.
www.youtube.com/unusedhero/videos
Folk Alley - All Folk - 24 Hours a day
www.folkalley.com

From: Malik Rumi <malik(dot)a(dot)rumi(at)gmail(dot)com>
To: Melvin Davidson <melvin6925(at)yahoo(dot)com>
Cc: pgAdmin Support <pgadmin-support(at)postgresql(dot)org>
Sent: Tuesday, November 29, 2016 2:50 PM
Subject: Re: [pgadmin-support] ROLLBACK syntax error in pgadmin4

Thank you. However...

ERROR: current transaction is aborted, commands ignored until end of transaction block

I'm not even sure what this means. Which transaction is it referring to? The rollback or the update?
What is the error and how do I fix it? What is meant by "until end of transaction block"? Does that mean the entire transaction block, or that something might happen after the end of this block?

I did some more googling, and found this from the postgresql list:
If that's what you're getting, the problem was with an earlier command
that returned an error you didn't notice, not with the command you just
ran. https://www.postgresql.org/message-id/4CAB085C.5030106@postnewspapers.com.au I suppose that makes sense and applies here, since I came here asking about two consecutive syntax errors in the first place. But I still don't know how to safely back out of this situation. Any further advice? Anyone?

p.s. - I said I had PG 9.4. I assumed everyone would know that meant Postgresql 9.4

On Tue, Nov 29, 2016 at 10:24 AM, Melvin Davidson <melvin6925(at)yahoo(dot)com> wrote:

The problem is, ROLLBACK requires a transaction. So to use it properly you need to
start with a BEGIN statement.
eg:
BEGIN;your_statements;ROLLBACK;

https://www.postgresql.org/ docs/9.4/static/sql-begin.html

https://www.postgresql.org/ docs/9.4/static/sql-rollback. html
fyi, in the future, it is always a good idea to include the PostgreSQL version.
Melvin Davidson

I reserve the right to fantasize.  Whether or not you
wish to share my fantasy is entirely up to you.
www.youtube.com/unusedhero/ videos
Folk Alley - All Folk - 24 Hours a day
www.folkalley.com

From: Malik Rumi <malik(dot)a(dot)rumi(at)gmail(dot)com>
To: pgAdmin Support <pgadmin-support(at)postgresql(dot) org>
Sent: Tuesday, November 29, 2016 1:17 PM
Subject: [pgadmin-support] ROLLBACK syntax error in pgadmin4

I amusing PGAdmin4 with PG 9.4 on Ubuntu 16.04 64 bit. I wanted to do an update, but was unsureof the result, so I unselected autocommit and ran explain. It saidonly one row was affected, which I didn’t understand, because itshould have affected at least 2. Then I inferred that the ‘one row’being referred to was the plan, not the rows in my data.ThenI ran the update, again no autocommit, and it was not what Iexpected. So then I added ROLLBACK to the end of the query, ran itagain, and got this error:ERROR:syntax error at or near "ROLLBACK" LINE 1: ...de" SETchildof_id = NULL WHERE codelevelsortseq=1 ROLLBACK;Ithen did a new query, with just ROLLBACK; as I see it explained withan example in the docs:https://www.postgresql.org/ docs/9.4/static/sql-rollback. htmlNevertheless,I got the same error:ERROR:syntax error at or near "ROLLBACK" LINE 1: ...F, VERBOSEON, COSTS ON, BUFFERS OFF, TIMING OFF) ROLLBACK;
Note in this case ROLLBACK; is the only thing on Line 1. The error carat (^) is pointing at the R in both cases. Noother queries have been run in the interim. Tomy surprise, there are very few Google hits for this exact search: "syntaxerror at or near 'ROLLBACK'" About 30 results (0.34 seconds) Thefirst two hits are for a bug report from Nov. of 2006, which wasfixed then and there. I don’t think this is the same bug, if it isa bug. Idid find DISCARD in the docs:https://www.postgresql.org/ docs/9.4/static/sql-discard. htmlhowever, I have not run it because I wanted some clarity here anddidn’t want to interfere with my ROLLBACK, if it would even havethat effect.So,my questions:1.How do I discard this update and get my data back?2.How do I check to make sure it really isn’t committed withoutupsetting my ROLLBACK options? (Yes, I do have a backup I can go to,but I would rather understand what is happening and fix it).4.If it isn’t committed, and this is a bug, can I just close PGAdmin4and/or PG and discard the changes that way?5.Is this a new, different bug?6. What was that 'one row effected' about?

In response to

Responses

Browse pgadmin-support by date

  From Date Subject
Next Message Malik Rumi 2016-11-29 22:14:22 Re: ROLLBACK syntax error in pgadmin4
Previous Message Malik Rumi 2016-11-29 19:50:32 Re: ROLLBACK syntax error in pgadmin4