I'm trying to port a BDE/Firebird 2.1 app to ZEOS.
Using a TZQuery connected to a DBGrid (SMDBGrid but that doesn't matter), opening a table with about 10k records lasts too long.
In the VCL after opening the dataset, TCustomDBGrid.UpdateScrollBar is called which calls Self.VisibleRowCount -> TZAbstractRODataset.GetRecordCount -> TZAbstractRODataset.FetchRows(0) which fetches all the records in...
Code: Select all
...
if RowCount = 0 then
begin
while FetchOneRow do; // <- !!!
Result := True;
end
...
Michael