General Bug Report: psql does report failed SQL commands as executed

Lists: Postg윈 토토SQL : Postg윈 토토SQL 메일 링리스트 : 1999-07-19 이후 PGSQL-BUGS.
From: Unprivileged user <nobody>
To: pgsql-bugs(at)postgreSQL(dot)org
Subject: General Bug Report: psql does report failed SQL commands as executed
Date: 1999-07-19 08:47:05
Message-ID: 199907190847.EAA00964@hub.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: Postg윈 토토SQL : Postg윈 토토SQL 메일 링리스트 : 1999-07-19 이후 PGSQL-BUGS.


============================================================================
POSTGRESQL BUG REPORT TEMPLATE
============================================================================

Your name : Harald Laabs
Your email address : laabs(at)uni-duesseldorf(dot)de

Category : unknown
Severity : critical

Summary: psql does report failed SQL commands as executed

System Configuration
--------------------
Operating System : solaris 2.6

PostgreSQL version : 6.4.2 and 6.5

Compiler used : gcc 2.8.1

Hardware:
---------
solaris on sun sparc
also tested: Linux 2.2.5 on Pentium, 32M

Versions of other tools:
------------------------

--------------------------------------------------------------------------

Problem Description:
--------------------
When inserting many (>1000) SQL INSERT commands in psql in a short time some of them are not executed while they are in the log-file.
Because of an error message "query buffer max length of 20000 exceeded" I put a "sleep 60" between blocks of 200 INSERT's.
Now there are about 100 commands not executed every 2000 Lines of SQL commands.
I experienced the same problem on a Linux 2.2.5 machine with postgres 6.4.2 and 6.5 at home.

--------------------------------------------------------------------------

Test Case:
----------
Create a new database (numismatik)
get http://www-public.rz.uni-duesseldorf.de/~laabs/*
psql numismatik <definition.sql
split -l 200 pool00.sql
pipe the (first) parts in psql (with about a minute between the parts, or "query buffer max length of 20000 exceeded"???) -> use insert_script &>insert.log &
there should be one entry in mr_dat for every number between 1002 and 2000 (or lower if you insert only the first parts, but every number between the lowes and highest MUST appear, but 1088-1093 are missing here)

--------------------------------------------------------------------------

Solution:
---------

--------------------------------------------------------------------------