Access Violation in UniDac Delphi Tokyo Linux

Discussion of open issues, suggestions and bugs regarding UniDAC (Universal Data Access Components) for Delphi, C++Builder, Lazarus (and FPC)
Post Reply
carlonarcisi
Posts: 29
Joined: Fri 10 Dec 2010 15:07

Access Violation in UniDac Delphi Tokyo Linux

Post by carlonarcisi » Thu 24 Aug 2017 08:42

Delphi Tokyo Linux application.
Linux ubuntu 17.4 Firebird 3.0

The problem occurs with the simplest of algorithms.
I create a datamodule and inside I create a TUniConnection to connect to a firebird 3.0 DB and then I make an elementary query .
The second time I run the same code I get an error while attempting to connect to the database

FIRST
start
try UniLocale.Connect
OK
try UniQuery1.Open;
Connection is not defined
fine
.
SECOND
start
try UniLocale.Connect
Access violation at address 000000000042428F, accessing address 00000001964C40E8
try UniQuery1.Open;
Connection is not defined

Code: Select all

procedure TDataModule1.DataModuleCreate(Sender: TObject);
var
  UniLocale: TUniConnection;
  UniQuery1: TUniQuery;
begin

  UniLocale := TUniConnection.Create(nil);

  UniLocale.Name := 'UniLocale';
  UniLocale.ProviderName := 'InterBase';
  UniLocale.Port := 3050;
  UniLocale.Database := 'L:\CkDB\box00\ckdata.fdb';

  UniLocale.Username := 'sysDBa';
  UniLocale.Password := 'masterkey';

  UniLocale.Server := 'localhost';
  UniLocale.LoginPrompt := False;

  Writeln('start');

  UniLocale.SpecificOptions.Values['ClientLibrary'] := 'libfbclient.so.3.0.1';
  UniLocale.Database := '/home/xroot/db/ckdata.fdb';
  UniLocale.Server := '192.168.0.47';
  try
    Writeln('try UniLocale.Connect');
    UniLocale.Connect;
    Writeln('OK');
  except
    on E: Exception do
      Writeln(E.ToString);
  end;

  UniQuery1 := TUniQuery.Create(nil);

  UniQuery1.Name := 'UniQuery1';
  UniQuery1.SQL.Text := 'Select * From Anagrafica';
  UniQuery1.ReadOnly := True;

  try
    Writeln('try UniQuery1.Open;');
    UniQuery1.Open;
    Writeln('OK');
  except
    on E: Exception do
      Writeln(E.ToString);
  end;

  Writeln('fine');

  UniQuery1.Close;
  UniLocale.Close;
  UniQuery1.Free;
  UniLocale.Free;
  UniLocale := nil;
  UniQuery1 := nil;
end;

ViktorV
Devart Team
Posts: 3168
Joined: Wed 30 Jul 2014 07:16

Re: Access Violation in UniDac Delphi Tokyo Linux

Post by ViktorV » Tue 29 Aug 2017 09:55

Thank you for the information. We have reproduced the problem and it will be fixed in the next build.

Post Reply