04.06.2026 16:25, 'Maxim Kryukov' via firebird-devel:
> My intuition played tricks on me making me believe there would be cumulative stats for a whole transaction lifetime (at this moment
> transaction ends, doesn't it?).
Engine collect such stats, but it is not available via Trace API.
> Not the case.
Yes
> In this case Vlad Khorsun's remark should be read as ' Use per-table counters in PerformanceInfo returned by */every trace event/*'.
Yes, sorry or confusion. trace_transaction_end() shows stats for this event only.
It will be non-empty in case of DDL statements was executed within transaction.
So, it looks like you need to collect and accumulate per-transaction stats at
trace_dsql_execute() and add stats from trace_transaction_end().
> And why perf->pin_tables is *NOT* NULL? Where does it point to?
It should not bother you as soon as pin_count == 0.
Regards,
Vlad