Release Notes - Firebird Core - Version 2.5.1 - HTML format

Bug

  • [CORE-1274] - Wrong results when PLAN MERGE is chosen and datatypes of the equality predicate arguments are different
  • [CORE-1752] - Results of a join with different collations depend on the execution plan
  • [CORE-2756] - substring from timestamp - unexpected result
  • [CORE-2827] - Very slow prepare for complex interrelated metadata with many triggers indirectly involved in the operation being prepared
  • [CORE-2835] - Natural is used to select instead of primary key index
  • [CORE-2921] - 'make install' does not work
  • [CORE-3022] - gpre C++ compiler warnings with GCC 4.4.1
  • [CORE-3024] - Error "no current record for fetch operation" after ALTER VIEW
  • [CORE-3029] - Bugcheck "Too many savepoints (287)" at rollback after exception at EXECUTE BLOCK with exception handler
  • [CORE-3058] - New generators are created with wrong value when more than 32K generators was previously created
  • [CORE-3059] - RemoteFileOpenAbility fails on windows
  • [CORE-3064] - Using both the procedure name and alias inside an explicit plan crashes the server
  • [CORE-3091] - Built-in function POWER(X, Y) does not work when the X argument is negative and the Y value is scaled numeric but integral
  • [CORE-3095] - Client receive event's with count equal to 1 despite of how many times EVENT was POSTed in same transaction
  • [CORE-3119] - 100% CPU USAGE (endless loop) in the remote protocol code related to events processing
  • [CORE-3125] - AV in Worker::shutdown
  • [CORE-3131] - WIN1257_LV (Latvian) collation is wrong for 4 letters: A E I U.
  • [CORE-3137] - Partial rollback is possible for a selectable procedure modifying data
  • [CORE-3138] - Internal error or crash occurs when accessing any MON$ table after altering its structure
  • [CORE-3141] - The last column in a view is returning as a null value even when it's not
  • [CORE-3143] - Segmentation fault may occur when user interrupts gstat
  • [CORE-3148] - SQZ_apply_differences
  • [CORE-3150] - segmentation fault in gbak when interrupted with Ctrl-C
  • [CORE-3151] - memory allocated in sqlda_sup may be not released in some cases
  • [CORE-3157] - COMMENT ON PARAMETER - Statement leads in a consumption of 1.7 GB RAM and a runtime of more than 1 Minute
  • [CORE-3164] - Parameterized requests involving blob fields fails when connected using charset UTF8
  • [CORE-3166] - Script changeMultiConnectMode.sh should not be present in SS environment.
  • [CORE-3168] - exclude_filter doesn't work for <services></section> section of the Trace facility
  • [CORE-3170] - Engine could enter infinite loop if EVENT's are posted but no subscribers exists
  • [CORE-3173] - Empty result when select from SP that contains two CTE (second of them with GROUP BY clause) and INNER join
  • [CORE-3176] - View with "subselect" column join table and not use index
  • [CORE-3180] - ALTER VIEW with not matched columns in declaration and selection crashs the server
  • [CORE-3185] - Firebird compilation on a box, already running firebird server
  • [CORE-3188] - page 0 is of wrong type (expected 6, found 1)
  • [CORE-3194] - Number of connections to linux superclassic has limit equal 508
  • [CORE-3199] - nbackup fails due to O_NOATIME flag in database open
  • [CORE-3202] - execute_immediate API call family may crash the remote server
  • [CORE-3203] - UPDATE OR INSERT with RETURNING causes "Invalid Cursor" error
  • [CORE-3205] - isc_dsql_exec_immed2() doesn't return error codes isc_stream_eof and isc_sing_select_err
  • [CORE-3207] - AccessViolationException inside FB_965910463_Class.isc_start_multiple on begin transaction.
  • [CORE-3208] - Significant memory leaks with recursive queries
  • [CORE-3210] - The cursor identified in the UPDATE or DELETE statement is not positioned on a row. no current record for fetch operation in SELECT query
  • [CORE-3211] - String truncation occurs when selecting from a view containing NOT IN inside
  • [CORE-3212] - Error compile 2.5 for FreeBSD
  • [CORE-3217] - Server crashes inside the lock manager when multiple connections attaching/detaching simultaneously
  • [CORE-3218] - Statement cancellation request might be silently ignored by the currently running SQL code
  • [CORE-3219] - trace manager crash server with DSQL_unprepare
  • [CORE-3220] - isc_info_svc_get_users returns error message in the result cluster
  • [CORE-3222] - View with "WITH CHECK OPTION" doesn't like TRIM function in WHERE
  • [CORE-3227] - ASCII_VAL() fails if argument contains multi-byte character anywhere
  • [CORE-3228] - RIGHT() fails with multibyte text blobs > 1024 chars
  • [CORE-3229] - Records: "operating system directive open failed, Too many links" in firebird.log
  • [CORE-3232] - Non-transportable backup created without "-se service_mgr" switch results in an backup file ~50% larger than the source database.
  • [CORE-3233] - LIKE, STARTING and CONTAINING fail if second operand >= 32K
  • [CORE-3236] - GBAK "unavailable database" error when both service manager and localhost:db is specified
  • [CORE-3237] - Slow compilation of stored procedures
  • [CORE-3244] - POSITION: Wrong result with '' if third argument present
  • [CORE-3245] - SUBSTRING on long blobs truncates result to 32767 if third argument not present
  • [CORE-3249] - .gbak file is not truncated during backup operation
  • [CORE-3255] - The server could crash using views with GROUP BY
  • [CORE-3256] - Error "request depth exceeded" may appear while preparing a select query against a view with explicit plan
  • [CORE-3257] - 'make install' fails on linux
  • [CORE-3259] - Deadlock and sefgault when processing ctrl-C in user code
  • [CORE-3261] - Assertion when running restore service
  • [CORE-3266] - Race condition between async service detach request and running user trace service
  • [CORE-3277] - Wrong result for RIGHT(UTF8 varchar)
  • [CORE-3282] - EXECUTE STATEMENT parses the SQL text using wrong charset
  • [CORE-3283] - BAD PLAN with using LEFT OUTER JOIN in SUBSELECT
  • [CORE-3297] - nbackup.exe exits without info when firebird.conf is missing
  • [CORE-3302] - Distinct aggregates return wrong (duplicated) data
  • [CORE-3306] - Invariant sub-query is treated as variant thus causing multiple invokations of a nested stored procedure
  • [CORE-3311] - Error "data type unknown" while preparing UPDATE/DELETE statements with the parameterized ROWS clause
  • [CORE-3312] - Sub-optimal join plan when the slave table depends on the master one via the OR predicate
  • [CORE-3314] - Dependencies are not removed after dropping the procedure and the table it depends on in the same transaction
  • [CORE-3315] - Audit plugin records a sencond *FAILED* EXECUTE_STATEMENT_FINISH after a "normal" one
  • [CORE-3320] - Some MERGE syntax can crash the server
  • [CORE-3325] - At high load it is possible that new process could fail to map shared memory
  • [CORE-3326] - Fast mutex could be left in locked state by dead process
  • [CORE-3327] - Thread pool in network server could create more threads than necessary
  • [CORE-3328] - Client writes error messages into firebird.log when database is shutted down
  • [CORE-3329] - Windows administrator gets RDB$ADMIN role when this is not expected
  • [CORE-3335] - Wrong results (internal wrapping occured) for the multi-byte blob SUBSTRING function and its boundary arguments
  • [CORE-3340] - Error in autonomous transaction with empty exception handler: can insert duplicate values into PK/UK column (leads to unrestorable backup)
  • [CORE-3341] - Events might not be posted inside the autonomous transaction
  • [CORE-3349] - Constants isc_lock_conflict / isc_eds_statement not recognized in PSQL
  • [CORE-3351] - Windows client could put 10054 error messages into firebird.log at connection time
  • [CORE-3353] - Predicate (blob_field LIKE ?) describes the parameter as VARCHAR(30) rather than as BLOB
  • [CORE-3355] - Wrong comparsion of DATE and TIMESTAMP if index is used
  • [CORE-3374] - Server may crash or corrupt data if SELECT WITH LOCK is issued against records not in the latest format
  • [CORE-3377] - During firebird build records about missing fbintl.conf are attempted to be placed in firebird.log in destination (not build) directory
  • [CORE-3387] - Client library could hang infinitely waiting for a reply packet on a forcibly disconnected server socket
  • [CORE-3389] - isc_dsql_exec_immed2 with zero transaction handle could lead to a BUGCHECK(147)
  • [CORE-3394] - Failed attempt to violate unique constraint could leave unneeded "lock conflict" error in status-vector
  • [CORE-3397] - Unresolved symbols in intl and trace libraries
  • [CORE-3398] - GRANT ADMIN ROLE not accepted
  • [CORE-3400] - Server crash every 3 hour (FreeBSD8.2R)
  • [CORE-3418] - Database trigger created as INACTIVE is really active
  • [CORE-3419] - Recurse leads to hangs/crash server
  • [CORE-3427] - Server crashing with UTF8 blobs
  • [CORE-3440] - AV in engine if isc_que_events queued 0 events
  • [CORE-3443] - Races in UDF library lookup
  • [CORE-3447] - Collation is not installed with icu > 4.2
  • [CORE-3454] - "fb_lock_print -c" hangs server
  • [CORE-3461] - DDL operations fail after backup/restore
  • [CORE-3464] - Dirty page could be written without releasing (or downgrading) page lock. It results in "lock denied" or "lock conversion denied" bugcheck
  • [CORE-3465] - Nbackup state lock could be not released after cache error. It results in "Can't lock state for write" bugcheck when backup state is going to be changed.
  • [CORE-3466] - Some changes could be lost during the merge of delta file into main database file
  • [CORE-3468] - Attempt to read after the end of file when nbackup state is stalled
  • [CORE-3477] - Passing non-existing SQL parameters always crash server
  • [CORE-3479] - ASCII_VAL raises error instead of return 0 for empty strings
  • [CORE-3482] - nbackup ctrl-c segfaults and leaves db locked (delta file continues to grow)
  • [CORE-3486] - GPRE language modules can't be compiled with gcc 4.4.
  • [CORE-3487] - sometimes fbtracemgr segfaults when ending with ctrl+c
  • [CORE-3489] - Blob transliteration may not happen inside the union
  • [CORE-3491] - Altering of a TYPE OF COLUMN parameter affects the original column
  • [CORE-3493] - Adding a value to a timestamp below '16.11.1858 00:00:01' throws 'value exceeds the range for valid timestamp'
  • [CORE-3494] - Attach fails after shutdown rejected by handler installed in fb_shutdown_callback()
  • [CORE-3502] - DROP VIEW ignores the existing non-column dependencies
  • [CORE-3503] - ALTER VIEW crashes the server if the new version has an artificial (aggregate or union) stream at the position of a regular context in the older version
  • [CORE-3508] - MON$DATABASE_NAME and MON$ATTACHMENT_NAME fields contain question marks instead of non-ASCII characters regardless of the connection charset
  • [CORE-3509] - Alter procedure allows to add the parameter with the same name.
  • [CORE-3511] - Unquoted role names with non-ASCII characters passed in DPB are upper-cased wrongly
  • [CORE-3512] - Server hangs when trace is running
  • [CORE-3515] - Index corruption. Validation put "missing entries" message into firebird.log
  • [CORE-3521] - Delta file contents is not flushed to disk
  • [CORE-3523] - SIMILAR TO: False matches on descending ranges
  • [CORE-3524] - Server crashes while compiling a stored procedure being in use
  • [CORE-3525] - Autonomous transactions wrongly inherit run-time flags of "parent" transaction
  • [CORE-3532] - Server hangs starting new session when trace is running
  • [CORE-3533] - Firebird memory not released (Using superserver)
  • [CORE-3535] - Write target of dirty page could be undefined if error happens when nbackup state is changed
  • [CORE-3544] - make install fails
  • [CORE-3547] - Floating-point negative zero doesn't match positive zero in the index
  • [CORE-3549] - Database corruption after end of session : page xxx is of wrong type expected 4 found 7
  • [CORE-3553] - Nested loop plan is chosen instead of the sort merge for joining independent streams using keys of different types
  • [CORE-3554] - Server crashes during prepare or throws incorrect parsing error if the remotely passed SQL query is empty
  • [CORE-3572] - Can't connect to Firebird SuperServer on OSX 10.7 Lion
  • [CORE-3585] - Connecting to DB freezes
  • [CORE-3589] - Internal shared resource leak

