Subject Help: IBObjects, Delphi & ISC Error
Author David Husarik
Hi Group,

I have a Delphi 4.03 Professional application running
on 2 machines of 3 machine peer-to-peer network. The
database server is the third machine. This is an
automated process that drives diskette duplicators
that read files submitted on diskette. I received the
following error message from the Delphi program.

W2Reader Error
ISC ERROR CODE: 335544345
Lock conflict on no wait transaction deadlock.

I know that the conflict arose when both machines hit
the same point in the program. This is when a number
must be obtained to rename the file from the diskette
so the file can be transfered to the hard drive for
further processing. I have a table in the database
that contains 1 record with 3 fields, ID, Next_Write,
Next_Write2. Mch 1 reads and updates Next_Write. Mch
2 reads and updates Next_Write2.

Since I am new to Interbase and IBObjects, to get this
project going I used the following code from tutorial1
of basic tutorials. I stripped out the comments.

procedure TFrmMain.InitializeTransaction;
with IB_Transaction1 do
if InTransaction then Rollback;
AutoCommit := True;
IB_Connection := IBC_Main;
Isolation := tiCommitted;
RecVersion := True;
end; { with }

The Question is how do I handle this error. Do I need
to set other properties to resolve the conflict like
LockWait to true or Isolation to something else. Or
should I put the program into repeat ... until loop
until I get the value of Next_Write or Next_Write2
depending upon the machine.

Thanks in advance,
David Husarik

Do You Yahoo!?
Get email alerts & NEW webcam video instant messaging with Yahoo! Messenger.