I am kind of stumped. Glad to see _someone_ is using libpgeasy. :-)
I would be glad to run tests here if you can shoot over the code.
> Hi all,
>
> I'm just wondering if this is an error on my part, or a bug. I have the
> same trouble with PG 7.1beta6 and PG7.1 snapshot (March 8th) on Solaris
> 8 INTEL, Solaris 8 SPARC and Linux Mandrake 7.2.
>
> When using the libpqeasy library in a C function, I have the following
> section of code :
>
> // Get the sequence number for the next directory entry (PostgreSQL
> commands)
> doquery("BEGIN WORK");
> doquery("DECLARE c_getdirid BINARY CURSOR FOR SELECT
> nextval('prescan_directories_idnum_seq'::text)");
> doquery("FETCH ALL IN c_getdirid");
> fetch(&enumdirstruc_p->presentdirid);
> doquery("CLOSE c_getdirid");
> doquery("COMMIT WORK");
>
> This is called once per entry in a filesystem (this is a filesystem
> scanning utility) but after about 1000 or so calls, it errors out and
> won't work again. I have to actually DROP the database and re-create it
> again before the code will work again at all. Just vacumming doesn't
> help, nor does just shutting down the database and starting it again
> (doing both and vacuum and restarting the database doesn't help either).
>
> The error message is :
>
> <list of files correctly inserted so far, then>
> /archive/install/kde/kdeadmin-2.1/ksysctrl/.cvsignore
> NOTICE: PerformPortalFetch: portal "c_getdirid" not found
> NOTICE: PerformPortalClose: portal "c_getdirid" not found
> Directory query failed, trying again...New directory idnum = -2147483648
> (This is my error message from the program)
> query error:
> failed request: insert into prescan_files(filename, dirent, ownername,
> owenerid, groupname, groupid, filesize, os, os_version, package_id)
> values ('/archive/install/kde/kdeadmin-2.1/add-on/.cvsignore',
> 2147483648, 'jclift', 100, 'staff', 10, 21, 1, '8 INTEL', 16777216)
> $
>
> I can include the database schema and complete source code if needed,
> but I'm just not sure where to start debugging... is it my app or is it
> PostgreSQL?
>
> Regards and best wishes,
>
> Justin Clift
>
> ---------------------------(end of broadcast)---------------------------
> TIP 1: subscribe and unsubscribe commands go to majordomo@postgresql.org
>
-- Bruce Momjian | http://candle.pha.pa.us pgman@candle.pha.pa.us | (610)
853-3000+ If your life is a hard drive, | 830 Blythe Avenue + Christ can be your backup. | Drexel Hill,
Pennsylvania19026