Re: Can't insert more than 80 registers!? - Mailing list pgsql-jdbc

From Oliver Jowett
Subject Re: Can't insert more than 80 registers!?
Date
Msg-id 40A0CB55.5060400@opencloud.com
Whole thread Raw
In response to Can't insert more than 80 registers!?  (Carlos Barroso <miguel.barroso@mail.pt>)
List pgsql-jdbc
Carlos Barroso wrote:

> Results:
> The code above doesn't give any error. The BIG problem is that it's only
> inserting 80 and NOT 90 registers!?
> I've tried everything I know and I can't get it working.

I just tested this schema & code against 7.4.2 and pg74.213.jdbc3.jar.
It works as expected, inserting 90 rows. The only difference in schema
was that I dropped the foreign key constraints as you didn't provide DDL
or data for the referenced tables.

Here's what I did:

> oliver@flood:~$ sandbox-7.4.2/bin/psql -p 5742 test
> [... startup banner ...]
> test=> CREATE TABLE PLANO_ENSAIO (
> test(>        id INT8 NOT NULL
> test(>      , ensaio_fk INT8 NOT NULL
> test(>      , op_fk INT8 NOT NULL
> test(>      , data_hora TIMESTAMP(10) NOT NULL
> test(>      , estado CHAR(1) NOT NULL
> test(>      , user_id CHAR(10) NOT NULL
> test(>      , dt_hr TIMESTAMP(10) NOT NULL
> test(>      , PRIMARY KEY (id) );
> WARNING:  TIMESTAMP(10) precision reduced to maximum allowed, 6
> WARNING:  TIMESTAMP(10) precision reduced to maximum allowed, 6
> NOTICE:  CREATE TABLE / PRIMARY KEY will create implicit index "plano_ensaio_pkey" for table "plano_ensaio"
> CREATE TABLE
> test=> \q
>
> oliver@flood:~$ cat Test.java
> import java.sql.*;
>
> public class Test {
>     public static void main(String[] args) throws Exception {
>         Class.forName("org.postgresql.Driver");
>         Connection conn =
>             DriverManager.getConnection("jdbc:postgresql://localhost:5742/test",
>                                         "oliver", "oliver");
>
>         Statement st = null;
>         for(int i = 1; i <= 90; i++) {
>             st = conn.createStatement();
>             st.executeUpdate("INSERT INTO plano_ensaio(id,ensaio_fk,op_fk,data_hora,estado,user_id,dt_hr) VALUES (" +
i+ ",1,1,'2004-04-04 10:11:11','A','mike','2004-05-05 05:55:55')"); 
>         }
>
>         st.close();
>         conn.close();
>     }
> }
>
> oliver@flood:~$ javac -classpath pg74.213.jdbc3.jar Test.java
> oliver@flood:~$ java -classpath pg74.213.jdbc3.jar:. Test
> oliver@flood:~$ sandbox-7.4.2/bin/psql -p 5742 test
> [... startup banner ...]
> test=> select count(*) from plano_ensaio;
>  count
> -------
>     90
> (1 row)
>

Can you provide something similar showing exactly what you're doing?
Obviously there's something different between our setups.

I'd also check the server logs for any errors; perhaps something is
masking a failure to insert.

Finally, if you do the same inserts by hand via psql, what happens?

-O

pgsql-jdbc by date:

Previous
From: Paul Thomas
Date:
Subject: Re: Can't insert more than 80 registers!?
Next
From: Cédric Coulon
Date:
Subject: Retrieve the postgres transaction id