A big favor to ask of any C+OCI programmer to show a DBMS bug...
Date: Fri, 8 Feb 2008 09:51:57 -0800 (PST)
Hi. I am asking a big favor because I have not coded in C since the 80's, and a simple OCI program is necessary to prove to Oracle DBMS support that there is a DBMS bug, which I can currently only demonstrate with the Oracle JDBC driver. Oracle JDBC support sees it as a problem, but is apparently powerless to budge the DBMS folks to consider it.
The program I seek simply makes a connection, prepares a statement for execution, with no parameters, simply to execute "TRUNCATE TABLE MYTABLE". Then the program should execute the statement. Then, it should print out to stdout "TRUNCATED MYTABLE. Press <enter to repeat>", and read stdin until it gets the newline, and then execute the statement again, reporting any error (should be none), and exit.
This program will demonstrate the failure of the DBMS client contract:
The user will start a SQL-PLUS session and create that table, and insert rows (and commit). Then, in another window, the user will start this C program, which will truncate the table, and wait for further input. Then the user will verify from SQL-plus that the table has been truncated, and the user use SQL-PLUS to add more rows to the table, and commit. Then the user will press <ENTER> at the C program, making it re-execute the TRUNCATE statement (apparently successfully) and exit. The user should then see in SQL-PLUS that the second batch of rows are still there.
If someone can try this and post their program/results I would credit them in the bug report, and much thanks in advance, Joe Weinstein Received on Fri Feb 08 2008 - 11:51:57 CST