/* * Thread test program * by Philip Yarra */ #include void ins1(void); void ins2(void); EXEC SQL BEGIN DECLARE SECTION; char *dbname; int iterations; EXEC SQL END DECLARE SECTION; int main(int argc, char **argv) { if (argc != 3) { fprintf(stderr, "Usage: %s dbname iterations\n", argv[0]); return 1; } dbname = argv[1]; iterations = atoi(argv[2]); EXEC SQL CONNECT TO:dbname AS test0; /* DROP might fail */ EXEC SQL AT test0 DROP TABLE test_thread; EXEC SQL AT test0 COMMIT WORK; EXEC SQL AT test0 CREATE TABLE test_thread(message TEXT); EXEC SQL AT test0 COMMIT WORK; EXEC SQL DISCONNECT test0; ins1(); return 0; } void ins1(void) { int i; EXEC SQL WHENEVER sqlerror sqlprint; EXEC SQL CONNECT TO:dbname AS test1; /* EXEC SQL AT test1 SET AUTOCOMMIT = ON;*/ for (i = 0; i < iterations; i++) { EXEC SQL AT test1 INSERT INTO test_thread VALUES('thread1'); } EXEC SQL AT test1 COMMIT WORK; EXEC SQL DISCONNECT test1; }