Bugs Found
Client-side configuration of DummyPacketInterval or isc_dpb_dummy_packet_interval has no effect
GitHub Issue: 8266
As far as I can tell from the code, isc_dpb_dummy_packet_interval, and by extension, the DummyPacketInterval setting has no effect when configured client-side, as isc_dpb_dummy_packet_interval does not seem to get used server-side, other than setting the field dpb_dummy_packet_interval of DatabaseOptions, which is never read.
DROP INDEX may hang for a minute if idle worker attachments hold locks in their own metadata cache
GitHub Issue: 8287 Affected versions: 5.0.1, 6.0 Initial
Сrash when deleting a statement from the cache
GitHub Issue: 8245 Affected versions: 5.0.1
Bugs Fixed
Avoid "hangs" in clock_gettime() in tomcrypt's PRNG
GitHub Issue: 8236 Affected versions: 4.0.5, 5.0.1, 6.0 Initial Fixed for: 4.0.6, 5.0.2, 6.0 Alpha 1
Tomcrypt's PRNG has been built w/o support for /dev/random in init() call. Under high load that might cause behavior looking like hang in clock_gettime() system call. An issue does not affect windows.
Nested IN/EXISTS subqueries should not be converted into semi-joins if the outer context is a sub-query which wasn't unnested
GitHub Issue: 8265 Affected versions: 5.0.1 Fixed for: 5.0.2
Related to SubQueryConversion = true.
Currently semi-join is limited to the hash join algorithm only and it's known to often work bad if executed repeatedly (e.g. inside a correlated sub-query). Such cases should be detected and the conversion should not be attempted.
Bad performance on simple two joins query on tables with composed index
GitHub Issue: 8250 Affected versions: 5.0.1 Fixed for: 5.0.2, 6.0 Alpha 1
Incorrect subquery unnesting with complex dependencies
GitHub Issue: 8252 Affected versions: 5.0.1 Fixed for: 5.0.2
gbak on classic with ParallelWorkers > 1 doesn't restore indices, giving a cryptic error message
GitHub Issue: 8263 Affected versions: 5.0.1, 6.0 Initial Fixed for: 5.0.2, 6.0 Alpha 1
Assert in ~thread_db() due to not released page buffer
GitHub Issue: 8283 Affected versions: 4.0.5, 5.0.1, 6.0 Initial Fixed for: 4.0.6, 5.0.2, 6.0 Alpha 1
The issue happens when preparing a query that involves some table with expression index that depends on missing UDF.
GPRE generated code is incompatible with GCC 14.2
GitHub Issue: 8288 Affected versions: 5.0.1, 6.0 Initial Fixed for: 5.0.2, 6.0 Alpha 1
New features/improvements
Win_sspi plugin uses NTLM
GitHub Issue: 8256 apply to: 4.0.6, 5.0.2, 6.0 Alpha 1
AuthSspi.cpp makes a call to AcquireCredentialsHandle in the ctor of class AuthSspi (line 112) with the security package hard-coded as "NTLM".
Consider changing this to "Negotiate" to allow Kerberos to be tried initially, falling back to NTLM if Kerberos is not available.
New feature/improvement requests
Convert non-ascii names of trigger and exception to UTF-8 before saving them in firebird.log or showing in a trace log
GitHub Issue: 8271
When trigger on DISCONNECT raises exception, the name of trigger + name of exception + exception message are saved in firebird.log. Also, they all can be seen in the trace.log if we turn on 'log_errors' config parameter.
If some of them contain non-ascii characters then firebird.log / trace log may look unreadable: non-ascii characters will be displayed as mojibakes or could missed ("swallowed"). This occurs only when we use single-byte character set for connection. No such problem if conn charset = utf8.
It will be good if any non-ascii text will be always converted to utf8 before saving in firebird.log or displaying in the trace log.
CryptoManager ignores warnings
GitHub Issue: 8280
If a crypt plugin returns warnings in status during signature or checksum validation, these warnings are completely ignored instead of being translated into caller's status.
Support for crypt plugins with only decrypt functionality implemented
GitHub Issue: 8281
Currently it is impossible to have a crypt plugin that support only decryption because of the method how database signature is checked.
Only working decrypt() function should be enough for read-only access to encrypted databases.
Avoid index lookup for a NULL key if the condition is known to always be FALSE in this case
GitHub Issue: 8278