Implicit transactions in Firebird 3 cause a massive memory leak on the server part.
It is detected only on Firebird 3.
If transaction is performed manually the memory leak is not happened.
var connection = new FbConnection(connectionString);
using (var cmd = connection.CreateCommand())
cmd.CommandText = "SELECT * FROM TABLE_NAME";
I fixed this issue as follows:
The calls isc_commit_transaction and isc_dsql_free_statement was swapped.