Menu

#406 EAccessViolation opening firebird Database

7.2.6
closed
2020-02-03
2020-01-14
No

===============================================================================
Computer Name : WIN-L1K9D0S49NU
Memory manager : FastMM
Application Name : PGFServer.exe
Compiler Version : Delphi: 33
Indy Version : 10.6.2.0
Zeos Version : 7.2.6-stable
License owner : Strong data
Report Unique ID : {C7262D23-0290-4E2E-B9F0-6DE2EFCB7707}
Start Time : 2020-01-14 21:16:01.679
Exception Time : 2020-01-14 21:17:33.867
Application up time : 1 minute 32 seconds 188 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 Server 2016 (Version 10.0, Build 17763, 64-bit Edition)
Display : 1680x1050 pixels, 96 bpp
Total Physical Memory : 5.748 GB
Free Physical Memory : 844.043 MB
Max used Memory : 151.836 MB
===============================================================================
Exception class : EAccessViolation
Access violation at address 00A3DDF8 in module 'PGFServer.exe'. Read of address 00000022


Module : ZDbcCache
Procedure : ZDbcCache.TZRowAccessor.GetPWideChar
Unit : ZDbcCache.pas
Line : 2157


[00A3DDF8] ZDbcCache.TZRowAccessor.GetPWideChar (Line 2157, "ZDbcCache.pas" + 2) + $A
[0040AA37] System.@HandleAnyException + $33
[00A3BD2B] ZDbcCache.TZRowAccessor.Create (Line 944, "ZDbcCache.pas" + 67) + $8
[0040758C] System.@FreeMem + $4
[00409744] System.TObject.FreeInstance + $C
[005356F0] System.Classes.TList.Destroy + $18
[00A3D93D] ZDbcCache.TZRowAccessor.GetString (Line 1992, "ZDbcCache.pas" + 2) + $6
[00A4AB05] ZDbcCachedResultSet.TZAbstractCachedResultSet.GetString (Line 911, "ZDbcCachedResultSet.pas" + 4) + $9
[00B34878] ZDbcInterbase6.TZInterbase6Connection.Open (Line 803, "ZDbcInterbase6.pas" + 76) + $13
[00BB40AB] ZAbstractConnection.TZAbstractConnection.Connect (Line 896, "ZAbstractConnection.pas" + 48) + $5
[00BC3499] uDB.TSqlDB.Create (Line 1978, "uDB.pas" + 15) + $5
[00BBA46D] uDB.db_open (Line 422, "uDB.pas" + 1) + $13
[00BC49C9] uAppDB.CreateMainDatabase (Line 28, "uAppDB.pas" + 2) + $3
[005C73B3] System.SyncObjs.TMutex.Release + $7
[00BD79C5] uMainForm.TUForm.Loaded (Line 1288, "uMainForm.pas" + 9) + $8
[00535311] System.Classes.NotifyGlobalLoading + $2D
[00535496] System.Classes.InitInheritedComponent + $7E
[006A490E] Vcl.Forms.TCustomForm.Create + $CE
[00BD758F] uMainForm.TUForm.Create (Line 1203, "uMainForm.pas" + 1) + $4
[006B007E] Vcl.Forms.TApplication.CreateForm + $76
[00F0BDC1] PGFServer.PGFServer (Line 24, "" + 3) + $13

Discussion

  • Hafedh TRIMECHE

    Hafedh TRIMECHE - 2020-01-15

    Using this code with UseMetadata set to False raised the exception.
    Switching UseMetadata to True the connection is made.
    Setting UseMetadata to False is for performance raison.

    procedure TDBForm.Button2Click(Sender: TObject);
    var
      Connection : TZConnection;
      Query      : TZQuery;
    begin
      Connection := TZConnection.Create(nil);
      with Connection do
      begin
        LibLocation            := LibName;
        Database               := FireBirdPath+DatabaseName;
        UseMetadata            := False;
        Protocol               := 'firebirdd-3.0';
        User                   := 'SYSDBA';
        Password               := 'masterkey';
        LoginPrompt            := False;
        TransactIsolationLevel := tiReadCommitted;
        AutoCommit             := True;
        with Properties do
        begin
          Values['isc_dpb_page_size']      := '16384';
          Values['isc_dpb_force_write']    := '1';
          Values['codepage']               := 'UTF8';
          Values['isc_dpb_set_db_charset'] := DBCharacterSet;
        end;
        Connect;
      end;
      Connection.Free;
    
     

    Last edit: Hafedh TRIMECHE 2020-01-15
  • EgonHugeist

    EgonHugeist - 2020-01-16

    Thanks Hafedh for pointing this out,
    patch done R6239 /testing-7.3 see https://sourceforge.net/p/zeoslib/code-0/6239/
    Merged to trunk and 7.2-fixes already.
    Please close if OK.

    Regards, Michael

    ps. if you want a better performance use 7.3 instead. Some things are better optimized there inbetween.

     
  • marsupilami79

    marsupilami79 - 2020-02-03
    • assigned_to: EgonHugeist
     
  • Hafedh TRIMECHE

    Hafedh TRIMECHE - 2020-02-03
    • status: open --> closed
     

Log in to post a comment.