Release Notes - Firebird Core - Version 3.0 Alpha 1 - HTML format
Bug
- [CORE-92] - infinite insertion cycle
- [CORE-195] - Bugcheck 291
- [CORE-304] - Metadata security hole - any user can alter/drop generators and exceptions
- [CORE-634] - Bad treatment of FIRST/SKIP in subselect
- [CORE-927] - Grants don't work for procedures used inside views
- [CORE-1089] - Wrong ordering with views, distinct, left join and order by
- [CORE-1188] - Select Starting with :Param (Empty string) doesn't work if using index with many fields
- [CORE-1274] - Wrong results when PLAN MERGE is chosen and datatypes of the equality predicate arguments are different
- [CORE-1295] - Bad optimization of queries with DB_KEY
- [CORE-1355] - Zero display instead of NULL
- [CORE-1518] - Adding a non-null restricted column to a populated table renders the table inconsistent
- [CORE-1550] - Unnecessary index scan happens when the same index is mapped to both WHERE and ORDER BY clauses
- [CORE-1595] - Tray icon of Firebird Guardian disappears after explorer crash
- [CORE-1604] - Error at database creation by user with non-ascii name
- [CORE-1605] - Bugcheck 232 (invalid operation) for an aggregated query
- [CORE-1619] - Some aggregate functions doesn't support NULL-constant in 3-d dialect
- [CORE-1620] - Incorrect error message (column number) if the empty SQL string is prepared
- [CORE-1712] - Buffer overflow in conversion
- [CORE-1748] - Unrestorable backup
- [CORE-1752] - Results of a join with different collations depend on the execution plan
- [CORE-1992] - bad BLR -- invalid stream for union select
- [CORE-1997] - Broken foreign key handling for multi-segmented index using multi-level collations
- [CORE-2155] - Join of SP with view or table may fail with 'No current record for fetch operation'
- [CORE-2204] - constraints on sp output parameters are checked even when the sp returns zero rows
- [CORE-2238] - UTF8 and large varchar fields, is disinct from > Implementation limit exceeded.
- [CORE-2286] - Selecting from MON$CALL_STACK within a Trigger or SP sometimes return 0 rows.
- [CORE-2431] - String values in error messages are not converted to connection charset
- [CORE-2457] - UNICODE_CI internal gds software consistency check
- [CORE-2484] - Success message when connecting to tiny trash database file
- [CORE-2508] - Tricky index names can defeat the parsing logic when generating a human readable plan
- [CORE-2543] - nbackup may hide the real cause of failure
- [CORE-2545] - Lack of several validations in gbak
- [CORE-2547] - Utilities need to honor their minimum number of characters to recognize an option
- [CORE-2578] - select rdb$db_key from a view with a more than 1 table joined, results in conversion error
- [CORE-2606] - Multibyte CHAR value requested as VARCHAR is returned with padded spaces.
- [CORE-2628] - FB 2.5-beta2-win32 denied FreeAdhocUDF library functions.
- [CORE-2675] - Small memory leak per every blob transliteration
- [CORE-2678] - Full outer join cannot use available indices (very slow execution)
- [CORE-2684] - Error page NNN is of wrong type (expected 7, found N)
- [CORE-2685] - System triggers on view with check option are not removed
- [CORE-2696] - "alter table" command can add a field which has "not null" definition
- [CORE-2699] - Common table expression context could be used with parameters
- [CORE-2711] - Embedded can't load ib_util.dll
- [CORE-2720] - Wrong evaluation result with divide and unary plus\minus operations
- [CORE-2721] - Issue with SIMILAR TO and UTF8 on 2.5 Beta 2 (and 1)
- [CORE-2722] - Storage of malformed blob is allowed when copying from a blob with NONE/OCTETS charset
- [CORE-2723] - When execute command UPDATE OR INSERT the server crashes
- [CORE-2725] - Server crashes when sending wrong BLR for parameters in op_execute
- [CORE-2729] - Current connection may be used by EXECUTE STATEMENT instead of creation of new attachment
- [CORE-2730] - Bus error when working with DB_KEY on RISC machines
- [CORE-2731] - Recursive EXECUTE STATEMENT works wrong
- [CORE-2735] - isql hangs when trying to show a view based on a procedure
- [CORE-2739] - ASSERT at parse.cpp line 22885
- [CORE-2740] - gbak restores invalid views without any warning to the user
- [CORE-2741] - Naive metadata extraction code in isql is defeated by "check" keyword typed in mixed case
- [CORE-2742] - Server may stop responding to a particular client attachment under some conditions
- [CORE-2750] - Physical backup cannot restart operations after the explicit difference file has been dropped
- [CORE-2755] - SIMILAR TO works wrongly
- [CORE-2756] - substring from timestamp - unexpected result
- [CORE-2760] - FB 2.5 freezes during data pump operations
- [CORE-2765] - Use of RDB$ADMIN role does not provide SYSDBA rights in GRANT/REVOKE
- [CORE-2766] - Error "page 0 is of wrong type (expected 6, found 1)" is thrown while accessing a non-corrupted table
- [CORE-2768] - ALTERING OR DROPPING PROCEDURE which has type of domain parameter leads to attempt to delete that domain
- [CORE-2771] - AV at backup of database with GTT
- [CORE-2775] - Linux packages miss fbtrace.conf
- [CORE-2778] - SegFault in services when using same handle in different threads
- [CORE-2779] - User list header is displayed at the end of each returning data call to fbsvcmgr
- [CORE-2781] - AV in fbtracemgr when command line swithes set wrongly
- [CORE-2783] - AV using recursive query as subquery in SELECT list and ORDER'ing by them
- [CORE-2784] - Guardian creates more and more threads each time FBServer dies
- [CORE-2785] - BLOB transliteration problem in a specific case
- [CORE-2788] - isql extracts the array dimensions after the character set name
- [CORE-2790] - Authentication fails with mixed parameter in firebird.conf
- [CORE-2792] - Bad extraction syntax for procedure's parameter based on table's field
- [CORE-2793] - Binary representation of the backup file is inconsistent among subsequent backup/restore cycles
- [CORE-2796] - DB_KEY is always zero for external tables
- [CORE-2797] - Problem with default value of SP parameter
- [CORE-2798] - Incomplete plan output (lack of view names) when selecting from views containing procedures inside
- [CORE-2804] - Problems with COMMENT ON and strings using introducer (charset)
- [CORE-2806] - Views based on procedures can't be created if the proc's output fields participate in an expression
- [CORE-2807] - Problem with tracing on Linux
- [CORE-2814] - Bus error while sorting/merging on SPARC
- [CORE-2815] - PIP page could be marked after it was really changed
- [CORE-2817] - If stored procedure or trigger contains query with PLAN ORDER it could fail after disconnect of attachment where procedure\trigger executed first time
- [CORE-2820] - Small memory leak in query with PLAN ORDER
- [CORE-2822] - Error "no current row for fetch operation" when subquery includes a non-trivial derived table
- [CORE-2824] - Small memory and handles leak at every connect\disconnect
- [CORE-2825] - some patches for building on Debian/kFreeBSD and FreeBSD
- [CORE-2826] - Join condition fails for UTF-8 databases.
- [CORE-2827] - Very slow prepare for complex interrelated metadata with many triggers indirectly involved in the operation being prepared
- [CORE-2831] - isql shouldn't display db and user name when extracting a script
- [CORE-2833] - Changing data that affects an expression index that contains references to null date fields fails
- [CORE-2836] - fb_cancel_operation() incorrectly modifies rdb_status_vector
- [CORE-2837] - Asynchronous query cancellation (via Ctrl+C) does not work
- [CORE-2840] - Engine crashes if the NULL attachment handle is passed from the Y-valve
- [CORE-2842] - Timeout with latchs in CCH does not work
- [CORE-2846] - Cannot connect to the database if GFIX -shut <mode> -attach <timeout> fails after the specified timeout (because of connections being still active)
- [CORE-2851] - Problem with fb_cancel_operation
- [CORE-2852] - Server crash when executing syntactically wrong SQL statement with an active trace session
- [CORE-2856] - Non-NULL key in unique index could be not found when key is removed
- [CORE-2858] - Possible memory trashing when raising some exceptions to signal failed security checks
- [CORE-2861] - Cannot remove user with dot in login
- [CORE-2862] - configure --with-fbudf breaks build on CentOS
- [CORE-2864] - Listener process of Classic Server leak handles
- [CORE-2871] - Outer ORDER BY clause has no effect
- [CORE-2875] - String right truncation error when char column longer than 4096 bytes compared with string constant
- [CORE-2876] - Wrong backup mode when using "alter database add difference file"
- [CORE-2879] - Sweep could raise error : page 0 is of wrong type (expected 6, found 1)
- [CORE-2886] - Query with "NOT IN <subselect from view>" fails
- [CORE-2888] - A memory corruption cause incorrect query evaluation and may crash the server
- [CORE-2893] - Expression in a subquery may be treated as invariant and produce incorrect results
- [CORE-2896] - Embedded connections done by root (like gbak, gsec, gfix) hang in linux
- [CORE-2898] - CHAR_TO_UUID and UUID_TO_CHAR works different in big/little endian architectures
- [CORE-2900] - "AV - The code attempted to access a virtual address without privilege to do so" using aggregate distinct
- [CORE-2907] - Exception handling with EXECUTE STATEMENT
- [CORE-2913] - COLLATE expressions are applied incorrectly
- [CORE-2914] - Server crashes while restoring a database having an expression index referencing a non-existent UDF
- [CORE-2916] - Broken error handling in the case of a conversion error happened during index creation
- [CORE-2919] - Installation script ignores non-standard ports
- [CORE-2920] - Incorrect execution of volatile SQL statements inside EXECUTE STATEMENT
- [CORE-2922] - Character set used in constants is not registered as dependency
- [CORE-2923] - Problem with dependencies between a procedure and a view using that procedure
- [CORE-2926] - "make install" fails on linux
- [CORE-2928] - Buffer overflow in gsec
- [CORE-2929] - "Invalid ESCAPE sequence" when connecting to the database
- [CORE-2930] - DROP VIEW drops output parameters of used stored procedures
- [CORE-2932] - Wrong field position after ALTER POSITION
- [CORE-2933] - Very slow execution of a script that creates a lot of metadata
- [CORE-2934] - Memory leak in FB2.5 trace plugin
- [CORE-2936] - Wrong page type (expected 7 found N) error
- [CORE-2940] - Trace output could contain garbage data left from filtered out statements
- [CORE-2942] - Huge (>10Gb) memory consumption by some fb_inet_server processes
- [CORE-2943] - parsing error recursive query with two recursive parts
- [CORE-2948] - Segfault when server is exiting
- [CORE-2952] - Case-sensitive character class names in SIMILAR TO
- [CORE-2956] - Problems with requests of procedure's parameters
- [CORE-2957] - count(*) from big table returns negative result
- [CORE-2965] - Incorrect ROW_COUNT value after SINGULAR condition
- [CORE-2966] - Wrong results or unexpected errors while sorting a large data set
- [CORE-2971] - Invalid UPDATE OR INSERT usage may lead to successive "request depth exceeded. (Recursive definition?)" error
- [CORE-2981] - Error in Trace plugin (use local symbols in query)
- [CORE-2984] - gbak -v srv:db stdout creates a broken backup
- [CORE-2985] - The new 2.5 feature to alter COMPUTED columns doesn't handle dependencies well
- [CORE-2988] - Concurrent transaction number not reported if lock timeout occurs
- [CORE-2993] - Fatal lock manager error "Invalid lock id (NNN)" while working with monitoring tables on a highly loaded system
- [CORE-2995] - Same error in status vector reported twice
- [CORE-3000] - Error on delete user "ADMIN"
- [CORE-3001] - Install fails to create user & group "firebird"
- [CORE-3003] - Procedure suspend check may cause restore to fail
- [CORE-3006] - /tmp/firebird and files in it may get 'root' (i.e. GID == 0) group
- [CORE-3015] - Various "Cannot initialize the shared memory region" errors
- [CORE-3016] - On disconnect it is possible to see "Fatal lock manager error: invalid lock id (0), errno: 0" in firebird.log
- [CORE-3017] - Files left at Firebird's lock directory
- [CORE-3019] - Startup failure of SS and SC on linux gentoo
- [CORE-3021] - Segfault in DEV_BUILD
- [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-3038] - The insert failed because a column definition includes validation constraints. validation error for variable
- [CORE-3046] - Assertion after ALTER TABLE
- [CORE-3047] - Wrong logic is used to resolve EXECUTE BLOCK parameters collations
- [CORE-3052] - Wrong resultset
- [CORE-3055] - Variable/argument name could be absent or be wrong in error messages when more than 256 variables are used
- [CORE-3056] - Problems may happen when issuing DDL commands in the same transaction after CREATE COLLATION was issued
- [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-3067] - Objects not unmapped when shared memory is closed
- [CORE-3079] - Strong slowing down inserts with EVENT-s in a single transaction.
- [CORE-3089] - Attempt of execute statement on external datasource failed when datasource is interbase 4.1
- [CORE-3090] - Incorrect LEFT JOIN result using table and derived constant subquery
- [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-3092] - ROW_COUNT is not cleared before the singleton INSERT statement
- [CORE-3094] - Parameters doesn't work with NOT IN from a selectable procedure
- [CORE-3095] - Client receive event's with count equal to 1 despite of how many times EVENT was POSTed in same transaction
- [CORE-3100] - Wait mode and lock timeout of external transaction of EXECUTE STATEMENT not matched to corresponding parameters of local transaction
- [CORE-3101] - Cannot alter the domain after migrating from older versions
- [CORE-3109] - Server crashes when isc_dql_exec_immed3_m() is called for "create database ..." and NULL transaction
- [CORE-3114] - Attempt to drop non-existing generator produces bad error
- [CORE-3115] - Bugs in the internal record compression routines
- [CORE-3116] - gsec outputs list of users to stderr instead stdout
- [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-3156] - Problems using UDFs on Mac
- [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-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-3174] - Expression index with TRIM may lead to incorrect indexed lookup
- [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-3201] - ATAN2 returns incorrect value for (0, 0)
- [CORE-3202] - execute_immediate API call family may crash the remote server
- [CORE-3204] - Constraint violation error of CAST is not raised inside views
- [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-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-3237] - Slow compilation of stored procedures
- [CORE-3238] - Makes GEN_UUID return a compliant RFC-4122 UUID.
- [CORE-3239] - UTF8 UNICODE_CI collate can not be used in compound index
- [CORE-3243] - CURRENT_USER and MON$USER raise an error for trusted authentication and non-ASCII OS user name
- [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-3250] - Cannot start firebird server under any username other than "root", "firebird" , "interbas"or "interbase"
- [CORE-3255] - The server could crash using views with GROUP BY
- [CORE-3259] - Deadlock and sefgault when processing ctrl-C in user code
- [CORE-3260] - Interlock.h not portable
- [CORE-3261] - Assertion when running restore service
- [CORE-3266] - Race condition between async service detach request and running user trace service
- [CORE-3269] - When server gets unavailbale, client does not perform detach correctly
- [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-3310] - RDB$GET_CONTEXT and between in view
- [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-3317] - Success of deleting rows depending on order of row insertion
- [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-3330] - Server crashes while recreating the table with a NULL -> NOT NULL change
- [CORE-3335] - Wrong results (internal wrapping occured) for the multi-byte blob SUBSTRING function and its boundary arguments
- [CORE-3338] - Regression: Code changes disabled support for expression indexes with COALESCE, CASE and DECODE
- [CORE-3340] - Error in autonomous transaction with empty exception handler: can insert duplicate values into PK/UK column (leads to unrestorable backup)
- [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-3360] - update ... returning ... raises -551 (no perm to update) for a column present only in the returning clause
- [CORE-3373] - It is possible to store string with lenght 31 chars into column varchar(25)
- [CORE-3374] - Server may crash or corrupt data if SELECT WITH LOCK is issued against records not in the latest format
- [CORE-3382] - CLONE -Incomplete description of POSITION() function
- [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-3401] - Collation errors with [type of] <domain>, type of column
- [CORE-3416] - Inserting Käse into a CHARACTER SET ASCII column succeeds
- [CORE-3418] - Database trigger created as INACTIVE is really active
- [CORE-3419] - Recurse leads to hangs/crash server
- [CORE-3420] - BOOLEAN not present in system table RDB$TYPES
- [CORE-3421] - [FB3] AV with "UPDATE OR INSERT"
- [CORE-3423] - [FB3] Wrong RDB$PARAMETER_MECHANISM
- [CORE-3427] - Server crashing with UTF8 blobs
- [CORE-3431] - ISQL pads UTF-8 data incorrectly
- [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-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-3475] - Parameters inside the CAST function are described as not nullable
- [CORE-3476] - LIST function wrongly concatenates binary blobs
- [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-3489] - Blob transliteration may not happen inside the union
- [CORE-3490] - Concurrency problem when using named cursors
- [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-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-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-3525] - Autonomous transactions wrongly inherit run-time flags of "parent" transaction
- [CORE-3532] - Server hangs starting new session when trace is running
- [CORE-3535] - Write target of dirty page could be undefined if error happens when nbackup state is changed
- [CORE-3545] - Inconsistent domain's constraint validation in PSQL
- [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-3557] - AV in engine when preparing query against dropping table
- [CORE-3569] - CHAR(32767) present in XSQLVAR with length 32765
- [CORE-3575] - Support of backup volumes with size more than 4Gb
- [CORE-3576] - fb3 cannot use icu-4.8.1
- [CORE-3579] - Can't drop table when computed field depends on later created another field
- [CORE-3589] - Internal shared resource leak
- [CORE-3599] - Possible drop role RDB$ADMIN
- [CORE-3601] - Incorrect TEXT BLOB charset transliteration on VIEW with trigger
- [CORE-3605] - GLOB_OPTIONS mixes CFLAGS and CXXFLAGS which could be exclusively different
- [CORE-3606] - Linker commands that use c or c++ compiler should apply CFLAGS and CXXFLAGS respectively
- [CORE-3607] - Solaris does not define the RLIMIT_NPROC limit
- [CORE-3610] - Can insert DUPLICATE keys in UNIQUE index
- [CORE-3611] - Wrong data while retrieving from CTEs (or derived tables) with same column names.
- [CORE-3612] - gfix-related services may loose error value in status vector in isc_service_start()
- [CORE-3625] - MON$IO_STATS doesn't report page writes performed asynchronously (at the AST level)
- [CORE-3627] - Server crashes with access violation when inserting row into table with unique index
- [CORE-3636] - Firebird 2.5.1 server crashes with Trace API
- [CORE-3638] - Introduce FR_CA_CI_AI collation and change FR_FR and FR_FR_CI_AI to be identical to FR_CA and FR_CA_CI_AI respectively.
- [CORE-3646] - Segmentation fault in FreePascal multi-threaded program when using 2.5.x client library on Linux
- [CORE-3649] - gbak deletes backup file even if error happens when it's already successfully closed
- [CORE-3658] - FBSVCMGR connects to server as OS user name rather than value of ISC_USER environment variable
- [CORE-3672] - computed index by substring function for long columns
- [CORE-3677] - Stop utilities to export entrypoints
- [CORE-3683] - Wrong results if the recursive query contains an embedded GROUP BY clause
- [CORE-3686] - Incorrect (zero) values are reported for "acquire blocks" and "mutex wait" counters in the fb_lock_print output
- [CORE-3690] - Wrong warning message for ambiguous query
- [CORE-3692] - Cannot drop a NOT NULL constraint on a field participating in the UNIQUE constraint
- [CORE-3694] - internal Firebird consistency check in query with grouping by subquery+stored procedure+aggregate
- [CORE-3718] - Client Library Hangs after unsuccessful connection to remote auxiliary (events) port
- [CORE-3721] - Multiuser server startup (/etc/init.d) script picks up the ISC_ variables if set.
- [CORE-3722] - IS NOT DISTINCT FROM NULL doesn't use index
- [CORE-3730] - isc_dsql_exec_immed2() loses input parameter value with RETURNING clause
- [CORE-3733] - GBAK fails to fix system generators while restoring
- [CORE-3735] - Unprivileged user can delete from RDB$DATABASE, RDB$COLLATIONS, RDB$CHARACTER_SETS
- [CORE-3736] - WITH LOCK clause is allowed for users with read-only rights on some table, thus blocking others from updating this table
- [CORE-3737] - EXECUTE BLOCK parameters definitions are not respected and may cause wrong behavior related to character sets
- [CORE-3753] - The trigger together with the operator MERGE if in a condition of connection ON contains new isn't compiled
- [CORE-3754] - SIMILAR TO works wrongly
- [CORE-3759] - Problem with fetch on DDL statement in the remote protocol
- [CORE-3762] - gsec returns 0 return code on some errors
- [CORE-3769] - The message `Unknown tag (4) in isc_svc_query() results` appears when fbtracemgr is interrupted by Ctrl-C
- [CORE-3770] - fbtracemgr loads CPU up to ~55% when no activity is present
- [CORE-3786] - Firebird 2.5.1 Classic (32-bit) Hangs on MacOSX 10.7 (Lion) on DB create after reboot
- [CORE-3791] - Performance degrades when actively working with databases bigger than the available RAM amount
- [CORE-3792] - Performance of batch inserts is degraded
- [CORE-3798] - fb server die when carry out the LEFT + INNER JOIN
- [CORE-3799] - with caller privileges option don't work with autonomous transaction option
- [CORE-3801] - Warnings could be put twice in status-vector
- [CORE-3806] - Wrong data returned if a sub-query or a computed field refers to the base table in the ORDER BY clause
- [CORE-3807] - Error "Invalid expression in the select list" can be unexpectedly raised if a string literal is used inside a GROUP BY clause in a multi-byte connection
- [CORE-3810] - isql: zero divide + coredump when use "-pag 0" command switch & set heading on inside .sql script
- [CORE-3812] - Connection lost to database during massive dropping and altering primary keys of tables
- [CORE-3814] - SuperClassic server crashes when performing a database shutdown (FW=OFF)
- [CORE-3817] - Forced database shutdown does not work if non-zero delay was specified
- [CORE-3819] - Wrong service name to port address resolution in database connectiong string
- [CORE-3820] - RDB$TYPES contain duplicate character sets
- [CORE-3825] - If an autocommit transaction (i.e. transaction started with isc_tpb_autocommit option) run DDL using EXECUTE STATEMENT it will produce a bugcheck 287 (Too many savepoints)
- [CORE-3841] - Corrupted database after inserting rows
- [CORE-3844] - Validation not detects one specific case of index corruption
- [CORE-3845] - Interruption of 'heavy query' leads to 0 ms (zero duration) in it`s statistics in trace log
- [CORE-3855] - Blobs, inserted into GLOBAL TEMPORARY TABLE ON COMMIT DELETE ROWS, could be placed into newly allocated pages even if there is enough free place on some existing data page
- [CORE-3873] - Server crashes while switching to the shadow if the disk I/O fault happens while flushing the cache
- [CORE-3874] - Computed column appears in non-existant rows of left join
- [CORE-3875] - GBak does not check correctly parameters and backups random database with -B ":"
- [CORE-3883] - Ambiguous field name in the trigger when it does a select from the table
- [CORE-3887] - CHAR_TO_UUID and UUID_TO_CHAR works different in big endian architectures - similar to CORE-2898
- [CORE-3893] - Cannot restored tpcc database in FB 3.0
- [CORE-3894] - Wrong numbers in error message for decreasing char/varchar columns
- [CORE-3895] - High memory usage when PSQL code SELECT's from stored procedure which modified some data
- [CORE-3899] - row_number(), rank() and dense_rank() return BIGINT datatype in dialect 1
- [CORE-3902] - Derived fields may not be optimized via an index
- [CORE-3908] - Engine leaks memory and crashes when lot of autonomous transactions have been started and finished
- [CORE-3912] - segfault in superclassic
- [CORE-3916] - gfix & "Index x is corrupt (missing entries) in table ..." all indexes on large tables
- [CORE-3924] - Bugcheck 291 (cannot find record back version) if GTT is modified concurrently using at least one read-committed read-only transaction
- [CORE-3929] - Invalid "attempted update of read-only column" error when trying select minvalue from list with more than 255 elements
- [CORE-3932] - can create but cant delete user with username containing double quotes with gsec
- [CORE-3934] - Value of log_sweep parameter in trace configuration is ignored by trace plugin (assumed always true)
- [CORE-3935] - Could not connect to production via TCP after delete from mon$attachments issued on *different* database on the same machine
- [CORE-3940] - I/O error during "GetFileSize" operation for file XXXX
- [CORE-3941] - Memory alignment problem with unique expression index
- [CORE-3943] - Mailformed string error in case of the appeal to monitoring tables
- [CORE-3946] - UNICODE collations does not work with ICU 49
- [CORE-3947] - Wrong results when the column with collation using option (NUMERIC-SORT=1) is in where clause
- [CORE-3964] - It is not possible to create a ddl-trigger with "any DDL statement" clause
- [CORE-3965] - Creating a procedure containing "case when" expression leads to a server crash:
- [CORE-3966] - Creating a stored procedure with an "update or insert" statement with MATCHING fails
- [CORE-3967] - subselect with reference to outer select fails
- [CORE-3973] - Original table name and column name and owner missing from SQLDA for aliased column in grouped query
- [CORE-3977] - DELETE FROM MON$STATEMENTS does not interrupt a longish fetch
- [CORE-3979] - Server crashes while unwinding changes in an autonomous transaction
- [CORE-3981] - Sub-optimal predicate checking while selecting from a view
- [CORE-3988] - Engine crashed when trace or audit is active
- [CORE-3992] - No records in the table rdb$dependencies for ddl trigger
- [CORE-3993] - Server terminates or crashes while shutting down a database with in-progress attachments
- [CORE-3996] - Firebird crashes when trying to create database in restricted path
- [CORE-4002] - Error message "index unexpectedly deleted" in database trigger on commit transaction
- [CORE-4004] - Sometimes long-running operations cannot be interrupted by asynchronous shutdown / cancellation requests
- [CORE-4006] - using a result from a procedure in a substring expression leads to server crash
- [CORE-4010] - Fetch cannot be subsequently interrupted via DELETE FROM MON$STATEMENTS
- [CORE-4011] - start stop status undetected for superclassic and superserver under RH and Mageia
- [CORE-4018] - Using system domain in procedures arguments/returns cause the proc to be unchangeable
- [CORE-4027] - Creating table with computed fields containing "SELECT FIRST" produces corrupted result
- [CORE-4031] - make install wrong under Debian Ubuntu 64
- [CORE-4036] - Bugcheck or database corruption when attempting to store long incompressible data into a table
- [CORE-4038] - Broken optimization for the stored dbkeys
- [CORE-4051] - Memory leak when sorting records larger than 32 KB
- [CORE-4061] - isql does not insert boolean values correctly, always shown as False
- [CORE-4066] - jrd/exe.cpp - build failure
- [CORE-4067] - Problem with "CREATE DATABASE ... COLLATION ..." and 1 dialect
- [CORE-4068] - create package fails on creating header as soon as there is at least 1 procedure name
- [CORE-4070] - NOT-NULL-column can be used as primary key and filled with NULL-values
- [CORE-4071] - external function declaration with "returns parameter" crashes the server
- [CORE-4073] - Constant columns getting empty value with subselect from procedure
- [CORE-4074] - Computed by columns and position function
- [CORE-4081] - Regression: Built-in functions and subselect no longer supported in "update or insert" value list
- [CORE-4082] - Wrong error message
- [CORE-4083] - Full outer join in derived table with coalesce (iif)
- [CORE-4084] - Regression: Group by fails if subselect-column is involved
- [CORE-4091] - Incorrect full join result with ROW_NUMBER() Function in CTE
- [CORE-4093] - Server crashes while converting an overscaled numeric to a string
- [CORE-4094] - Wrong parameters order in trace output
- [CORE-4100] - Automatic sweep could be run when there is no need for it
Improvement
- [CORE-672] - "Over the wire" connection encryption
- [CORE-675] - Add entries to RDB$Types
- [CORE-800] - Easy metadata extract improvements
- [CORE-832] - Add support for parametrised exceptions
- [CORE-1117] - Remove or extend limit of command text length (64K)
- [CORE-1180] - DDL syntax to change (not) nullable state of columns
- [CORE-1609] - PSQL output parameter size limited
- [CORE-1898] - Increase the password length from 8 characters to 15 characters or more
- [CORE-1906] - Allow interactive arguments (seconds and intervals) of fb_lock_print to be 32-bit integers
- [CORE-2005] - Support SQL 2008 syntax for MERGE statement with DELETE extension
- [CORE-2006] - SUBSTRING with regular expression (SIMILAR TO) capability
- [CORE-2187] - Return the Hostname in mon$attachments
- [CORE-2305] - Make mon$statement_id value constant among monitoring snapshots
- [CORE-2540] - Utilities need a more coherent way to show help and version
- [CORE-2541] - Too many hardcoded messages in nbackup
- [CORE-2542] - qli and nbackup accept arbitrary input after the first letter of an option
- [CORE-2553] - Grants access on generators (gen_id, next value for)
- [CORE-2554] - Grant execute on UDF
- [CORE-2565] - Many hardcoded messages in Trace Manager
- [CORE-2575] - Make ISQL "input" command open relative filenames based on the directory of last opened (and not closed) input file
- [CORE-2666] - Make it possible to use API to do remote backups/restores
- [CORE-2668] - Write note into log when automatic sweep is started
- [CORE-2697] - Support the "? in (SELECT some_col FROM some_table)" subqueries
- [CORE-2712] - Do not print "invalid request BLR" for par.cpp errors with valid BLR
- [CORE-2724] - Validate or transform string of DML queries so that engine internals doesn't receive malformed strings
- [CORE-2748] - allow gsec to grant RDB$ADMIN role in the security database
- [CORE-2752] - Set the SO_KEEPALIVE option on the client TCP socket
- [CORE-2754] - Hint the user about -FIX_FSS_METADATA and -FIX_FSS_DATA when restore fail with malformed string error
- [CORE-2767] - Add ability to the trace plugin to configure traced services events on per-service name basis
- [CORE-2769] - Make XNET_CONNECT_TIMEOUT in xnet.h user configurable
- [CORE-2773] - Let "Start trace session" service report ID of newly created trace session
- [CORE-2774] - Let "Start trace session" service report if there was no trace plugin's loaded by the engine
- [CORE-2780] - Include client library version and protocol version in mon$attachments
- [CORE-2787] - Make rdb$system_flag not null
- [CORE-2812] - Prohibit any improper mixture of explicit and implicit joins
- [CORE-2821] - Add indication about log size limit for trace API
- [CORE-2868] - increase trigger or stored procedure body size above 32k
- [CORE-3008] - Add attachment's CHARACTER SET name into corresponding trace records
- [CORE-3020] - add clause RETURNING ... INTO ... to MERGE statement
- [CORE-3057] - Allow the usage of blobs in COMPUTED BY expressions
- [CORE-3076] - Better performance for (table.field = :param or :param = -1) in where clause
- [CORE-3085] - Add clause ALTER DOMAIN <name> [NOT] NULL
- [CORE-3140] - Preserve comments for parameters after altering procedures
- [CORE-3184] - Port for linux/hppa and linux/alpha
- [CORE-3234] - Support for text BLOBs >= 32K as first argument for TRIM()
- [CORE-3248] - Set unused bytes of varchar values in message buffer to 0
- [CORE-3251] - Use SSL/TLS support for both encryption and user authentication
- [CORE-3323] - Ability to cancel waiting in lock manager
- [CORE-3324] - ftracemgr should flush its output from time to time
- [CORE-3343] - RETURNING clause is not supported in positioned (WHERE CURRENT OF) UPDATE and DELETE statements
- [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.
- [CORE-3539] - TRACE: add ability for logging ERRORs that occur in runtime (lock conflicts, PK/UK/FK violations et al)
- [CORE-3546] - Aliases for the RETURNING clause
- [CORE-3588] - More detail in message "wrong page type"
- [CORE-3594] - Include expected and actual string lenght into error message for sqlcode -802
- [CORE-3598] - TRACE: add statistics of actions that were after transaction finished
- [CORE-3639] - Allow the use of multiple WHEN MATCHED / NOT MATCHED clauses in MERGE, as per the SQL 2008 specification
- [CORE-3656] - Support for sweep information in Trace API
- [CORE-3727] - Support C preprocessor flags in firebird build system
- [CORE-3779] - Report OS user name in MON$ATTACHMENTS
- [CORE-3788] - Make all utilities follow same rules when expanding database name
- [CORE-3879] - Make fb_lock_print a bit more handy
- [CORE-3919] - Improve SIMILAR TO performance
- [CORE-3972] - Allow the selection of SQL_INT64, SQL_DATE and SQL_TIME in dialect 1
- [CORE-3994] - Improve the limbo transactions scan at the end of the sweep
- [CORE-3995] - Slight problem with GBAK parameter checking
New Feature
- [CORE-462] - New option in addition to -V switch to specify a custom verbose interval
- [CORE-657] - Database encryption
- [CORE-685] - location of users lists /DB permission/
- [CORE-726] - Boolean data type
- [CORE-775] - True SMP support for SuperServer
- [CORE-816] - Stored Procedures, Triggers and Functions in Java
- [CORE-1209] - CONTINUE statement
- [CORE-1288] - Subprocedures in PSQL and EXECUTE BLOCK
- [CORE-1385] - Identity columns
- [CORE-1952] - deprecate Implementation IDs, easing new ports
- [CORE-2047] - User-defined PSQL functions
- [CORE-2225] - Allow configuring emdedded version via API
- [CORE-2310] - DDL triggers
- [CORE-2312] - PSQL packages
- [CORE-2470] - Support for alternate format of strings literals
- [CORE-2639] - Pseudo-table with list of users, available for management to current user
- [CORE-2700] - C++ API supporting functions, triggers and stored procedures
- [CORE-2744] - Implement the inverse hyperbolic trigonometric functions as native functions, too
- [CORE-2777] - Make possible to alter the default database character set without manual update of system table
- [CORE-2884] - New object rights for enhanced security
- [CORE-2890] - SQLSTATE should also be available as a PSQL context variable like GDSCODE/SQLCODE
- [CORE-3018] - RECREATE, ALTER and CREATE OR ALTER SEQUENCE/GENERATOR statements
- [CORE-3291] - New pseudocolumn (RDB$RECORD_VERSION) to get number of the transaction that created a record version
- [CORE-3332] - Provide more detailed information about the query execution plan
- [CORE-3364] - Blob filter to translate internal debug info into text representation
- [CORE-3626] - Subfunctions in PSQL and EXECUTE BLOCK
- [CORE-4047] - Increase number of input parameters for External Functions (UDFs) to 15
- [CORE-4089] - Runtime architecture configuration
Task
Sub-task
- [CORE-2090] - Support OVER () clause with current aggregate functions
- [CORE-2133] - OVER (PARTITION BY ...) clause for window functions
- [CORE-2823] - Support the ORDER BY subclause for current aggregate functions (except LIST)
- [CORE-2830] - Window functions: DENSE_RANK, RANK and ROW_NUMBER
- [CORE-2869] - Window functions: LAG and LEAD
- [CORE-2996] - Fix error code incompatibility introduced in fix for CORE-2552
- [CORE-3147] - Fix SUBSTRING(SIMILAR) in regard to initial and final shortest matching specified in the standard
- [CORE-3369] - Initial implementation - just add new config parameter and adjust plugins to work with it
- [CORE-3372] - Simplify process of non-default security database creation.
- [CORE-3615] - add silent_install target to firebird's Makefile
- [CORE-3619] - Window Function: first_value(value any)
- [CORE-3620] - Window Function: last_value(value any)
- [CORE-3621] - Window Function: nth_value(value any, nth integer) [from first | from last]
- [CORE-3631] - Duplicate records with NULLs checked incorrectly
- [CORE-3990] - Fix broken EDIT in isql
|
Edit/Copy Release Notes
The text area below allows the project release notes to be edited and copied to another document.
|
|