mirror of
https://github.com/FirebirdSQL/firebird.git
synced 2025-01-23 18:03:04 +01:00
790 lines
28 KiB
Plaintext
790 lines
28 KiB
Plaintext
**************
|
|
* v2.0 Alpha 1
|
|
**************
|
|
|
|
* Fixed bug SF #1124720
|
|
Problem with "FOR EXECUTE STATEMENT ... DO SUSPEND;"
|
|
Contributor(s):
|
|
Alex Peshkov <peshkoff at mail.ru>
|
|
|
|
* Compatibility related change
|
|
New security.fdb is renamed to security2.fdb
|
|
Contributor(s):
|
|
Alex Peshkov <peshkoff at mail.ru>
|
|
|
|
* Optimizer improvements
|
|
1) Usage of segment-level selectivities
|
|
2) Better support for IS NULL
|
|
3) Better support for STARTING WITH
|
|
4) Matching both OR and AND nodes to indices
|
|
5) Better cost estimations and hence better join orders
|
|
6) Allowed indexed order (navigational walk) for outer joins
|
|
Note(s):
|
|
Available in ODS 11.0 only
|
|
Contributor(s):
|
|
Arno Brinkman <firebird at abvisie.nl>
|
|
|
|
* Improved GROUP BY and ORDER BY clauses
|
|
Allowed column aliases in both these clauses
|
|
Example(s):
|
|
SELECT RDB$RELATION_ID AS ID
|
|
FROM RDB$RELATIONS
|
|
ORDER BY ID
|
|
|
|
SELECT RDB$RELATION_NAME AS ID, COUNT(*)
|
|
FROM RDB$RELATION_FIELDS
|
|
GROUP BY ID
|
|
Contributor(s):
|
|
Arno Brinkman <firebird at abvisie.nl>
|
|
|
|
* Improved ORDER BY clause
|
|
Allowed ordinals to work on a select list which contain an asterisk
|
|
Example(s):
|
|
SELECT *
|
|
FROM RDB$RELATIONS
|
|
ORDER BY 9
|
|
Contributor(s):
|
|
Arno Brinkman <firebird at abvisie.nl>
|
|
|
|
* Fixed bug SF #1076858
|
|
Possible corruption in classic server
|
|
Contributor(s):
|
|
Vlad Horsun <horsun at kdb.dp.ua>
|
|
|
|
* Changed view updates logic
|
|
Apply NOT NULL constraints to base tables only, ignoring the ones inherited by view columns from domain definitions
|
|
Contributor(s):
|
|
Dmitry Yemanov <yemanov at yandex.ru>
|
|
|
|
* Fixed bug SF #1116809
|
|
Incorrect data type conversion
|
|
Contributor(s):
|
|
Adriano dos Santos Fernandes <adrianosf at uol.com.br>
|
|
|
|
* Fixed bug SF #1111570
|
|
Drop table having check that references more than one column
|
|
Contributor(s):
|
|
Claudio Valderrama <cvalde at usa.net>
|
|
|
|
* Fixed unregistered bug
|
|
Possible server lockup/crash when 'RELEASE SAVEPOINT xxx ONLY' syntax is used or when existing savepoint name is reused in transaction context
|
|
Contributor(s):
|
|
Nickolay Samofatov <nickolay at broadviewsoftware.com>
|
|
|
|
* Improved configuration
|
|
Allow the first path of ExternalFilesAccess to be used as default when external file is to be created
|
|
Contributor(s):
|
|
Alex Peshkov <peshkoff at mail.ru>
|
|
|
|
* Fixed bug SF #1108909
|
|
View can be created w/o rights on table name like "a b"
|
|
Contributor(s):
|
|
Claudio Valderrama <cvalde at usa.net>
|
|
|
|
* Partially fixed bug SF #217042
|
|
IB doesn't validate weird constructions
|
|
Contributor(s):
|
|
Claudio Valderrama <cvalde at usa.net>
|
|
|
|
* Extended isc_dsql_info() API call
|
|
Allows to retrieve relation aliases, if required
|
|
Contributor(s):
|
|
Dmitry Yemanov <yemanov at yandex.ru>
|
|
|
|
* Fixed unregistered bug
|
|
Usage of an invalid index in an explicit plan causes garbage to be shown in the error message instead of the rejected index name
|
|
Contributor(s):
|
|
Claudio Valderrama <cvalde at usa.net>
|
|
|
|
* Fixed unregistered bug
|
|
Rare client crashes caused by improperly cleaned XDR packets
|
|
Contributor(s):
|
|
Dmitry Yemanov <yemanov at yandex.ru>
|
|
|
|
* Fixed bugs SF #504978, #527677, #1103666, #1103670, #1103683, #1103740
|
|
1) GPRE variable names being truncated
|
|
2) "ANSI85 compatible COBOL" switch broken
|
|
3) GPRE uses inconsistent lengths
|
|
4) GPRE invalidates a quoted cursor name after it's opened
|
|
5) GPRE doesn't check the length of the db alias
|
|
6) GPRE doesn't detect duplicate quoted cursors names
|
|
Contributor(s):
|
|
Claudio Valderrama <cvalde at usa.net>
|
|
|
|
* Fixed bug SF #512975
|
|
Embed spaces and CR+LF before DEFAULT
|
|
Contributor(s):
|
|
Claudio Valderrama <cvalde at usa.net>
|
|
|
|
* Fixed unregistered bug
|
|
Server crash during SuperServer shutdown
|
|
Contributor(s):
|
|
Alex Peshkov <peshkoff at mail.ru>
|
|
|
|
* Cleanup
|
|
Command line switch L for SuperServer is no longer recognized as the old local protocol was deleted
|
|
Contributor(s):
|
|
Dmitry Yemanov <yemanov at yandex.ru>
|
|
|
|
* Security improvement
|
|
Another layout of security.fdb
|
|
Also, security.fdb has been renamed to security2.fdb
|
|
Contributor(s):
|
|
Alex Peshkov <peshkoff at mail.ru>
|
|
|
|
* Fixed unregistered bug
|
|
Column-level privileges are preserved after this column is dropped
|
|
Contributor(s):
|
|
Dmitry Yemanov <yemanov at yandex.ru>
|
|
|
|
* Fixed unregistered bug
|
|
Memory leak when selectable stored procedures are called from PSQL or in subqueries
|
|
Contributor(s):
|
|
Nickolay Samofatov <nickolay at broadviewsoftware.com>
|
|
|
|
* Index improvements
|
|
Don't check uniqueness for null keys
|
|
Contributor(s):
|
|
Vlad Horsun <horsun at kdb.dp.ua>
|
|
|
|
* SQL improvements
|
|
1) Introduced SEQUENCE as a synonym for GENERATOR (as per SQL-99)
|
|
2) Added SQL-99 compliant NEXT VALUE FOR <sequence_name> expression
|
|
3) Implemented REVOKE ADMIN OPTION FROM statement
|
|
See also:
|
|
/doc/sql.extentions/README.sequence_generators
|
|
/doc/sql.extentions/README.ddl.txt
|
|
Contributor(s):
|
|
Dmitry Yemanov <yemanov at yandex.ru>
|
|
|
|
* Fixed unregistered bug
|
|
Backup issues with stream BLOBs
|
|
Contributor(s):
|
|
Nickolay Samofatov <nickolay at broadviewsoftware.com>
|
|
|
|
* Fixed unregistered bug
|
|
Diagnostics about missing/unusable UDF module
|
|
Contributor(s):
|
|
Alex Peshkov <peshkoff at mail.ru>
|
|
|
|
* Optimizer improvements
|
|
1) Distribute HAVING clause conjunctions to the WHERE clause when possible
|
|
2) Distribute UNION conjunctions to the inner streams when possible
|
|
3) Improved cross join and merge/sort handling
|
|
4) Better optimization of mixed AND/OR predicates
|
|
Contributor(s):
|
|
Arno Brinkman <firebird at abvisie.nl>
|
|
Dmitry Yemanov <yemanov at yandex.ru>
|
|
|
|
* SQL improvement
|
|
Supported UDFs to be called as procedures (i.e. ignoring their output) in PSQL
|
|
Contributor(s):
|
|
Nickolay Samofatov <nickolay at broadviewsoftware.com>
|
|
|
|
* ISQL improvement:
|
|
Command line switch -b to bail out on error when used in non-interactive mode.
|
|
Also, return an error code to the operating system.
|
|
See also:
|
|
/doc/README.isql_enhancements.txt
|
|
Contributor(s):
|
|
Damyan Ivanov <divanov at creditreform.bg>
|
|
Claudio Valderrama <cvalde at usa.net>
|
|
|
|
* Context variables
|
|
Added support for context variables via RDB$GET_CONTEXT and RDB$SET_CONTEXT system functions
|
|
See also:
|
|
/doc/sql.extentions/README.context_variables2
|
|
Contributor(s):
|
|
Nickolay Samofatov <nickolay at broadviewsoftware.com>
|
|
|
|
* Fixed bug SF #1065511
|
|
XP SP2 slow to connect to Linux server
|
|
Contributor(s):
|
|
Nickolay Samofatov <nickolay at broadviewsoftware.com>
|
|
|
|
* Fixed bugs SF #459059 and #543106
|
|
1) index breaks = ANY result
|
|
2) bug with ALL keyword
|
|
Contributor(s):
|
|
Dmitry Yemanov <yemanov at yandex.ru>
|
|
|
|
* ODS change
|
|
Enlarged exception messages from 78 to 1021 bytes
|
|
Contributor(s):
|
|
Vlad Horsun <horsun at kdb.dp.ua>
|
|
|
|
* Fixed bug SF #1057538
|
|
UDF output parameter not being the last crashes the server
|
|
Contributor(s):
|
|
Claudio Valderrama <cvalde at usa.net>
|
|
|
|
* Fixed unregistered bug
|
|
System users "AUTHENTICATOR" and "SWEEPER" were lost, causing "SQL SERVER" to be reported instead
|
|
Contributor(s):
|
|
Alex Peshkov <peshkoff at mail.ru>
|
|
|
|
* Configuration change
|
|
Added new parameter LegacyHash to firebird.conf
|
|
Contributor(s):
|
|
Alex Peshkov <peshkoff at mail.ru>
|
|
|
|
* Security improvements
|
|
1) New (more secure) password hash calculation algorithm
|
|
2) Ability for users to modify their own passwords
|
|
3) Rejected any remote (non-embedded) access to security.fdb
|
|
4) Use Services API in GSEC
|
|
5) Protect from attempts to brute-force accounts/passwords
|
|
Contributor(s):
|
|
Alex Peshkov <peshkoff at mail.ru>
|
|
|
|
* Configuration change
|
|
Added new parameter GCPolicy to firebird.conf
|
|
Contributor(s):
|
|
Vlad Horsun <horsun at kdb.dp.ua>
|
|
|
|
* Garbage collection improvements
|
|
New GC thread implementation and combined cooperative + background activity
|
|
Contributor(s):
|
|
Vlad Horsun <horsun at kdb.dp.ua>
|
|
|
|
* Fixed unregistered bug
|
|
Some cases where ambiguous queries were still possible
|
|
Contributor(s):
|
|
Arno Brinkman <firebird at abvisie.nl>
|
|
|
|
* ODS change
|
|
Added RDB$DESCRIPTION to RDB$GENERATORS
|
|
Contributor(s):
|
|
Claudio Valderrama <cvalde at usa.net>
|
|
|
|
* CURRENT_TIMESTAMP and 'NOW' improvements
|
|
Return milliseconds when a current timestamp is asked for
|
|
Contributor(s):
|
|
Dmitry Yemanov <yemanov at yandex.ru>
|
|
|
|
* SQL improvement
|
|
Allowed PLAN, ROWS and ORDER BY clauses in UPDATE/DELETE statements
|
|
See also:
|
|
/doc/sql.extentions/README.select_expressions
|
|
Contributor(s):
|
|
Oleg Loa <loa at mail.ru>
|
|
|
|
* 64-bit builds
|
|
A number of changes (including ODS support) to support Firebird on 64-bit platforms
|
|
Contributor(s):
|
|
Nickolay Samofatov <nickolay at broadviewsoftware.com>
|
|
|
|
* Reworked constraint checking logic
|
|
More precise checks for PK/UK/FK constraints
|
|
Contributor(s):
|
|
Vlad Horsun <horsun at kdb.dp.ua>
|
|
|
|
* SQL improvement
|
|
Added an equivalence predicate which behaves exactly as equality/inequality, but treats NULL = NULL as TRUE
|
|
Syntax:
|
|
A IS [NOT] DISTINCT FROM B
|
|
See also:
|
|
/doc/sql.extentions/README.distinct
|
|
Contributor(s):
|
|
Oleg Loa <loa at mail.ru>
|
|
Dmitry Yemanov <yemanov at yandex.ru>
|
|
|
|
* SQL improvements
|
|
1) Allowed FIRST/SKIP/ROWS/PLAN and ORDER BY clauses in views
|
|
2) Added CROSS JOIN (A CROSS JOIN B means something like A INNER JOIN B ON 1 = 1 or just FROM A, B)
|
|
3) Allowed UNION in subqueries and INSERT statement
|
|
See also:
|
|
/doc/sql.extentions/README.select_expressions
|
|
Contributor(s):
|
|
Dmitry Yemanov <yemanov at yandex.ru>
|
|
|
|
* New transaction option
|
|
Added lock timeouts for WAIT transactions (see new TPB value isc_tpb_lock_timeout)
|
|
Contributor(s):
|
|
Aleksey Karyakin <karyakin at cmpmail.com>
|
|
Dmitry Yemanov <yemanov at yandex.ru>
|
|
|
|
* WNET protocol changes
|
|
WNET (aka NetBEUI) protocol no longer performs client impersonation
|
|
Contributor(s):
|
|
Dmitry Yemanov <yemanov at yandex.ru>
|
|
|
|
* Fixed unregistered bug
|
|
Introduced 40-bit (64-bit internally) record numbers to avoid ~30GB table size limit
|
|
Contributor(s):
|
|
Nickolay Samofatov <nickolay at broadviewsoftware.com>
|
|
|
|
* Buffer cache improvements
|
|
1) Much faster algorithms to process the dirty pages tree
|
|
2) Increased maximum page cache size to 128K pages (2GB for 16K page size)
|
|
Contributor(s):
|
|
Oleg Loa <loa at mail.ru>
|
|
Dmitry Yemanov <yemanov at yandex.ru>
|
|
|
|
* Security improvements
|
|
Fixed a number of known vulnerabilities in API
|
|
Contributor(s):
|
|
Claudio Valderrama <cvalde at usa.net>
|
|
Alex Peshkov <peshkoff at mail.ru>
|
|
|
|
* Fixed unregistered bug
|
|
Don't rollback prepared 2PC sub-transaction
|
|
Contributor(s):
|
|
Vlad Horsun <horsun at kdb.dp.ua>
|
|
|
|
* Server log improvement
|
|
Add filename and line number to BUGCHECK log messages
|
|
Contributor(s):
|
|
Arno Brinkman <firebird at abvisie.nl>
|
|
|
|
* GSEC improvement
|
|
Now GSEC returns the error code when used as a non-interactive utility
|
|
Contributor(s):
|
|
Claudio Valderrama <cvalde at usa.net>
|
|
|
|
* Fixed unregistered bug
|
|
Server crash with DECLARE FILTER
|
|
Contributor(s):
|
|
Alex Peshkov <peshkoff at mail.ru>
|
|
|
|
* SQL extention
|
|
Allowed UNION DISTINCT as a synonym for simple UNION (as per SQL-99 spec)
|
|
Contributor(s):
|
|
Dmitry Yemanov <yemanov at yandex.ru>
|
|
|
|
* Fixed bug SF #571026
|
|
INET/INET_connect: gethostbyname
|
|
Contributor(s):
|
|
Dmitry Yemanov <yemanov at yandex.ru>
|
|
|
|
* Fixed bug SF #223058
|
|
Multi-hop server ability broken
|
|
Contributor(s):
|
|
Dmitry Yemanov <yemanov at yandex.ru>
|
|
|
|
* Optimizer improvement
|
|
Let's choose a reasonable join order for intermixed inner and outer joins
|
|
Contributor(s):
|
|
Dmitry Yemanov <yemanov at yandex.ru>
|
|
|
|
* Configuration change
|
|
Added new parameter UsePriorityScheduler to firebird.conf
|
|
Contributor(s):
|
|
Alex Peshkov <peshkoff at mail.ru>
|
|
|
|
* ISQL improvement
|
|
ODS version is now shown as a part of SHOW DATABASE command
|
|
Contributor(s):
|
|
Claudio Valderrama <cvalde at usa.net>
|
|
|
|
* Minor BLOB improvement
|
|
Introduced BLOB SUB_TYPE BINARY as a synonym for SUB_TYPE 0
|
|
Contributor(s):
|
|
Claudio Valderrama <cvalde at usa.net>
|
|
|
|
* ODS change
|
|
Introduced a concept of ODS type to be able to distinguish between InterBase databases, Firebird databases, databases created by debug builds of Firebird and private forks
|
|
Contributor(s):
|
|
Nickolay Samofatov <nickolay at broadviewsoftware.com>
|
|
|
|
* UDF improvement
|
|
Ability to signal SQL NULL via a NULL pointer
|
|
See also:
|
|
/doc/sql.extentions/README.ddl.txt
|
|
Contributor(s):
|
|
Claudio Valderrama <cvalde at usa.net>
|
|
|
|
* Expression indices
|
|
Implemented indices based on arbitrary expressions
|
|
Syntax:
|
|
CREATE [UNIQUE] [ASC[ENDING] | DESC[ENDING]] INDEX <index_name> ON <table_name> ( <value_expression> )
|
|
See also:
|
|
/doc/sql.extentions/README.expression_indices
|
|
Contributor(s):
|
|
Oleg Loa <loa at mail.ru>
|
|
Aleksey Karyakin <karyakin at cmpmail.com>
|
|
Dmitry Yemanov <yemanov at yandex.ru>
|
|
|
|
* IIF builtin function
|
|
Added IIF (<search_condition>, <value1>, <value2>) as a shortcut for CASE WHEN <search_condition> THEN <value1> ELSE <value2> END
|
|
See also:
|
|
/doc/sql.extentions/README.iif
|
|
Contributor(s):
|
|
Oleg Loa <loa at mail.ru>
|
|
|
|
* Fixed unregistered bug
|
|
A number of possible server crashes, as reported by Valgrind
|
|
Contributor(s):
|
|
Nickolay Samofatov <nickolay at broadviewsoftware.com>
|
|
|
|
* IN/OR improvements
|
|
Constant IN predicate or multiple OR booleans are now evaluated faster
|
|
Contributor(s):
|
|
Oleg Loa <loa at mail.ru>
|
|
|
|
* NULL becomes a syntactical value
|
|
You may now specify A = NULL, B > NULL, etc (all of them evaluate to FALSE)
|
|
See also:
|
|
/doc/sql.extentions/README.null_value
|
|
Contributor(s):
|
|
Dmitry Yemanov <yemanov at yandex.ru>
|
|
|
|
* Concatenation overflow
|
|
A compile-time check has been dropped in favour of the runtime one
|
|
Contributor(s):
|
|
Oleg Loa <loa at mail.ru>
|
|
Dmitry Yemanov <yemanov at yandex.ru>
|
|
|
|
* Fixed unregistered bug
|
|
Issues with dates below Julian date stored in indices
|
|
Contributor(s):
|
|
Arno Brinkman <firebird at abvisie.nl>
|
|
|
|
* PSQL stack trace
|
|
Added ability to report a PSQL stack trace when exception occurs
|
|
Contributor(s):
|
|
Vlad Horsun <horsun at kdb.dp.ua>
|
|
|
|
* OLD context changes
|
|
Reject any assignment to the OLD trigger context (e.g. make it read-only)
|
|
Contributor(s):
|
|
Dmitry Yemanov <yemanov at yandex.ru>
|
|
|
|
* Index scan imporvement
|
|
NULLs are ignored during the index scan (when it makes sense)
|
|
Contributor(s):
|
|
Arno Brinkman <firebird at abvisie.nl>
|
|
|
|
* Fixed bug SF #735720
|
|
SELECT ... STARTING WITH :v is wrong when :v = ''
|
|
Contributor(s):
|
|
Arno Brinkman <firebird at abvisie.nl>
|
|
|
|
* Fixed unregistered bug
|
|
Crash when changing data type for field and specify wrong type or domain name
|
|
Contributor(s):
|
|
Nickolay Samofatov <nickolay at broadviewsoftware.com>
|
|
|
|
* ODS change
|
|
Added RDB$DESCRIPTION and RDB$SYSTEM_FLAG to RDB$ROLES
|
|
Contributor(s):
|
|
Claudio Valderrama <cvalde at usa.net>
|
|
|
|
* Fixed some BLOB issues
|
|
1) Outrageous memory consumption when blobs are converted from strings during request processing
|
|
2) Materialization doesn't cause invalidation of BLOB IDs too early
|
|
Contributor(s):
|
|
Nickolay Samofatov <nickolay at broadviewsoftware.com>
|
|
|
|
* Fixed unregistered bug
|
|
Problems with UDF argument mapping to parameters
|
|
Contributor(s):
|
|
Nickolay Samofatov <nickolay at broadviewsoftware.com>
|
|
|
|
* Fixed unregistered bug
|
|
Server crash due to incorrect accounting of attachment pointers used inside the lock structure
|
|
Contributor(s):
|
|
Nickolay Samofatov <nickolay at broadviewsoftware.com>
|
|
|
|
* Improved ISQL
|
|
1) Fixed bug SF #223126 - Misplaced collation when extracting metadadata with ISQL
|
|
2) Fixed bug SF #223513 - Ambiguity between tables and views
|
|
3) Fixed bug SF #518349 - ISQL show mangles relationship
|
|
Contributor(s):
|
|
Blas Rodriguez Somoza <blas at puertareal.com>
|
|
|
|
* Fixed bug SF #910423
|
|
ALTER TABLE altering to VARCHAR
|
|
Contributor(s):
|
|
Claudio Valderrama <cvalde at usa.net>
|
|
|
|
* Improved ISQL
|
|
1) Fixed bug SF #910430 - ISQL and database dialect
|
|
2) Add SET HEADING ON/OFF option
|
|
3) Add -M2 command-line option to send output of statistics and plans to the same file than the rest of the output
|
|
See also:
|
|
/doc/README.isql_enhancements.txt
|
|
Contributor(s):
|
|
Claudio Valderrama <cvalde at usa.net>
|
|
|
|
* Fixed unregistered bug
|
|
Rounding problems in date/time arithmetics
|
|
Contributor(s):
|
|
Nickolay Samofatov <nickolay at broadviewsoftware.com>
|
|
|
|
* Fixed unregistered bug
|
|
Wrong counting of line numbers in DSQL parser when multi-line literals and identifiers are used
|
|
Contributor(s):
|
|
Nickolay Samofatov <nickolay at broadviewsoftware.com>
|
|
|
|
* Fixed v1.5 bug
|
|
Random crash on restore
|
|
Contributor(s):
|
|
Jim Starkey <jas at netfrastructure.com>
|
|
|
|
* Fixed unregistered bug
|
|
Crash/lock-up with multiple calls of isc_dsql_prepare for a single statement (like IBO does)
|
|
Contributor(s):
|
|
Nickolay Samofatov <nickolay at broadviewsoftware.com>
|
|
|
|
* Fixed unregistered bug
|
|
Server crash when too big/small system year is set up
|
|
Contributor(s):
|
|
Dmitry Yemanov <yemanov at yandex.ru>
|
|
|
|
* User-defined plans improvements
|
|
1) Propagate plan fragments to nested levels of joins, thus allowing to manually optimize complex outer joins
|
|
2) Check the user-supplied plan for correctness in outer joins
|
|
3) Added short-circuit optimization for user-supplied plans
|
|
Contributor(s):
|
|
Dmitry Yemanov <yemanov at yandex.ru>
|
|
|
|
* Fixed unregistered bug
|
|
Server crash when the stream number exceeds the limit
|
|
Contributor(s):
|
|
Dmitry Yemanov <yemanov at yandex.ru>
|
|
|
|
* Fixed unregistered bug.
|
|
Memory leak in EXECUTE STATEMENT
|
|
Contributor(s):
|
|
Alex Peshkov <peshkoff at mail.ru>
|
|
|
|
* Fixed unregistered bug
|
|
UDF arguments are being prepared/optimized twice
|
|
Contributor(s):
|
|
Dmitry Yemanov <yemanov at yandex.ru>
|
|
|
|
* Index structure improvements
|
|
More effective compressing
|
|
Contributor(s):
|
|
Arno Brinkman <firebird at abvisie.nl>
|
|
|
|
* New database shutdown modes are introduced
|
|
Single-user and full shutdown modes are implemented
|
|
See also:
|
|
/doc/README.shutdown_modes.txt
|
|
Contributor(s):
|
|
Nickolay Samofatov <nickolay at broadviewsoftware.com>
|
|
|
|
* Fixed unregistered bug
|
|
Memory leak during conversion from string to blob
|
|
Contributor(s):
|
|
Nickolay Samofatov <nickolay at broadviewsoftware.com>
|
|
|
|
* C/C++ client interface version added
|
|
FB_API_VER defined to 20 for Firebird 2.0 in ibase.h
|
|
Contributor(s):
|
|
Nickolay Samofatov <nickolay at broadviewsoftware.com>
|
|
|
|
* Implemented EXECUTE BLOCK statement
|
|
It is now possible to use dynamic PSQL with this statement
|
|
See also:
|
|
/doc/sql.extentions/README.execute_block
|
|
Contributor(s):
|
|
Vlad Horsun <horsun at kdb.dp.ua>
|
|
|
|
* Implemented support for default parameters for stored procedures
|
|
See also:
|
|
/doc/sql.extentions/README.default_parameters
|
|
Contributor(s):
|
|
Vlad Horsun <horsun at kdb.dp.ua>
|
|
|
|
* DSQL parser changed
|
|
It now always detects table aliases ambiguity and abandoned support for implicit double table aliases
|
|
Contributor(s):
|
|
Arno Brinkman <firebird at abvisie.nl>
|
|
|
|
* Fixed unregistered bug
|
|
Problems with interdependent views during restore process
|
|
Contributor(s):
|
|
Arno Brinkman <firebird at abvisie.nl>
|
|
|
|
* Fixed SF #750664
|
|
Issues with read-only databases and transactions
|
|
Contributor(s):
|
|
Nickolay Samofatov <nickolay at broadviewsoftware.com>
|
|
|
|
* Fixed unregistered bug
|
|
Fixed memory leak from connection pool in isc_database_info
|
|
Contributor(s):
|
|
Nickolay Samofatov <nickolay at broadviewsoftware.com>
|
|
|
|
* Per-segment index selectivity maintenance
|
|
Per-segment selectivity information is now available to the optimizer opening possibilities for more clever access path decisions
|
|
Contributor(s):
|
|
Dmitry Yemanov <yemanov at yandex.ru>
|
|
Arno Brinkman <firebird at abvisie.nl>
|
|
|
|
* Fixed/re-worked invariant tracking in PSQL and request cloning logic
|
|
This fixes numerous issues with recursive procedures, for example SF #627057
|
|
Contributor(s):
|
|
Nickolay Samofatov <nickolay at broadviewsoftware.com>
|
|
|
|
* Re-worked logic of updatable views
|
|
This solves problems with views that are implicitly updatable, but still have update triggers
|
|
See also:
|
|
/doc/sql.extentions/README.view_updates
|
|
Contributor(s):
|
|
Dmitry Yemanov <yemanov at yandex.ru>
|
|
|
|
* Added SQL200X ROWS clause
|
|
New syntax to limit amount of records you want to get
|
|
See also:
|
|
/doc/sql.extentions/README.rows
|
|
Contributor(s):
|
|
Dmitry Yemanov <yemanov at yandex.ru>
|
|
|
|
* Fixed SF #781610
|
|
Problems with -- comments in ISQL
|
|
Contributor(s):
|
|
John Bellardo <bellardo at cs.ucsd.edu>
|
|
Blas Rodriguez Somoza <blas at puertareal.com>
|
|
|
|
* Support for explicit cursor syntax in PSQL
|
|
It is now possible to declare and use multiple cursors in PSQL
|
|
See also:
|
|
/doc/sql.extentions/README.cursors
|
|
Contributor(s):
|
|
Dmitry Yemanov <yemanov at yandex.ru>
|
|
|
|
* LIKE/CONTAINING/STARTING WITH functions re-worked
|
|
1) functions now work with BLOBs correctly
|
|
2) use single-pass Knuth-Morris-Pratt algorithm for pattern matching
|
|
3) fix crash when NULL is used as ESCAPE character for LIKE
|
|
Contributor(s):
|
|
Nickolay Samofatov <nickolay at broadviewsoftware.com>
|
|
|
|
* Fixed unregistered bug
|
|
Fixed server crash with explicit plans used in subqueries, when outer aggregation is performed.
|
|
Contributor(s):
|
|
Dmitry Yemanov <yemanov at yandex.ru>
|
|
|
|
* Nulls ordering is changed to be SQL200X-compliant (SF #225218)
|
|
Implemented nulls placement behavior is MSSQL-like, works on ODS11 databases only since it requires new indices for operation.
|
|
Contributor(s):
|
|
Nickolay Samofatov <nickolay at broadviewsoftware.com>
|
|
|
|
* Enable support for databases on raw devices
|
|
You can now use raw devices to store database. Especially usable with database aliases
|
|
Contributor(s):
|
|
Erik Kunze <erik.kunze at philosys.de>
|
|
Nickolay Samofatov <nickolay at broadviewsoftware.com>
|
|
|
|
* New indices code
|
|
Very fast, nicely tolerates large amount of duplicates, limit of 256 bytes key length removed
|
|
Contributor(s):
|
|
Arno Brinkman <firebird at abvisie.nl>
|
|
|
|
* Internal logging enhanced
|
|
1) Implemented thread- and signal- safe debug logging facilities
|
|
2) Updated routines that print out various internal structures (DSQL node tree, BLR, DYN, etc)
|
|
Contributor(s):
|
|
Nickolay Samofatov <nickolay at broadviewsoftware.com>
|
|
|
|
* Improved PLAN clause
|
|
Allowed to specify more possible paths for the engine
|
|
Example:
|
|
PLAN (A ORDER IDX1 INDEX (IDX2, IDX3))
|
|
See also:
|
|
/doc/sql.extentions/README.plan
|
|
Contributor(s):
|
|
Dmitry Yemanov <yemanov at yandex.ru>
|
|
|
|
* Further optimizer improvements
|
|
1) MERGE PLAN may now be generated for joins using equality comparsion on expressions
|
|
2) Better logic regarding unique indices handling
|
|
3) Improved logic for OR expressions
|
|
Contributor(s):
|
|
Arno Brinkman <firebird at abvisie.nl>
|
|
|
|
* New local protocol
|
|
XNET is now used as local protocol for Windows and is supported in CS builds
|
|
See also:
|
|
/doc/README.xnet
|
|
Contributor(s):
|
|
Dmitry Yemanov <yemanov at yandex.ru>
|
|
|
|
* Services API are fully ported to Classic architecture
|
|
All Services API are supported on Linux and Windows CS
|
|
Contributor(s):
|
|
Nickolay Samofatov <nickolay at broadviewsoftware.com>
|
|
|
|
* SUBSTRING enhanced
|
|
SUBSTRING built-in function now supports arbitrary expressions in parameters
|
|
Contributor(s):
|
|
Oleg Loa <loa at mail.ru>
|
|
Dmitry Yemanov <yemanov at yandex.ru>
|
|
|
|
* Added LEAVE <label> syntax support
|
|
PSQL loops now may be marked with labels and terminated in Java style
|
|
See also:
|
|
/doc/sql.extentions/README.leave_labels
|
|
Contributor(s):
|
|
Dmitry Yemanov <yemanov at yandex.ru>
|
|
|
|
* Improved ROW_COUNT
|
|
Now it's possible to get number of selected rows as well
|
|
See also:
|
|
/doc/sql.extentions/README.context_variables
|
|
Contributor(s):
|
|
Dmitry Yemanov <yemanov at yandex.ru>
|
|
|
|
* Fix SF #750659
|
|
Generators values were resisting metadata-only backup
|
|
Contributor(s):
|
|
Claudio Valderrama <cvalde at usa.net>
|
|
|
|
* Fix SF #544132, #728839
|
|
Problems with nulls handling in UDFs
|
|
Contributor(s):
|
|
Claudio Valderrama <cvalde at usa.net>
|
|
|
|
* Fix SF #784121
|
|
Problems with some expressions in outer join conditions
|
|
Contributor(s):
|
|
Claudio Valderrama <cvalde at usa.net>
|
|
|
|
* Slightly reworked synchronization logic
|
|
1) Significantly reduce thread lock contention in lock manager and in SuperServer thread pool manager
|
|
2) Fix rare race condition that could cause SS engine to hang during request processing until next request arrival
|
|
3) Make lock manager memory dumps more informative (OWN_hung is detected correctly)
|
|
4) Decouple lock manager synchronization objects for different engine instances
|
|
Contributor(s):
|
|
Nickolay Samofatov <nickolay at broadviewsoftware.com>
|
|
|
|
* Derived tables support
|
|
Implemented support for derived tables in DSQL (subqueries in FROM clause) as defined by SQL200X
|
|
See also:
|
|
/doc/sql.extentions/README.derived_tables.txt
|
|
Contributor(s):
|
|
Arno Brinkman <firebird at abvisie.nl>
|
|
|
|
* Enhanced GROUP BY clause
|
|
Implemented support for arbitrary expressions in GROUP BY clause
|
|
Contributor(s):
|
|
Arno Brinkman <firebird at abvisie.nl>
|
|
|
|
* UNION enhanced
|
|
Fixed field type coersion logic in unions
|
|
Contributor(s):
|
|
Arno Brinkman <firebird at abvisie.nl>
|
|
|
|
* New backup technology
|
|
Implemented fast on-line physical incremental backup facilities
|
|
See also:
|
|
/doc/README.nbackup.txt
|
|
Contributor(s):
|
|
Nickolay Samofatov <nickolay at broadviewsoftware.com>
|
|
|
|
* Generic cleanup.
|
|
Various cleaning and tidying up of code, warnings removal, 64-bitness cleanup, numerous minor bugfixes
|
|
Contributor(s):
|
|
Blas Rodriguez Somoza <blas at puertareal.com>
|
|
Dmitry Yemanov <yemanov at yandex.ru>
|
|
Nickolay Samofatov <nickolay at broadviewsoftware.com>
|
|
|
|
* Generic cleanup
|
|
Large amount of ongoing code cleanup and style standardization. In particular, broken WAL and journalling code is fully cleaned out
|
|
Contributor(s):
|
|
Claudio Valderrama <cvalde at usa.net>
|