Unidac 9.01 SQLite Direct mode exist memory leaks
Posted: Sun 24 Oct 2021 13:58
Unidac 9.01 SQLite Direct mode exist memory leaks
direct=true
There is a memory leak when executing some statements,
direct=false
There is no memory leak for the following operations
There is a memory leak for the following operations:
UniConnection1.Database := ExtractFilePath(ParamStr(0)) + 'cardhouse.db';
try
UniConnection1.SpecificOptions.Values['Direct'] := 'True';
UniConnection1.Open;
UniQuery1.SQL.Text :=
'delete from iplist where round(julianday(datetime(CURRENT_TIMESTAMP,''localtime''))*24*60*60-julianday(datetime(dialtime))*24*60*60)>:sec';
UniQuery1.ParamByName('sec').AsInteger := 24 * 60 * 60;
UniQuery1.Execute;
finally
UniConnection1.Close;
end;
There is no memory leak for the following operations:
UniConnection1.Database := ExtractFilePath(ParamStr(0)) + 'cardhouse.db';
try
UniConnection1.SpecificOptions.Values['Direct'] := 'True';
UniConnection1.Open;
UniQuery1.SQL.Text := 'delete from iplist where id=1';
UniQuery1.Execute;
finally
UniConnection1.Close;
end;
direct=true
There is a memory leak when executing some statements,
direct=false
There is no memory leak for the following operations
There is a memory leak for the following operations:
UniConnection1.Database := ExtractFilePath(ParamStr(0)) + 'cardhouse.db';
try
UniConnection1.SpecificOptions.Values['Direct'] := 'True';
UniConnection1.Open;
UniQuery1.SQL.Text :=
'delete from iplist where round(julianday(datetime(CURRENT_TIMESTAMP,''localtime''))*24*60*60-julianday(datetime(dialtime))*24*60*60)>:sec';
UniQuery1.ParamByName('sec').AsInteger := 24 * 60 * 60;
UniQuery1.Execute;
finally
UniConnection1.Close;
end;
There is no memory leak for the following operations:
UniConnection1.Database := ExtractFilePath(ParamStr(0)) + 'cardhouse.db';
try
UniConnection1.SpecificOptions.Values['Direct'] := 'True';
UniConnection1.Open;
UniQuery1.SQL.Text := 'delete from iplist where id=1';
UniQuery1.Execute;
finally
UniConnection1.Close;
end;