Improvement

  • [CORE-2305] - Make mon$statement_id value constant among monitoring snapshots
  • [CORE-2752] - Set the SO_KEEPALIVE option on the client TCP socket
  • [CORE-3140] - Preserve comments for parameters after altering procedures
  • [CORE-3184] - Port for linux/hppa and linux/alpha
  • [CORE-3248] - Set unused bytes of varchar values in message buffer to 0
  • [CORE-3295] - Estimate the actual record compression ratio in the optimizer
  • [CORE-3323] - Ability to cancel waiting in lock manager
  • [CORE-3324] - ftracemgr should flush its output from time to time
  • [CORE-3399] - Allow write operations to temporary tables in read only transactions
  • [CORE-3413] - Improve diagnostics of internal trace errors
  • [CORE-3433] - Improve GBAK restore performance (records insertion)
  • [CORE-3446] - Allow conversion from/to BLOBs and others types in the API functions (XSQLVAR or blr messages)
  • [CORE-3457] - Optimize the temporary space manager regarding small chunk allocations
  • [CORE-3462] - Add metadata only restore to Services API
  • [CORE-3467] - provide a silent install switch
  • [CORE-3536] - Garbage collection in GTT is unnecessary delayed by active transactions in another attachments
  • [CORE-3537] - There is no need to undo changes made in GTT created with ON COMMIT DELETE ROWS option when transaction is rolled back.

New Feature

  • [CORE-2890] - SQLSTATE should also be available as a PSQL context variable like GDSCODE/SQLCODE

Edit/Copy Release Notes

The text area below allows the project release notes to be edited and copied to another document.