Subject Re: [IBO] Integer Overflow Exception - TIB_StoredProc
Author Helen Borrie
At 09:17 PM 6/09/2005 +0200, you wrote:
>I observe an Integer Overflow Exception after 32769 calls to the
>same stored procedure with IBObjects.
>Is this replicatable on other systems as well?
>Is this somehow transaction related?
>
>Here's the test StoredProc:
>SET TERM ^ ;
>CREATE PROCEDURE "test1"
>RETURNS (
> "refno" INTEGER)
>AS
>begin
> /* Procedure Text */
> "refno" = 1;
> suspend;
>end
>^
>SET TERM ; ^
>GRANT EXECUTE ON PROCEDURE "test1" TO SYSDBA;
>
>and this is the test procedure, which raises the exception ...
>procedure TTEST4.Button1Click(Sender: TObject);
>VAR I: integer;
>ref:integer;
>begin
> allocconsole;
> I:=0;
> repeat
> INC(I);
> Write(I,' ');
> IB_StoredProc1.Execute;
> until i=100000;
>end;
>
>My configuration: Delphi7 Prof, Firebird 1.5, IBO V4.5.Ai

Are you also getting GDSCode 335544663, "Too many executions of the same
request"? This used to occur after 1024 executions but in either Fb 1 or
Fb 1.5 it was increased to a SMALLINT (max. 32769).

But if the only message you are seeing is "Integer Overflow Exception"
without an ISC exception then the error is on the Delphi side somewhere
(and I can't throw any light on it).

Pardon my ignorance, but I don't see what that Write(I, ' ') statement is
meant to do and I can't see your ref variable doing anything. Are there
some pieces missing from what you posted here?

Helen