Suggestion - Mailing list pgsql-advocacy

From Gandalf
Subject Suggestion
Date
Msg-id 4050BD13.80801@geochemsource.com
Whole thread Raw
Responses Re: Suggestion
List pgsql-advocacy
  Hi All!

I don't know if this is the right place to write. I was redirected here
from the psycopg list (a Python PostgreSQL interface).
They told me what I want is not to be done in the python extension lib
because it is in the heart of PostgreSQL.

Here is my problem. Every time an error occurs (e.g. I try to execute a
SQL query and it fails) something happens to the backend.
It is starting not to execute further commands in the same transaction.

Why is that? I would like to decide if I want to continue my transaction
or not. In my situation, I just can't tell if a command
will fail or not. It would be too hard and too slow to determine if my
command will fail or not. (Consider a difficult UPDATE
command in a large database with many constraints -- you just cannot
check if it will fail.) Hey, this is why exceptions was
born! From the other side, I must be able to commit or rollback all my
changes at the end of the block, depending on several
things. I think this situlation is real and the problem is real. I had
no such problems with FireBird, Oracle, MS SQL and SAP-DB.
However, I still think PostgreSQL is the most advanced one. (Exception
is Oracle which has a horrible price...)

I'm not sure about this, but I think it would not be too hard to
implement this as a setting.
For example,. it could be an extension to 'SET SESSION CHARACTERISTICS'.
I'm not a DB guru but I learnt DB implementation techniques and AFAIK
there is no implementation barrier here.
The backend could continue processing commands without big
logical/concurrency/transaction handling problems.

Can you help me please? Any developer out there who can explain this?
Comments welcome.

Cheers,

   G


pgsql-advocacy by date:

Previous
From: Robert Treat
Date:
Subject: Re: Comparison of PGSQL and DB2
Next
From: "Joshua D. Drake"
Date:
Subject: Re: Suggestion