Menu

#448 Access Violation (IReferenceCounted)

8.0-Beta
closed
None
Bug Report
2020-10-21
2020-09-24
No
===============================================================================
Application Name      : PGFServer.exe
Memory manager        : msvcrt.dll
Compiler Version      : Delphi: 33
Indy Version          : 10.6.2.0
Zeos Version          : 7.3.1-beta
Report Unique ID      : {AE2E784B-C747-42DF-A6C5-1775E0764E8C}
Start Time            : 2020-09-24 15:03:17.913
Exception Time        : 2020-09-24 15:04:21.575
Application up time   :  1 minute 3 seconds 662 milliseconds
===============================================================================
Processor             : eMachines, eMachines G640, AMD64 Family 16 Model 6 Stepping 3, AMD Athlon(tm) II P320 Dual-Core Processor, 2.095 GHz
System                : Windows 10 (Version 10.0, Build 19041, 64-bit Edition)
Display               : 1680x1050 pixels, 96 bpp
Total Physical Memory :   5.748 GB
Free Physical Memory  :   2.575 GB
Max used Memory       :   103.332 MB
===============================================================================
Exception class       : EAccessViolation
Access violation at address 775820C3 in module 'ntdll.dll'. Write of address 00000014
Exception trigger     : UnhandledException
-------------------------------------------------------------------------------
Module                : 
Command Line          : D:\Applications-Folder\PGFServer\PGFServer.exe
Procedure             : Unknown function at RtlDllShutdownInProgress
-------------------------------------------------------------------------------
[775820C3] Unknown function at RtlDllShutdownInProgress + $A3
[00AF7C43] ZPlainFirebird.IReferenceCounted.Release (Line 4090, "ZPlainFirebird.pas" + 1) + $4
[00B06BFF] ZDbcFirebirdStatement.TZAbstractFirebirdStatement.WriteLobBuffer (Line 825, "ZDbcFirebirdStatement.pas" + 24) + $3
[00B221D9] ZDbcFirebirdInterbase.TZAbstractFirebirdInterbasePreparedStatement.SetPAnsiChar (Line 4347, "ZDbcFirebirdInterbase.pas" + 25) + $D
[00B22E02] ZDbcFirebirdInterbase.TZAbstractFirebirdInterbasePreparedStatement.SetUnicodeString (Line 4720, "ZDbcFirebirdInterbase.pas" + 7) + $F
[00BF7022] ZDatasetUtils.SetStatementParam (Line 1745, "ZDatasetUtils.pas" + 67) + $14
[00BE2454] ZAbstractRODataset.TZAbstractRODataset.SetStatementParams (Line 2289, "ZAbstractRODataset.pas" + 35) + $8
[00BE4AA2] ZAbstractRODataset.TZAbstractRODataset.ExecSQL (Line 3278, "ZAbstractRODataset.pas" + 14) + $35
[00BFFE43] uDB.TEmbedStatement.ExecuteScript (Line 520, "uDB.pas" + 32) + $5
[00C07FAF] uDB.generic_tb_update (Line 1913, "uDB.pas" + 22) + $2
[00C07A0F] uDB.tb_find (Line 1811, "uDB.pas" + 8) + $24
[00C080F6] uDB.tb_add (Line 1930, "uDB.pas" + 2) + $2
[00D7326E] uSocket.TExTCPServer.AddToSysLog (Line 996, "uSocket.pas" + 12) + $A
[00D6F9AB] uSocket.TExTCPServer.SetActive (Line 332, "uSocket.pas" + 6) + $10
[00E4E564] uServer.TMainForm.ControllerStart (Line 514, "uServer.pas" + 48) + $D
[00C17389] uMainForm.TUForm.SafeActivate (Line 1288, "uMainForm.pas" + 10) + $14
[00C17BBE] uMainForm.TUForm.WndProc (Line 1521, "uMainForm.pas" + 5) + $3
[00577148] Vcl.Controls.TWinControl.MainWndProc + $2C
[004DBBA8] System.Classes.StdWndProc + $14
[0063DC6F] Vcl.Forms.TApplication.ProcessMessage + $F3
[0063DCB2] Vcl.Forms.TApplication.HandleMessage + $A
[0063DFE5] Vcl.Forms.TApplication.Run + $C9
[00E94A05] PGFServer.PGFServer (Line 22, "" + 5) + $7

Discussion

  • EgonHugeist

    EgonHugeist - 2020-09-24

    Hi Hafedh, which revion are you using? JFYI: [R6837]https://sourceforge.net/p/zeoslib/tickets/447/) might fix the issue if your application did some other updates before. Is it the case?
    Regards, Michael

     
  • Hafedh TRIMECHE

    Hafedh TRIMECHE - 2020-09-24

    Hello,
    Please note that the revision is set to: 6846.

    Best regards.

     
  • EgonHugeist

    EgonHugeist - 2020-09-25

    Hello Hafedh,
    what's your firebird version? Please update and give me a reply, i closed a possible regression: [R6848]https://sourceforge.net/p/zeoslib/code-0/6848/).
    Best regards, Michael

     
  • Hafedh TRIMECHE

    Hafedh TRIMECHE - 2020-09-25

    Hi Michael,

    I use FireBird 4.0.0.2200

    Best regards.

     
  • Joe @ Whale

    Joe @ Whale - 2020-09-25

    Hello Michael,
    I think I have found the cause. The Firebird API IBlob.close() releases the Intf on success. The final release() call is executed on a dead instance. Attaching patch.

    Best regards,
    Joe

     
  • EgonHugeist

    EgonHugeist - 2020-09-26

    @ Hafedh, i appied the patch of Joe (a bit different) .
    So can you please update and report?

    @Joe, thanks for the patch again. Just a note from me: Don't catch exceptions and reraise them again. A finally is enough. Reraising just makes sence if you want to copy the Exction into another Exception-Type. The generated code is twice slower.

    Regards, Michael

     
  • Hafedh TRIMECHE

    Hafedh TRIMECHE - 2020-09-26

    Patch applied.
    Problem fixed.

    Best regards.

     
  • EgonHugeist

    EgonHugeist - 2020-09-26
    • status: open --> closed
    • assigned_to: EgonHugeist
     
  • EgonHugeist

    EgonHugeist - 2020-09-26

    Thanks for the quick reply.
    Closed, Michael

     

Log in to post a comment.