Direct system table modifications are not completely prohibited
---------------------------------------------------------------

                 Key: CORE-5567
                 URL: http://tracker.firebirdsql.org/browse/CORE-5567
             Project: Firebird Core
          Issue Type: Bug
          Components: Engine
    Affects Versions: 3.0.2, 3.0.1, 3.0.0, 4.0 Initial
            Reporter: Dmitry Yemanov


SQL> create database '/work/data/systab.fdb';
SQL> create domain my_type numeric(18, 2);
SQL> commit;

SQL> show domain MY_TYPE;
MY_TYPE                         NUMERIC(18, 2) Nullable

SQL> update rdb$fields set rdb$field_scale = -3 where rdb$field_name = 
'MY_TYPE';
Statement failed, SQLSTATE = 42000
UPDATE operation is not allowed for system table RDB$FIELDS
-- THIS IS EXPECTED
SQL> rollback;

SQL> show domain MY_TYPE;
MY_TYPE                         NUMERIC(18, 2) Nullable

SQL> set term ^;
SQL> execute block as
CON> begin
CON> update rdb$fields set rdb$field_scale = -3 where rdb$field_name = 
'MY_TYPE';
CON> end^
Statement failed, SQLSTATE = 42000
UPDATE operation is not allowed for system table RDB$FIELDS
-At block line: 3, col: 1
-- ALSO EXPECTED
SQL> set term ;^
SQL> rollback;

SQL> show domain MY_TYPE;
MY_TYPE                         NUMERIC(18, 2) Nullable

SQL> set term ^;
SQL> execute block as
CON> declare procedure hack as
CON> begin
CON> update rdb$fields set rdb$field_scale = -3 where rdb$field_name = 
'MY_TYPE';
CON> end
CON> begin
CON> execute procedure hack;
CON> end^
SQL> set term ;^
SQL> commit;

SQL> show domain MY_TYPE;
MY_TYPE                         NUMERIC(18, 3) Nullable

-- WTF???


-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://tracker.firebirdsql.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel

Reply via email to