SF ID
|
Description
|
Group/Status
|
480750
|
Ability to clear/delete External Tables
|
Feature request
|
|
Like the ZAP (dBase) command, users would like to clear the contents of an External table or delete the table completely.
|
451914
|
Ability to drop client connection
|
Feature request
|
|
Extend API to allow for a specified client connection to be disconnected.
|
451920
|
Ability to set date format
|
Feature request
|
|
Allow for the date format to be set outside of the server's local settings.
|
451912
|
Better query optimizer
|
Feature request
|
|
The current optimizeroften does a poor job of selecting the optimal indexes.
|
451933
|
Case insensitive indexes
|
Feature request
|
|
|
451939
|
Connection priority
|
Feature request
|
|
Allow for task priority to be set by connection.
|
446182
|
Enable support for 32kb pages
|
Feature request
|
|
Modify the engine and GBAK routines to allow for the database pages of 32kb in size to be specified.
|
451950
|
External table paths
|
Feature request
|
|
Restrict 'valid' path for External Table to paths specified in IBConfig/ISCConfig.
|
451949
|
FK defined with active connections
|
Feature request
|
|
Currently, FKs cannot be defined with active database connections.
|
446257
|
HTML/XML output
|
Feature request
|
|
Allow for dataset to be returned in HTML/XML format using data-output templates.
|
446252
|
Hooks for external SP and Trigger debug
|
Feature request
|
|
Enable hooks/support for external SP and Trigger debugging.
|
451946
|
Increase index key limit
|
Feature request
|
|
Index keys are currently limited to 252 bytes.
|
451953
|
Indexes with NULLs
|
Feature request
|
|
Allow for NULL values to be included in the index data, using the syntax:
CREATE [WITHNULLS] INDEX...
|
446233
|
Kill Query - server timeout/runaway
|
Feature request
|
|
The server should have built-in support to ensure that a query cannot run 'away'. A parameter in the server config file should establish the maximum query execution time.
|
446232
|
Kill query -- client requested
|
Feature request
|
|
The user needs the ability to stop/kill a query.
|
451928
|
LOG ALL [INSERT|UPDATE|DELETE|SELECT] Command
|
Feature request
|
|
Ability to have the system log all SQL statements executed for the entire database or a specific table.
|
233602
|
Like operator doesn't work correctly with UPPER()
|
Feature request
|
|
select * from gd_contact where
upper(name) like upper('%some_lowercase_belarusian_string%')
this query returns empty cursor although there are records in the database which match the criteria. if you change the SQL to:
select * from gd_contact where
upper(name) like upper('%THE_SAME_STRING_IN_UPPERCASE%')
all works fine, but I need to convert string to uppercase pragramattically, and of course, there is no need for second UPPER().
Additional note: field NAME defined as VARCHAR(60) CHARACTER SET win1251 COLLATION PXW_CYRL.
|
227776
|
More information about dependencies is needed
|
Feature request
|
|
I've logged this issue as a request for enhancement and I hope others will append what they think IB needs about keeping dependencies.
Following with my example script described in: [Bug #125219] "isql -a: wrong order with domains based on table's fields"
I decided to drop the procedure named valid16 that handles the validation for the domain dom16. No problem. IB destroyed it. I still was able to select from tab16 (the one that uses the domain and it's used by the domain at the same time), since the proc was loaded in memory. As soon as I disconnected and reconnected, doing a simple
select * from tab16
caused the following (expected) message:
Invalid request BLR at offset 8 procedure id 28 is not defined
I had to drop the constraint from the domain for IB to allow me to define the proc again (or it kept complaining about id 28), then I recreated the check constraint.
IB keeps track of table to table dependencies through PKs in rdb$ref_constraints. Procedures, views and triggers that depends on tables are tracked at rdb$dependencies and it tracks also procedure2procedure and trigger2procedure dependencies.
What's missing, among others dependencies:
- domain using procedure, table, generator or view
- computed field using procedure, table, generator or view
- procedure using generator
- trigger using generator
- view using generator
|
451942
|
New database object - Constants
|
Feature request
|
|
Support constants to be stored within the database using the syntax:
CREATE CONSTANT {ObjectName} {Datatype} AS {Value}.
This would allow for the constants to be used in other SQL statements like:
CREATE DOMAIN TTypeKind AS SMALLINT DEFAULT {Constant) NOT NULL CHECK( VALUE IN ( {Constant}, {Constant}..));
|
451947
|
Over the wire encryption
|
Feature request
|
|
Using one of the standard crypt libraries: SSL, NSS...
|
451927
|
ROWSAFFECTED system variable
|
Feature request
|
|
Expose the current variable, which is available through the API for INSERT, DELETE and UPDATE statements, to be available to SP and triggers.
|
433293
|
Replication in linux
|
Feature request
|
|
Add multi-machine replication support on linux
|
446249
|
Server Bi-directional cursors
|
Feature request
|
|
Enable Bi-directional cursors for server processing
|
451915
|
Server needs to detect disconnects
|
Feature request
|
|
Currently if a client disconnects, the server continues to execute the any pending query. It only stops the query when it is ready to return the first row from the result set.
|
446180
|
Server-side database aliases
|
Feature request
|
|
Add functionality to engine to allow for database aliases to be defined in a server side text/INI file (FBAlias.INI) to assist in resolving client database names.
This would allow for clients to specify as database string like server:alias, and have the server resolve the 'alias' value into the full 'path\database.gdb' string.
|
446236
|
Session variable space
|
Feature request
|
|
Support should be added to allow for session variables to be maintained. This includes support for Create/Set/Get/Drop operations.
|
446255
|
Support explicit record lock/unlock
|
Feature request
|
|
?
|
446234
|
Support for Nested Transaction
|
Feature request
|
|
Support should be added to provide support for nested transactions
|
451929
|
Tablespaces
|
Feature request
|
|
The ability to define/control the location of data/user tables within a multi-file database.
|
451924
|
Temporary tables
|
Feature request
|
|
Allow for the definition of temporary tables which are only visible within the current connection context and which are deleted upon connection disconnect/lost.
|
446243
|
Transaction ID
|
Feature request
|
|
Similar to the Connection variables (SF #446238), each transaction should have it own unique ID value which should be exposed as a system variable to triggers/SPs and SELECT statements.
|
446214
|
Triggers/SPs on database operations
|
Feature request
|
|
It would be a good thing if a trigger or SP was run when a database is attached/detached by the engine or when a user logs in or disconnects (also lost connection) from a database.
|
446223
|
True SMP support
|
Feature request
|
|
Old news -- FB doesn't support SMP very well.
|
451952
|
UDF Search path
|
Feature request
|
|
Include the database path when searching for UDF library.
|
451922
|
Universal Insert/Delete/Update triggers
|
Feature request
|
|
As in the case of Oracle, allow for a single trigger to be defined for INSERT and/or DELETE and/or UPDATE operations for all tables in the database.
|
470859
|
exception created 'on-the-fly'
|
Feature request
|
|
I think it would be usefull if an exception could be generated inside a trigger or procedure without having to declare it before. Something like:
if ( condition ) then
exception 'my exception';
|
452830
|
tx independent of connection
|
Feature request
|
|
In order to really support an xa driver such as for ejb application servers, it would be really helpful if transactions were not tied to connections. I would like to be able to request work within any transaction on any connection. One obvious first step is to always use transaction ids rather than handles for server-client communication. I haven't yet thought about security and multithreading/smp issues.
|
412673
|
using collate in stored procedure
|
Feature request
|
|
It would be nice to have collate in stored procedure for varchar data type.
|
SF ID
|
Description
|
Group/Status
|
446225
|
Allow FK indexes to be disabled
|
Feature request
|
|
This will resolve the current performance issues related to poor selectivity indexes. By disabling the index the system will not maintain an index which would otherwise contain too many duplicates to be efficient.
|
446251
|
Array support in SPs, Select, Insert...
|
Feature request
|
|
Enable support for Array elements in SPs as well as SELECT, INSERT and UPDATE statements.
|
446229
|
Blob Type 1 compatibility with VarChar
|
Feature request
|
|
Currently Blob Sub-Type 1 (text) column can not be treated in the same manner as a VarChar column.
|
451917
|
CASE, IIFand COALESE
|
Feature request
|
|
Add support for CASE, IIF and COALESE.
|
446222
|
Comments in definition of db objects
|
Feature request
|
|
When defining database objects, the user should be able to provide comments which would be stored in the existing (unused) columns in the system tables.
|
446238
|
Connection ID/User IP/Computer Name variables
|
Feature request
|
|
System variables should be maintained for each connection. The variables include: CONNECTION_ID, CONNECTION_IP, CONNECTION_COMPUTER
|
447001
|
Create Table as Select ....
|
Feature request
|
|
Submitted by nick@upsonuk.com. I'd like to see Firebird support, as Ingress does:
Create Table as Select ....
|
446246
|
Domain for SP parameters
|
Feature request
|
|
Allow domains to be used in the definition of the input/output parameters of SPs.
|
446245
|
Domain for Trigger/SP variables
|
Feature request
|
|
Allow domains to be applied to variables within a trigger or SP.
|
446256
|
Dynamic SQL in Stored Procedures
|
Feature request
|
|
Allow for Stored Procedures to support dynamic elements -- tablename, columnnames....
|
446250
|
Event # and Text at runtime
|
Feature request
|
|
Allow for Event #'s and Text to be specified at runtime. Thus removing the requirement for Event to be pre-defined in the database
|
446240
|
Exception code and text at runtime
|
Feature request
|
|
Allow exception code and text to be specified at runtime, ie. do not require the values to the pre-defined in order for an exception to be raised.
|
437859
|
Execute procedure and string concat
|
Feature request
|
|
The engine does not allow to pass an expression with string concatenation to a SP. When I'm compiling a procedure with a line like this one:
execute procedure p_do_something('a' || 'b');
I get an error:
Invalid token. Dynamic SQL Error. SQL error code = -104. Token unknown - line 14, char 57.
|
446253
|
Expression based indexes
|
Feature request
|
|
Enable support for indexes based on Expressions (i.e. UPPER(NAME) ).
|
446211
|
Full Blob susport for Triggers and SPs
|
Feature request
|
|
Allow blobs to be used as parameters and variables in Triggers and Stored Procedures.
|
451932
|
Functions as column values
|
Feature request
|
|
Allow for functions, like procedures, to be used as column value.
|
446244
|
Multi-database access in triggers and SP
|
Feature request
|
|
Allow for other databases to be accessed from within triggers and SPs.
|
446209
|
ON SELECT Triggers
|
Feature request
|
|
Allow trigger to be defined and execute when SELECT statement is executed for a table.
|
446231
|
Order By/Group By computed columns
|
Feature request
|
|
Order By/Group By needs to support computed columns
|
451935
|
REPLACE for procedures and triggers
|
Feature request
|
|
This would allow for procedures and triggers to be created or altered without concern for whether the function already exists.
|
451936
|
REPLACE statement
|
Feature request
|
|
This statement would combine the functionality of the INSERT and UPDATE statements. This is not a SQL standard feature.
|
446218
|
Trigger/SP on start/commit/rollback
|
Feature request
|
|
Similar to the triggers/SPs for database operations, these procedures would fire on transaction start/committ/rollack.
|
446212
|
Type Flag for Stored Procedures
|
Feature request
|
|
Add a new flag to the system tables to distinguish between SELECT and execute only Stored Procedures.
|
451916
|
Update ... From Select ...
|
Feature request
|
|
Extends the UPDATE syntax to support using the SELECT statement.
|
441942
|
User Account maintanance in SQL
|
Feature request
|
|
I think it a good idea to have the ability in the sql interface to Create, Edit and Delete User Accounts.
Create User MyUsername MyPassword;
Delete User MyUsername;
Alter User MyUsername MyPassword NewPassword;
|
451925
|
User names for PK and FK indexes
|
Feature request
|
|
The user should be able to specify the names of the PK and FK indexes.
|
SF ID
|
Description
|
Group/Status
|
451938
|
Configurable server network settings
|
Feature request
|
|
Allow for the server to control the connections it will accept. Possible settings include:
- listen only unix-socket (don't listen INET),
- listen all from eth0,
- listen only IP xxx.xxx.xxx.xxx,
- listen only mask.
|
451948
|
Database encryption
|
Feature request
|
|
Allow for database to be encrypted -- user defined/selectable library/parameters.
|
451918
|
Groups of users and rights
|
Feature request
|
|
Database rights can be assigned to Groups. Groups can be assigned to users. The resulting user database rights are the combination of the group rights as well as user rights. All this must work without roles.
|
229239
|
Password algorithm poor
|
Feature request
|
|
Users with the same password currently get the same hashed password stored in the USERS table in isc4.gdb and this seems to be a fairly poor method of doing it.
Also the isc4.gdb installed from Firebird 0.9-4 has the permissions of 666 which leaves it wide open to attack. Having it wide open like this is at least as bad as the backdoor recently discovered and more attention should be given to security issues like this.
For example as a simple denial of service attack, I just did a /opt/interbase/isc4.gdb as a regular user and pow; no users can login anymore to any database on the system! I could just as easily of used a binary editor to copy my password over another users and thus have changed their password to mine (an example why the same crypt result for two identical passwords is bad!).
|
213433
|
Poor ib security in unix installed version
|
Feature request
|
|
From: sskracic@lavsa.com (Sebastian Skracic)
Some time ago I found out that default Linux installation of IB4.0 introduces Huge security holes. I've put up some thoughts about it at http://acs.lavsa.com/bboard/q-and-a-fetch-msg.tcl?msg_id=00000O
Pretty much all outlined above is still valid for InterBase 6.0, at least SuperServer which I have just (re)installed. This is not good.
The point here is that _default_ installation must be reasonably secure. Just to sum up some of the items (there are probably more) should necessarily be done in installation process:
- create 'interbas' (or some other) unix user
- all installed files should be owned by that user
- through 'gsec', add an entry in isc4.gdb for 'interbas' user
- through 'isql', exec 'grant all on users to interbas;' to /opt/interbase/isc4.gdb security database to which you have attached as sysdba - the point here is that all future db maintenance will be performed by 'interbas' user, so this step is necessary to allow 'interbas' managing user accounts through 'gsec'.
- fix 666 (or 777) modes on some files.
- create directory /var/interbase (or something like that) where .gdb files will be stored (or somewhere in ~interbase)
Somewhere deep in server code:
- check which will prevent InterBase daemon from as root
|
446248
|
SQL rights for defining External tables
|
Feature request
|
|
Restrict definition of External tables to specified users.
|
446247
|
SQL security rights for adding UDFs
|
Feature request
|
|
Restrict adding UDF definitions to specified users.
|
217055
|
Security on IB6 SS running on NT
|
Feature request
|
|
Hello, I want to see steps to make IB6 to run under an account that's not SYSTEM or has administrative privileges under NT.
Currently, I was able to setup IB in an administrative account, then I proceed to subtract some privileges from the account, but using a plain userid even with several special OS privileges granted did not work. At least I was able to make IB run on an account other than SYSTEM and ADMINISTRATOR.
The problem seems to be the communication with the Guardian. IB alone can be started automatically as a service, but not through the guardian.
Since only SYSTEM is allowed to interact with the desktop but IB/Guardian as a service don't show a tray icon, I don't see the problem in removing administrative requirements other than revisiting the IPC schema between IB and the Guardian.
|
451931
|
User rights for metadata changes
|
Feature request
|
|
Extend the rights model to incorporate INSERT/UPDATE/DELETE database objects (databases, procedures, triggers, tables, UDFs). As well as rights to backup/restore and database connection.
|
453322
|
location of users lists /DB permission/
|
Feature request
|
|
here is 2 possible ways :
1.relocate user list from isc4.gdb to user DB
2.create additional user list in user DB and secondary authentification mechanism per database
it's needed when peoples don't want share structure of created database with other include SYSDBA
|