Duplicate serial in Informix 7.2.3



Hi,

I've developed an webservice application which accesses an informix
database.
When the service is invoked, the application executes some business
logic, opens a transaction inserts values in 3 tables (let's call them
A, B and C), and commits it. Table A's primary key column is of type
serial and my application sets no value to it, so the number is
automatically generated. This is also a foreign key to table B.

My problem is that sometimes a duplicate serial is generated, when two
consecutive transactions insert values in table A. I assume that this
happens when the second transaction makes the insert before the first
one is commited, but I'm not really sure about this. I've tried
several isolation levels (repeatable read, read commited and
serializable) and observed the same behaviour. We are using Informix
7.2.3 running under solaris 2.6.

Anyone can help me?

Thanks in advance.
Pedro

.



Relevant Pages

  • Re: Duplicate serial in Informix 7.2.3
    ... I've developed an webservice application which accesses an informix ... opens a transaction inserts values in 3 tables (let's call them ... A, B and C), and commits it. ... I would contact IBM Tech Support and see. ...
    (comp.databases.informix)
  • Re: Regarding INFORMIX Basic Details
    ... Sunil Raja said: ... snapshot before beginning of transaction and another snapshot after the ... I am new to INFORMIX database. ... I am using INFORMIX 9.4 database in HP-UX System. ...
    (comp.databases.informix)
  • Re: Can this be done??
    ... >> As far as I know, this is impossible to be achieved in transaction. ... >> the SQL server database engine commits and rolls back transactions by ... the transaction log cannot be ... >> use DataSet.GetChanges to get the newly inserted rows. ...
    (microsoft.public.dotnet.framework.adonet)
  • Re: [PATCH] Fix bad data from non-direct-io read after direct-io write
    ... commits the transaction. ... ->releasepage if jbd is committing the transaction. ... page cache while dio holds a page reference. ...
    (Linux-Kernel)
  • Re: What are dirty pages?
    ... > buffer pool, so it does not match what is on disk. ... > When a transaction commits, the LOG records for that transaction are ...
    (microsoft.public.sqlserver.server)