From: <pc...@us...> - 2013-04-05 10:43:24
|
Revision: 57907 http://sourceforge.net/p/firebird/code/57907 Author: pcisar Date: 2013-04-05 10:43:19 +0000 (Fri, 05 Apr 2013) Log Message: ----------- Update tests for fbtest 1.0 Modified Paths: -------------- qa/fbt-repository/trunk/tests/bugs/core_0859.fbt qa/fbt-repository/trunk/tests/bugs/core_0870.fbt qa/fbt-repository/trunk/tests/bugs/core_0929.fbt qa/fbt-repository/trunk/tests/bugs/core_0967.fbt qa/fbt-repository/trunk/tests/bugs/core_1073.fbt qa/fbt-repository/trunk/tests/bugs/core_1083.fbt qa/fbt-repository/trunk/tests/bugs/core_1112.fbt qa/fbt-repository/trunk/tests/bugs/core_1148.fbt qa/fbt-repository/trunk/tests/bugs/core_1156.fbt qa/fbt-repository/trunk/tests/bugs/core_1175.fbt qa/fbt-repository/trunk/tests/bugs/core_1249.fbt qa/fbt-repository/trunk/tests/bugs/core_1315.fbt qa/fbt-repository/trunk/tests/bugs/core_1926.fbt qa/fbt-repository/trunk/tests/bugs/core_2017.fbt qa/fbt-repository/trunk/tests/bugs/core_2230.fbt qa/fbt-repository/trunk/tests/bugs/core_2307.fbt qa/fbt-repository/trunk/tests/bugs/core_2420.fbt qa/fbt-repository/trunk/tests/bugs/core_3231.fbt qa/fbt-repository/trunk/tests/bugs/core_3245.fbt qa/fbt-repository/trunk/tests/bugs/core_3517.fbt qa/fbt-repository/trunk/tests/functional/arno/indices/upper_lower_bounds_01.fbt qa/fbt-repository/trunk/tests/functional/arno/indices/upper_lower_bounds_02.fbt qa/fbt-repository/trunk/tests/functional/database/alter_03.fbt qa/fbt-repository/trunk/tests/functional/dml/cte_02.fbt qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_01.fbt qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_02.fbt qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_03.fbt qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_04.fbt qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_05.fbt qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_06.fbt qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_07.fbt qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_08.fbt qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_09.fbt qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_10.fbt qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_11.fbt qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_12.fbt qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_13.fbt qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_14.fbt qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_15.fbt qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_16.fbt qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_17.fbt qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_18.fbt qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_19.fbt qa/fbt-repository/trunk/tests/functional/fkey/primary/select_pk_01.fbt qa/fbt-repository/trunk/tests/functional/fkey/primary/select_pk_02.fbt qa/fbt-repository/trunk/tests/functional/fkey/primary/upd_pk_01.fbt qa/fbt-repository/trunk/tests/functional/fkey/primary/upd_pk_02.fbt qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_01.fbt qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_02.fbt qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_03.fbt qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_04.fbt qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_05.fbt qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_06.fbt qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_07.fbt qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_08.fbt qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_09.fbt qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_11.fbt qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_12.fbt qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_13.fbt qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_14.fbt qa/fbt-repository/trunk/tests/functional/fkey/unique/select_uf_01.fbt qa/fbt-repository/trunk/tests/functional/fkey/unique/select_uf_02.fbt qa/fbt-repository/trunk/tests/functional/fkey/unique/upd_01.fbt qa/fbt-repository/trunk/tests/functional/fkey/unique/upd_02.fbt qa/fbt-repository/trunk/tests/functional/intfunc/string/ascii_val_01.fbt qa/fbt-repository/trunk/tests/functional/monitoring/03.fbt qa/fbt-repository/trunk/tests/functional/monitoring/04.fbt qa/fbt-repository/trunk/tests/functional/trigger/database/connect_02.fbt qa/fbt-repository/trunk/tests/functional/trigger/database/connect_04.fbt Modified: qa/fbt-repository/trunk/tests/bugs/core_0859.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_0859.fbt 2013-04-05 09:35:57 UTC (rev 57906) +++ qa/fbt-repository/trunk/tests/bugs/core_0859.fbt 2013-04-05 10:43:19 UTC (rev 57907) @@ -18,28 +18,28 @@ except: pass else: - print 'Test Failed in case 1' + print ('Test Failed in case 1') try: c.prep('select * from t order by a') except: pass else: - print 'Test Failed in case 2' + print ('Test Failed in case 2') try: c.prep('select b, count(*) from t group by b') except: pass else: - print 'Test Failed in case 3' + print ('Test Failed in case 3') try: c.prep('select a, count(*) from t group by a') except: pass else: - print 'Test Failed in case 4' + print ('Test Failed in case 4') """ Modified: qa/fbt-repository/trunk/tests/bugs/core_0870.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_0870.fbt 2013-04-05 09:35:57 UTC (rev 57906) +++ qa/fbt-repository/trunk/tests/bugs/core_0870.fbt 2013-04-05 10:43:19 UTC (rev 57907) @@ -1,9 +1,10 @@ { -'id': 'bugs.core_870', +'id': 'bugs.core_0870', 'qmid': 'bugs.core_870', 'tracker_id': 'CORE-870', 'title': 'Engine crashes while trying to backup a logically corrupt db', 'description': '', +'min_versions': None, 'versions': [ { 'firebird_version': '2.1', @@ -13,14 +14,14 @@ 'test_type': 'Python', 'test_script': """import os -print 'Starting backup...' +print ('Starting backup...') fbk = os.path.join(context['temp_directory'],'backup.fbk') runProgram('gbak',['-b','-user',user_name,'-password',user_password,dsn,fbk]) -print 'gbak finished...' +print ('gbak finished...') if os.path.isfile(fbk): - print 'Delete backup file...' + print ('Delete backup file...') os.remove(fbk) - print 'Backup file deleted.' + print ('Backup file deleted.') """, 'expected_stdout': """Starting backup... gbak finished... Modified: qa/fbt-repository/trunk/tests/bugs/core_0929.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_0929.fbt 2013-04-05 09:35:57 UTC (rev 57906) +++ qa/fbt-repository/trunk/tests/bugs/core_0929.fbt 2013-04-05 10:43:19 UTC (rev 57907) @@ -1,9 +1,10 @@ { -'id': 'bugs.core_929', +'id': 'bugs.core_0929', 'qmid': 'bugs.core_929', 'tracker_id': 'CORE-929', 'title': 'Bug in DSQL parameter', 'description': '', +'min_versions': None, 'versions': [ { 'firebird_version': '2.1', @@ -23,8 +24,8 @@ try: c.prep('SELECT * FROM TEST WHERE MYDATE + CAST(? AS INTEGER) >= ?') except Exception,e: - print 'Test FAILED' - print e + print ('Test FAILED') + print (e) """ } Modified: qa/fbt-repository/trunk/tests/bugs/core_0967.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_0967.fbt 2013-04-05 09:35:57 UTC (rev 57906) +++ qa/fbt-repository/trunk/tests/bugs/core_0967.fbt 2013-04-05 10:43:19 UTC (rev 57907) @@ -19,12 +19,14 @@ try: c.execute('update t set i=1'+chr(238)+' where 1=0') except Exception,e: - print repr(e[0]) + msg = repr(e[0]) + msg = msg.replace(chr(92),"/") + print (msg) else: c.execute('select * from t') printData(c) """, - 'expected_stdout': """'Error while preparing SQL statement:\\n- SQLCODE: -104\\n- Invalid token\\n- Dynamic SQL Error\\n- SQL error code = -104\\n- Token unknown - line 1, column 17\\n- \\xee' + 'expected_stdout': """'Error while preparing SQL statement:/n- SQLCODE: -104/n- Dynamic SQL Error/n- SQL error code = -104/n- Token unknown - line 1, column 17/n- /xee' """ } ] Modified: qa/fbt-repository/trunk/tests/bugs/core_1073.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_1073.fbt 2013-04-05 09:35:57 UTC (rev 57906) +++ qa/fbt-repository/trunk/tests/bugs/core_1073.fbt 2013-04-05 10:43:19 UTC (rev 57907) @@ -4,6 +4,7 @@ 'tracker_id': 'CORE-1073', 'title': 'SINGULAR buggy when nulls present', 'description': '', +'min_versions': None, 'versions': [ { 'firebird_version': '2.1', @@ -16,8 +17,8 @@ cur.execute(statement) r = cur.fetchone() if (exp and (r is None)) or (not exp and (r is not None)): - print 'Test FAILED in step ',step,', expectation ',exp - print 'Statement:',statement + print ('Test FAILED in step ',step,', expectation ',exp) + print ('Statement:',statement) c = db_conn.cursor() p_singular = 'select 1 from rdb$database where singular(select * from t where a = 1)' Modified: qa/fbt-repository/trunk/tests/bugs/core_1083.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_1083.fbt 2013-04-05 09:35:57 UTC (rev 57906) +++ qa/fbt-repository/trunk/tests/bugs/core_1083.fbt 2013-04-05 10:43:19 UTC (rev 57907) @@ -23,23 +23,23 @@ try: c1.execute("GRANT UPDATE(COL1) ON TAB1 TO ROLE1") con_1.commit() - print 'sucess' + print ('sucess') except Exception, e: - print e[0] + print (e[0]) con_1.begin() try: c1.execute("REVOKE UPDATE (COL1) ON TAB1 FROM ROLE1") con_1.commit() - print 'sucess' + print ('sucess') except Exception, e: - print e[0] + print (e[0]) con_1.begin() try: c1.execute("REVOKE UPDATE (COL2) ON TAB1 FROM ROLE1") con_1.commit() - print 'sucess' + print ('sucess') except Exception, e: - print e[0] + print (e[0]) """, @@ -47,7 +47,6 @@ sucess Error while executing SQL statement: - SQLCODE: -607 -- This operation is not defined for system tables. - unsuccessful metadata update - TEST is not grantor of Update on TAB1 to ROLE1. """, Modified: qa/fbt-repository/trunk/tests/bugs/core_1112.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_1112.fbt 2013-04-05 09:35:57 UTC (rev 57906) +++ qa/fbt-repository/trunk/tests/bugs/core_1112.fbt 2013-04-05 10:43:19 UTC (rev 57907) @@ -4,6 +4,7 @@ 'tracker_id': 'CORE-1112', 'title': 'Crash when dealing with a string literal longer than 32K', 'description': 'This test may crash the server', +'min_versions': None, 'versions': [ { 'firebird_version': '2.1', @@ -21,7 +22,7 @@ except: pass c.execute("select 'a' from rdb$database") -print c.fetchall()""", +print (c.fetchall())""", 'expected_stdout': """[('a',)] """ } Modified: qa/fbt-repository/trunk/tests/bugs/core_1148.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_1148.fbt 2013-04-05 09:35:57 UTC (rev 57906) +++ qa/fbt-repository/trunk/tests/bugs/core_1148.fbt 2013-04-05 10:43:19 UTC (rev 57907) @@ -13,23 +13,22 @@ 'test_script': """from fdb import services con = services.connect(host='localhost', user=user_name.encode(), password=user_password.encode()) try: - con.getLog() - print 'sucess' + con.get_log() + print ('sucess') except Exception, e: - print e[0] + print (e[0]) con = services.connect(host='localhost', user='TEST', password='test') try: - con.getLog() - print 'sucess' + con.get_log() + print ('sucess') except Exception, e: - print e[0] + print (e[0]) """, 'expected_stdout': """sucess Unable to perform the requested Service API action: - SQLCODE: -901 -- Unsuccessful execution caused by system error that does not preclude successful execution of subsequent statements - Unable to perform operation. You must be either SYSDBA or owner of the database """, 'resources': ['test_user'] Modified: qa/fbt-repository/trunk/tests/bugs/core_1156.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_1156.fbt 2013-04-05 09:35:57 UTC (rev 57906) +++ qa/fbt-repository/trunk/tests/bugs/core_1156.fbt 2013-04-05 10:43:19 UTC (rev 57907) @@ -4,6 +4,7 @@ 'tracker_id': 'CORE-1156', 'title': 'Prepare fails when having a parameter in a DSQL statement before a sub query', 'description': '', +'min_versions': None, 'versions': [ { 'firebird_version': '2.1', @@ -13,27 +14,27 @@ try: c.prep('select count(*) from rdb$database where ? < (select count(*) from rdb$database)') except: - print 'Test FAILED in case 1' + print ('Test FAILED in case 1') try: c.prep('select count(*) from rdb$database where (select count(*) from rdb$database) > ?') except: - print 'Test FAILED in case 2' + print ('Test FAILED in case 2') try: c.prep('select count(*) from rdb$database where ? < cast ((select count(*) from rdb$database) as integer)') except: - print 'Test FAILED in case 3' + print ('Test FAILED in case 3') try: c.prep('select count(*) from rdb$database where 0 < (select count(*) from rdb$database)') except: - print 'Test FAILED in case 4' + print ('Test FAILED in case 4') try: c.prep('select count(*) from rdb$database where cast (? as integer) < (select count(*) from rdb$database)') except: - print 'Test FAILED in case 5' + print ('Test FAILED in case 5') """ } Modified: qa/fbt-repository/trunk/tests/bugs/core_1175.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_1175.fbt 2013-04-05 09:35:57 UTC (rev 57906) +++ qa/fbt-repository/trunk/tests/bugs/core_1175.fbt 2013-04-05 10:43:19 UTC (rev 57907) @@ -4,6 +4,7 @@ 'tracker_id': 'CORE-1175', 'title': 'Error "Data type unknown" when any UDF argument is a built-in function containing a DSQL parameter reference', 'description': 'This test uses UDF from ib_udf', +'min_versions': None, 'versions': [ { 'firebird_version': '2.1', @@ -18,10 +19,10 @@ 'test_script': """c = db_conn.cursor() try: c.prep('select * from RDB$DATABASE where RDB$CHARACTER_SET_NAME = rtrim(trim(?))') - print 'Test PASSED!' + print ('Test PASSED!') except Exception,e: - print 'Test FAILED!' - print e + print ('Test FAILED!') + print (e) """, 'expected_stdout': """Test PASSED! Modified: qa/fbt-repository/trunk/tests/bugs/core_1249.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_1249.fbt 2013-04-05 09:35:57 UTC (rev 57906) +++ qa/fbt-repository/trunk/tests/bugs/core_1249.fbt 2013-04-05 10:43:19 UTC (rev 57907) @@ -13,7 +13,7 @@ 'test_script': """cur1 = db_conn.cursor() db_conn.begin() cur1.execute('select * from rdb$database') -print 'Operation performed before shutdown' +print ('Operation performed before shutdown') db_conn.commit() runProgram('gfix',[dsn,'-user',user_name,'-pas',user_password,'-shut','full','-force','0']) @@ -22,9 +22,9 @@ db_conn.begin() cur1.execute('select * from rdb$database') db_conn.commit() - print 'BUG! Operation allowed after shutdown!' + print ('BUG! Operation allowed after shutdown!') except Exception, e: - print "Ok, we've got error.", e[0] + print ("Ok, we've got error.", e[0]) # This is necessary to remove the database #db_conn.close() @@ -36,8 +36,7 @@ 'expected_stdout': """Operation performed before shutdown Ok, we've got error. Error while starting transaction: - SQLCODE: -902 -- Unsuccessful execution caused by a system error that precludes successful execution of subsequent statements -- database C:\JOB\QA\FBTEST\TMP\BUGS.CORE_1249.FDB shutdown +- database /home/job/python/envs/pyfirebird/fbtest/tmp/bugs.core_1249.fdb shutdown """, 'substitutions': [('^.*shutdown','shutdown')] } Modified: qa/fbt-repository/trunk/tests/bugs/core_1315.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_1315.fbt 2013-04-05 09:35:57 UTC (rev 57906) +++ qa/fbt-repository/trunk/tests/bugs/core_1315.fbt 2013-04-05 10:43:19 UTC (rev 57907) @@ -4,6 +4,7 @@ 'tracker_id': 'CORE-1315', 'title': 'Data type unknown', 'description': '', +'min_versions': None, 'versions': [ { 'firebird_version': '2.1', @@ -13,11 +14,11 @@ try: statement = cur.prep('select coalesce(?,1) from RDB$DATABASE') except Exception,e: - print 'Failed!',e + print ('Failed!',e) else: cur.execute(statement,[2]) printData(cur) - print + print() cur.execute(statement,[None]) printData(cur) """, Modified: qa/fbt-repository/trunk/tests/bugs/core_1926.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_1926.fbt 2013-04-05 09:35:57 UTC (rev 57906) +++ qa/fbt-repository/trunk/tests/bugs/core_1926.fbt 2013-04-05 10:43:19 UTC (rev 57907) @@ -4,6 +4,7 @@ 'tracker_id': 'CORE-1926', 'title': 'MON$DATABASE returns outdated transaction counters', 'description': 'Fields MON$NEXT_TRANSACTION etc contain incorrect (outdated) numbers on Classic if there are other active attachments.', +'min_versions': None, 'versions': [ { 'firebird_version': '2.1.2', @@ -21,7 +22,7 @@ c.execute("select MON$NEXT_TRANSACTION from MON$DATABASE") for row in c: j = row[0] -print j-i +print (j-i) con_detail.commit() """, 'expected_stdout': """1 Modified: qa/fbt-repository/trunk/tests/bugs/core_2017.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_2017.fbt 2013-04-05 09:35:57 UTC (rev 57906) +++ qa/fbt-repository/trunk/tests/bugs/core_2017.fbt 2013-04-05 10:43:19 UTC (rev 57907) @@ -51,7 +51,7 @@ c2.execute("select MON$STATEMENT_ID,MON$STAT_ID,MON$SQL_TEXT from mon$statements where mon$sql_text starts with '%s'" % sql) #printData(c) row = c2.fetchone() -#print row +#print (row) c2.execute("select MON$PAGE_READS,MON$PAGE_WRITES,MON$PAGE_FETCHES,MON$PAGE_MARKS from mon$io_stats where mon$stat_id = %i" % row[1]) printData(c2) @@ -106,7 +106,7 @@ c2.execute("select MON$STATEMENT_ID,MON$STAT_ID,MON$SQL_TEXT from mon$statements where mon$sql_text starts with '%s'" % sql) #printData(c) row = c2.fetchone() -#print row +#print (row) c2.execute("select MON$PAGE_READS,MON$PAGE_WRITES,MON$PAGE_FETCHES,MON$PAGE_MARKS from mon$io_stats where mon$stat_id = %i" % row[1]) printData(c2) Modified: qa/fbt-repository/trunk/tests/bugs/core_2230.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_2230.fbt 2013-04-05 09:35:57 UTC (rev 57906) +++ qa/fbt-repository/trunk/tests/bugs/core_2230.fbt 2013-04-05 10:43:19 UTC (rev 57907) @@ -22,19 +22,18 @@ try: c.execute(cmd,[10]) printData(c) -except kdb.ProgrammingError,e: - print e[0] +except kdb.DatabaseError,e: + print (e[0]) else: - print 'Test Failed' + print ('Test Failed') """, 'expected_stdout': """Y ----------- 1 Y ----------- -Cursor.fetchone: Unknown status returned by fetch operation: +Cursor.fetchone: - SQLCODE: -625 -- The insert failed because a column definition includes validation constraints. - validation error for CAST, value "10" """ } Modified: qa/fbt-repository/trunk/tests/bugs/core_2307.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_2307.fbt 2013-04-05 09:35:57 UTC (rev 57906) +++ qa/fbt-repository/trunk/tests/bugs/core_2307.fbt 2013-04-05 10:43:19 UTC (rev 57907) @@ -54,7 +54,7 @@ END""" c = db_conn.cursor() c.execute(sql) -print db_conn.db_info(kdb.isc_info_read_seq_count) +print (db_conn.db_info(kdb.isc_info_read_seq_count)) ''', 'expected_stdout': """{0: 2069, 1: 3, 2: 1, 3: 1, 4: 1, 5: 1, 6: 1043, 8: 1, 9: 1, 11: 1, 12: 1, 14: 1, 15: 1, 17: 1, 18: 1, 20: 1, 28: 1, 29: 1, 31: 1, 128: 1, 129: 1, 130: 1, 131: 1, 132: 1, 133: 1, 134: 1, 135: 1, 136: 1, 137: 1, 138: 1, 139: 1, 140: 1, 141: 1, 142: 1, 143: 1, 144: 1, 145: 1, 146: 1, 147: 1, 148: 1, 149: 1, 150: 1, 151: 1, 152: 1, 153: 1, 154: 1, 155: 1, 156: 1, 157: 1, 158: 1, 159: 1, 160: 1, 161: 1, 162: 1, 163: 1, 164: 1, 165: 1, 166: 1, 167: 1, 168: 1, 169: 1, 170: 1, 171: 1, 172: 1, 173: 1, 174: 1, 175: 1, 176: 1, 177: 1, 178: 1, 179: 1, 180: 1, 181: 1, 182: 1, 183: 1, 184: 1, 185: 1, 186: 1, 187: 1, 188: 1, 189: 1, 190: 1, 191: 1, 192: 1, 193: 1, 194: 1, 195: 1, 196: 1, 197: 1, 198: 1, 199: 1, 200: 1, 201: 1, 202: 1, 203: 1, 204: 1, 205: 1, 206: 1, 207: 1, 208: 1, 209: 1, 210: 1, 211: 1, 212: 1, 213: 1, 214: 1, 215: 1, 216: 1, 217: 1, 218: 1, 219: 1, 220: 1, 221: 1, 222: 1, 223: 1, 224: 1, 225: 1, 226: 1, 227: 1, 228: 1, 229: 1, 230: 1, 231: 1, 232: 1, 233: 1, 234: 1, 235: 1, 236: 1, 237: 1, 238: 1, 239: 1, 240: 1, 241: 1, 242: 1, 243: 1, 244: 1, 245: 1, 246: 1, 247: 1, 248: 1, 249: 1, 250: 1, 251: 1, 252: 1, 253: 1, 254: 1, 255: 1, 256: 1, 257: 1, 258: 1, 259: 1, 260: 1, 261: 1, 262: 1, 263: 1, 264: 1, 265: 1, 266: 1, 267: 1, 268: 1, 269: 1, 270: 1, 271: 1, 272: 1, 273: 1, 274: 1, 275: 1, 276: 1, 277: 1, 278: 1, 279: 1, 280: 1, 281: 1, 282: 1, 283: 1, 284: 1, 285: 1, 286: 1, 287: 1, 288: 1, 289: 1, 290: 1, 291: 1, 292: 1, 293: 1, 294: 1, 295: 1, 296: 1, 297: 1, 298: 1, 299: 1, 300: 1, 301: 1, 302: 1, 303: 1, 304: 1, 305: 1, 306: 1, 307: 1, 308: 1, 309: 1, 310: 1, 311: 1, 312: 1, 313: 1, 314: 1, 315: 1, 316: 1, 317: 1, 318: 1, 319: 1, 320: 1, 321: 1, 322: 1, 323: 1, 324: 1, 325: 1, 326: 1, 327: 1, 328: 1, 329: 1, 330: 1, 331: 1, 332: 1, 333: 1, 334: 1, 335: 1, 336: 1, 337: 1, 338: 1, 339: 1, 340: 1, 341: 1, 342: 1, 343: 1, 344: 1, 345: 1, 346: 1, 347: 1, 348: 1, 349: 1, 350: 1, 351: 1, 352: 1, 353: 1, 354: 1, 355: 1, 356: 1, 357: 1, 358: 1, 359: 1, 360: 1, 361: 1, 362: 1, 363: 1, 364: 1, 365: 1, 366: 1, 367: 1, 368: 1, 369: 1, 370: 1, 371: 1, 372: 1, 373: 1, 374: 1, 375: 1, 376: 1, 377: 1, 378: 1, 379: 1, 380: 1, 381: 1, 382: 1, 383: 1, 384: 1, 385: 1, 386: 1, 387: 1, 388: 1, 389: 1, 390: 1, 391: 1, 392: 1, 393: 1, 394: 1, 395: 1, 396: 1, 397: 1, 398: 1, 399: 1, 400: 1, 401: 1, 402: 1, 403: 1, 404: 1, 405: 1, 406: 1, 407: 1, 408: 1, 409: 1, 410: 1, 411: 1, 412: 1, 413: 1, 414: 1, 415: 1, 416: 1, 417: 1, 418: 1, 419: 1, 420: 1, 421: 1, 422: 1, 423: 1, 424: 1, 425: 1, 426: 1, 427: 1, 428: 1, 429: 1, 430: 1, 431: 1, 432: 1, 433: 1, 434: 1, 435: 1, 436: 1, 437: 1, 438: 1, 439: 1, 440: 1, 441: 1, 442: 1, 443: 1, 444: 1, 445: 1, 446: 1, 447: 1, 448: 1, 449: 1, 450: 1, 451: 1, 452: 1, 453: 1, 454: 1, 455: 1, 456: 1, 457: 1, 458: 1, 459: 1, 460: 1, 461: 1, 462: 1, 463: 1, 464: 1, 465: 1, 466: 1, 467: 1, 468: 1, 469: 1, 470: 1, 471: 1, 472: 1, 473: 1, 474: 1, 475: 1, 476: 1, 477: 1, 478: 1, 479: 1, 480: 1, 481: 1, 482: 1, 483: 1, 484: 1, 485: 1, 486: 1, 487: 1, 488: 1, 489: 1, 490: 1, 491: 1, 492: 1, 493: 1, 494: 1, 495: 1, 496: 1, 497: 1, 498: 1, 499: 1, 500: 1, 501: 1, 502: 1, 503: 1, 504: 1, 505: 1, 506: 1, 507: 1, 508: 1, 509: 1, 510: 1, 511: 1, 512: 1, 513: 1, 514: 1, 515: 1, 516: 1, 517: 1, 518: 1, 519: 1, 520: 1, 521: 1, 522: 1, 523: 1, 524: 1, 525: 1, 526: 1, 527: 1, 528: 1, 529: 1, 530: 1, 531: 1, 532: 1, 533: 1, 534: 1, 535: 1, 536: 1, 537: 1, 538: 1, 539: 1, 540: 1, 541: 1, 542: 1, 543: 1, 544: 1, 545: 1, 546: 1, 547: 1, 548: 1, 549: 1, 550: 1, 551: 1, 552: 1, 553: 1, 554: 1, 555: 1, 556: 1, 557: 1, 558: 1, 559: 1, 560: 1, 561: 1, 562: 1, 563: 1, 564: 1, 565: 1, 566: 1, 567: 1, 568: 1, 569: 1, 570: 1, 571: 1, 572: 1, 573: 1, 574: 1, 575: 1, 576: 1, 577: 1, 578: 1, 579: 1, 580: 1, 581: 1, 582: 1, 583: 1, 584: 1, 585: 1, 586: 1, 587: 1, 588: 1, 589: 1, 590: 1, 591: 1, 592: 1, 593: 1, 594: 1, 595: 1, 596: 1, 597: 1, 598: 1, 599: 1, 600: 1, 601: 1, 602: 1, 603: 1, 604: 1, 605: 1, 606: 1, 607: 1, 608: 1, 609: 1, 610: 1, 611: 1, 612: 1, 613: 1, 614: 1, 615: 1, 616: 1, 617: 1, 618: 1, 619: 1, 620: 1, 621: 1, 622: 1, 623: 1, 624: 1, 625: 1, 626: 1, 627: 1, 628: 1, 629: 1, 630: 1, 631: 1, 632: 1, 633: 1, 634: 1, 635: 1, 636: 1, 637: 1, 638: 1, 639: 1, 640: 1, 641: 1, 642: 1, 643: 1, 644: 1, 645: 1, 646: 1, 647: 1, 648: 1, 649: 1, 650: 1, 651: 1, 652: 1, 653: 1, 654: 1, 655: 1, 656: 1, 657: 1, 658: 1, 659: 1, 660: 1, 661: 1, 662: 1, 663: 1, 664: 1, 665: 1, 666: 1, 667: 1, 668: 1, 669: 1, 670: 1, 671: 1, 672: 1, 673: 1, 674: 1, 675: 1, 676: 1, 677: 1, 678: 1, 679: 1, 680: 1, 681: 1, 682: 1, 683: 1, 684: 1, 685: 1, 686: 1, 687: 1, 688: 1, 689: 1, 690: 1, 691: 1, 692: 1, 693: 1, 694: 1, 695: 1, 696: 1, 697: 1, 698: 1, 699: 1, 700: 1, 701: 1, 702: 1, 703: 1, 704: 1, 705: 1, 706: 1, 707: 1, 708: 1, 709: 1, 710: 1, 711: 1, 712: 1, 713: 1, 714: 1, 715: 1, 716: 1, 717: 1, 718: 1, 719: 1, 720: 1, 721: 1, 722: 1, 723: 1, 724: 1, 725: 1, 726: 1, 727: 1, 728: 1, 729: 1, 730: 1, 731: 1, 732: 1, 733: 1, 734: 1, 735: 1, 736: 1, 737: 1, 738: 1, 739: 1, 740: 1, 741: 1, 742: 1, 743: 1, 744: 1, 745: 1, 746: 1, 747: 1, 748: 1, 749: 1, 750: 1, 751: 1, 752: 1, 753: 1, 754: 1, 755: 1, 756: 1, 757: 1, 758: 1, 759: 1, 760: 1, 761: 1, 762: 1, 763: 1, 764: 1, 765: 1, 766: 1, 767: 1, 768: 1, 769: 1, 770: 1, 771: 1, 772: 1, 773: 1, 774: 1, 775: 1, 776: 1, 777: 1, 778: 1, 779: 1, 780: 1, 781: 1, 782: 1, 783: 1, 784: 1, 785: 1, 786: 1, 787: 1, 788: 1, 789: 1, 790: 1, 791: 1, 792: 1, 793: 1, 794: 1, 795: 1, 796: 1, 797: 1, 798: 1, 799: 1, 800: 1, 801: 1, 802: 1, 803: 1, 804: 1, 805: 1, 806: 1, 807: 1, 808: 1, 809: 1, 810: 1, 811: 1, 812: 1, 813: 1, 814: 1, 815: 1, 816: 1, 817: 1, 818: 1, 819: 1, 820: 1, 821: 1, 822: 1, 823: 1, 824: 1, 825: 1, 826: 1, 827: 1, 828: 1, 829: 1, 830: 1, 831: 1, 832: 1, 833: 1, 834: 1, 835: 1, 836: 1, 837: 1, 838: 1, 839: 1, 840: 1, 841: 1, 842: 1, 843: 1, 844: 1, 845: 1, 846: 1, 847: 1, 848: 1, 849: 1, 850: 1, 851: 1, 852: 1, 853: 1, 854: 1, 855: 1, 856: 1, 857: 1, 858: 1, 859: 1, 860: 1, 861: 1, 862: 1, 863: 1, 864: 1, 865: 1, 866: 1, 867: 1, 868: 1, 869: 1, 870: 1, 871: 1, 872: 1, 873: 1, 874: 1, 875: 1, 876: 1, 877: 1, 878: 1, 879: 1, 880: 1, 881: 1, 882: 1, 883: 1, 884: 1, 885: 1, 886: 1, 887: 1, 888: 1, 889: 1, 890: 1, 891: 1, 892: 1, 893: 1, 894: 1, 895: 1, 896: 1, 897: 1, 898: 1, 899: 1, 900: 1, 901: 1, 902: 1, 903: 1, 904: 1, 905: 1, 906: 1, 907: 1, 908: 1, 909: 1, 910: 1, 911: 1, 912: 1, 913: 1, 914: 1, 915: 1, 916: 1, 917: 1, 918: 1, 919: 1, 920: 1, 921: 1, 922: 1, 923: 1, 924: 1, 925: 1, 926: 1, 927: 1, 928: 1, 929: 1, 930: 1, 931: 1, 932: 1, 933: 1, 934: 1, 935: 1, 936: 1, 937: 1, 938: 1, 939: 1, 940: 1, 941: 1, 942: 1, 943: 1, 944: 1, 945: 1, 946: 1, 947: 1, 948: 1, 949: 1, 950: 1, 951: 1, 952: 1, 953: 1, 954: 1, 955: 1, 956: 1, 957: 1, 958: 1, 959: 1, 960: 1, 961: 1, 962: 1, 963: 1, 964: 1, 965: 1, 966: 1, 967: 1, 968: 1, 969: 1, 970: 1, 971: 1, 972: 1, 973: 1, 974: 1, 975: 1, 976: 1, 977: 1, 978: 1, 979: 1, 980: 1, 981: 1, 982: 1, 983: 1, 984: 1, 985: 1, 986: 1, 987: 1, 988: 1, 989: 1, 990: 1, 991: 1, 992: 1, 993: 1, 994: 1, 995: 1, 996: 1, 997: 1, 998: 1, 999: 1, 1000: 1, 1001: 1, 1002: 1, 1003: 1, 1004: 1, 1005: 1, 1006: 1, 1007: 1, 1008: 1, 1009: 1, 1010: 1, 1011: 1, 1012: 1, 1013: 1, 1014: 1, 1015: 1, 1016: 1, 1017: 1, 1018: 1, 1019: 1, 1020: 1, 1021: 1, 1022: 1, 1023: 1, 1024: 1, 1025: 1, 1026: 1, 1027: 1, 1028: 1, 1029: 1, 1030: 1, 1031: 1, 1032: 1, 1033: 1, 1034: 1, 1035: 1, 1036: 1, 1037: 1, 1038: 1, 1039: 1, 1040: 1, 1041: 1, 1042: 1, 1043: 1, 1044: 1, 1045: 1, 1046: 1, 1047: 1, 1048: 1, 1049: 1, 1050: 1, 1051: 1, 1052: 1, 1053: 1, 1054: 1, 1055: 1, 1056: 1, 1057: 1, 1058: 1, 1059: 1, 1060: 1, 1061: 1, 1062: 1, 1063: 1, 1064: 1, 1065: 1, 1066: 1, 1067: 1, 1068: 1, 1069: 1, 1070: 1, 1071: 1, 1072: 1, 1073: 1, 1074: 1, 1075: 1, 1076: 1, 1077: 1, 1078: 1, 1079: 1, 1080: 1, 1081: 1, 1082: 1, 1083: 1, 1084: 1, 1085: 1, 1086: 1, 1087: 1, 1088: 1, 1089: 1, 1090: 1, 1091: 1, 1092: 1, 1093: 1, 1094: 1, 1095: 1, 1096: 1, 1097: 1, 1098: 1, 1099: 1, 1100: 1, 1101: 1, 1102: 1, 1103: 1, 1104: 1, 1105: 1, 1106: 1, 1107: 1, 1108: 1, 1109: 1, 1110: 1, 1111: 1, 1112: 1, 1113: 1, 1114: 1, 1115: 1, 1116: 1, 1117: 1, 1118: 1, 1119: 1, 1120: 1, 1121: 1, 1122: 1, 1123: 1, 1124: 1, 1125: 1, 1126: 1, 1127: 1} """ Modified: qa/fbt-repository/trunk/tests/bugs/core_2420.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_2420.fbt 2013-04-05 09:35:57 UTC (rev 57906) +++ qa/fbt-repository/trunk/tests/bugs/core_2420.fbt 2013-04-05 10:43:19 UTC (rev 57907) @@ -39,7 +39,7 @@ into :cod, :num, :name, :summa do exit; end""") -print 'Execution OK' +print ('Execution OK') ''', 'expected_stdout': """Execution OK Modified: qa/fbt-repository/trunk/tests/bugs/core_3231.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_3231.fbt 2013-04-05 09:35:57 UTC (rev 57906) +++ qa/fbt-repository/trunk/tests/bugs/core_3231.fbt 2013-04-05 10:43:19 UTC (rev 57907) @@ -16,24 +16,24 @@ c.execute("with q(s) as (select cast('abcdefghijklmno' as blob sub_type 1 character set utf8) from rdb$database) select overlay (s placing cast('0123456789' as blob sub_type 1 character set utf8) from 5) from q") c.fetchall() except Exception,e: - print "Test non multi-bytes Failed" - print e + print ("Test non multi-bytes Failed") + print (e) else: pass try: c.execute("with q(s) as (select cast('abcdefghijklmno' as blob sub_type 1 character set utf8) from rdb$database) select overlay (s placing cast(_iso8859_1 'áé' as blob sub_type 1 character set utf8) from 5) from q") c.fetchall() except Exception,e: - print "Test utf8 Failed" - print e + print ("Test utf8 Failed") + print (e) else: pass try: c.execute("with q(s) as (select cast('abcdefghijklmno' as blob sub_type 1 character set utf8) from rdb$database) select overlay (s placing cast(_iso8859_1 'áé' as blob sub_type 1 character set iso8859_1) from 5) from q") c.fetchall() except Exception,e: - print "Test iso8859_1 Failed" - print e + print ("Test iso8859_1 Failed") + print (e) else: pass """ Modified: qa/fbt-repository/trunk/tests/bugs/core_3245.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_3245.fbt 2013-04-05 09:35:57 UTC (rev 57906) +++ qa/fbt-repository/trunk/tests/bugs/core_3245.fbt 2013-04-05 10:43:19 UTC (rev 57907) @@ -10,8 +10,10 @@ 'firebird_version': '2.1.5', 'platform': 'All', 'page_size': '4096', - 'test_type': 'ISQL', - 'test_script': """ with q (s) as ( + 'test_type': 'Python', + 'test_script': '''cur = db_conn.cursor() +cmd = """ + with q (s) as ( select cast(cast('abc' as char(32767)) as blob sub_type text) || cast('def' as char(32767)) || cast('ghi' as char(32767)) @@ -26,26 +28,14 @@ select char_length(s), right(s, 3), char_length(sub_for), right(sub_for, 3), char_length(sub_nofor), right(sub_nofor, 3) - from q cross join r;""", - 'expected_stdout': """Database: localhost:C:\fbtestnew\tmp\bugs.core_3245.fdb, User: SYSDBA -SQL> CON> CON> CON> CON> CON> CON> CON> CON> CON> CON> CON> CON> CON> CON> CON> - CHAR_LENGTH RIGHT CHAR_LENGTH RIGHT CHAR_LENGTH RIGHT -============ ================= ============ ================= ============ ================= - 98304 0:3c 90305 0:25 90305 0:c -============================================================================== -RIGHT: -jkl -============================================================================== -============================================================================== -RIGHT: -jkl -============================================================================== -============================================================================== -RIGHT: -jkl -============================================================================== - -SQL>""" + from q cross join r;""" +cur.execute(cmd) +printData(cur) +''', + 'expected_stdout': """CHAR_LENGTH RIGHT CHAR_LENGTH RIGHT CHAR_LENGTH RIGHT +----------- ----- ----------- ----- ----------- ----- +98304 jkl 90305 jkl 90305 jkl +""" } ] } Modified: qa/fbt-repository/trunk/tests/bugs/core_3517.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_3517.fbt 2013-04-05 09:35:57 UTC (rev 57906) +++ qa/fbt-repository/trunk/tests/bugs/core_3517.fbt 2013-04-05 10:43:19 UTC (rev 57907) @@ -13,13 +13,12 @@ 'test_type': 'ISQL', 'test_script': """select LPAD('abc', '0', 3) FROM RDB$DATABASE; """, - 'expected_stdout': """Database: localhost:C:\fbtestnew\tmp\bugs.core_3517.fdb, User: SYSDBA -SQL> + 'expected_stdout': """ LPAD -=============================================================================== +====== -SQL>""" +""" } ] } Modified: qa/fbt-repository/trunk/tests/functional/arno/indices/upper_lower_bounds_01.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/arno/indices/upper_lower_bounds_01.fbt 2013-04-05 09:35:57 UTC (rev 57906) +++ qa/fbt-repository/trunk/tests/functional/arno/indices/upper_lower_bounds_01.fbt 2013-04-05 10:43:19 UTC (rev 57907) @@ -1,10 +1,11 @@ { -'id': 'functional.arno.indexes.upper_lower_bounds_01', +'id': 'functional.arno.indices.upper_lower_bounds_01', 'qmid': 'functional.arno.indexes.upper_lower_bounds_01', 'tracker_id': '', 'title': 'upper and lower bounds', 'description': """equal comparison should be prefered. Lower and Upper bounds are bound by the same value.""", +'min_versions': None, 'versions': [ { 'firebird_version': '1.5', @@ -67,8 +68,8 @@ self.addIndexed(tabid, reads) #-- def show(self): - print 'sequential : ',self.sequential - print 'indexed : ',self.indexed + print ('sequential : ',self.sequential) + print ('indexed : ',self.indexed) cursor=db_conn.cursor() Modified: qa/fbt-repository/trunk/tests/functional/arno/indices/upper_lower_bounds_02.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/arno/indices/upper_lower_bounds_02.fbt 2013-04-05 09:35:57 UTC (rev 57906) +++ qa/fbt-repository/trunk/tests/functional/arno/indices/upper_lower_bounds_02.fbt 2013-04-05 10:43:19 UTC (rev 57907) @@ -1,10 +1,11 @@ { -'id': 'functional.arno.indexes.upper_lower_bounds_02', +'id': 'functional.arno.indices.upper_lower_bounds_02', 'qmid': 'functional.arno.indexes.upper_lower_bounds_02', 'tracker_id': '', 'title': 'upper and lower bounds', 'description': '''"Less or equal than" should be prefered above "less than" and "greater or equal than" above "greater than". ''', +'min_versions': None, 'versions': [ { 'firebird_version': '2.0', @@ -67,8 +68,8 @@ self.addIndexed(tabid, reads) #-- def show(self): - print 'sequential : ',self.sequential - print 'indexed : ',self.indexed + print ('sequential : ',self.sequential) + print ('indexed : ',self.indexed) cursor=db_conn.cursor() Modified: qa/fbt-repository/trunk/tests/functional/database/alter_03.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/database/alter_03.fbt 2013-04-05 09:35:57 UTC (rev 57906) +++ qa/fbt-repository/trunk/tests/functional/database/alter_03.fbt 2013-04-05 10:43:19 UTC (rev 57907) @@ -17,10 +17,10 @@ cursor.execute("ALTER DATABASE ADD FILE '$(DATABASE_LOCATION)TEST.G00' STARTING 20000") db_conn.commit() except kdb.ProgrammingError, (errno,errmsg): - print errno, errmsg + print (errno, errmsg) except: - print "Unexpected exception",sys.exc_info()[0] - print "Arguments",sys.exc_info()[1] + print ("Unexpected exception",sys.exc_info()[0]) + print ("Arguments",sys.exc_info()[1]) """, 'expected_stdout': '-607 isc_dsql_execute: unsuccessful metadata update. Cannot add file with the same name as the database or added files.' }, @@ -36,13 +36,12 @@ cursor.execute("ALTER DATABASE ADD FILE '$(DATABASE_LOCATION)TEST.G00' STARTING 20000") db_conn.commit() except kdb.DatabaseError, e: - print e[0] + print (e[0]) except: - print "Unexpected exception",sys.exc_info()[0] - print "Arguments",sys.exc_info()[1]""", + print ("Unexpected exception",sys.exc_info()[0]) + print ("Arguments",sys.exc_info()[1])""", 'expected_stdout': """Error while executing SQL statement: - SQLCODE: -607 -- This operation is not defined for system tables. - unsuccessful metadata update - Cannot add file with the same name as the database or added files """ @@ -58,10 +57,10 @@ cursor.execute("ALTER DATABASE ADD FILE '$(DATABASE_LOCATION)TEST.G00' STARTING 20000") db_conn.commit() except kdb.ProgrammingError, (errno,errmsg): - print errno, errmsg + print (errno, errmsg) except: - print "Unexpected exception",sys.exc_info()[0] - print "Arguments",sys.exc_info()[1] + print ("Unexpected exception",sys.exc_info()[0]) + print ("Arguments",sys.exc_info()[1]) """, 'expected_stdout': """-607 isc_dsql_execute: unsuccessful metadata update Modified: qa/fbt-repository/trunk/tests/functional/dml/cte_02.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/dml/cte_02.fbt 2013-04-05 09:35:57 UTC (rev 57906) +++ qa/fbt-repository/trunk/tests/functional/dml/cte_02.fbt 2013-04-05 10:43:19 UTC (rev 57907) @@ -88,13 +88,15 @@ """, - 'expected_stdout': """ID_TYPE_PRODUCT NAME COUNT_P + 'expected_stdout': """ +ID_TYPE_PRODUCT NAME COUNT_P =============== ====================== ============ 1 + DVD 6 3 - FILM SF 3 4 - FILM ACTION 1 5 - FILM ROMANCE 2 - 2 + BOOK 0 + 2 + BOOK <null> + """ } ] Modified: qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_01.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_01.fbt 2013-04-05 09:35:57 UTC (rev 57906) +++ qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_01.fbt 2013-04-05 10:43:19 UTC (rev 57907) @@ -55,8 +55,7 @@ c.execute("INSERT INTO DETAIL_TABLE (ID, FKEY) VALUES (1,1)") con_detail.commit() except Exception, e: - #for msg in e: print msg - print e[0]""" + print (e[0])""" } ] } Modified: qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_02.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_02.fbt 2013-04-05 09:35:57 UTC (rev 57906) +++ qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_02.fbt 2013-04-05 10:43:19 UTC (rev 57907) @@ -55,8 +55,7 @@ c.execute("INSERT INTO DETAIL_TABLE (ID, FKEY) VALUES (1,1)") con_detail.commit() except Exception, e: - #for msg in e: print msg - print e[0]""", + print (e[0])""", 'expected_stdout': """Error while executing SQL statement: - SQLCODE: -901 - Unsuccessful execution caused by system error that does not preclude successful execution of subsequent statements @@ -111,11 +110,9 @@ c.execute("INSERT INTO DETAIL_TABLE (ID, FKEY) VALUES (1,1)") con_detail.commit() except Exception, e: - #for msg in e: print msg - print e[0]""", + print (e[0])""", 'expected_stdout': """Error while executing SQL statement: - SQLCODE: -530 -- violation of FOREIGN KEY constraint "" - violation of FOREIGN KEY constraint "FK_DETAIL_TABLE" on table "DETAIL_TABLE" - Foreign key reference target does not exist """ Modified: qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_03.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_03.fbt 2013-04-05 09:35:57 UTC (rev 57906) +++ qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_03.fbt 2013-04-05 10:43:19 UTC (rev 57907) @@ -63,8 +63,7 @@ cd.execute("INSERT INTO DETAIL_TABLE (ID, FKEY) VALUES (1,1)") con_detail.commit() except Exception, e: - #for msg in e: print msg - print e[0]""", + print (e[0])""", 'expected_stdout': """Error while executing SQL statement: - SQLCODE: -901 - Unsuccessful execution caused by system error that does not preclude successful execution of subsequent statements @@ -123,11 +122,9 @@ cd.execute("INSERT INTO DETAIL_TABLE (ID, FKEY) VALUES (1,1)") con_detail.commit() except Exception, e: - #for msg in e: print msg - print e[0]""", + print (e[0])""", 'expected_stdout': """Error while executing SQL statement: - SQLCODE: -530 -- violation of FOREIGN KEY constraint "" - violation of FOREIGN KEY constraint "FK_DETAIL_TABLE" on table "DETAIL_TABLE" - Foreign key reference target does not exist """ Modified: qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_04.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_04.fbt 2013-04-05 09:35:57 UTC (rev 57906) +++ qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_04.fbt 2013-04-05 10:43:19 UTC (rev 57907) @@ -63,8 +63,7 @@ cd.execute("INSERT INTO DETAIL_TABLE (ID, FKEY) VALUES (1,1)") con_detail.commit() except Exception, e: - #for msg in e: print msg - print e[0]""", + print (e[0])""", 'expected_stdout': """Error while executing SQL statement: - SQLCODE: -901 - Unsuccessful execution caused by system error that does not preclude successful execution of subsequent statements @@ -123,11 +122,9 @@ cd.execute("INSERT INTO DETAIL_TABLE (ID, FKEY) VALUES (1,1)") con_detail.commit() except Exception, e: - #for msg in e: print msg - print e[0]""", + print (e[0])""", 'expected_stdout': """Error while executing SQL statement: - SQLCODE: -530 -- violation of FOREIGN KEY constraint "" - violation of FOREIGN KEY constraint "FK_DETAIL_TABLE" on table "DETAIL_TABLE" - Foreign key reference target does not exist """ Modified: qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_05.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_05.fbt 2013-04-05 09:35:57 UTC (rev 57906) +++ qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_05.fbt 2013-04-05 10:43:19 UTC (rev 57907) @@ -56,8 +56,7 @@ c.execute("INSERT INTO DETAIL_TABLE (ID, FKEY) VALUES (1,2)") con_detail.commit() except Exception, e: - #for msg in e: print msg - print e[0]""" + print (e[0])""" } ] } Modified: qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_06.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_06.fbt 2013-04-05 09:35:57 UTC (rev 57906) +++ qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_06.fbt 2013-04-05 10:43:19 UTC (rev 57907) @@ -59,8 +59,7 @@ c.execute("INSERT INTO DETAIL_TABLE (ID, FKEY) VALUES (1,2)") con_detail.commit() except Exception, e: - #for msg in e: print msg - print e[0]""" + print (e[0])""" } ] } Modified: qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_07.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_07.fbt 2013-04-05 09:35:57 UTC (rev 57906) +++ qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_07.fbt 2013-04-05 10:43:19 UTC (rev 57907) @@ -58,8 +58,7 @@ cd.execute("INSERT INTO DETAIL_TABLE (ID, FKEY_1, FKEY_2) VALUES (1, 1, 'one')") con_detail.commit() except Exception, e: - #for msg in e: print msg - print e[0]""" + print (e[0])""" } ] } Modified: qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_08.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_08.fbt 2013-04-05 09:35:57 UTC (rev 57906) +++ qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_08.fbt 2013-04-05 10:43:19 UTC (rev 57907) @@ -58,8 +58,7 @@ cd.execute("INSERT INTO DETAIL_TABLE (ID, FKEY_1, FKEY_2) VALUES (1, 1, 'one')") con_detail.commit() except Exception, e: - #for msg in e: print msg - print e[0]""", + print (e[0])""", 'expected_stdout': """Error while executing SQL statement: - SQLCODE: -901 - Unsuccessful execution caused by system error that does not preclude successful execution of subsequent statements @@ -116,11 +115,9 @@ cd.execute("INSERT INTO DETAIL_TABLE (ID, FKEY_1, FKEY_2) VALUES (1, 1, 'one')") con_detail.commit() except Exception, e: - #for msg in e: print msg - print e[0]""", + print (e[0])""", 'expected_stdout': """Error while executing SQL statement: - SQLCODE: -530 -- violation of FOREIGN KEY constraint "" - violation of FOREIGN KEY constraint "FK_DETAIL_TABLE" on table "DETAIL_TABLE" - Foreign key reference target does not exist """ Modified: qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_09.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_09.fbt 2013-04-05 09:35:57 UTC (rev 57906) +++ qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_09.fbt 2013-04-05 10:43:19 UTC (rev 57907) @@ -59,8 +59,7 @@ cd.execute("INSERT INTO DETAIL_TABLE (ID, FKEY_1, FKEY_2) VALUES (1, 1, 'one')") con_detail.commit() except Exception, e: - #for msg in e: print msg - print e[0]""", + print (e[0])""", 'expected_stdout': """Error while executing SQL statement: - SQLCODE: -901 - Unsuccessful execution caused by system error that does not preclude successful execution of subsequent statements @@ -118,11 +117,9 @@ cd.execute("INSERT INTO DETAIL_TABLE (ID, FKEY_1, FKEY_2) VALUES (1, 1, 'one')") con_detail.commit() except Exception, e: - #for msg in e: print msg - print e[0]""", + print (e[0])""", 'expected_stdout': """Error while executing SQL statement: - SQLCODE: -530 -- violation of FOREIGN KEY constraint "" - violation of FOREIGN KEY constraint "FK_DETAIL_TABLE" on table "DETAIL_TABLE" - Foreign key reference target does not exist """ Modified: qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_10.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_10.fbt 2013-04-05 09:35:57 UTC (rev 57906) +++ qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_10.fbt 2013-04-05 10:43:19 UTC (rev 57907) @@ -59,8 +59,7 @@ cd.execute("INSERT INTO DETAIL_TABLE (ID, FKEY_1, FKEY_2) VALUES (1, 2, 'one')") con_detail.commit() except Exception, e: - #for msg in e: print msg - print e[0]""" + print (e[0])""" } ] } Modified: qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_11.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_11.fbt 2013-04-05 09:35:57 UTC (rev 57906) +++ qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_11.fbt 2013-04-05 10:43:19 UTC (rev 57907) @@ -59,8 +59,7 @@ cd.execute("INSERT INTO DETAIL_TABLE (ID, FKEY_1, FKEY_2) VALUES (1, 2, 'two')") con_detail.commit() except Exception, e: - #for msg in e: print msg - print e[0]""" + print (e[0])""" } ] } Modified: qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_12.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_12.fbt 2013-04-05 09:35:57 UTC (rev 57906) +++ qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_12.fbt 2013-04-05 10:43:19 UTC (rev 57907) @@ -63,8 +63,7 @@ cd.execute("INSERT INTO DETAIL_TABLE (ID, FKEY_1, FKEY_2) VALUES (1, 2, 'two')") con_detail.commit() except Exception, e: - #for msg in e: print msg - print e[0]""" + print (e[0])""" } ] } Modified: qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_13.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_13.fbt 2013-04-05 09:35:57 UTC (rev 57906) +++ qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_13.fbt 2013-04-05 10:43:19 UTC (rev 57907) @@ -54,11 +54,9 @@ cd.execute("INSERT INTO DETAIL_TABLE (ID, FKEY) VALUES (1,1)") con_detail.commit() except Exception, e: - #for msg in e: print msg - print e[0]""", + print (e[0])""", 'expected_stdout': """Error while executing SQL statement: - SQLCODE: -901 -- Unsuccessful execution caused by system error that does not preclude successful execution of subsequent statements - lock conflict on no wait transaction - violation of FOREIGN KEY constraint "FK_DETAIL_TABLE" on table "DETAIL_TABLE" - Foreign key reference target does not exist Modified: qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_14.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_14.fbt 2013-04-05 09:35:57 UTC (rev 57906) +++ qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_14.fbt 2013-04-05 10:43:19 UTC (rev 57907) @@ -55,11 +55,9 @@ cd.execute("INSERT INTO DETAIL_TABLE (ID, FKEY) VALUES (1,1)") con_detail.commit() except Exception, e: - #for msg in e: print msg - print e[0]""", + print (e[0])""", 'expected_stdout': """Error while executing SQL statement: - SQLCODE: -530 -- violation of FOREIGN KEY constraint "" - violation of FOREIGN KEY constraint "FK_DETAIL_TABLE" on table "DETAIL_TABLE" - Foreign key reference target does not exist """ Modified: qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_15.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_15.fbt 2013-04-05 09:35:57 UTC (rev 57906) +++ qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_15.fbt 2013-04-05 10:43:19 UTC (rev 57907) @@ -53,8 +53,7 @@ cd.execute("INSERT INTO DETAIL_TABLE (ID, FKEY) VALUES (1,2)") con_detail.commit() except Exception, e: - #for msg in e: print msg - print e[0]""", + print (e[0])""", 'expected_stdout': """Error while executing SQL statement: - SQLCODE: -901 - Unsuccessful execution caused by system error that does not preclude successful execution of subsequent statements @@ -62,6 +61,57 @@ - violation of FOREIGN KEY constraint "FK_DETAIL_TABLE" on table "DETAIL_TABLE" - Foreign key reference target does not exist """ +}, +{ + 'firebird_version': '2.5.2', + 'platform': 'All', + 'init_script': """CREATE TABLE MASTER_TABLE ( + ID INTEGER PRIMARY KEY, + INT_F INTEGER +); + +CREATE TABLE DETAIL_TABLE ( + ID INTEGER PRIMARY KEY, + FKEY INTEGER +); + +ALTER TABLE DETAIL_TABLE ADD CONSTRAINT FK_DETAIL_TABLE FOREIGN KEY (FKEY) REFERENCES MASTER_TABLE (ID); +COMMIT;""", + 'test_type': 'Python', + 'test_script': """TPB_master = ( + chr(kdb.isc_tpb_write) + + chr(kdb.isc_tpb_read_committed) + chr(kdb.isc_tpb_rec_version) + + chr(kdb.isc_tpb_nowait) + ) +TPB_detail = ( + chr(kdb.isc_tpb_write) + + chr(kdb.isc_tpb_read_committed) + chr(kdb.isc_tpb_rec_version) + + chr(kdb.isc_tpb_nowait) + ) +db_conn.begin(tpb=TPB_master) +cm_1 = db_conn.cursor() +cm_1.execute('INSERT INTO MASTER_TABLE (ID, INT_F) VALUES (2, 20)') + +#Create second connection for change detail table +con_detail = kdb.connect( + dsn=dsn.encode(), + user=user_name.encode(), + password=user_password.encode() +) + +try: + con_detail.begin(tpb=TPB_detail) + cd = con_detail.cursor() + cd.execute("INSERT INTO DETAIL_TABLE (ID, FKEY) VALUES (1,2)") + con_detail.commit() +except Exception, e: + print (e[0])""", + 'expected_stdout': """Error while executing SQL statement: +- SQLCODE: -901 +- lock conflict on no wait transaction +- violation of FOREIGN KEY constraint "FK_DETAIL_TABLE" on table "DETAIL_TABLE" +- Foreign key reference target does not exist +""" } ] } Modified: qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_16.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_16.fbt 2013-04-05 09:35:57 UTC (rev 57906) +++ qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_16.fbt 2013-04-05 10:43:19 UTC (rev 57907) @@ -53,8 +53,7 @@ cd.execute("INSERT INTO DETAIL_TABLE (ID, FKEY) VALUES (1,1)") con_detail.commit() except Exception, e: - #for msg in e: print msg - print e[0]""" + print (e[0])""" } ] } Modified: qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_17.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_17.fbt 2013-04-05 09:35:57 UTC (rev 57906) +++ qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_17.fbt 2013-04-05 10:43:19 UTC (rev 57907) @@ -54,16 +54,15 @@ c = con_detail.cursor() c.execute("INSERT INTO DETAIL_TABLE (ID, FKEY) VALUES (1,1)") except Exception, e: - print e[1] + print (e[1]) try: c = db_conn.cursor() c.execute("update master_table set ID=10 WHERE ID=1") except Exception, e: - print e[0]""", + print (e[0])""", 'expected_stdout': """Error while executing SQL statement: - SQLCODE: -530 -- violation of FOREIGN KEY constraint "" - violation of FOREIGN KEY constraint "FK_DETAIL_TABLE" on table "DETAIL_TABLE" - Foreign key references are present for the record """, Modified: qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_18.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_18.fbt 2013-04-05 09:35:57 UTC (rev 57906) +++ qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_18.fbt 2013-04-05 10:43:19 UTC (rev 57907) @@ -56,16 +56,15 @@ c.execute("INSERT INTO DETAIL_TABLE (ID, FKEY) VALUES (1,1)") con_detail.commit() except Exception, e: - print e[1] + print (e[1]) try: c = db_conn.cursor() c.execute("update master_table set ID=10 WHERE ID=1") except Exception, e: - print e[0]""", + print (e[0])""", 'expected_stdout': """Error while executing SQL statement: - SQLCODE: -530 -- violation of FOREIGN KEY constraint "" - violation of FOREIGN KEY constraint "FK_DETAIL_TABLE" on table "DETAIL_TABLE" - Foreign key references are present for the record """ Modified: qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_19.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_19.fbt 2013-04-05 09:35:57 UTC (rev 57906) +++ qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_19.fbt 2013-04-05 10:43:19 UTC (rev 57907) @@ -62,8 +62,7 @@ cd.execute("INSERT INTO DETAIL_TABLE (ID, FKEY) VALUES (1,1)") con_detail.commit() except Exception, e: - #for msg in e: print msg - print e[0]""" + print (e[0])""" } ] } Modified: qa/fbt-repository/trunk/tests/functional/fkey/primary/select_pk_01.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/fkey/primary/select_pk_01.fbt 2013-04-05 09:35:57 UTC (rev 57906) +++ qa/fbt-repository/trunk/tests/functional/fkey/primary/select_pk_01.fbt 2013-04-05 10:43:19 UTC (rev 57907) @@ -55,7 +55,7 @@ c.execute("INSERT INTO DETAIL_TABLE (ID, FKEY) VALUES (1,1)") con_detail.commit() except Exception, e: - print e[0]""" + print (e[0])""" } ] } Modified: qa/fbt-repository/trunk/tests/functional/fkey/primary/select_pk_02.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/fkey/primary/select_pk_02.fbt 2013-04-05 09:35:57 UTC (rev 57906) +++ qa/fbt-repository/trunk/tests/functional/fkey/primary/select_pk_02.fbt 2013-04-05 10:43:19 UTC (rev 57907) @@ -56,17 +56,16 @@ cd.execute("INSERT INTO DETAIL_TABLE (ID, FKEY) VALUES (1,1)") con_detail.commit() except Exception, e: - print e[0] + print (e[0]) try: c.fetchall() c.execute("UPDATE MASTER_TABLE SET ID=2") db_conn.commit() except Exception, e: - print e[0]""", + print (e[0])""", 'expected_stdout': """Error while executing SQL statement: - SQLCODE: -530 -- violation of FOREIGN KEY constraint "" - violation of FOREIGN KEY constraint "FK_DETAIL_TABLE" on table "DETAIL_TABLE" - Foreign key references are present for the record """ Modified: qa/fbt-repository/trunk/tests/functional/fkey/primary/upd_pk_01.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/fkey/primary/upd_pk_01.fbt 2013-04-05 09:35:57 UTC (rev 57906) +++ qa/fbt-repository/trunk/tests/functional/fkey/primary/upd_pk_01.fbt 2013-04-05 10:43:19 UTC (rev 57907) @@ -56,8 +56,7 @@ c.execute("UPDATE DETAIL_TABLE SET ID=2 WHERE ID=1") con_detail.commit() except Exception, e: - #for msg in e: print msg - print e[0]""" + print (e[0])""" } ] } Modified: qa/fbt-repository/trunk/tests/functional/fkey/primary/upd_pk_02.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/fkey/primary/upd_pk_02.fbt 2013-04-05 09:35:57 UTC (rev 57906) +++ qa/fbt-repository/trunk/tests/functional/fkey/primary/upd_pk_02.fbt 2013-04-05 10:43:19 UTC (rev 57907) @@ -59,8 +59,7 @@ c.execute("UPDATE DETAIL_TABLE SET FKEY = 2") con_detail.commit() except Exception, e: - #for msg in e: print msg - print e[0]""" + print (e[0])""" } ] } Modified: qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_01.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_01.fbt 2013-04-05 09:35:57 UTC (rev 57906) +++ qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_01.fbt 2013-04-05 10:43:19 UTC (rev 57907) @@ -56,8 +56,7 @@ c.execute("INSERT INTO DETAIL_TABLE (ID, FKEY) VALUES (1,1)") con_detail.commit() except Exception, e: - #for msg in e: print msg - print e[0]""" + print (e[0])""" } ] } Modified: qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_02.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_02.fbt 2013-04-05 09:35:57 UTC (rev 57906) +++ qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_02.fbt 2013-04-05 10:43:19 UTC (rev 57907) @@ -56,8 +56,7 @@ c.execute("INSERT INTO DETAIL_TABLE (ID, FKEY) VALUES (1,2)") con_detail.commit() except Exception, e: - #for msg in e: print msg - print e[0]""", + print (e[0])""", 'expected_stdout': """Error while executing SQL statement: - SQLCODE: -901 - Unsuccessful execution caused by system error that does not preclude successful execution of subsequent statements @@ -113,11 +112,9 @@ c.execute("INSERT INTO DETAIL_TABLE (ID, FKEY) VALUES (1,2)") con_detail.commit() except Exception, e: - #for msg in e: print msg - print e[0]""", + print (e[0])""", 'expected_stdout': """Error while executing SQL statement: - SQLCODE: -530 -- violation of FOREIGN KEY constraint "" - violation of FOREIGN KEY constraint "FK_DETAIL_TABLE" on table "DETAIL_TABLE" - Foreign key reference target does not exist """ Modified: qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_03.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_03.fbt 2013-04-05 09:35:57 UTC (rev 57906) +++ qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_03.fbt 2013-04-05 10:43:19 UTC (rev 57907) @@ -65,11 +65,9 @@ cd.execute("... [truncated message content] |
From: <pc...@us...> - 2013-07-25 11:07:09
|
Revision: 58412 http://sourceforge.net/p/firebird/code/58412 Author: pcisar Date: 2013-07-25 11:07:06 +0000 (Thu, 25 Jul 2013) Log Message: ----------- Tests adapted to FB 3.0.0.30556 Modified Paths: -------------- qa/fbt-repository/trunk/tests/bugs/core_0959.fbt qa/fbt-repository/trunk/tests/bugs/core_1286.fbt qa/fbt-repository/trunk/tests/bugs/core_2831.fbt qa/fbt-repository/trunk/tests/functional/basic/db/db_07.fbt Modified: qa/fbt-repository/trunk/tests/bugs/core_0959.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_0959.fbt 2013-07-24 12:39:39 UTC (rev 58411) +++ qa/fbt-repository/trunk/tests/bugs/core_0959.fbt 2013-07-25 11:07:06 UTC (rev 58412) @@ -3,7 +3,7 @@ 'qmid': 'bugs.core_959-21', 'tracker_id': 'CORE-959', 'title': 'GSTAT does not work using the localhost connection string', -'description': "", +'description': '', 'min_versions': None, 'versions': [ { @@ -175,6 +175,41 @@ Analyzing database pages ... """, 'substitutions': [('^Database ".*',''),('Page size.*',''),('ODS version.*',''),('Oldest.*',''),('Next.*',''),('Bumped.*',''),('Creation date.*',''),('Attributes.*',''),('File .*',''),('Implementation.*',''),('Generation.*','')] +}, +{ + 'firebird_version': '3.0', + 'platform': 'All', + 'test_type': 'Python', + 'test_script': "runProgram('gstat',['-a','-user',user_name,'-pa',user_password,dsn])", + 'expected_stdout': """Database header page information: + Flags 0 + Generation 3 + System Change Number 0 + Page size 4096 + ODS version 12.0 + Oldest transaction 1 + Oldest active 0 + Oldest snapshot 0 + Next transaction 1 + Sequence number 0 + Next attachment ID 3 + Implementation HW=Intel/i386 little-endian OS=Windows CC=MSVC + Shadow count 0 + Page buffers 0 + Next header page 0 + Database dialect 3 + Creation date Jul 25, 2013 12:46:06 + Attributes force write + + Variable header data: + *END* + + +Database file sequence: + +Analyzing database pages ... +""", + 'substitutions': [('^Database ".*',''),('Page size.*',''),('ODS version.*',''),('Oldest.*',''),('Next.*',''),('Bumped.*',''),('Creation date.*',''),('Attributes.*',''),('File .*',''),('Implementation.*',''),('Generation.*','')] } ] } Modified: qa/fbt-repository/trunk/tests/bugs/core_1286.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_1286.fbt 2013-07-24 12:39:39 UTC (rev 58411) +++ qa/fbt-repository/trunk/tests/bugs/core_1286.fbt 2013-07-25 11:07:06 UTC (rev 58412) @@ -4,6 +4,7 @@ 'tracker_id': 'CORE-1286', 'title': 'Bug with COMPUTED BY fields', 'description': '', +'min_versions': None, 'versions': [ { 'firebird_version': '2.0.2', @@ -28,7 +29,7 @@ runProgram('isql',[dsn,'-user',user_name,'-pas',user_password],script) ''', - 'expected_stdout': """Database: localhost:c:\db\qa\bug.fdb, User: SYSDBA + 'expected_stdout': """Database: localhost:c:\db\qaug.fdb, User: SYSDBA SQL> COL1 ============ @@ -45,6 +46,46 @@ SQL> SQL>""", 'substitutions': [('Database.*',''),('SQL>.*','')] +}, +{ + 'firebird_version': '3.0', + 'platform': 'All', + 'database_character_set': 'UTF8', + 'connection_character_set': 'UTF8', + 'init_script': """create table T (COL1 INTEGER); +commit; +insert into T values (1); +insert into T values (2); +insert into T values (3); +commit; +""", + 'test_type': 'Python', + 'test_script': '''script = """select * from T; + +alter table T add STR1 computed by ('BLA-BLA-BLA'); +commit; + +select * from T; +""" + +runProgram('isql',[dsn,'-user',user_name,'-pas',user_password],script) +''', + 'expected_stdout': """ + COL1 +============ + 1 + 2 + 3 + + + COL1 STR1 +============ =========== + 1 BLA-BLA-BLA + 2 BLA-BLA-BLA + 3 BLA-BLA-BLA + +""", + 'substitutions': [('Database.*',''),('SQL>.*','')] } ] } Modified: qa/fbt-repository/trunk/tests/bugs/core_2831.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_2831.fbt 2013-07-24 12:39:39 UTC (rev 58411) +++ qa/fbt-repository/trunk/tests/bugs/core_2831.fbt 2013-07-25 11:07:06 UTC (rev 58412) @@ -22,6 +22,23 @@ """, 'substitutions': [("CREATE DATABASE '.*' PAGE_SIZE 4096 DEFAULT CHARACTER SET NONE","CREATE DATABASE '' PAGE_SIZE 4096 DEFAULT CHARACTER SET NONE")] +}, +{ + 'firebird_version': '3.0', + 'platform': 'All', + 'page_size': '4096', + 'test_type': 'Python', + 'test_script': """# +runProgram('isql',['-x',dsn,'-user',user_name,'-pass',user_password]) +""", + 'expected_stdout': """ +SET SQL DIALECT 3; + +/* CREATE DATABASE 'XXX' PAGE_SIZE 4096 DEFAULT CHARACTER SET NONE; */ + + +""", + 'substitutions': [("CREATE DATABASE '.*' PAGE_SIZE 4096 DEFAULT CHARACTER SET NONE","CREATE DATABASE '' PAGE_SIZE 4096 DEFAULT CHARACTER SET NONE")] } ] } Modified: qa/fbt-repository/trunk/tests/functional/basic/db/db_07.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/basic/db/db_07.fbt 2013-07-24 12:39:39 UTC (rev 58411) +++ qa/fbt-repository/trunk/tests/functional/basic/db/db_07.fbt 2013-07-25 11:07:06 UTC (rev 58412) @@ -742,7 +742,7 @@ SEC$USER_NAME <null> <null> <null> <null> <null> <null> <null> 31 0 14 3 <null> <null> <null> 1 <null> <null> <null> <null> <null> <null> <null> 0 31 0 3 <null> SQL$129 SYSDBA SEC$UID <null> <null> <null> <null> <null> <null> <null> 4 0 8 <null> <null> <null> <null> 1 <null> <null> <null> <null> <null> <null> <null> 0 <null> <null> <null> <null> SQL$130 SYSDBA SEC$GID <null> <null> <null> <null> <null> <null> <null> 4 0 8 <null> <null> <null> <null> 1 <null> <null> <null> <null> <null> <null> <null> 0 <null> <null> <null> <null> SQL$131 SYSDBA -SEC$NAME_PART <null> <null> <null> <null> <null> <null> <null> 31 0 14 3 <null> <null> <null> 1 <null> <null> <null> <null> <null> <null> <null> 0 31 0 3 <null> SQL$132 SYSDBA +SEC$NAME_PART <null> <null> <null> <null> <null> <null> <null> 32 0 14 3 <null> <null> <null> 1 <null> <null> <null> <null> <null> <null> <null> 0 32 0 3 <null> SQL$132 SYSDBA RDB$CLIENT_VERSION <null> <null> <null> <null> <null> <null> <null> 255 0 37 2 <null> <null> <null> 1 <null> <null> <null> <null> <null> <null> <null> 0 <null> 0 2 <null> SQL$133 SYSDBA RDB$REMOTE_VERSION <null> <null> <null> <null> <null> <null> <null> 255 0 37 2 <null> <null> <null> 1 <null> <null> <null> <null> <null> <null> <null> 0 <null> 0 2 <null> SQL$134 SYSDBA RDB$HOST_NAME <null> <null> <null> <null> <null> <null> <null> 255 0 37 3 <null> <null> <null> 1 <null> <null> <null> <null> <null> <null> <null> 0 255 0 3 <null> SQL$135 SYSDBA This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mak...@us...> - 2013-12-10 12:53:27
|
Revision: 58918 http://sourceforge.net/p/firebird/code/58918 Author: makowski Date: 2013-12-10 12:53:24 +0000 (Tue, 10 Dec 2013) Log Message: ----------- fix for Firebird 3 try to avoid false fail Modified Paths: -------------- qa/fbt-repository/trunk/tests/bugs/core_0908.fbt qa/fbt-repository/trunk/tests/bugs/core_1183.fbt qa/fbt-repository/trunk/tests/bugs/core_1263.fbt qa/fbt-repository/trunk/tests/bugs/core_1894.fbt qa/fbt-repository/trunk/tests/bugs/core_1910.fbt qa/fbt-repository/trunk/tests/bugs/core_2153.fbt qa/fbt-repository/trunk/tests/bugs/core_2685.fbt qa/fbt-repository/trunk/tests/functional/arno/derived_tables/derived_tables_06.fbt qa/fbt-repository/trunk/tests/functional/arno/derived_tables/derived_tables_07.fbt qa/fbt-repository/trunk/tests/functional/arno/derived_tables/derived_tables_08.fbt qa/fbt-repository/trunk/tests/functional/arno/derived_tables/derived_tables_09.fbt Modified: qa/fbt-repository/trunk/tests/bugs/core_0908.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_0908.fbt 2013-12-10 09:00:48 UTC (rev 58917) +++ qa/fbt-repository/trunk/tests/bugs/core_0908.fbt 2013-12-10 12:53:24 UTC (rev 58918) @@ -4,6 +4,7 @@ 'tracker_id': 'CORE-908', 'title': 'Garbage in plan output of complex statement', 'description': """This is unfortunate case. The fix for 2.1 went through several "adjustments" and we've get lost in changes. The result is that this was not properly fixed in 2.1 line (server doesn't crash, but don't returns the truncated plan as supposed either). Now when 2.1 line is at 2.1.3 we can hope for proper fix in 2.1.4. It should work as intended in 2.5 line.""", +'min_versions': None, 'versions': [ { 'firebird_version': '2.1', @@ -263,6 +264,133 @@ 1 """ +}, +{ + 'firebird_version': '3.0', + 'platform': 'All', + 'init_script': """set term ^; + +create procedure big_plan + returns (x integer) +as +begin + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; + select 1 from rdb$database into :x; +/* select 1 from rdb$relations into :x; */ + suspend; +end ^ +set term ;^ +""", + 'test_type': 'ISQL', + 'test_script': """set plan on; +select * from big_plan ; +""", + 'expected_stdout': """PLAN (BIG_PLAN NATURAL) +X +============ +1 +""" } ] } Modified: qa/fbt-repository/trunk/tests/bugs/core_1183.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_1183.fbt 2013-12-10 09:00:48 UTC (rev 58917) +++ qa/fbt-repository/trunk/tests/bugs/core_1183.fbt 2013-12-10 12:53:24 UTC (rev 58918) @@ -4,6 +4,7 @@ 'tracker_id': 'CORE-1183', 'title': 'View cannot be created if its WHERE clause contains IN <subquery> with a procedure reference', 'description': '', +'min_versions': None, 'versions': [ { 'firebird_version': '2.0.2', @@ -24,7 +25,7 @@ 'test_type': 'ISQL', 'test_script': """create view v as - select * from rdb$database + select RDB$DESCRIPTION, RDB$RELATION_ID, RDB$SECURITY_CLASS, RDB$CHARACTER_SET_NAME from rdb$database where 1 in ( select col from p ); commit; Modified: qa/fbt-repository/trunk/tests/bugs/core_1263.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_1263.fbt 2013-12-10 09:00:48 UTC (rev 58917) +++ qa/fbt-repository/trunk/tests/bugs/core_1263.fbt 2013-12-10 12:53:24 UTC (rev 58918) @@ -50,6 +50,29 @@ error in switch specifications GSEC>""", 'substitutions': [('GSEC> Invalid switch specified*','GSEC> invalid switch specified'),('GSEC> invalid switch specified*','GSEC> invalid switch specified'),('error in switch specifications*',''),('in interactive mode*','')] +}, +{ + 'firebird_version': '3.0', + 'platform': 'All', + 'test_type': 'Python', + 'test_script': '''commands = """add BADPARAM -pa PWD +add BADPARAM -pas PWD +add BADPARAM -password PWD +add BADPARAM -user USR +add BADPARAM -database DB +add BADPARAM -trusted +quit +""" +runProgram('gsec',['-user',user_name,'-pas',user_password],commands)''', + 'expected_stderr': """GSEC> invalid switch specified in interactive mode +GSEC> invalid switch specified in interactive mode +GSEC> invalid switch specified in interactive mode +GSEC> invalid switch specified in interactive mode +GSEC> invalid switch specified in interactive mode +GSEC> invalid switch specified +error in switch specifications +GSEC>""", + 'substitutions': [('GSEC> Invalid switch specified*','GSEC> invalid switch specified'),('GSEC> invalid switch specified*','GSEC> invalid switch specified'),('error in switch specifications*',''),('in interactive mode*','')] } ] } Modified: qa/fbt-repository/trunk/tests/bugs/core_1894.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_1894.fbt 2013-12-10 09:00:48 UTC (rev 58917) +++ qa/fbt-repository/trunk/tests/bugs/core_1894.fbt 2013-12-10 12:53:24 UTC (rev 58918) @@ -61,6 +61,58 @@ -there are 1 dependencies """ +}, +{ + 'firebird_version': '3.0', + 'platform': 'All', + 'page_size': '4096', + 'init_script': """create table t ( + n integer, + n1 computed by (n), + n2 computed by (n1) +); + +create table t2 ( + n integer, + c1 computed by (1), + c2 computed by (c1) +); + +""", + 'test_type': 'ISQL', + 'test_script': """alter table t alter n1 computed by (n2); + +set autoddl off; +alter table t2 drop c1; +alter table t2 add c1 computed by (c2); +commit; + +select * from t; +select * from t2; +""", + 'expected_stderr': """Statement failed, SQLSTATE = 42000 +unsuccessful metadata update +-Cannot have circular dependencies with computed fields +Statement failed, SQLSTATE = 42000 +unsuccessful metadata update +-cannot delete +-COLUMN T2.C1 +-there are 1 dependencies +Statement failed, SQLSTATE = 42000 +unsuccessful metadata update +-cannot delete +-COLUMN T2.C1 +-there are 1 dependencies +Statement failed, SQLSTATE = 42000 +unsuccessful metadata update +-cannot delete +-COLUMN T2.C1 +-there are 1 dependencies +Statement failed, SQLSTATE = 42000 +unsuccessful metadata update +-cannot delete +-COLUMN T2.C1 +-there are 1 dependencies""" } ] } Modified: qa/fbt-repository/trunk/tests/bugs/core_1910.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_1910.fbt 2013-12-10 09:00:48 UTC (rev 58917) +++ qa/fbt-repository/trunk/tests/bugs/core_1910.fbt 2013-12-10 12:53:24 UTC (rev 58918) @@ -28,7 +28,8 @@ -Column unknown -A -At line 7, column 15 -""" +""", + 'substitutions': [('column.*','')] } ] } Modified: qa/fbt-repository/trunk/tests/bugs/core_2153.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_2153.fbt 2013-12-10 09:00:48 UTC (rev 58917) +++ qa/fbt-repository/trunk/tests/bugs/core_2153.fbt 2013-12-10 12:53:24 UTC (rev 58918) @@ -13,13 +13,13 @@ 'test_type': 'ISQL', 'test_script': """set count on ; -select * from rdb$database +select RDB$DESCRIPTION, RDB$RELATION_ID, RDB$SECURITY_CLASS, RDB$CHARACTER_SET_NAME from rdb$database where rdb$character_set_name similar to '%(av|ie){2,}%' ; -select * from rdb$database +select RDB$DESCRIPTION, RDB$RELATION_ID, RDB$SECURITY_CLASS, RDB$CHARACTER_SET_NAME from rdb$database where rdb$character_set_name similar to '%((av)|(ie)){2,}%' ; -select * from rdb$database +select RDB$DESCRIPTION, RDB$RELATION_ID, RDB$SECURITY_CLASS, RDB$CHARACTER_SET_NAME from rdb$database where rdb$character_set_name similar to '%(av)|{2,}%' ; """, 'expected_stdout': """Records affected: 0 Modified: qa/fbt-repository/trunk/tests/bugs/core_2685.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_2685.fbt 2013-12-10 09:00:48 UTC (rev 58917) +++ qa/fbt-repository/trunk/tests/bugs/core_2685.fbt 2013-12-10 12:53:24 UTC (rev 58918) @@ -111,6 +111,103 @@ CHECK_8 """ +}, +{ + 'firebird_version': '3.0', + 'platform': 'All', + 'database_character_set': 'UTF8', + 'connection_character_set': 'UTF8', + 'page_size': '4096', + 'init_script': """CREATE TABLE TEST_TABLE ( + ID INTEGER, + CAPTION VARCHAR(10) +); + +CREATE OR ALTER VIEW VW_TEST_VIEW( + ID, + CAPTION) +AS +select ID + ,CAPTION +from test_table +where ID > 0; + +COMMIT;""", + 'test_type': 'ISQL', + 'test_script': """select rdb$dependent_name test1 from rdb$dependencies where RDB$DEPENDED_ON_NAME = 'VW_TEST_VIEW'; + +CREATE OR ALTER VIEW VW_TEST_VIEW( + ID, + CAPTION) +AS +select ID + ,CAPTION +from test_table +where ID > 0 +WITH CHECK OPTION; + +COMMIT; + +select rdb$dependent_name test2 from rdb$dependencies where RDB$DEPENDED_ON_NAME = 'VW_TEST_VIEW'; + +CREATE OR ALTER VIEW VW_TEST_VIEW( + ID, + CAPTION) +AS +select ID + ,CAPTION +from test_table +where ID > 0 +WITH CHECK OPTION; +CREATE OR ALTER VIEW VW_TEST_VIEW( + ID, + CAPTION) +AS +select ID + ,CAPTION +from test_table +where ID > 0 +WITH CHECK OPTION; +CREATE OR ALTER VIEW VW_TEST_VIEW( + ID, + CAPTION) +AS +select ID + ,CAPTION +from test_table +where ID > 0 +WITH CHECK OPTION; + +COMMIT; +select rdb$dependent_name test3 from rdb$dependencies where RDB$DEPENDED_ON_NAME = 'VW_TEST_VIEW'; +CREATE OR ALTER VIEW VW_TEST_VIEW( + ID, + CAPTION) +AS +select ID + ,CAPTION +from test_table +where ID > 0 +--WITH CHECK OPTION +; +CREATE OR ALTER VIEW VW_TEST_VIEW( + ID + --,CAPTION + ) +AS +select ID + --,CAPTION +from test_table +where ID > 0; +COMMIT; +select rdb$dependent_name test4 from rdb$dependencies where RDB$DEPENDED_ON_NAME = 'VW_TEST_VIEW'; +""", + 'expected_stdout': """TEST2 +=============================== +CHECK_1 +TEST3 +=============================== +CHECK_4""" } ] } Modified: qa/fbt-repository/trunk/tests/functional/arno/derived_tables/derived_tables_06.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/arno/derived_tables/derived_tables_06.fbt 2013-12-10 09:00:48 UTC (rev 58917) +++ qa/fbt-repository/trunk/tests/functional/arno/derived_tables/derived_tables_06.fbt 2013-12-10 12:53:24 UTC (rev 58918) @@ -82,7 +82,8 @@ -T10.ID -At line 5, column 53 -""" +""", + 'substitutions': [('column.*','')] } ] } Modified: qa/fbt-repository/trunk/tests/functional/arno/derived_tables/derived_tables_07.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/arno/derived_tables/derived_tables_07.fbt 2013-12-10 09:00:48 UTC (rev 58917) +++ qa/fbt-repository/trunk/tests/functional/arno/derived_tables/derived_tables_07.fbt 2013-12-10 12:53:24 UTC (rev 58918) @@ -82,7 +82,8 @@ -T10.ID -At line 5, column 58 -""" +""", + 'substitutions': [('column.*','')] } ] } Modified: qa/fbt-repository/trunk/tests/functional/arno/derived_tables/derived_tables_08.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/arno/derived_tables/derived_tables_08.fbt 2013-12-10 09:00:48 UTC (rev 58917) +++ qa/fbt-repository/trunk/tests/functional/arno/derived_tables/derived_tables_08.fbt 2013-12-10 12:53:24 UTC (rev 58918) @@ -4,6 +4,7 @@ 'tracker_id': '', 'title': 'Derived table 8 outer reference', 'description': 'Outer reference inside derived table to other relations in from clause is not allowed.', +'min_versions': None, 'versions': [ { 'firebird_version': '2.0', @@ -81,7 +82,8 @@ -T10.ID -At line 5, column 58 -""" +""", + 'substitutions': [('column.*','')] } ] } Modified: qa/fbt-repository/trunk/tests/functional/arno/derived_tables/derived_tables_09.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/arno/derived_tables/derived_tables_09.fbt 2013-12-10 09:00:48 UTC (rev 58917) +++ qa/fbt-repository/trunk/tests/functional/arno/derived_tables/derived_tables_09.fbt 2013-12-10 12:53:24 UTC (rev 58918) @@ -4,6 +4,7 @@ 'tracker_id': '', 'title': 'Derived table 9 outer reference', 'description': 'Outer reference inside derived table to other relations in from clause is not allowed.', +'min_versions': None, 'versions': [ { 'firebird_version': '2.0', @@ -81,7 +82,8 @@ -T10.ID -At line 5, column 58 -""" +""", + 'substitutions': [('column.*','')] } ] } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mak...@us...> - 2014-06-19 14:14:03
|
Revision: 59734 http://sourceforge.net/p/firebird/code/59734 Author: makowski Date: 2014-06-19 14:13:46 +0000 (Thu, 19 Jun 2014) Log Message: ----------- Fix for Firebird 2.1.6 Modified Paths: -------------- qa/fbt-repository/trunk/tests/bugs/core_0104.fbt qa/fbt-repository/trunk/tests/bugs/core_1018.fbt qa/fbt-repository/trunk/tests/bugs/core_4093.fbt qa/fbt-repository/trunk/tests/functional/domain/create_41.fbt qa/fbt-repository/trunk/tests/functional/exception/create_02.fbt qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_02.fbt qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_03.fbt qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_04.fbt qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_08.fbt qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_09.fbt qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_13.fbt qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_14.fbt qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_15.fbt qa/fbt-repository/trunk/tests/functional/fkey/primary/select_pk_02.fbt qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_02.fbt qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_03.fbt qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_04.fbt qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_07.fbt qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_08.fbt qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_09.fbt qa/fbt-repository/trunk/tests/functional/fkey/unique/select_uf_02.fbt qa/fbt-repository/trunk/tests/functional/generator/create_02.fbt qa/fbt-repository/trunk/tests/functional/index/create_10.fbt qa/fbt-repository/trunk/tests/functional/index/create_11.fbt qa/fbt-repository/trunk/tests/functional/table/create_06.fbt Modified: qa/fbt-repository/trunk/tests/bugs/core_0104.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_0104.fbt 2014-06-19 12:44:46 UTC (rev 59733) +++ qa/fbt-repository/trunk/tests/bugs/core_0104.fbt 2014-06-19 14:13:46 UTC (rev 59734) @@ -1,9 +1,10 @@ { -'id': 'bugs.core_104', +'id': 'bugs.core_0104', 'qmid': 'bugs.core_104-250', 'tracker_id': 'CORE-104', 'title': 'Dropping and recreating a table in the same txn disables PK', 'description': '', +'min_versions': None, 'versions': [ { 'firebird_version': '2.5.0', @@ -49,6 +50,7 @@ """, 'expected_stderr': """Statement failed, SQLCODE = -803 violation of PRIMARY or UNIQUE KEY constraint "INTEG_4" on table "TEST" +-Problematic key value is ("ACOLUMN" = 1) """ } ] Modified: qa/fbt-repository/trunk/tests/bugs/core_1018.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_1018.fbt 2014-06-19 12:44:46 UTC (rev 59733) +++ qa/fbt-repository/trunk/tests/bugs/core_1018.fbt 2014-06-19 14:13:46 UTC (rev 59734) @@ -148,6 +148,20 @@ 3.0.0 """ +}, +{ + 'firebird_version': '2.1.6', + 'platform': 'All', + 'test_type': 'ISQL', + 'test_script': """select rdb$get_context('SYSTEM', 'ENGINE_VERSION') from rdb$database; +""", + 'expected_stdout': """Database: localhost:C:\Users\win7\Firebird_tests\fbt-repository\tmp\bugs.core_1018.fdb, User: SYSDBA +SQL> +RDB$GET_CONTEXT +=============================================================================== +2.1.6 + +SQL>""" } ] } Modified: qa/fbt-repository/trunk/tests/bugs/core_4093.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_4093.fbt 2014-06-19 12:44:46 UTC (rev 59733) +++ qa/fbt-repository/trunk/tests/bugs/core_4093.fbt 2014-06-19 14:13:46 UTC (rev 59734) @@ -13,6 +13,19 @@ 'test_type': 'ISQL', 'test_script': """SET HEADING OFF; select cast(cast(0 as numeric(18, 15)) * cast(0 as numeric(18, 15)) * cast(0 as numeric(18, 15)) as varchar (41)) from rdb$database;""", + 'expected_stderr': """Statement failed, SQLCODE = -413 + +conversion error from string "0.000000000000000000000000000000000000000000000" + +""" +}, +{ + 'firebird_version': '2.5', + 'platform': 'All', + 'page_size': '4096', + 'test_type': 'ISQL', + 'test_script': """SET HEADING OFF; +select cast(cast(0 as numeric(18, 15)) * cast(0 as numeric(18, 15)) * cast(0 as numeric(18, 15)) as varchar (41)) from rdb$database;""", 'expected_stderr': """Statement failed, SQLSTATE = 22018 conversion error from string "0.000000000000000000000000000000000000000000000" Modified: qa/fbt-repository/trunk/tests/functional/domain/create_41.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/domain/create_41.fbt 2014-06-19 12:44:46 UTC (rev 59733) +++ qa/fbt-repository/trunk/tests/functional/domain/create_41.fbt 2014-06-19 14:13:46 UTC (rev 59734) @@ -44,6 +44,19 @@ -violation of PRIMARY or UNIQUE KEY constraint "RDB$INDEX_2" on table "RDB$FIELDS" """ +}, +{ + 'firebird_version': '2.1', + 'platform': 'All', + 'init_script': 'CREATE DOMAIN test AS INTEGER;', + 'test_type': 'ISQL', + 'test_script': 'CREATE DOMAIN test AS VARCHAR(32);', + 'expected_stderr': """Statement failed, SQLCODE = -607 +unsuccessful metadata update +-STORE RDB$FIELDS failed +-attempt to store duplicate value (visible to active transactions) in unique index "RDB$INDEX_2" +-Problematic key value is ("RDB$FIELD_NAME" = 'TEST') +""" } ] } Modified: qa/fbt-repository/trunk/tests/functional/exception/create_02.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/exception/create_02.fbt 2014-06-19 12:44:46 UTC (rev 59733) +++ qa/fbt-repository/trunk/tests/functional/exception/create_02.fbt 2014-06-19 14:13:46 UTC (rev 59734) @@ -51,6 +51,20 @@ -Exception TEST already exists """ +}, +{ + 'firebird_version': '2.1', + 'platform': 'All', + 'init_script': """CREATE EXCEPTION test 'A1'; +commit;""", + 'test_type': 'ISQL', + 'test_script': "CREATE EXCEPTION test 'message to show';", + 'expected_stderr': """Statement failed, SQLCODE = -607 +unsuccessful metadata update +-DEFINE EXCEPTION failed +-attempt to store duplicate value (visible to active transactions) in unique index "RDB$INDEX_23" +-Problematic key value is ("RDB$EXCEPTION_NAME" = 'TEST') +""" } ] } Modified: qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_02.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_02.fbt 2014-06-19 12:44:46 UTC (rev 59733) +++ qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_02.fbt 2014-06-19 14:13:46 UTC (rev 59734) @@ -58,10 +58,10 @@ print (e[0])""", 'expected_stdout': """Error while executing SQL statement: - SQLCODE: -901 -- Unsuccessful execution caused by system error that does not preclude successful execution of subsequent statements - lock conflict on no wait transaction - violation of FOREIGN KEY constraint "FK_DETAIL_TABLE" on table "DETAIL_TABLE" - Foreign key reference target does not exist +- Problematic key value is ("FKEY" = 1) """ }, { Modified: qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_03.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_03.fbt 2014-06-19 12:44:46 UTC (rev 59733) +++ qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_03.fbt 2014-06-19 14:13:46 UTC (rev 59734) @@ -66,10 +66,10 @@ print (e[0])""", 'expected_stdout': """Error while executing SQL statement: - SQLCODE: -901 -- Unsuccessful execution caused by system error that does not preclude successful execution of subsequent statements - lock conflict on no wait transaction - violation of FOREIGN KEY constraint "FK_DETAIL_TABLE" on table "DETAIL_TABLE" - Foreign key reference target does not exist +- Problematic key value is ("FKEY" = 1) """ }, { Modified: qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_04.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_04.fbt 2014-06-19 12:44:46 UTC (rev 59733) +++ qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_04.fbt 2014-06-19 14:13:46 UTC (rev 59734) @@ -66,10 +66,10 @@ print (e[0])""", 'expected_stdout': """Error while executing SQL statement: - SQLCODE: -901 -- Unsuccessful execution caused by system error that does not preclude successful execution of subsequent statements - lock conflict on no wait transaction - violation of FOREIGN KEY constraint "FK_DETAIL_TABLE" on table "DETAIL_TABLE" - Foreign key reference target does not exist +- Problematic key value is ("FKEY" = 1) """ }, { Modified: qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_08.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_08.fbt 2014-06-19 12:44:46 UTC (rev 59733) +++ qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_08.fbt 2014-06-19 14:13:46 UTC (rev 59734) @@ -61,10 +61,10 @@ print (e[0])""", 'expected_stdout': """Error while executing SQL statement: - SQLCODE: -901 -- Unsuccessful execution caused by system error that does not preclude successful execution of subsequent statements - lock conflict on no wait transaction - violation of FOREIGN KEY constraint "FK_DETAIL_TABLE" on table "DETAIL_TABLE" - Foreign key reference target does not exist +- Problematic key value is ("FKEY_1" = 1, "FKEY_2" = 'one') """ }, { Modified: qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_09.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_09.fbt 2014-06-19 12:44:46 UTC (rev 59733) +++ qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_09.fbt 2014-06-19 14:13:46 UTC (rev 59734) @@ -62,10 +62,10 @@ print (e[0])""", 'expected_stdout': """Error while executing SQL statement: - SQLCODE: -901 -- Unsuccessful execution caused by system error that does not preclude successful execution of subsequent statements - lock conflict on no wait transaction - violation of FOREIGN KEY constraint "FK_DETAIL_TABLE" on table "DETAIL_TABLE" - Foreign key reference target does not exist +- Problematic key value is ("FKEY_1" = 1, "FKEY_2" = 'one') """ }, { Modified: qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_13.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_13.fbt 2014-06-19 12:44:46 UTC (rev 59733) +++ qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_13.fbt 2014-06-19 14:13:46 UTC (rev 59734) @@ -60,6 +60,7 @@ - lock conflict on no wait transaction - violation of FOREIGN KEY constraint "FK_DETAIL_TABLE" on table "DETAIL_TABLE" - Foreign key reference target does not exist +- Problematic key value is ("FKEY" = 1) """ } ] Modified: qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_14.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_14.fbt 2014-06-19 12:44:46 UTC (rev 59733) +++ qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_14.fbt 2014-06-19 14:13:46 UTC (rev 59734) @@ -60,6 +60,7 @@ - SQLCODE: -530 - violation of FOREIGN KEY constraint "FK_DETAIL_TABLE" on table "DETAIL_TABLE" - Foreign key reference target does not exist +- Problematic key value is ("FKEY" = 1) """ } ] Modified: qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_15.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_15.fbt 2014-06-19 12:44:46 UTC (rev 59733) +++ qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_15.fbt 2014-06-19 14:13:46 UTC (rev 59734) @@ -56,10 +56,10 @@ print (e[0])""", 'expected_stdout': """Error while executing SQL statement: - SQLCODE: -901 -- Unsuccessful execution caused by system error that does not preclude successful execution of subsequent statements - lock conflict on no wait transaction - violation of FOREIGN KEY constraint "FK_DETAIL_TABLE" on table "DETAIL_TABLE" - Foreign key reference target does not exist +- Problematic key value is ("FKEY" = 2) """ }, { Modified: qa/fbt-repository/trunk/tests/functional/fkey/primary/select_pk_02.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/fkey/primary/select_pk_02.fbt 2014-06-19 12:44:46 UTC (rev 59733) +++ qa/fbt-repository/trunk/tests/functional/fkey/primary/select_pk_02.fbt 2014-06-19 14:13:46 UTC (rev 59734) @@ -68,6 +68,7 @@ - SQLCODE: -530 - violation of FOREIGN KEY constraint "FK_DETAIL_TABLE" on table "DETAIL_TABLE" - Foreign key references are present for the record +- Problematic key value is ("ID" = 1) """ } ] Modified: qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_02.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_02.fbt 2014-06-19 12:44:46 UTC (rev 59733) +++ qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_02.fbt 2014-06-19 14:13:46 UTC (rev 59734) @@ -59,10 +59,10 @@ print (e[0])""", 'expected_stdout': """Error while executing SQL statement: - SQLCODE: -901 -- Unsuccessful execution caused by system error that does not preclude successful execution of subsequent statements - lock conflict on no wait transaction - violation of FOREIGN KEY constraint "FK_DETAIL_TABLE" on table "DETAIL_TABLE" - Foreign key reference target does not exist +- Problematic key value is ("FKEY" = 2) """ }, { Modified: qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_03.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_03.fbt 2014-06-19 12:44:46 UTC (rev 59733) +++ qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_03.fbt 2014-06-19 14:13:46 UTC (rev 59734) @@ -70,6 +70,7 @@ - SQLCODE: -530 - violation of FOREIGN KEY constraint "FK_DETAIL_TABLE" on table "DETAIL_TABLE" - Foreign key reference target does not exist +- Problematic key value is ("FKEY" = 2) """ } ] Modified: qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_04.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_04.fbt 2014-06-19 12:44:46 UTC (rev 59733) +++ qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_04.fbt 2014-06-19 14:13:46 UTC (rev 59734) @@ -68,10 +68,10 @@ print (e[0])""", 'expected_stdout': """Error while executing SQL statement: - SQLCODE: -901 -- Unsuccessful execution caused by system error that does not preclude successful execution of subsequent statements - lock conflict on no wait transaction - violation of FOREIGN KEY constraint "FK_DETAIL_TABLE" on table "DETAIL_TABLE" - Foreign key reference target does not exist +- Problematic key value is ("FKEY" = 2) """ }, { Modified: qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_07.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_07.fbt 2014-06-19 12:44:46 UTC (rev 59733) +++ qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_07.fbt 2014-06-19 14:13:46 UTC (rev 59734) @@ -62,6 +62,7 @@ - lock conflict on no wait transaction - violation of FOREIGN KEY constraint "FK_DETAIL_TABLE" on table "DETAIL_TABLE" - Foreign key reference target does not exist +- Problematic key value is ("FKEY" = 1) """ } ] Modified: qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_08.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_08.fbt 2014-06-19 12:44:46 UTC (rev 59733) +++ qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_08.fbt 2014-06-19 14:13:46 UTC (rev 59734) @@ -62,6 +62,7 @@ - SQLCODE: -530 - violation of FOREIGN KEY constraint "FK_DETAIL_TABLE" on table "DETAIL_TABLE" - Foreign key reference target does not exist +- Problematic key value is ("FKEY" = 1) """ } ] Modified: qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_09.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_09.fbt 2014-06-19 12:44:46 UTC (rev 59733) +++ qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_09.fbt 2014-06-19 14:13:46 UTC (rev 59734) @@ -60,6 +60,7 @@ - lock conflict on no wait transaction - violation of FOREIGN KEY constraint "FK_DETAIL_TABLE" on table "DETAIL_TABLE" - Foreign key reference target does not exist +- Problematic key value is ("FKEY" = 1) """ } ] Modified: qa/fbt-repository/trunk/tests/functional/fkey/unique/select_uf_02.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/fkey/unique/select_uf_02.fbt 2014-06-19 12:44:46 UTC (rev 59733) +++ qa/fbt-repository/trunk/tests/functional/fkey/unique/select_uf_02.fbt 2014-06-19 14:13:46 UTC (rev 59734) @@ -68,6 +68,7 @@ - SQLCODE: -530 - violation of FOREIGN KEY constraint "FK_DETAIL_TABLE" on table "DETAIL_TABLE" - Foreign key references are present for the record +- Problematic key value is ("UF" = 1) """ } ] Modified: qa/fbt-repository/trunk/tests/functional/generator/create_02.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/generator/create_02.fbt 2014-06-19 12:44:46 UTC (rev 59733) +++ qa/fbt-repository/trunk/tests/functional/generator/create_02.fbt 2014-06-19 14:13:46 UTC (rev 59734) @@ -53,6 +53,21 @@ -Sequence TEST already exists """ +}, +{ + 'firebird_version': '2.1', + 'platform': 'All', + 'init_script': """CREATE GENERATOR test; +commit; +""", + 'test_type': 'ISQL', + 'test_script': 'CREATE GENERATOR test;', + 'expected_stderr': """Statement failed, SQLCODE = -607 +unsuccessful metadata update +-DEFINE GENERATOR failed +-attempt to store duplicate value (visible to active transactions) in unique index "RDB$INDEX_11" +-Problematic key value is ("RDB$GENERATOR_NAME" = 'TEST') +""" } ] } Modified: qa/fbt-repository/trunk/tests/functional/index/create_10.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/index/create_10.fbt 2014-06-19 12:44:46 UTC (rev 59733) +++ qa/fbt-repository/trunk/tests/functional/index/create_10.fbt 2014-06-19 14:13:46 UTC (rev 59734) @@ -58,6 +58,22 @@ -Index TEST already exists """ +}, +{ + 'firebird_version': '2.1', + 'platform': 'All', + 'init_script': """CREATE TABLE t( a INTEGER); +CREATE INDEX test ON t(a); +commit; +""", + 'test_type': 'ISQL', + 'test_script': 'CREATE INDEX test ON t(a);', + 'expected_stderr': """Statement failed, SQLCODE = -607 +unsuccessful metadata update +-STORE RDB$INDICES failed +-attempt to store duplicate value (visible to active transactions) in unique index "RDB$INDEX_5" +-Problematic key value is ("RDB$INDEX_NAME" = 'TEST') +""" } ] } Modified: qa/fbt-repository/trunk/tests/functional/index/create_11.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/index/create_11.fbt 2014-06-19 12:44:46 UTC (rev 59733) +++ qa/fbt-repository/trunk/tests/functional/index/create_11.fbt 2014-06-19 14:13:46 UTC (rev 59734) @@ -1,5 +1,5 @@ { -'id': 'functional.index.create.11', +'id': 'functional.index.create_11', 'qmid': 'functional.index.create.create_index_11', 'tracker_id': '', 'title': 'CREATE UNIQUE INDEX - Non unique data in table', @@ -10,6 +10,7 @@ CREATE TABLE INSERT SHOW INDEX""", +'min_versions': None, 'versions': [ { 'firebird_version': '1.0', @@ -50,6 +51,26 @@ attempt to store duplicate value (visible to active transactions) in unique index "TEST" """ +}, +{ + 'firebird_version': '2.1', + 'platform': 'All', + 'init_script': """CREATE TABLE t( a INTEGER); +commit; +INSERT INTO t VALUES(0); +INSERT INTO t VALUES(0); +INSERT INTO t VALUES(1); +INSERT INTO t VALUES(2); +INSERT INTO t VALUES(3); +INSERT INTO t VALUES(4); +COMMIT; +""", + 'test_type': 'ISQL', + 'test_script': 'CREATE UNIQUE INDEX test ON t(a);', + 'expected_stderr': """Statement failed, SQLCODE = -803 +attempt to store duplicate value (visible to active transactions) in unique index "TEST" +-Problematic key value is ("A" = 0) +""" } ] } Modified: qa/fbt-repository/trunk/tests/functional/table/create_06.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/table/create_06.fbt 2014-06-19 12:44:46 UTC (rev 59733) +++ qa/fbt-repository/trunk/tests/functional/table/create_06.fbt 2014-06-19 14:13:46 UTC (rev 59734) @@ -60,6 +60,23 @@ -violation of PRIMARY or UNIQUE KEY constraint "RDB$INDEX_15" on table "RDB$RELATION_FIELDS" """ +}, +{ + 'firebird_version': '2.1', + 'platform': 'All', + 'test_type': 'ISQL', + 'test_script': """CREATE TABLE test( + c1 SMALLINT, + c1 INTEGER +); + +""", + 'expected_stderr': """Statement failed, SQLCODE = -607 +unsuccessful metadata update +-STORE RDB$RELATION_FIELDS failed +-attempt to store duplicate value (visible to active transactions) in unique index "RDB$INDEX_15" +-Problematic key value is ("RDB$FIELD_NAME" = 'C1', "RDB$RELATION_NAME" = 'TEST') +""" } ] } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mak...@us...> - 2014-07-28 11:55:05
|
Revision: 59921 http://sourceforge.net/p/firebird/code/59921 Author: makowski Date: 2014-07-28 11:54:55 +0000 (Mon, 28 Jul 2014) Log Message: ----------- Fix for Firebird 2.5.3 Modified Paths: -------------- qa/fbt-repository/trunk/tests/bugs/core_0104.fbt qa/fbt-repository/trunk/tests/bugs/core_0501.fbt qa/fbt-repository/trunk/tests/bugs/core_1462.fbt qa/fbt-repository/trunk/tests/bugs/core_1559.fbt qa/fbt-repository/trunk/tests/functional/domain/create_41.fbt qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_02.fbt qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_03.fbt qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_04.fbt qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_08.fbt qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_09.fbt qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_15.fbt qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_17.fbt qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_18.fbt qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_02.fbt qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_04.fbt qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_12.fbt qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_13.fbt qa/fbt-repository/trunk/tests/functional/index/create_11.fbt qa/fbt-repository/trunk/tests/functional/table/create_06.fbt Modified: qa/fbt-repository/trunk/tests/bugs/core_0104.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_0104.fbt 2014-07-28 11:03:49 UTC (rev 59920) +++ qa/fbt-repository/trunk/tests/bugs/core_0104.fbt 2014-07-28 11:54:55 UTC (rev 59921) @@ -52,6 +52,30 @@ violation of PRIMARY or UNIQUE KEY constraint "INTEG_4" on table "TEST" -Problematic key value is ("ACOLUMN" = 1) """ +}, +{ + 'firebird_version': '2.5.3', + 'platform': 'All', + 'init_script': """create table test (acolumn int not null primary key); +commit; +""", + 'test_type': 'ISQL', + 'test_script': """SET AUTODDL OFF; + +drop table test; +create table test (acolumn int not null primary key); + +commit; + +insert into test values (1); +insert into test values (1); + +commit; +""", + 'expected_stderr': """Statement failed, SQLSTATE = 23000 +violation of PRIMARY or UNIQUE KEY constraint "INTEG_4" on table "TEST" +-Problematic key value is ("ACOLUMN" = 1) +""" } ] } Modified: qa/fbt-repository/trunk/tests/bugs/core_0501.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_0501.fbt 2014-07-28 11:03:49 UTC (rev 59920) +++ qa/fbt-repository/trunk/tests/bugs/core_0501.fbt 2014-07-28 11:54:55 UTC (rev 59921) @@ -1,5 +1,5 @@ { -'id': 'bugs.core_501', +'id': 'bugs.core_0501', 'qmid': None, 'tracker_id': 'CORE-501', 'title': 'Problem with COALESCE', @@ -485,6 +485,457 @@ -SQLDA missing or incorrect version, or incorrect number/type of variables """ +}, +{ + 'firebird_version': '2.5.3', + 'platform': 'All', + 'page_size': '4096', + 'init_script': """create sequence s1; +""", + 'test_type': 'ISQL', + 'test_script': """-- test computed expressions +create table t1 ( + n integer primary key, + x integer, + cn computed by (coalesce(n + 0, null)), + cx computed by (coalesce(x + 0, null)) +); + +-- test update or insert +update or insert into t1 values (next value for s1, 10); +update or insert into t1 values (next value for s1, 20); +update or insert into t1 values (next value for s1, 30); + +select * from t1; + +-- test sequence value after update or insert +select gen_id(s1, 0) from rdb$database; + +-- test update or insert using coalesce +update or insert into t1 + values (coalesce((select first 1 n from t1 order by n), null), coalesce(40 + 60, 0)); + +-- test update or insert in PSQL +set term ^ ; +execute block returns (n integer, x integer, cn integer, cx integer) +as + declare z integer = 200; +begin + update or insert into t1 + values (coalesce((select first 1 skip 1 n from t1 order by n), null), :z); + + for select n, x, cn, cx from t1 into n, x, cn, cx do + suspend; +end^ + +set term ; ^ + +select gen_id(s1, 0) from rdb$database; + +-- test view +create view v1 as + select t1.*, coalesce(n + 0, null) vcn from t1; + +select * from v1; + +-- test update or insert into a view +update or insert into v1 values (next value for s1, 40); + +-- test update or insert into a view in PSQL +set term ^ ; + +execute block returns (n integer, x integer, cn integer, cx integer) +as + declare z integer = 300; +begin + update or insert into v1 values ((select first 1 skip 2 n from t1 order by n), :z); + + for select n, x, cn, cx from v1 into n, x, cn, cx do + suspend; +end^ + + +-- test view trigger +create trigger v1_bi before insert on v1 +as + declare z integer = 1000; +begin + insert into t1 values (coalesce(new.n + :z, null), new.x); +end^ + +set term ; ^ + +insert into v1 values (8, 88); + +select * from v1; + +-- test coalesce +select coalesce(n * 1, null) from v1; +select coalesce(n * 1, null) from t1 group by coalesce(n * 1, null); +select coalesce(n * 1, null) from v1 group by coalesce(n * 1, null); +select coalesce(n * 1, null) from v1 group by 1; +select coalesce(n * 1, null) from v1 group by 1 having coalesce(n * 1, null) < 100; +select coalesce(n * 10, null) from v1 order by 1; +select coalesce(n * 10, null), coalesce(x * 10, null) from v1 order by 2 desc, 1 desc; +select coalesce(n * 10, null), coalesce(x * 10, null) from v1 order by 1 desc, 2 desc; + +-- test case +select case n * 1 when 1 then n * 1 else n + 0 end + from v1 group by case n * 1 when 1 then n * 1 else n + 0 end; +select case n * 1 when 1 then n * 1 else n + 0 end from v1 group by 1; +select case n * 1 when 1 then n * 1 else n + 0 end + from v1 group by 1 having case n * 1 when 1 then n * 1 else n + 0 end < 100; +select case n * 1 when 1 then n * 1 else n + 0 end from v1 order by 1 desc; + +-- test non-valid statements +select coalesce(n * 1, null) from v1 group by 1 having coalesce(n * 0, null) < 100; +select case n * 1 when 1 then n * 1 else n + 0 end + from v1 group by case n * 1 when 1 then n * 1 else n + 1 end; +select case n * 1 when 1 then n * 1 else n + 0 end + from v1 group by 1 having case n * 1 when 1 then n * 1 else n + 1 end < 100; + +set term ^ ; + +create procedure p1 returns (n integer) +as +begin + select coalesce(n * 1, null) from t1 group by coalesce(n * 1, null) into n; + suspend; +end^ + +set term ; ^ + +commit; +-- set blob all; +-- select rdb$procedure_blr from rdb$procedures where rdb$procedure_name = 'P1'; + +-- test coalesce in view condition +create view v2 as + select t1.n n, coalesce(n + 1, null) x1, coalesce(n + 2, null) x2 from t1 + where coalesce(0 + 0, null) = coalesce(0 + 0, null); + +select * from v2; + +-- test coalesce in view using distinct +create view v3 as + select distinct + t1.n n, + coalesce(n + 1, null) + coalesce(n + 11, null) x1, + coalesce(n + 2, null) + coalesce(n + 22, null) x2 + from t1; + +select * from v3; + +-- test coalesce with subselect with coalesce in view +create view v4 as + select + t1.n n, + coalesce((select coalesce(0 + 1, null) from rdb$database), null) x1, + coalesce((select coalesce(2 + 1, null) from rdb$database), null) x2 + from t1; + +select * from v4; + +-- test coalesce in view using union +create view v5 (n, x1, x2) as + select + t1.n n, + coalesce(n + 1, null) + coalesce(n + 11, null) x1, + coalesce(n + 2, null) + coalesce(n + 22, null) x2 + from t1 + union all + select + t1.n n, + coalesce(n + 1, null) + coalesce(n + 11, null) x1, + coalesce(n + 2, null) + coalesce(n + 22, null) x2 + from t1; + +select * from v5; + +-- test constraint +alter table t1 + add constraint t1_n check (coalesce(n + 0, null) < 10), + add constraint t1_cx check (coalesce(cx + 0, null) < 10); + +insert into t1 values (5, 5); +insert into t1 values (50, 5); +insert into t1 values (5, 50); + +-- test domain constraint +create domain dc1 as integer check (coalesce(value + 0, null) < 10); +create domain dc2 as integer check (coalesce(value + 0, null) < 10); + +alter table t1 + add dc1 dc1, + add dc2 dc2; + +insert into t1 (n, dc1) values (6, 6); +insert into t1 (n, dc2) values (7, 7); +insert into t1 (n, dc1) values (8, 10); +insert into t1 (n, dc2) values (8, 10); + +-- add bad computed expression with coalesce +alter table t1 + add bc computed by (coalesce(n / (n - 2), null)); + +select bc from t1 order by n; + +-- test parameters +set sqlda_display on; + +select coalesce(1 + cast(? as integer), 2 + cast(? as integer)) + from rdb$database + where coalesce(3 + cast(? as bigint), null) = 0; +""", + 'expected_stdout': """ + N X CN CX +============ ============ ===================== ===================== + 1 10 1 10 + 2 20 2 20 + 3 30 3 30 + + + GEN_ID +===================== + 3 + + + N X CN CX +============ ============ ============ ============ + 1 100 1 100 + 2 200 2 200 + 3 30 3 30 + + + GEN_ID +===================== + 3 + + + N X CN CX VCN +============ ============ ===================== ===================== ===================== + 1 100 1 100 1 + 2 200 2 200 2 + 3 30 3 30 3 + + + N X CN CX +============ ============ ============ ============ + 1 100 1 100 + 2 200 2 200 + 3 300 3 300 + 4 40 4 40 + + + N X CN CX VCN +============ ============ ===================== ===================== ===================== + 1 100 1 100 1 + 2 200 2 200 2 + 3 300 3 300 3 + 4 40 4 40 4 + 1008 88 1008 88 1008 + + + COALESCE +===================== + 1 + 2 + 3 + 4 + 1008 + + + COALESCE +===================== + 1 + 2 + 3 + 4 + 1008 + + + COALESCE +===================== + 1 + 2 + 3 + 4 + 1008 + + + COALESCE +===================== + 1 + 2 + 3 + 4 + 1008 + + + COALESCE +===================== + 1 + 2 + 3 + 4 + + + COALESCE +===================== + 10 + 20 + 30 + 40 + 10080 + + + COALESCE COALESCE +===================== ===================== + 30 3000 + 20 2000 + 10 1000 + 10080 880 + 40 400 + + + COALESCE COALESCE +===================== ===================== + 10080 880 + 40 400 + 30 3000 + 20 2000 + 10 1000 + + + CASE +===================== + 1 + 2 + 3 + 4 + 1008 + + + CASE +===================== + 1 + 2 + 3 + 4 + 1008 + + + CASE +===================== + 1 + 2 + 3 + 4 + + + CASE +===================== + 1008 + 4 + 3 + 2 + 1 + + + N X1 X2 +============ ===================== ===================== + 1 2 3 + 2 3 4 + 3 4 5 + 4 5 6 + 1008 1009 1010 + + + N X1 X2 +============ ===================== ===================== + 1 14 26 + 2 16 28 + 3 18 30 + 4 20 32 + 1008 2028 2040 + + + N X1 X2 +============ ===================== ===================== + 1 1 3 + 2 1 3 + 3 1 3 + 4 1 3 + 1008 1 3 + + + N X1 X2 +============ ===================== ===================== + 1 14 26 + 2 16 28 + 3 18 30 + 4 20 32 + 1008 2028 2040 + 1 14 26 + 2 16 28 + 3 18 30 + 4 20 32 + 1008 2028 2040 + + + BC +===================== + -1 + +INPUT SQLDA version: 1 sqln: 10 sqld: 3 +01: sqltype: 496 LONG sqlscale: 0 sqlsubtype: 0 sqllen: 4 + : name: (0) alias: (0) + : table: (0) owner: (0) +02: sqltype: 496 LONG sqlscale: 0 sqlsubtype: 0 sqllen: 4 + : name: (0) alias: (0) + : table: (0) owner: (0) +03: sqltype: 580 INT64 sqlscale: 0 sqlsubtype: 0 sqllen: 8 + : name: (0) alias: (0) + : table: (0) owner: (0) + +OUTPUT SQLDA version: 1 sqln: 20 sqld: 1 +01: sqltype: 580 INT64 sqlscale: 0 sqlsubtype: 0 sqllen: 8 + : name: (8)COALESCE alias: (8)COALESCE + : table: (0) owner: (0) + + COALESCE +===================== +""", + 'expected_stderr': """Statement failed, SQLSTATE = 42000 +Dynamic SQL Error +-SQL error code = -104 +-Invalid expression in the HAVING clause (neither an aggregate function nor a part of the GROUP BY clause) +Statement failed, SQLSTATE = 42000 +Dynamic SQL Error +-SQL error code = -104 +-Invalid expression in the select list (not contained in either an aggregate function or the GROUP BY clause) +Statement failed, SQLSTATE = 42000 +Dynamic SQL Error +-SQL error code = -104 +-Invalid expression in the HAVING clause (neither an aggregate function nor a part of the GROUP BY clause) +Statement failed, SQLSTATE = 23000 +Operation violates CHECK constraint T1_N on view or table T1 +-At trigger 'CHECK_1' +Statement failed, SQLSTATE = 23000 +Operation violates CHECK constraint T1_CX on view or table T1 +-At trigger 'CHECK_3' +Statement failed, SQLSTATE = 23000 +validation error for column "T1"."DC1", value "10" +Statement failed, SQLSTATE = 23000 +validation error for column "T1"."DC2", value "10" +Statement failed, SQLSTATE = 22012 +arithmetic exception, numeric overflow, or string truncation +-Integer divide by zero. The code attempted to divide an integer value by an integer divisor of zero. +Statement failed, SQLSTATE = 07002 +Dynamic SQL Error +-SQL error code = -804 +-SQLDA missing or incorrect version, or incorrect number/type of variables +""" } ] } Modified: qa/fbt-repository/trunk/tests/bugs/core_1462.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_1462.fbt 2014-07-28 11:03:49 UTC (rev 59920) +++ qa/fbt-repository/trunk/tests/bugs/core_1462.fbt 2014-07-28 11:54:55 UTC (rev 59921) @@ -1365,6 +1365,278 @@ Dynamic SQL Error -Too many Contexts of Relation/Procedure/Views. Maximum allowed is 255 """ +}, +{ + 'firebird_version': '2.5.3', + 'platform': 'All', + 'init_script': """create table test (i integer); +create index test_i on test(i); +commit; +""", + 'test_type': 'ISQL', + 'test_script': """select test.i from test + inner join test as t1 on t1.i = test.i + inner join test as t2 on t2.i = test.i + inner join test as t3 on t3.i = test.i + inner join test as t4 on t4.i = test.i + inner join test as t5 on t5.i = test.i + inner join test as t6 on t6.i = test.i + inner join test as t7 on t7.i = test.i + inner join test as t8 on t8.i = test.i + inner join test as t9 on t9.i = test.i + inner join test as t10 on t10.i = test.i + inner join test as t11 on t11.i = test.i + inner join test as t12 on t12.i = test.i + inner join test as t13 on t13.i = test.i + inner join test as t14 on t14.i = test.i + inner join test as t15 on t15.i = test.i + inner join test as t16 on t16.i = test.i + inner join test as t17 on t17.i = test.i + inner join test as t18 on t18.i = test.i + inner join test as t19 on t19.i = test.i + inner join test as t20 on t20.i = test.i + inner join test as t21 on t21.i = test.i + inner join test as t22 on t22.i = test.i + inner join test as t23 on t23.i = test.i + inner join test as t24 on t24.i = test.i + inner join test as t25 on t25.i = test.i + inner join test as t26 on t26.i = test.i + inner join test as t27 on t27.i = test.i + inner join test as t28 on t28.i = test.i + inner join test as t29 on t29.i = test.i + inner join test as t30 on t30.i = test.i + inner join test as t31 on t31.i = test.i + inner join test as t32 on t32.i = test.i + inner join test as t33 on t33.i = test.i + inner join test as t34 on t34.i = test.i + inner join test as t35 on t35.i = test.i + inner join test as t36 on t36.i = test.i + inner join test as t37 on t37.i = test.i + inner join test as t38 on t38.i = test.i + inner join test as t39 on t39.i = test.i + inner join test as t40 on t40.i = test.i + inner join test as t41 on t41.i = test.i + inner join test as t42 on t42.i = test.i + inner join test as t43 on t43.i = test.i + inner join test as t44 on t44.i = test.i + inner join test as t45 on t45.i = test.i + inner join test as t46 on t46.i = test.i + inner join test as t47 on t47.i = test.i + inner join test as t48 on t48.i = test.i + inner join test as t49 on t49.i = test.i + inner join test as t50 on t50.i = test.i + inner join test as t51 on t51.i = test.i + inner join test as t52 on t52.i = test.i + inner join test as t53 on t53.i = test.i + inner join test as t54 on t54.i = test.i + inner join test as t55 on t55.i = test.i + inner join test as t56 on t56.i = test.i + inner join test as t57 on t57.i = test.i + inner join test as t58 on t58.i = test.i + inner join test as t59 on t59.i = test.i + inner join test as t60 on t60.i = test.i + inner join test as t61 on t61.i = test.i + inner join test as t62 on t62.i = test.i + inner join test as t63 on t63.i = test.i + inner join test as t64 on t64.i = test.i + inner join test as t65 on t65.i = test.i + inner join test as t66 on t66.i = test.i + inner join test as t67 on t67.i = test.i + inner join test as t68 on t68.i = test.i + inner join test as t69 on t69.i = test.i + inner join test as t70 on t70.i = test.i + inner join test as t71 on t71.i = test.i + inner join test as t72 on t72.i = test.i + inner join test as t73 on t73.i = test.i + inner join test as t74 on t74.i = test.i + inner join test as t75 on t75.i = test.i + inner join test as t76 on t76.i = test.i + inner join test as t77 on t77.i = test.i + inner join test as t78 on t78.i = test.i + inner join test as t79 on t79.i = test.i + inner join test as t80 on t80.i = test.i + inner join test as t81 on t81.i = test.i + inner join test as t82 on t82.i = test.i + inner join test as t83 on t83.i = test.i + inner join test as t84 on t84.i = test.i + inner join test as t85 on t85.i = test.i + inner join test as t86 on t86.i = test.i + inner join test as t87 on t87.i = test.i + inner join test as t88 on t88.i = test.i + inner join test as t89 on t89.i = test.i + inner join test as t90 on t90.i = test.i + inner join test as t91 on t91.i = test.i + inner join test as t92 on t92.i = test.i + inner join test as t93 on t93.i = test.i + inner join test as t94 on t94.i = test.i + inner join test as t95 on t95.i = test.i + inner join test as t96 on t96.i = test.i + inner join test as t97 on t97.i = test.i + inner join test as t98 on t98.i = test.i + inner join test as t99 on t99.i = test.i + inner join test as t100 on t100.i = test.i + inner join test as t101 on t101.i = test.i + inner join test as t102 on t102.i = test.i + inner join test as t103 on t103.i = test.i + inner join test as t104 on t104.i = test.i + inner join test as t105 on t105.i = test.i + inner join test as t106 on t106.i = test.i + inner join test as t107 on t107.i = test.i + inner join test as t108 on t108.i = test.i + inner join test as t109 on t109.i = test.i + inner join test as t110 on t110.i = test.i + inner join test as t111 on t111.i = test.i + inner join test as t112 on t112.i = test.i + inner join test as t113 on t113.i = test.i + inner join test as t114 on t114.i = test.i + inner join test as t115 on t115.i = test.i + inner join test as t116 on t116.i = test.i + inner join test as t117 on t117.i = test.i + inner join test as t118 on t118.i = test.i + inner join test as t119 on t119.i = test.i + inner join test as t120 on t120.i = test.i + inner join test as t121 on t121.i = test.i + inner join test as t122 on t122.i = test.i + inner join test as t123 on t123.i = test.i + inner join test as t124 on t124.i = test.i + inner join test as t125 on t125.i = test.i + inner join test as t126 on t126.i = test.i + inner join test as t127 on t127.i = test.i + inner join test as t128 on t128.i = test.i + inner join test as t129 on t129.i = test.i + inner join test as t130 on t130.i = test.i + inner join test as t131 on t131.i = test.i + inner join test as t132 on t132.i = test.i + inner join test as t133 on t133.i = test.i + inner join test as t134 on t134.i = test.i + inner join test as t135 on t135.i = test.i + inner join test as t136 on t136.i = test.i + inner join test as t137 on t137.i = test.i + inner join test as t138 on t138.i = test.i + inner join test as t139 on t139.i = test.i + inner join test as t140 on t140.i = test.i + inner join test as t141 on t141.i = test.i + inner join test as t142 on t142.i = test.i + inner join test as t143 on t143.i = test.i + inner join test as t144 on t144.i = test.i + inner join test as t145 on t145.i = test.i + inner join test as t146 on t146.i = test.i + inner join test as t147 on t147.i = test.i + inner join test as t148 on t148.i = test.i + inner join test as t149 on t149.i = test.i + inner join test as t150 on t150.i = test.i + inner join test as t151 on t151.i = test.i + inner join test as t152 on t152.i = test.i + inner join test as t153 on t153.i = test.i + inner join test as t154 on t154.i = test.i + inner join test as t155 on t155.i = test.i + inner join test as t156 on t156.i = test.i + inner join test as t157 on t157.i = test.i + inner join test as t158 on t158.i = test.i + inner join test as t159 on t159.i = test.i + inner join test as t160 on t160.i = test.i + inner join test as t161 on t161.i = test.i + inner join test as t162 on t162.i = test.i + inner join test as t163 on t163.i = test.i + inner join test as t164 on t164.i = test.i + inner join test as t165 on t165.i = test.i + inner join test as t166 on t166.i = test.i + inner join test as t167 on t167.i = test.i + inner join test as t168 on t168.i = test.i + inner join test as t169 on t169.i = test.i + inner join test as t170 on t170.i = test.i + inner join test as t171 on t171.i = test.i + inner join test as t172 on t172.i = test.i + inner join test as t173 on t173.i = test.i + inner join test as t174 on t174.i = test.i + inner join test as t175 on t175.i = test.i + inner join test as t176 on t176.i = test.i + inner join test as t177 on t177.i = test.i + inner join test as t178 on t178.i = test.i + inner join test as t179 on t179.i = test.i + inner join test as t180 on t180.i = test.i + inner join test as t181 on t181.i = test.i + inner join test as t182 on t182.i = test.i + inner join test as t183 on t183.i = test.i + inner join test as t184 on t184.i = test.i + inner join test as t185 on t185.i = test.i + inner join test as t186 on t186.i = test.i + inner join test as t187 on t187.i = test.i + inner join test as t188 on t188.i = test.i + inner join test as t189 on t189.i = test.i + inner join test as t190 on t190.i = test.i + inner join test as t191 on t191.i = test.i + inner join test as t192 on t192.i = test.i + inner join test as t193 on t193.i = test.i + inner join test as t194 on t194.i = test.i + inner join test as t195 on t195.i = test.i + inner join test as t196 on t196.i = test.i + inner join test as t197 on t197.i = test.i + inner join test as t198 on t198.i = test.i + inner join test as t199 on t199.i = test.i + inner join test as t200 on t200.i = test.i + inner join test as t201 on t201.i = test.i + inner join test as t202 on t202.i = test.i + inner join test as t203 on t203.i = test.i + inner join test as t204 on t204.i = test.i + inner join test as t205 on t205.i = test.i + inner join test as t206 on t206.i = test.i + inner join test as t207 on t207.i = test.i + inner join test as t208 on t208.i = test.i + inner join test as t209 on t209.i = test.i + inner join test as t210 on t210.i = test.i + inner join test as t211 on t211.i = test.i + inner join test as t212 on t212.i = test.i + inner join test as t213 on t213.i = test.i + inner join test as t214 on t214.i = test.i + inner join test as t215 on t215.i = test.i + inner join test as t216 on t216.i = test.i + inner join test as t217 on t217.i = test.i + inner join test as t218 on t218.i = test.i + inner join test as t219 on t219.i = test.i + inner join test as t220 on t220.i = test.i + inner join test as t221 on t221.i = test.i + inner join test as t222 on t222.i = test.i + inner join test as t223 on t223.i = test.i + inner join test as t224 on t224.i = test.i + inner join test as t225 on t225.i = test.i + inner join test as t226 on t226.i = test.i + inner join test as t227 on t227.i = test.i + inner join test as t228 on t228.i = test.i + inner join test as t229 on t229.i = test.i + inner join test as t230 on t230.i = test.i + inner join test as t231 on t231.i = test.i + inner join test as t232 on t232.i = test.i + inner join test as t233 on t233.i = test.i + inner join test as t234 on t234.i = test.i + inner join test as t235 on t235.i = test.i + inner join test as t236 on t236.i = test.i + inner join test as t237 on t237.i = test.i + inner join test as t238 on t238.i = test.i + inner join test as t239 on t239.i = test.i + inner join test as t240 on t240.i = test.i + inner join test as t241 on t241.i = test.i + inner join test as t242 on t242.i = test.i + inner join test as t243 on t243.i = test.i + inner join test as t244 on t244.i = test.i + inner join test as t245 on t245.i = test.i + inner join test as t246 on t246.i = test.i + inner join test as t247 on t247.i = test.i + inner join test as t248 on t248.i = test.i + inner join test as t249 on t249.i = test.i + inner join test as t250 on t250.i = test.i + inner join test as t251 on t251.i = test.i + inner join test as t252 on t252.i = test.i + inner join test as t253 on t253.i = test.i + inner join test as t254 on t254.i = test.i + inner join test as t255 on t255.i = test.i + inner join test as t256 on t256.i = test.i + ; +""", + 'expected_stderr': """Statement failed, SQLSTATE = 54001 +Dynamic SQL Error +-Too many Contexts of Relation/Procedure/Views. Maximum allowed is 255 +""" } ] } Modified: qa/fbt-repository/trunk/tests/bugs/core_1559.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_1559.fbt 2014-07-28 11:03:49 UTC (rev 59920) +++ qa/fbt-repository/trunk/tests/bugs/core_1559.fbt 2014-07-28 11:54:55 UTC (rev 59921) @@ -4,6 +4,7 @@ 'tracker_id': 'CORE-1559', 'title': "Dropping NOT NULL contranint doesn'have the desired effect", 'description': '', +'min_versions': None, 'versions': [ { 'firebird_version': '2.5.0', @@ -52,6 +53,32 @@ 'expected_stderr': """Statement failed, SQLCODE = -625 validation error for column N, value "*** null ***" """ +}, +{ + 'firebird_version': '2.5.3', + 'platform': 'All', + 'test_type': 'ISQL', + 'test_script': """create table t (n integer constraint c not null); +COMMIT; +insert into t values (null); +COMMIT; +alter table t drop constraint c; +COMMIT; +insert into t values (null); +COMMIT; +SELECT * FROM t; +""", + 'expected_stdout': """Database: localhost:C:\Users\win7\Firebird_tests\fbt-repository\tmp\bugs.core_1559.fdb, User: SYSDBA +SQL> SQL> SQL> SQL> SQL> SQL> SQL> SQL> SQL> + N +============ + <null> + +SQL>""", + 'expected_stderr': """Statement failed, SQLSTATE = 23000 +validation error for column "T"."N", value "*** null ***" +""" + } ] } Modified: qa/fbt-repository/trunk/tests/functional/domain/create_41.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/domain/create_41.fbt 2014-07-28 11:03:49 UTC (rev 59920) +++ qa/fbt-repository/trunk/tests/functional/domain/create_41.fbt 2014-07-28 11:54:55 UTC (rev 59921) @@ -42,7 +42,7 @@ unsuccessful metadata update -CREATE DOMAIN TEST failed -violation of PRIMARY or UNIQUE KEY constraint "RDB$INDEX_2" on table "RDB$FIELDS" - +-Problematic key value is ("RDB$FIELD_NAME" = 'TEST') """ }, { @@ -57,6 +57,19 @@ -attempt to store duplicate value (visible to active transactions) in unique index "RDB$INDEX_2" -Problematic key value is ("RDB$FIELD_NAME" = 'TEST') """ +}, +{ + 'firebird_version': '2.5.3', + 'platform': 'All', + 'init_script': 'CREATE DOMAIN test AS INTEGER;', + 'test_type': 'ISQL', + 'test_script': 'CREATE DOMAIN test AS VARCHAR(32);', + 'expected_stderr': """Statement failed, SQLSTATE = 42000 +unsuccessful metadata update +-STORE RDB$FIELDS failed +-attempt to store duplicate value (visible to active transactions) in unique index "RDB$INDEX_2" +-Problematic key value is ("RDB$FIELD_NAME" = 'TEST') +""" } ] } Modified: qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_02.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_02.fbt 2014-07-28 11:03:49 UTC (rev 59920) +++ qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_02.fbt 2014-07-28 11:54:55 UTC (rev 59921) @@ -116,6 +116,60 @@ - violation of FOREIGN KEY constraint "FK_DETAIL_TABLE" on table "DETAIL_TABLE" - Foreign key reference target does not exist """ +}, +{ + 'firebird_version': '2.5.3', + 'platform': 'All', + 'init_script': """CREATE TABLE MASTER_TABLE ( + ID INTEGER PRIMARY KEY, + INT_F INTEGER +); + +CREATE TABLE DETAIL_TABLE ( + ID INTEGER PRIMARY KEY, + FKEY INTEGER +); + +ALTER TABLE DETAIL_TABLE ADD CONSTRAINT FK_DETAIL_TABLE FOREIGN KEY (FKEY) REFERENCES MASTER_TABLE (ID); +COMMIT; +INSERT INTO MASTER_TABLE (ID, INT_F) VALUES (1, 10); +commit;""", + 'test_type': 'Python', + 'test_script': """TPB_master = ( + chr(kdb.isc_tpb_write) + + chr(kdb.isc_tpb_read_committed) + chr(kdb.isc_tpb_rec_version) + + chr(kdb.isc_tpb_nowait) + ) +TPB_detail = ( + chr(kdb.isc_tpb_write) + + chr(kdb.isc_tpb_read_committed) + chr(kdb.isc_tpb_rec_version) + + chr(kdb.isc_tpb_nowait) + ) + +db_conn.begin(tpb=TPB_master) +c = db_conn.cursor() +c.execute("uPDATE MASTER_TABLE SET ID = 2 WHERE ID=1") + +#Create second connection - update detail table +con_detail = kdb.connect( + dsn=dsn.encode(), + user=user_name.encode(), + password=user_password.encode() +) + +try: + con_detail.begin(tpb=TPB_detail) + c = con_detail.cursor() + c.execute("INSERT INTO DETAIL_TABLE (ID, FKEY) VALUES (1,1)") + con_detail.commit() +except Exception, e: + print (e[0])""", + 'expected_stdout': """Error while executing SQL statement: +- SQLCODE: -530 +- violation of FOREIGN KEY constraint "FK_DETAIL_TABLE" on table "DETAIL_TABLE" +- Foreign key reference target does not exist +- Problematic key value is ("FKEY" = 1) +""" } ] } Modified: qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_03.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_03.fbt 2014-07-28 11:03:49 UTC (rev 59920) +++ qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_03.fbt 2014-07-28 11:54:55 UTC (rev 59921) @@ -128,6 +128,64 @@ - violation of FOREIGN KEY constraint "FK_DETAIL_TABLE" on table "DETAIL_TABLE" - Foreign key reference target does not exist """ +}, +{ + 'firebird_version': '2.5.3', + 'platform': 'All', + 'init_script': """CREATE TABLE MASTER_TABLE ( + ID INTEGER PRIMARY KEY, + INT_F INTEGER +); + +CREATE TABLE DETAIL_TABLE ( + ID INTEGER PRIMARY KEY, + FKEY INTEGER +); + +ALTER TABLE DETAIL_TABLE ADD CONSTRAINT FK_DETAIL_TABLE FOREIGN KEY (FKEY) REFERENCES MASTER_TABLE (ID); +COMMIT; +INSERT INTO MASTER_TABLE (ID, INT_F) VALUES (1, 10); +commit;""", + 'test_type': 'Python', + 'test_script': """TPB_master = ( + chr(kdb.isc_tpb_write) + + chr(kdb.isc_tpb_read_committed) + chr(kdb.isc_tpb_rec_version) + + chr(kdb.isc_tpb_nowait) + ) +TPB_detail = ( + chr(kdb.isc_tpb_write) + + chr(kdb.isc_tpb_read_committed) + chr(kdb.isc_tpb_rec_version) + + chr(kdb.isc_tpb_nowait) + ) + + +db_conn.begin(tpb=TPB_master) +cm_1 = db_conn.cursor() +cm_1.execute('UPDATE MASTER_TABLE SET INT_F=2') +db_conn.savepoint('A') +cm_1.execute('UPDATE MASTER_TABLE SET ID=2 WHERE ID=1') +db_conn.rollback(savepoint='A') + +#Create second connection - update detail table +con_detail = kdb.connect( + dsn=dsn.encode(), + user=user_name.encode(), + password=user_password.encode() +) + +try: + con_detail.begin(tpb=TPB_detail) + cd = con_detail.cursor() + cd.execute("INSERT INTO DETAIL_TABLE (ID, FKEY) VALUES (1,1)") + con_detail.commit() +except Exception, e: + print (e[0])""", + 'expected_stdout': """Error while executing SQL statement: +- SQLCODE: -530 +- violation of FOREIGN KEY constraint "FK_DETAIL_TABLE" on table "DETAIL_TABLE" +- Foreign key reference target does not exist +- Problematic key value is ("FKEY" = 1) +""" } ] } Modified: qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_04.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_04.fbt 2014-07-28 11:03:49 UTC (rev 59920) +++ qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_04.fbt 2014-07-28 11:54:55 UTC (rev 59921) @@ -128,6 +128,64 @@ - violation of FOREIGN KEY constraint "FK_DETAIL_TABLE" on table "DETAIL_TABLE" - Foreign key reference target does not exist """ +}, +{ + 'firebird_version': '2.5.3', + 'platform': 'All', + 'init_script': """CREATE TABLE MASTER_TABLE ( + ID INTEGER PRIMARY KEY, + INT_F INTEGER +); + +CREATE TABLE DETAIL_TABLE ( + ID INTEGER PRIMARY KEY, + FKEY INTEGER +); + +ALTER TABLE DETAIL_TABLE ADD CONSTRAINT FK_DETAIL_TABLE FOREIGN KEY (FKEY) REFERENCES MASTER_TABLE (ID); +COMMIT; +INSERT INTO MASTER_TABLE (ID, INT_F) VALUES (1, 10); +commit;""", + 'test_type': 'Python', + 'test_script': """TPB_master = ( + chr(kdb.isc_tpb_write) + + chr(kdb.isc_tpb_read_committed) + chr(kdb.isc_tpb_rec_version) + + chr(kdb.isc_tpb_nowait) + ) +TPB_detail = ( + chr(kdb.isc_tpb_write) + + chr(kdb.isc_tpb_read_committed) + chr(kdb.isc_tpb_rec_version) + + chr(kdb.isc_tpb_nowait) + ) + + +db_conn.begin(tpb=TPB_master) +cm_1 = db_conn.cursor() +cm_1.execute('UPDATE MASTER_TABLE SET ID=2 WHERE ID=1') +db_conn.savepoint('A') +cm_1.execute('UPDATE MASTER_TABLE SET INT_F=2 ') +db_conn.rollback(savepoint='A') + +#Create second connection for change detail table +con_detail = kdb.connect( + dsn=dsn.encode(), + user=user_name.encode(), + password=user_password.encode() +) + +try: + con_detail.begin(tpb=TPB_detail) + cd = con_detail.cursor() + cd.execute("INSERT INTO DETAIL_TABLE (ID, FKEY) VALUES (1,1)") + con_detail.commit() +except Exception, e: + print (e[0])""", + 'expected_stdout': """Error while executing SQL statement: +- SQLCODE: -530 +- violation of FOREIGN KEY constraint "FK_DETAIL_TABLE" on table "DETAIL_TABLE" +- Foreign key reference target does not exist +- Problematic key value is ("FKEY" = 1) +""" } ] } Modified: qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_08.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_08.fbt 2014-07-28 11:03:49 UTC (rev 59920) +++ qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_08.fbt 2014-07-28 11:54:55 UTC (rev 59921) @@ -121,6 +121,62 @@ - violation of FOREIGN KEY constraint "FK_DETAIL_TABLE" on table "DETAIL_TABLE" - Foreign key reference target does not exist """ +}, +{ + 'firebird_version': '2.5.3', + 'platform': 'All', + 'init_script': """CREATE TABLE MASTER_TABLE ( + ID_1 INTEGER NOT NULL, + ID_2 VARCHAR(20) NOT NULL, + INT_F INTEGER, + PRIMARY KEY (ID_1, ID_2) +); + +CREATE TABLE DETAIL_TABLE ( + ID INTEGER PRIMARY KEY, + FKEY_1 INTEGER, + FKEY_2 VARCHAR(20) +); + +ALTER TABLE DETAIL_TABLE ADD CONSTRAINT FK_DETAIL_TABLE FOREIGN KEY (FKEY_1, FKEY_2) REFERENCES MASTER_TABLE (ID_1, ID_2); +COMMIT; +INSERT INTO MASTER_TABLE (ID_1, ID_2, INT_F) VALUES (1, 'one', 10); +COMMIT;""", + 'test_type': 'Python', + 'test_script': """TPB_master = ( + chr(kdb.isc_tpb_write) + + chr(kdb.isc_tpb_read_committed) + chr(kdb.isc_tpb_rec_version) + + chr(kdb.isc_tpb_nowait) + ) +TPB_detail = ( + chr(kdb.isc_tpb_write) + + chr(kdb.isc_tpb_read_committed) + chr(kdb.isc_tpb_rec_version) + + chr(kdb.isc_tpb_nowait) + ) +db_conn.begin(tpb=TPB_master) +cm_1 = db_conn.cursor() +cm_1.execute('UPDATE MASTER_TABLE SET ID_1=2 WHERE ID_1=1') + +#Create second connection for change detail table +con_detail = kdb.connect( + dsn=dsn.encode(), + user=user_name.encode(), + password=user_password.encode() +) + +try: + con_detail.begin(tpb=TPB_detail) + cd = con_detail.cursor() + cd.execute("INSERT INTO DETAIL_TABLE (ID, FKEY_1, FKEY_2) VALUES (1, 1, 'one')") + con_detail.commit() +except Exception, e: + print (e[0])""", + 'expected_stdout': """Error while executing SQL statement: +- SQLCODE: -530 +- violation of FOREIGN KEY constraint "FK_DETAIL_TABLE" on table "DETAIL_TABLE" +- Foreign key reference target does not exist +- Problematic key value is ("FKEY_1" = 1, "FKEY_2" = 'one') +""" } ] } Modified: qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_09.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_09.fbt 2014-07-28 11:03:49 UTC (rev 59920) +++ qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_09.fbt 2014-07-28 11:54:55 UTC (rev 59921) @@ -123,6 +123,63 @@ - violation of FOREIGN KEY constraint "FK_DETAIL_TABLE" on table "DETAIL_TABLE" - Foreign key reference target does not exist """ +}, +{ + 'firebird_version': '2.5.3', + 'platform': 'All', + 'init_script': """CREATE TABLE MASTER_TABLE ( + ID_1 INTEGER NOT NULL, + ID_2 VARCHAR(20) NOT NULL, + INT_F INTEGER, + PRIMARY KEY (ID_1, ID_2) +); + +CREATE TABLE DETAIL_TABLE ( + ID INTEGER PRIMARY KEY, + FKEY_1 INTEGER, + FKEY_2 VARCHAR(20) +); + +ALTER TABLE DETAIL_TABLE ADD CONSTRAINT FK_DETAIL_TABLE FOREIGN KEY (FKEY_1, FKEY_2) REFERENCES MASTER_TABLE (ID_1, ID_2); +COMMIT; +INSERT INTO MASTER_TABLE (ID_1, ID_2, INT_F) VALUES (1, 'one', 10); +COMMIT;""", + 'test_type': 'Python', + 'test_script': """TPB_master = ( + chr(kdb.isc_tpb_write) + + chr(kdb.isc_tpb_read_committed) + chr(kdb.isc_tpb_rec_version) + + chr(kdb.isc_tpb_nowait) + ) +TPB_detail = ( + chr(kdb.isc_tpb_write) + + chr(kdb.isc_tpb_read_committed) + chr(kdb.isc_tpb_rec_version) + + chr(kdb.isc_tpb_nowait) + ) +db_conn.begin(tpb=TPB_master) +cm_1 = db_conn.cursor() +cm_1.execute("UPDATE MASTER_TABLE SET ID_1=2 WHERE ID_1=1") +cm_1.execute("UPDATE MASTER_TABLE SET ID_2='two' WHERE ID_2='one'") + +#Create second connection for change detail table +con_detail = kdb.connect( + dsn=dsn.encode(), + user=user_name.encode(), + password=user_password.encode() +) + +try: + con_detail.begin(tpb=TPB_detail) + cd = con_detail.cursor() + cd.execute("INSERT INTO DETAIL_TABLE (ID, FKEY_1, FKEY_2) VALUES (1, 1, 'one')") + con_detail.commit() +except Exception, e: + print (e[0])""", + 'expected_stdout': """Error while executing SQL statement: +- SQLCODE: -530 +- violation of FOREIGN KEY constraint "FK_DETAIL_TABLE" on table "DETAIL_TABLE" +- Foreign key reference target does not exist +- Problematic key value is ("FKEY_1" = 1, "FKEY_2" = 'one') +""" } ] } Modified: qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_15.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_15.fbt 2014-07-28 11:03:49 UTC (rev 59920) +++ qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_15.fbt 2014-07-28 11:54:55 UTC (rev 59921) @@ -112,6 +112,58 @@ - violation of FOREIGN KEY constraint "FK_DETAIL_TABLE" on table "DETAIL_TABLE" - Foreign key reference target does not exist """ +}, +{ + 'firebird_version': '2.5.3', + 'platform': 'All', + 'init_script': """CREATE TABLE MASTER_TABLE ( + ID INTEGER PRIMARY KEY, + INT_F INTEGER +); + +CREATE TABLE DETAIL_TABLE ( + ID INTEGER PRIMARY KEY, + FKEY INTEGER +); + +ALTER TABLE DETAIL_TABLE ADD CONSTRAINT FK_DETAIL_TABLE FOREIGN KEY (FKEY) REFERENCES MASTER_TABLE (ID); +COMMIT;""", + 'test_type': 'Python', + 'test_script': """TPB_master = ( + chr(kdb.isc_tpb_write) + + chr(kdb.isc_tpb_read_committed) + chr(kdb.isc_tpb_rec_version) + + chr(kdb.isc_tpb_nowait) + ) +TPB_detail = ( + chr(kdb.isc_tpb_write) + + chr(kdb.isc_tpb_read_committed) + chr(kdb.isc_tpb_rec_version) + + chr(kdb.isc_tpb_nowait) + ) +db_conn.begin(tpb=TPB_master) +cm_1 = db_conn.cursor() +cm_1.execute('INSERT INTO MASTER_TABLE (ID, INT_F) VALUES (2, 20)') + +#Create second connection for change detail table +con_detail = kdb.connect( + dsn=dsn.encode(), + user=user_name.encode(), + password=user_password.encode() +) + +try: + con_detail.begin(tpb=TPB_detail) + cd = con_detail.cursor() + cd.execute("INSERT INTO DETAIL_TABLE (ID, FKEY) VALUES (1,2)") + con_detail.commit() +except Exception, e: + print (e[0])""", + 'expected_stdout': """Error while executing SQL statement: +- SQLCODE: -901 +- lock conflict on no wait transaction +- violation of FOREIGN KEY constraint "FK_DETAIL_TABLE" on table "DETAIL_TABLE" +- Foreign key reference target does not exist +- Problematic key value is ("FKEY" = 2) +""" } ] } Modified: qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_17.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_17.fbt 2014-07-28 11:03:49 UTC (rev 59920) +++ qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_17.fbt 2014-07-28 11:54:55 UTC (rev 59921) @@ -67,6 +67,65 @@ - Foreign key references are present for the record """, 'substitutions': [('lock.*','')] +}, +{ + 'firebird_version': '2.5.3', + 'platform': 'All', + 'init_script': """CREATE TABLE MASTER_TABLE ( + ID INTEGER PRIMARY KEY, + INT_F INTEGER +); + +CREATE TABLE DETAIL_TABLE ( + ID INTEGER PRIMARY KEY, + FKEY INTEGER +); + +ALTER TABLE DETAIL_TABLE ADD CONSTRAINT FK_DETAIL_TABLE FOREIGN KEY (FKEY) REFERENCES MASTER_TABLE (ID); +COMMIT; +INSERT INTO MASTER_TABLE (ID, INT_F) VALUES (1, 10); +commit;""", + 'test_type': 'Python', + 'test_script': """TPB_master = ( + chr(kdb.isc_tpb_write) + + chr(kdb.isc_tpb_read_committed) + chr(kdb.isc_tpb_rec_version) + + chr(kdb.isc_tpb_nowait) + ) +TPB_detail = ( + chr(kdb.isc_tpb_write) + + chr(kdb.isc_tpb_read_committed) + chr(kdb.isc_tpb_rec_version) + + chr(kdb.isc_tpb_nowait) + ) + +db_conn.begin(tpb=TPB_master) +c = db_conn.cursor() +c.execute("update master_table set int_f = 10 WHERE ID=1") + +#Create second connection for change detail table +con_detail = kdb.connect( + dsn=dsn.encode(), + user=user_name.encode(), + password=user_password.encode() +) +try: + con_detail.begin(tpb=TPB_detail) + c = con_detail.cursor() + c.execute("INSERT INTO DETAIL_TABLE (ID, FKEY) VALUES (1,1)") +except Exception, e: + print (e[1]) + +try: + c = db_conn.cursor() + c.execute("update master_table set ID=10 WHERE ID=1") +except Exception, e: + print (e[0])""", + 'expected_stdout': """Error while executing SQL statement: +- SQLCODE: -530 +- violation of FOREIGN KEY constraint "FK_DETAIL_TABLE" on table "DETAIL_TABLE" +- Foreign key references are present for the record +- Problematic key value is ("ID" = 1) +""", + 'substitutions': [('lock.*','')] } ] } Modified: qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_18.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_18.fbt 2014-07-28 11:03:49 UTC (rev 59920) +++ qa/fbt-repository/trunk/tests/functional/fkey/primary/insert_pk_18.fbt 2014-07-28 11:54:55 UTC (rev 59921) @@ -68,6 +68,65 @@ - violation of FOREIGN KEY constraint "FK_DETAIL_TABLE" on table "DETAIL_TABLE" - Foreign key references are present for the record """ +}, +{ + 'firebird_version': '2.5.3', + 'platform': 'All', + 'init_script': """CREATE TABLE MASTER_TABLE ( + ID INTEGER PRIMARY KEY, + INT_F INTEGER +); + +CREATE TABLE DETAIL_TABLE ( + ID INTEGER PRIMARY KEY, + FKEY INTEGER +); + +ALTER TABLE DETAIL_TABLE ADD CONSTRAINT FK_DETAIL_TABLE FOREIGN KEY (FKEY) REFERENCES MASTER_TABLE (ID); +COMMIT; +INSERT INTO MASTER_TABLE (ID, INT_F) VALUES (1, 10); +commit;""", + 'test_type': 'Python', + 'test_script': """TPB_master = ( + chr(kdb.isc_tpb_write) + + chr(kdb.isc_tpb_read_committed) + chr(kdb.isc_tpb_rec_version) + + chr(kdb.isc_tpb_nowait) + ) +TPB_detail = ( + chr(kdb.isc_tpb_write) + + chr(kdb.isc_tpb_read_committed) + chr(kdb.isc_tpb_rec_version) + + chr(kdb.isc_tpb_nowait) + ) + +db_conn.begin(tpb=TPB_master) +c = db_conn.cursor() +c.execute("update master_table set int_f = 10 WHERE ID=1") + +#Create second connection for change detail table +con_detail = kdb.connect( + dsn=dsn.encode(), + user=user_name.encode(), + password=user_password.encode() +) +try: + con_detail.begin(tpb=TPB_detail) + c = con_detail.cursor() + c.execute("INSERT INTO DETAIL_TABLE (ID, FKEY) VALUES (1,1)") + con_detail.commit() +except Exception, e: + print (e[1]) + +try: + c = db_conn.cursor() + c.execute("update master_table set ID=10 WHERE ID=1") +except Exception, e: + print (e[0])""", + 'expected_stdout': """Error while executing SQL statement: +- SQLCODE: -530 +- violation of FOREIGN KEY constraint "FK_DETAIL_TABLE" on table "DETAIL_TABLE" +- Foreign key references are present for the record +- Problematic key value is ("ID" = 1) +""" } ] } Modified: qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_02.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_02.fbt 2014-07-28 11:03:49 UTC (rev 59920) +++ qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_02.fbt 2014-07-28 11:54:55 UTC (rev 59921) @@ -118,6 +118,61 @@ - violation of FOREIGN KEY constraint "FK_DETAIL_TABLE" on table "DETAIL_TABLE" - Foreign key reference target does not exist """ +}, +{ + 'firebird_version': '2.5.3', + 'platform': 'All', + 'init_script': """CREATE TABLE MASTER_TABLE ( + ID INTEGER PRIMARY KEY, + UF INTEGER UNIQUE, + INT_F INTEGER +); + +CREATE TABLE DETAIL_TABLE ( + ID INTEGER PRIMARY KEY, + FKEY INTEGER +); + +ALTER TABLE DETAIL_TABLE ADD CONSTRAINT FK_DETAIL_TABLE FOREIGN KEY (FKEY) REFERENCES MASTER_TABLE (UF); +COMMIT; +INSERT INTO MASTER_TABLE (ID, UF, INT_F) VALUES (1, 1, 10); +commit;""", + 'test_type': 'Python', + 'test_script': """TPB_master = ( + chr(kdb.isc_tpb_write) + + chr(kdb.isc_tpb_read_committed) + chr(kdb.isc_tpb_rec_version) + + chr(kdb.isc_tpb_nowait) + ) +TPB_detail = ( + chr(kdb.isc_tpb_write) + + chr(kdb.isc_tpb_read_committed) + chr(kdb.isc_tpb_rec_version) + + chr(kdb.isc_tpb_nowait) + ) + +db_conn.begin(tpb=TPB_master) +c = db_conn.cursor() +c.execute("uPDATE MASTER_TABLE SET UF=2 WHERE ID=1") + +#Create second connection - update detail table +con_detail = kdb.connect( + dsn=dsn.encode(), + user=user_name.encode(), + password=user_password.encode() +) + +try: + con_detail.begin(tpb=TPB_detail) + c = con_detail.cursor() + c.execute("INSERT INTO DETAIL_TABLE (ID, FKEY) VALUES (1,2)") + con_detail.commit() +except Exception, e: + print (e[0])""", + 'expected_stdout': """Error while executing SQL statement: +- SQLCODE: -530 +- violation of FOREIGN KEY constraint "FK_DETAIL_TABLE" on table "DETAIL_TABLE" +- Foreign key reference target does not exist +- Problematic key value is ("FKEY" = 2) +""" } ] } Modified: qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_04.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_04.fbt 2014-07-28 11:03:49 UTC (rev 59920) +++ qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_04.fbt 2014-07-28 11:54:55 UTC (rev 59921) @@ -131,6 +131,65 @@ - violation of FOREIGN KEY constraint "FK_DETAIL_TABLE" on table "DETAIL_TABLE" - Foreign key reference target does not exist """ +}, +{ + 'firebird_version': '2.5.3', + 'platform': 'All', + 'init_script': """CREATE TABLE MASTER_TABLE ( + ID INTEGER PRIMARY KEY, + UF INTEGER UNIQUE, + INT_F INTEGER +); + +CREATE TABLE DETAIL_TABLE ( + ID INTEGER PRIMARY KEY, + FKEY INTEGER +); + +ALTER TABLE DETAIL_TABLE ADD CONSTRAINT FK_DETAIL_TABLE FOREIGN KEY (FKEY) REFERENCES MASTER_TABLE (UF); +COMMIT; +INSERT INTO MASTER_TABLE (ID, UF, INT_F) VALUES (1, 1, 10); +commit;""", + 'test_type': 'Python', + 'test_script': """TPB_master = ( + chr(kdb.isc_tpb_write) + + chr(kdb.isc_tpb_read_committed) + chr(kdb.isc_tpb_rec_version) + + chr(kdb.isc_tpb_nowait) + ) +TPB_detail = ( + chr(kdb.isc_tpb_write) + + chr(kdb.isc_tpb_read_committed) + chr(kdb.isc_tpb_rec_version) + + chr(kdb.isc_tpb_nowait) + ) + + +db_conn.begin(tpb=TPB_master) +cm_1 = db_conn.cursor() +cm_1.execute('UPDATE MASTER_TABLE SET UF=2 WHERE ID=1') +db_conn.savepoint('A') +cm_1.execute('UPDATE MASTER_TABLE SET INT_F=2 ') +db_conn.rollback(savepoint='A') + +#Create second connection for change detail table +con_detail = kdb.connect( + dsn=dsn.encode(), + user=user_name.encode(), + password=user_password.encode() +) + +try: + con_detail.begin(tpb=TPB_detail) + cd = con_detail.cursor() + cd.execute("INSERT INTO DETAIL_TABLE (ID, FKEY) VALUES (1,2)") + con_detail.commit() +except Exception, e: + print (e[0])""", + 'expected_stdout': """Error while executing SQL statement: +- SQLCODE: -530 +- violation of FOREIGN KEY constraint "FK_DETAIL_TABLE" on table "DETAIL_TABLE" +- Foreign key reference target does not exist +- Problematic key value is ("FKEY" = 2) +""" } ] } Modified: qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_12.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_12.fbt 2014-07-28 11:03:49 UTC (rev 59920) +++ qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_12.fbt 2014-07-28 11:54:55 UTC (rev 59921) @@ -71,6 +71,67 @@ - Foreign key references are present for the record """, 'substitutions': [('lock.*','')] +}, +{ + 'firebird_version': '2.5.3', + 'platform': 'All', + 'init_script': """CREATE TABLE MASTER_TABLE ( + ID INTEGER PRIMARY KEY, + UF INTEGER UNIQUE, + INT_F INTEGER +); + +CREATE TABLE DETAIL_TABLE ( + ID INTEGER PRIMARY KEY, + FKEY INTEGER +); + +ALTER TABLE DETAIL_TABLE ADD CONSTRAINT FK_DETAIL_TABLE FOREIGN KEY (FKEY) REFERENCES MASTER_TABLE (UF); +COMMIT; +INSERT INTO MASTER_TABLE (ID, UF, INT_F) VALUES (1, 1, 10); +commit;""", + 'test_type': 'Python', + 'test_script': """TPB_master = ( + chr(kdb.isc_tpb_write) + + chr(kdb.isc_tpb_read_committed) + chr(kdb.isc_tpb_rec_version) + + chr(kdb.isc_tpb_nowait) + ) +TPB_detail = ( + chr(kdb.isc_tpb_write) + + chr(kdb.isc_tpb_read_committed) + chr(kdb.isc_tpb_rec_version) + + chr(kdb.isc_tpb_nowait) + ) + +db_conn.begin(tpb=TPB_master) +c = db_conn.cursor() +c.execute("update master_table set int_f = 10 WHERE ID=1") + +#Create second connection for change detail table +con_detail = kdb.connect( + dsn=dsn.encode(), + user=user_name.encode(), + password=user_password.encode() +) + +try: + con_detail.begin(tpb=TPB_detail) + c = con_detail.cursor() + c.execute("INSERT INTO DETAIL_TABLE (ID, FKEY) VALUES (1,1)") +except Exception, e: + print (e[1]) + +try: + c = db_conn.cursor() + c.execute("update master_table set UF=10 WHERE ID=1") +except Exception, e: + print (e[0])""", + 'expected_stdout': """Error while executing SQL statement: +- SQLCODE: -530 +- violation of FOREIGN KEY constraint "FK_DETAIL_TABLE" on table "DETAIL_TABLE" +- Foreign key references are present for the record +- Problematic key value is ("UF" = 1) +""", + 'substitutions': [('lock.*','')] } ] } Modified: qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_13.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_13.fbt 2014-07-28 11:03:49 UTC (rev 59920) +++ qa/fbt-repository/trunk/tests/functional/fkey/unique/insert_13.fbt 2014-07-28 11:54:55 UTC (rev 59921) @@ -72,6 +72,67 @@ - violation of FOREIGN KEY constraint "FK_DETAIL_TABLE" on table "DETAIL_TABLE" - Foreign key references are present for the record """ +}, +{ + 'firebird_version': '2.5.3', + 'platform': 'All', + 'init_script': """CREATE TABLE MASTER_TABLE ( + ID INTEGER PRIMARY KEY, + UF INTEGER UNIQUE, + INT_F INTEGER +); + +CREATE TABLE DETAIL_TABLE ( + ID INTEGER PRIMARY KEY, + FKEY INTEGER +); + +ALTER TABLE DETAIL_TABLE ADD CONSTRAINT FK_DETAIL_TABLE FOREIGN KEY (FKEY) REFERENCES MASTER_TABLE (UF); +COMMIT; +INSERT INTO MASTER_TABLE (ID, UF, INT_F) VALUES (1, 1, 10); +commit;""", + 'test_type': 'Python', + 'test_script': """TPB_master = ( + chr(kdb.isc_tpb_write) + + chr(kdb.isc_tpb_read_committed) + chr(kdb.isc_tpb_rec_version) + + chr(kdb.isc_tpb_nowait) + ) +TPB_detail = ( + chr(kdb.isc_tpb_write) + + chr(kdb.isc_tpb_read_committed) + chr(kdb.isc_tpb_rec_version) + + chr(kdb.isc_tpb_nowait) + ) + +db_conn.begin(tpb=TPB_master) +c = db_conn.cursor() +c.execute("update master_table set int_f = 10 WHERE ID=1") + +#Create second connection for change detail table +con_detail = kdb.connect( + dsn=dsn.encode(), + user=user_name.encode(), + password=user_password.encode() +) + +try: + con_detail.begin(tpb=TPB_detail) + c = con_detail.cursor() + c.execute("INSERT INTO DETAIL_TABLE (ID, FKEY) VALUES (1,1)") + con_detail.commit() +except Exception, e: + print (e[1]) + +try: + c = db_conn.cursor() + c.execute("update master_table set UF=10 WHERE ID=1") +except Exception, e: + print (e[0])""", + 'expected_stdout': """Error while executing SQL statement: +- SQLCODE: -530 +- violation of FOREIGN KEY constraint "FK_DETAIL_TABLE" on table "DETAIL_TABLE" +- Foreign key references are present for the record +- Problematic key value is ("UF" = 1) +""" } ] } Modified: qa/fbt-repository/trunk/tests/functional/index/create_11.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/index/create_11.fbt 2014-07-28 11:03:49 UTC (rev 59920) +++ qa/fbt-repository/trunk/tests/functional/index/create_11.fbt 2014-07-28 11:54:55 UTC (rev 59921) @@ -71,6 +71,26 @@ attempt to store duplicate value (visible to active transactions) in unique index "TEST" -Problematic key value is ("A" = 0) """ +}, +{ + 'firebird_version': '2.5.3', + 'platform': 'All', + 'init_script': """CREATE TABLE t( a INTEGER); +commit; +INSERT INTO t VALUES(0); +INSERT INTO t VALUES(0); +INSERT INTO t VALUES(1); +INSERT INTO t VALUES(2); +INSERT INTO t VALUES(3); +INSERT INTO t VALUES(4); +COMMIT; +""", + 'test_type': 'ISQL', + 'test_script': 'CREATE UNIQUE INDEX test ON t(a);', + 'expected_stderr': """Statement failed, SQLSTATE = 23000 +attempt to store duplicate value (visible to active transactions) in unique index "TEST" +-Problematic key value is ("A" = 0) +""" } ] } Modified: qa/fbt-repository/trunk/tests/functional/table/create_06.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/table/create_06.fbt 2014-07-28 11:03:49 UTC (rev 59920) +++ qa/fbt-repository/trunk/tests/functional/table/create_06.fbt 2014-07-28 11:54:55 UTC (rev 59921) @@ -58,7 +58,7 @@ unsuccessful metadata update -CREATE TABLE TEST failed -violation of PRIMARY or UNIQUE KEY constraint "RDB$INDEX_15" on table "RDB$RELATION_FIELDS" - +-Problematic key value is ("RDB$FIELD_NAME" = 'C1', "RDB$RELATION_NAME" = 'TEST') """ }, { @@ -77,6 +77,23 @@ -attempt to store duplicate value (visible to active transactions) in unique index... [truncated message content] |
From: <ta...@us...> - 2015-02-23 14:58:07
|
Revision: 60763 http://sourceforge.net/p/firebird/code/60763 Author: tabloid Date: 2015-02-23 14:57:57 +0000 (Mon, 23 Feb 2015) Log Message: ----------- See added .fbt file(s) Modified Paths: -------------- qa/fbt-repository/trunk/tests/functional/tabloid/fbt-run.bat.txt Added Paths: ----------- qa/fbt-repository/trunk/tests/bugs/core_1992.fbt qa/fbt-repository/trunk/tests/bugs/core_3238.fbt Added: qa/fbt-repository/trunk/tests/bugs/core_1992.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_1992.fbt (rev 0) +++ qa/fbt-repository/trunk/tests/bugs/core_1992.fbt 2015-02-23 14:57:57 UTC (rev 60763) @@ -0,0 +1,846 @@ +{ +'id': 'bugs.core_1992', +'qmid': None, +'tracker_id': 'CORE-1992', +'title': 'bad BLR -- invalid stream for union select', +'description': '', +'min_versions': '2.5.2', +'versions': [ +{ + 'firebird_version': '2.5', + 'platform': 'All', + 'page_size': '4096', + 'test_type': 'ISQL', + 'sql_dialect': 1, + 'init_script': + """ + set term ^; + create or alter procedure + sp01( + a_01 smallint, + a_02 int, + --a_03 bigint, + a_04 numeric(9,0), + a_05 numeric(10,0), + a_06 float, + a_07 double precision, + --a_08 date, + --a_09 time, + a_10 timestamp, + a_11 varchar(1), + a_12 char(2), + a_13 blob + ) returns ( + o_01 smallint, + o_02 int, + --o_03 bigint, + o_04 numeric(9,0), + o_05 numeric(10,0), + o_06 float, + o_07 double precision, + --o_08 date, + --o_09 time, + o_10 timestamp, + o_11 varchar(1), + o_12 char(2), + o_13 blob + ) as + begin + suspend; + end + ^ + set term ;^ + commit; + """, + 'test_script': + """ + set list on; + SELECT + Project7.C8 AS par_name, + Project7.C9 AS par_type, + Project7.C10 AS par_dir + FROM ( SELECT + UnionAll3.SchemaName AS C1, + UnionAll3.Name AS C2, + UnionAll3.ReturnTypeName AS C3, + UnionAll3.IsAggregate AS C4, + UnionAll3.C1 AS C5, + UnionAll3.IsBuiltIn AS C6, + UnionAll3.IsNiladic AS C7, + UnionAll3.C2 AS C8, + UnionAll3.C3 AS C9, + UnionAll3.C4 AS C10, + UnionAll3.C5 AS C11, + 1 AS C12 + FROM (SELECT + Extent1.SchemaName AS SchemaName, + Extent1.Name AS Name, + Extent1.ReturnTypeName AS ReturnTypeName, + Extent1.IsAggregate AS IsAggregate, + CAST(1 AS SMALLINT) AS C1, + Extent1.IsBuiltIn AS IsBuiltIn, + Extent1.IsNiladic AS IsNiladic, + UnionAll1.Name AS C2, + UnionAll1.TypeName AS C3, + UnionAll1.Mode AS C4, + UnionAll1.Ordinal AS C5 + FROM ( + SELECT + TRIM(f.rdb$function_name) as Id + , null as CatalogName + , null as SchemaName + , TRIM(f.rdb$function_name) as Name + , TRIM(CASE fa.rdb$field_type + WHEN 7 THEN CASE fa.rdb$field_sub_type + WHEN 0 THEN 'smallint' + WHEN 1 THEN 'numeric' + WHEN 2 THEN 'decimal' + END + WHEN 8 THEN CASE fa.rdb$field_sub_type + WHEN 0 THEN 'int' + WHEN 1 THEN 'numeric' + WHEN 2 THEN 'decimal' + END + WHEN 16 THEN CASE fa.rdb$field_sub_type + WHEN 0 THEN 'bigint' + WHEN 1 THEN 'numeric' + WHEN 2 THEN 'decimal' + END + WHEN 10 THEN 'float' + WHEN 27 THEN 'double' + WHEN 12 THEN 'date' + WHEN 13 THEN 'time' + WHEN 35 THEN 'timestamp' + WHEN 261 THEN 'blob' + WHEN 37 THEN 'varchar' + WHEN 14 THEN 'char' + WHEN 40 THEN 'cstring' + END) as ReturnTypeName + , fa.rdb$character_length as ReturnMaxLength + , fa.rdb$field_precision as ReturnPrecision + , 0 as ReturnDateTimePrecision + , fa.rdb$field_scale * (-1) as ReturnScale + , null as ReturnCollationCatalog + , null as ReturnCollationSchema + , null as ReturnCollationName + , null as ReturnCharacterSetCatalog + , null as ReturnCharacterSetSchema + , null as ReturnCharacterSetName + , CAST(0 as smallint) as ReturnIsMultiSet + , CAST(0 as smallint) as IsAggregate + , CAST(0 as smallint) as IsBuiltIn + , CAST((select CASE COUNT(*) WHEN 1 THEN 1 ELSE 0 END FROM + rdb$function_arguments fa WHERE fa.rdb$function_name = + f.rdb$function_name) as smallint) as IsNiladic + FROM + rdb$functions f INNER JOIN rdb$function_arguments fa ON + (f.rdb$function_name = fa.rdb$function_name AND f.rdb$return_argument + = fa.rdb$argument_position) + WHERE f.rdb$system_flag = 0 -- ::: nb ::: need add alias f. in 3.0! + ) AS Extent1 + LEFT OUTER JOIN (SELECT + Extent2.Name AS Name, + Extent2.Ordinal AS Ordinal, + Extent2.TypeName AS TypeName, + Extent2.Mode AS Mode, + 0 AS C1, + Extent2.ParentId AS ParentId + FROM ( + SELECT + null as Id + , null as ParentId + , null as Name + , null as Ordinal + , null as TypeName + , null as MaxLength + , null as DblPrecision + , null as DateTimePrecision + , null as Scale + , null as CollationCatalog + , null as CollationSchema + , null as CollationName + , null as CharacterSetCatalog + , null as CharacterSetSchema + , null as CharacterSetName + , null as IsMultiSet + + , null as Mode + , null as DefaultType + FROM + rdb$database + WHERE + 0=1 + ) AS Extent2 + UNION ALL + SELECT + Extent3.Name AS Name, + Extent3.Ordinal AS Ordinal, + Extent3.TypeName AS TypeName, + Extent3.Mode AS Mode, + 6 AS C1, + Extent3.ParentId AS ParentId + FROM ( + SELECT + TRIM(pp.rdb$procedure_name) || 'x' || + TRIM(pp.rdb$parameter_name) as Id + , TRIM(pp.rdb$procedure_name) as ParentId + , TRIM(pp.rdb$parameter_name) as Name + , pp.rdb$parameter_number+1 as Ordinal + , TRIM(CASE f.rdb$field_type + WHEN 7 THEN CASE f.rdb$field_sub_type + WHEN 0 THEN 'smallint' + WHEN 1 THEN 'numeric' + WHEN 2 THEN 'decimal' + END + WHEN 8 THEN CASE f.rdb$field_sub_type + WHEN 0 THEN 'int' + WHEN 1 THEN 'numeric' + WHEN 2 THEN 'decimal' + END + WHEN 16 THEN CASE f.rdb$field_sub_type + WHEN 0 THEN 'bigint' + WHEN 1 THEN 'numeric' + WHEN 2 THEN 'decimal' + END + WHEN 10 THEN 'float' + WHEN 27 THEN 'double' + WHEN 12 THEN 'date' + WHEN 13 THEN 'time' + WHEN 35 THEN 'timestamp' + WHEN 261 THEN 'blob' + WHEN 37 THEN 'varchar' + WHEN 14 THEN 'char' + WHEN 40 THEN 'cstring' + END) as TypeName + , f.rdb$character_length as MaxLength + , f.rdb$field_precision as DblPrecision + , 0 as DateTimePrecision + , f.rdb$field_scale * (-1) as Scale + , null as CollationCatalog + , null as CollationSchema + , null CollationName + , null as CharacterSetCatalog + , null as CharacterSetSchema + , null as CharacterSetName + , CAST(0 as smallint) as IsMultiSet + , TRIM(IIF(pp.rdb$parameter_type = 1, 'OUT', 'IN')) as Mode + , NULL as DefaultType + FROM + rdb$procedure_parameters pp INNER JOIN rdb$fields f ON + (pp.rdb$field_source = f.rdb$field_name) + ) AS Extent3) AS UnionAll1 ON (0 = UnionAll1.C1) AND + (Extent1.Id = UnionAll1.ParentId) + UNION ALL + SELECT + Extent4.SchemaName AS SchemaName, + Extent4.Name AS Name, + CAST(NULL AS varchar(1000)) AS C1, + CAST(0 AS SMALLINT) AS C2, + CAST(0 AS SMALLINT) AS C3, + CAST(0 AS SMALLINT) AS C4, + CAST(0 AS SMALLINT) AS C5, + UnionAll2.Name AS C6, + UnionAll2.TypeName AS C7, + UnionAll2.Mode AS C8, + UnionAll2.Ordinal AS C9 + FROM ( + SELECT + TRIM(rdb$procedure_name) as Id + , null as CatalogName + , '' as SchemaName -- bug or not??? need to be not null + , TRIM(rdb$procedure_name) as Name + FROM + rdb$procedures + ) AS Extent4 + LEFT OUTER JOIN (SELECT + Extent5.Name AS Name, + Extent5.Ordinal AS Ordinal, + Extent5.TypeName AS TypeName, + Extent5.Mode AS Mode, + 0 AS C1, + Extent5.ParentId AS ParentId + FROM ( + SELECT + null as Id + , null as ParentId + , null as Name + , null as Ordinal + , null as TypeName + , null as MaxLength + , null as DblPrecision + , null as DateTimePrecision + , null as Scale + , null as CollationCatalog + , null as CollationSchema + , null as CollationName + , null as CharacterSetCatalog + , null as CharacterSetSchema + , null as CharacterSetName + , null as IsMultiSet + , null as Mode + , null as DefaultType + FROM + rdb$database + WHERE + 0=1 + ) AS Extent5 + UNION ALL + SELECT + Extent6.Name AS Name, + Extent6.Ordinal AS Ordinal, + Extent6.TypeName AS TypeName, + Extent6.Mode AS Mode, + 6 AS C1, + Extent6.ParentId AS ParentId + FROM ( + SELECT + TRIM(pp.rdb$procedure_name) || 'x' || + TRIM(pp.rdb$parameter_name) as Id + , TRIM(pp.rdb$procedure_name) as ParentId + , TRIM(pp.rdb$parameter_name) as Name + , pp.rdb$parameter_number+1 as Ordinal + , TRIM(CASE f.rdb$field_type + WHEN 7 THEN CASE f.rdb$field_sub_type + WHEN 0 THEN 'smallint' + WHEN 1 THEN 'numeric' + WHEN 2 THEN 'decimal' + END + WHEN 8 THEN CASE f.rdb$field_sub_type + WHEN 0 THEN 'int' + WHEN 1 THEN 'numeric' + WHEN 2 THEN 'decimal' + END + WHEN 16 THEN CASE f.rdb$field_sub_type + WHEN 0 THEN 'bigint' + WHEN 1 THEN 'numeric' + WHEN 2 THEN 'decimal' + END + WHEN 10 THEN 'float' + WHEN 27 THEN 'double' + WHEN 12 THEN 'date' + WHEN 13 THEN 'time' + WHEN 35 THEN 'timestamp' + WHEN 261 THEN 'blob' + WHEN 37 THEN 'varchar' + WHEN 14 THEN 'char' + WHEN 40 THEN 'cstring' + END) as TypeName + , f.rdb$character_length as MaxLength + , f.rdb$field_precision as DblPrecision + , 0 as DateTimePrecision + , f.rdb$field_scale * (-1) as Scale + , null as CollationCatalog + , null as CollationSchema + , null CollationName + , null as CharacterSetCatalog + , null as CharacterSetSchema + , null as CharacterSetName + , CAST(0 as smallint) as IsMultiSet + , TRIM(IIF(pp.rdb$parameter_type = 1, 'OUT', 'IN')) as Mode + , NULL as DefaultType + FROM + rdb$procedure_parameters pp INNER JOIN rdb$fields f ON + (pp.rdb$field_source = f.rdb$field_name) + ) AS Extent6) AS UnionAll2 ON (6 = UnionAll2.C1) AND + (Extent4.Id = UnionAll2.ParentId)) AS UnionAll3 + ) AS Project7 + order by par_dir,par_name + ; + """, + 'expected_stdout': + """ + PAR_NAME A_01 + PAR_TYPE smallint + PAR_DIR IN + PAR_NAME A_02 + PAR_TYPE int + PAR_DIR IN + PAR_NAME A_04 + PAR_TYPE numeric + PAR_DIR IN + PAR_NAME A_05 + PAR_TYPE double + PAR_DIR IN + PAR_NAME A_06 + PAR_TYPE float + PAR_DIR IN + PAR_NAME A_07 + PAR_TYPE double + PAR_DIR IN + PAR_NAME A_10 + PAR_TYPE timestamp + PAR_DIR IN + PAR_NAME A_11 + PAR_TYPE varchar + PAR_DIR IN + PAR_NAME A_12 + PAR_TYPE char + PAR_DIR IN + PAR_NAME A_13 + PAR_TYPE blob + PAR_DIR IN + PAR_NAME O_01 + PAR_TYPE smallint + PAR_DIR OUT + PAR_NAME O_02 + PAR_TYPE int + PAR_DIR OUT + PAR_NAME O_04 + PAR_TYPE numeric + PAR_DIR OUT + PAR_NAME O_05 + PAR_TYPE double + PAR_DIR OUT + PAR_NAME O_06 + PAR_TYPE float + PAR_DIR OUT + PAR_NAME O_07 + PAR_TYPE double + PAR_DIR OUT + PAR_NAME O_10 + PAR_TYPE timestamp + PAR_DIR OUT + PAR_NAME O_11 + PAR_TYPE varchar + PAR_DIR OUT + PAR_NAME O_12 + PAR_TYPE char + PAR_DIR OUT + PAR_NAME O_13 + PAR_TYPE blob + PAR_DIR OUT + """, + 'expected_stderr': + """ + """ +}, +{ + 'firebird_version': '2.5', + 'platform': 'All', + 'page_size': '4096', + 'test_type': 'ISQL', + 'sql_dialect': 3, + 'init_script': + """ + + set term ^; + create or alter procedure + sp01( + a_01 smallint, + a_02 int, + a_03 bigint, + a_04 numeric(9,0), + a_05 numeric(10,0), + a_06 float, + a_07 double precision, + a_08 date, + a_09 time, + a_10 timestamp, + a_11 varchar(1), + a_12 char(2), + a_13 blob + ) returns ( + o_01 smallint, + o_02 int, + o_03 bigint, + o_04 numeric(9,0), + o_05 numeric(10,0), + o_06 float, + o_07 double precision, + o_08 date, + o_09 time, + o_10 timestamp, + o_11 varchar(1), + o_12 char(2), + o_13 blob + ) as + begin + suspend; + end + ^ + set term ;^ + commit; + """, + 'test_script': + """ + + set list on; + SELECT + Project7.C8 AS par_name, + Project7.C9 AS par_type, + Project7.C10 AS par_dir + FROM ( SELECT + UnionAll3.SchemaName AS C1, + UnionAll3.Name AS C2, + UnionAll3.ReturnTypeName AS C3, + UnionAll3.IsAggregate AS C4, + UnionAll3.C1 AS C5, + UnionAll3.IsBuiltIn AS C6, + UnionAll3.IsNiladic AS C7, + UnionAll3.C2 AS C8, + UnionAll3.C3 AS C9, + UnionAll3.C4 AS C10, + UnionAll3.C5 AS C11, + 1 AS C12 + FROM (SELECT + Extent1.SchemaName AS SchemaName, + Extent1.Name AS Name, + Extent1.ReturnTypeName AS ReturnTypeName, + Extent1.IsAggregate AS IsAggregate, + CAST(1 AS SMALLINT) AS C1, + Extent1.IsBuiltIn AS IsBuiltIn, + Extent1.IsNiladic AS IsNiladic, + UnionAll1.Name AS C2, + UnionAll1.TypeName AS C3, + UnionAll1.Mode AS C4, + UnionAll1.Ordinal AS C5 + FROM ( + SELECT + TRIM(f.rdb$function_name) as Id + , null as CatalogName + , null as SchemaName + , TRIM(f.rdb$function_name) as Name + , TRIM(CASE fa.rdb$field_type + WHEN 7 THEN CASE fa.rdb$field_sub_type + WHEN 0 THEN 'smallint' + WHEN 1 THEN 'numeric' + WHEN 2 THEN 'decimal' + END + WHEN 8 THEN CASE fa.rdb$field_sub_type + WHEN 0 THEN 'int' + WHEN 1 THEN 'numeric' + WHEN 2 THEN 'decimal' + END + WHEN 16 THEN CASE fa.rdb$field_sub_type + WHEN 0 THEN 'bigint' + WHEN 1 THEN 'numeric' + WHEN 2 THEN 'decimal' + END + WHEN 10 THEN 'float' + WHEN 27 THEN 'double' + WHEN 12 THEN 'date' + WHEN 13 THEN 'time' + WHEN 35 THEN 'timestamp' + WHEN 261 THEN 'blob' + WHEN 37 THEN 'varchar' + WHEN 14 THEN 'char' + WHEN 40 THEN 'cstring' + END) as ReturnTypeName + , fa.rdb$character_length as ReturnMaxLength + , fa.rdb$field_precision as ReturnPrecision + , 0 as ReturnDateTimePrecision + , fa.rdb$field_scale * (-1) as ReturnScale + , null as ReturnCollationCatalog + , null as ReturnCollationSchema + , null as ReturnCollationName + , null as ReturnCharacterSetCatalog + , null as ReturnCharacterSetSchema + , null as ReturnCharacterSetName + , CAST(0 as smallint) as ReturnIsMultiSet + , CAST(0 as smallint) as IsAggregate + , CAST(0 as smallint) as IsBuiltIn + , CAST((select CASE COUNT(*) WHEN 1 THEN 1 ELSE 0 END FROM + rdb$function_arguments fa WHERE fa.rdb$function_name = + f.rdb$function_name) as smallint) as IsNiladic + FROM + rdb$functions f INNER JOIN rdb$function_arguments fa ON + (f.rdb$function_name = fa.rdb$function_name AND f.rdb$return_argument + = fa.rdb$argument_position) + WHERE f.rdb$system_flag = 0 -- ::: nb ::: need add alias f. in 3.0! + ) AS Extent1 + LEFT OUTER JOIN (SELECT + Extent2.Name AS Name, + Extent2.Ordinal AS Ordinal, + Extent2.TypeName AS TypeName, + Extent2.Mode AS Mode, + 0 AS C1, + Extent2.ParentId AS ParentId + FROM ( + SELECT + null as Id + , null as ParentId + , null as Name + , null as Ordinal + , null as TypeName + , null as MaxLength + , null as DblPrecision + , null as DateTimePrecision + , null as Scale + , null as CollationCatalog + , null as CollationSchema + , null as CollationName + , null as CharacterSetCatalog + , null as CharacterSetSchema + , null as CharacterSetName + , null as IsMultiSet + + , null as Mode + , null as DefaultType + FROM + rdb$database + WHERE + 0=1 + ) AS Extent2 + UNION ALL + SELECT + Extent3.Name AS Name, + Extent3.Ordinal AS Ordinal, + Extent3.TypeName AS TypeName, + Extent3.Mode AS Mode, + 6 AS C1, + Extent3.ParentId AS ParentId + FROM ( + SELECT + TRIM(pp.rdb$procedure_name) || 'x' || + TRIM(pp.rdb$parameter_name) as Id + , TRIM(pp.rdb$procedure_name) as ParentId + , TRIM(pp.rdb$parameter_name) as Name + , pp.rdb$parameter_number+1 as Ordinal + , TRIM(CASE f.rdb$field_type + WHEN 7 THEN CASE f.rdb$field_sub_type + WHEN 0 THEN 'smallint' + WHEN 1 THEN 'numeric' + WHEN 2 THEN 'decimal' + END + WHEN 8 THEN CASE f.rdb$field_sub_type + WHEN 0 THEN 'int' + WHEN 1 THEN 'numeric' + WHEN 2 THEN 'decimal' + END + WHEN 16 THEN CASE f.rdb$field_sub_type + WHEN 0 THEN 'bigint' + WHEN 1 THEN 'numeric' + WHEN 2 THEN 'decimal' + END + WHEN 10 THEN 'float' + WHEN 27 THEN 'double' + WHEN 12 THEN 'date' + WHEN 13 THEN 'time' + WHEN 35 THEN 'timestamp' + WHEN 261 THEN 'blob' + WHEN 37 THEN 'varchar' + WHEN 14 THEN 'char' + WHEN 40 THEN 'cstring' + END) as TypeName + , f.rdb$character_length as MaxLength + , f.rdb$field_precision as DblPrecision + , 0 as DateTimePrecision + , f.rdb$field_scale * (-1) as Scale + , null as CollationCatalog + , null as CollationSchema + , null CollationName + , null as CharacterSetCatalog + , null as CharacterSetSchema + , null as CharacterSetName + , CAST(0 as smallint) as IsMultiSet + , TRIM(IIF(pp.rdb$parameter_type = 1, 'OUT', 'IN')) as Mode + , NULL as DefaultType + FROM + rdb$procedure_parameters pp INNER JOIN rdb$fields f ON + (pp.rdb$field_source = f.rdb$field_name) + ) AS Extent3) AS UnionAll1 ON (0 = UnionAll1.C1) AND + (Extent1.Id = UnionAll1.ParentId) + UNION ALL + SELECT + Extent4.SchemaName AS SchemaName, + Extent4.Name AS Name, + CAST(NULL AS varchar(1000)) AS C1, + CAST(0 AS SMALLINT) AS C2, + CAST(0 AS SMALLINT) AS C3, + CAST(0 AS SMALLINT) AS C4, + CAST(0 AS SMALLINT) AS C5, + UnionAll2.Name AS C6, + UnionAll2.TypeName AS C7, + UnionAll2.Mode AS C8, + UnionAll2.Ordinal AS C9 + FROM ( + SELECT + TRIM(rdb$procedure_name) as Id + , null as CatalogName + , '' as SchemaName -- bug or not??? need to be not null + , TRIM(rdb$procedure_name) as Name + FROM + rdb$procedures + ) AS Extent4 + LEFT OUTER JOIN (SELECT + Extent5.Name AS Name, + Extent5.Ordinal AS Ordinal, + Extent5.TypeName AS TypeName, + Extent5.Mode AS Mode, + 0 AS C1, + Extent5.ParentId AS ParentId + FROM ( + SELECT + null as Id + , null as ParentId + , null as Name + , null as Ordinal + , null as TypeName + , null as MaxLength + , null as DblPrecision + , null as DateTimePrecision + , null as Scale + , null as CollationCatalog + , null as CollationSchema + , null as CollationName + , null as CharacterSetCatalog + , null as CharacterSetSchema + , null as CharacterSetName + , null as IsMultiSet + , null as Mode + , null as DefaultType + FROM + rdb$database + WHERE + 0=1 + ) AS Extent5 + UNION ALL + SELECT + Extent6.Name AS Name, + Extent6.Ordinal AS Ordinal, + Extent6.TypeName AS TypeName, + Extent6.Mode AS Mode, + 6 AS C1, + Extent6.ParentId AS ParentId + FROM ( + SELECT + TRIM(pp.rdb$procedure_name) || 'x' || + TRIM(pp.rdb$parameter_name) as Id + , TRIM(pp.rdb$procedure_name) as ParentId + , TRIM(pp.rdb$parameter_name) as Name + , pp.rdb$parameter_number+1 as Ordinal + , TRIM(CASE f.rdb$field_type + WHEN 7 THEN CASE f.rdb$field_sub_type + WHEN 0 THEN 'smallint' + WHEN 1 THEN 'numeric' + WHEN 2 THEN 'decimal' + END + WHEN 8 THEN CASE f.rdb$field_sub_type + WHEN 0 THEN 'int' + WHEN 1 THEN 'numeric' + WHEN 2 THEN 'decimal' + END + WHEN 16 THEN CASE f.rdb$field_sub_type + WHEN 0 THEN 'bigint' + WHEN 1 THEN 'numeric' + WHEN 2 THEN 'decimal' + END + WHEN 10 THEN 'float' + WHEN 27 THEN 'double' + WHEN 12 THEN 'date' + WHEN 13 THEN 'time' + WHEN 35 THEN 'timestamp' + WHEN 261 THEN 'blob' + WHEN 37 THEN 'varchar' + WHEN 14 THEN 'char' + WHEN 40 THEN 'cstring' + END) as TypeName + , f.rdb$character_length as MaxLength + , f.rdb$field_precision as DblPrecision + , 0 as DateTimePrecision + , f.rdb$field_scale * (-1) as Scale + , null as CollationCatalog + , null as CollationSchema + , null CollationName + , null as CharacterSetCatalog + , null as CharacterSetSchema + , null as CharacterSetName + , CAST(0 as smallint) as IsMultiSet + , TRIM(IIF(pp.rdb$parameter_type = 1, 'OUT', 'IN')) as Mode + , NULL as DefaultType + FROM + rdb$procedure_parameters pp INNER JOIN rdb$fields f ON + (pp.rdb$field_source = f.rdb$field_name) + ) AS Extent6) AS UnionAll2 ON (6 = UnionAll2.C1) AND + (Extent4.Id = UnionAll2.ParentId)) AS UnionAll3 + ) AS Project7 + order by par_dir,par_name + ; + """, + 'expected_stdout': + """ + PAR_NAME A_01 + PAR_TYPE smallint + PAR_DIR IN + PAR_NAME A_02 + PAR_TYPE int + PAR_DIR IN + PAR_NAME A_03 + PAR_TYPE bigint + PAR_DIR IN + PAR_NAME A_04 + PAR_TYPE numeric + PAR_DIR IN + PAR_NAME A_05 + PAR_TYPE numeric + PAR_DIR IN + PAR_NAME A_06 + PAR_TYPE float + PAR_DIR IN + PAR_NAME A_07 + PAR_TYPE double + PAR_DIR IN + PAR_NAME A_08 + PAR_TYPE date + PAR_DIR IN + PAR_NAME A_09 + PAR_TYPE time + PAR_DIR IN + PAR_NAME A_10 + PAR_TYPE timestamp + PAR_DIR IN + PAR_NAME A_11 + PAR_TYPE varchar + PAR_DIR IN + PAR_NAME A_12 + PAR_TYPE char + PAR_DIR IN + PAR_NAME A_13 + PAR_TYPE blob + PAR_DIR IN + PAR_NAME O_01 + PAR_TYPE smallint + PAR_DIR OUT + PAR_NAME O_02 + PAR_TYPE int + PAR_DIR OUT + PAR_NAME O_03 + PAR_TYPE bigint + PAR_DIR OUT + PAR_NAME O_04 + PAR_TYPE numeric + PAR_DIR OUT + PAR_NAME O_05 + PAR_TYPE numeric + PAR_DIR OUT + PAR_NAME O_06 + PAR_TYPE float + PAR_DIR OUT + PAR_NAME O_07 + PAR_TYPE double + PAR_DIR OUT + PAR_NAME O_08 + PAR_TYPE date + PAR_DIR OUT + PAR_NAME O_09 + PAR_TYPE time + PAR_DIR OUT + PAR_NAME O_10 + PAR_TYPE timestamp + PAR_DIR OUT + PAR_NAME O_11 + PAR_TYPE varchar + PAR_DIR OUT + PAR_NAME O_12 + PAR_TYPE char + PAR_DIR OUT + PAR_NAME O_13 + PAR_TYPE blob + PAR_DIR OUT + """, + 'expected_stderr': + """ + """ +} +] +} Property changes on: qa/fbt-repository/trunk/tests/bugs/core_1992.fbt ___________________________________________________________________ Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: qa/fbt-repository/trunk/tests/bugs/core_3238.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_3238.fbt (rev 0) +++ qa/fbt-repository/trunk/tests/bugs/core_3238.fbt 2015-02-23 14:57:57 UTC (rev 60763) @@ -0,0 +1,45 @@ +{ +'id': 'bugs.core_3238', +'qmid': None, +'tracker_id': 'CORE-3238', +'title': 'Makes GEN_UUID return a compliant RFC-4122 UUID', +'description': '', +'min_versions': '2.5.2', +'versions': [ +{ + 'firebird_version': '2.5', + 'platform': 'All', + 'test_type': 'ISQL', + 'init_script': + """ + """, + 'test_script': + """ + set list on; + set term ^; + execute block returns(err_cnt int) as + declare n int = 100000; + declare s varchar(36); + begin + err_cnt = 0; + while( n > 0 ) do + begin + s = uuid_to_char( gen_uuid() ); + if ( NOT (substring(s from 15 for 1)='4' and substring(s from 20 for 1) in ('8','9','A','B')) ) + then err_cnt = err_cnt + 1; + n = n - 1; + end + suspend; + end + ^ set term ;^ + """, + 'expected_stdout': + """ + ERR_CNT 0 + """, + 'expected_stderr': + """ + """ +} +] +} Property changes on: qa/fbt-repository/trunk/tests/bugs/core_3238.fbt ___________________________________________________________________ Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Modified: qa/fbt-repository/trunk/tests/functional/tabloid/fbt-run.bat.txt =================================================================== --- qa/fbt-repository/trunk/tests/functional/tabloid/fbt-run.bat.txt 2015-02-23 10:29:43 UTC (rev 60762) +++ qa/fbt-repository/trunk/tests/functional/tabloid/fbt-run.bat.txt 2015-02-23 14:57:57 UTC (rev 60763) @@ -2,7 +2,7 @@ cls @rem File name: C:\firebird\QA\fbt-repo\fbt-run.bat @rem It is recommended to put this file in the 'top-level' folder - "QA\fbt-repo". -@rem Running sample: C:\firebird\QA\fbt-repo\fbt-run.bat core_NNNN.fbt +@rem Running sample: C:\MIX\firebird\QA\fbt-repo\fbt-run.bat core_NNNN.fbt @rem Also it is convenient to 'bind' this batch to files with pattern *.fbt @rem from sub-folder fbt-repo\tests\ (FAR: F10 / Commands / File associations) @rem I that case one may always to sit in the folder with .fbt files @@ -22,11 +22,12 @@ @echo off cd %~dp0 -echo Running test: %fbt_name%>fbt-run.25.log -echo ------------------------>>fbt-run.25.log -copy fbt-run.25.log fbt-run.30.log >nul +echo %date%, %time%, running test: %fbt_name%>fbt-run.25.log +echo ------------------------------------------------------->>fbt-run.25.log +%fb25home%\fbsvcmgr localhost/%fb25port%:service_mgr user %isc_user% password %isc_password% info_server_version 1>>fbt-run.25.log 2>&1 -%fb25home%\fbsvcmgr localhost/%fb25port%:service_mgr user %isc_user% password %isc_password% info_server_version 1>>fbt-run.25.log 2>&1 +echo %date%, %time%, running test: %fbt_name%>fbt-run.30.log +echo ------------------------------------------------------->>fbt-run.30.log %fb30home%\fbsvcmgr localhost/%fb30port%:service_mgr user %isc_user% password %isc_password% info_server_version 1>>fbt-run.30.log 2>&1 echo. echo Running for 2.5 . . . This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ta...@us...> - 2015-02-23 15:50:31
|
Revision: 60764 http://sourceforge.net/p/firebird/code/60764 Author: tabloid Date: 2015-02-23 15:50:23 +0000 (Mon, 23 Feb 2015) Log Message: ----------- See added .fbt file(s) Added Paths: ----------- qa/fbt-repository/trunk/tests/bugs/core_3611.fbt qa/fbt-repository/trunk/tests/functional/tabloid/core_3611_aux.fbt Added: qa/fbt-repository/trunk/tests/bugs/core_3611.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_3611.fbt (rev 0) +++ qa/fbt-repository/trunk/tests/bugs/core_3611.fbt 2015-02-23 15:50:23 UTC (rev 60764) @@ -0,0 +1,105 @@ +{ +'id': 'bugs.core_3611', +'qmid': None, +'tracker_id': 'CORE-3611', +'title': 'Wrong data while retrieving from CTEs (or derived tables) with same column names', +'description': '', +'min_versions': '2.5.2', +'versions': [ +{ + 'firebird_version': '2.5', + 'platform': 'All', + 'test_type': 'ISQL', + 'init_script': + """ + """, + 'test_script': + """ + recreate table t( + tab_name char(31) character set unicode_fss, + sum1_abc int, + sum1_oth int, + sum2_abc int, + sum2_oth int + ); + commit; + + insert into t(tab_name, sum1_abc, sum1_oth) + with + fields_abc as ( + select rdb$relation_name, count(*) cnt + from rdb$relation_fields + where rdb$field_name<'rdb$d' + group by 1 + ), + fields_other as ( + select rdb$relation_name, count(*) cnt + from rdb$relation_fields + where rdb$field_name>='rdb$d' + group by 1 + ) + ,fields_all as ( + select + substring(r.rdb$relation_name from 1 for 5) tab_name, + sum(f1.cnt) sum_abc, + sum(f2.cnt) sum_other + from rdb$relations r + left join fields_abc f1 on f1.rdb$relation_name=r.rdb$relation_name + left join fields_other f2 on f2.rdb$relation_name=r.rdb$relation_name + where r.rdb$flags is null + group by 1 + ) + select tab_name, sum_abc, sum_other from fields_all + ; + + insert into t(tab_name, sum2_abc, sum2_oth) + with + fields_abc as ( + select rdb$relation_name, count(*) cnt + from rdb$relation_fields + where rdb$field_name<'rdb$d' + group by 1 + ), + fields_other as ( + select rdb$relation_name, count(*) cnt____________ + from rdb$relation_fields + where rdb$field_name>='rdb$d' + group by 1 + ) + ,fields_all as ( + select substring(r.rdb$relation_name from 1 for 5) tab_name, + sum(f1.cnt) sum_abc, + sum(f2.cnt____________) sum_other + from rdb$relations r + left join fields_abc f1 on f1.rdb$relation_name=r.rdb$relation_name + left join fields_other f2 on f2.rdb$relation_name=r.rdb$relation_name + where r.rdb$flags is null + group by 1 + ) + select tab_name, sum_abc, sum_other from fields_all + ; + commit; + + select + tab_name + ,min(sum1_abc) as sum1_abc + ,min(sum2_abc) as sum2_abc + ,min(sum1_oth) as sum1_oth + ,min(sum2_oth) as sum2_oth + from t + group by tab_name + having + min(sum1_abc) is distinct from min(sum2_abc) + or + min(sum1_oth) is distinct from min(sum2_oth) + ; + """, + 'expected_stdout': + """ + """, + 'expected_stderr': + """ + """ +} +] +} Property changes on: qa/fbt-repository/trunk/tests/bugs/core_3611.fbt ___________________________________________________________________ Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: qa/fbt-repository/trunk/tests/functional/tabloid/core_3611_aux.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/tabloid/core_3611_aux.fbt (rev 0) +++ qa/fbt-repository/trunk/tests/functional/tabloid/core_3611_aux.fbt 2015-02-23 15:50:23 UTC (rev 60764) @@ -0,0 +1,41 @@ +{ +'id': 'functional.tabloid.core_3611_aux', +'qmid': None, +'tracker_id': 'CORE-3611', +'title': 'Wrong data while retrieving from CTEs (or derived tables) with same column names', +'description': 'See another sample in this ticket (by dimitr, 30/Oct/12 07:13 PM)', +'min_versions': '2.5.2', +'versions': [ +{ + 'firebird_version': '2.5', + 'platform': 'All', + 'test_type': 'ISQL', + 'init_script': + """ + """, + 'test_script': + """ + set planonly; + with tab as + ( + select 1 as p1 + from rdb$relations + ) + select f1.p1, f2.p1 as p2 + from tab f1 cross join tab f2 + group by f1.p1 + ; + """, + 'expected_stdout': + """ + """, + 'expected_stderr': + """ + Statement failed, SQLSTATE = 42000 + Dynamic SQL Error + -SQL error code = -104 + -Invalid expression in the select list (not contained in either an aggregate function or the GROUP BY clause) + """ +} +] +} Property changes on: qa/fbt-repository/trunk/tests/functional/tabloid/core_3611_aux.fbt ___________________________________________________________________ Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ta...@us...> - 2015-02-23 17:52:50
|
Revision: 60765 http://sourceforge.net/p/firebird/code/60765 Author: tabloid Date: 2015-02-23 17:52:41 +0000 (Mon, 23 Feb 2015) Log Message: ----------- See added .fbt file(s) Modified Paths: -------------- qa/fbt-repository/trunk/tests/functional/tabloid/fbt-run.bat.txt Added Paths: ----------- qa/fbt-repository/trunk/tests/bugs/core_4694.fbt Added: qa/fbt-repository/trunk/tests/bugs/core_4694.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_4694.fbt (rev 0) +++ qa/fbt-repository/trunk/tests/bugs/core_4694.fbt 2015-02-23 17:52:41 UTC (rev 60765) @@ -0,0 +1,97 @@ +{ +'id': 'bugs.core_4694', +'qmid': None, +'tracker_id': 'CORE-4694', +'title': '"Column unknown" error while preparing a recursive query if the recursive part contains ALIASED datasource in the join with anchor table', +'description': '', +'min_versions': '2.5.4', +'versions': [ +{ + 'firebird_version': '2.5', + 'platform': 'All', + 'test_type': 'ISQL', + 'init_script': + """ + """, + 'test_script': + """ + recreate table xcall_stack ( + xcall_id int + ,xcaller_id int + ); + commit; + + set planonly; + + with recursive + r as ( + select c.xcall_id + from xcall_stack c + where c.xcaller_id is null + + UNION ALL + + select + c.xcall_id + from xcall_stack c + join r + AS h -- <<<<<<<<<<<<<<<<<<<<<< ::: NB ::: `r` is aliased + on c.xcaller_id = h.xcall_id + ) + select r.xcall_id + from r; + """, + 'expected_stdout': + """ + PLAN (R C NATURAL) + PLAN (R C NATURAL) + """, + 'expected_stderr': + """ + """ +}, +{ + 'firebird_version': '3.0', + 'platform': 'All', + 'test_type': 'ISQL', + 'init_script': + """ + """, + 'test_script': + """ + recreate table xcall_stack ( + xcall_id int + ,xcaller_id int + ); + commit; + + set planonly; + + with recursive + r as ( + select c.xcall_id + from xcall_stack c + where c.xcaller_id is null + + UNION ALL + + select + c.xcall_id + from xcall_stack c + join r + AS h -- <<<<<<<<<<<<<<<<<<<<<< ::: NB ::: `r` is aliased + on c.xcaller_id = h.xcall_id + ) + select r.xcall_id + from r; + """, + 'expected_stdout': + """ + PLAN (R C NATURAL, R C NATURAL) + """, + 'expected_stderr': + """ + """ +} +] +} Property changes on: qa/fbt-repository/trunk/tests/bugs/core_4694.fbt ___________________________________________________________________ Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Modified: qa/fbt-repository/trunk/tests/functional/tabloid/fbt-run.bat.txt =================================================================== --- qa/fbt-repository/trunk/tests/functional/tabloid/fbt-run.bat.txt 2015-02-23 15:50:23 UTC (rev 60764) +++ qa/fbt-repository/trunk/tests/functional/tabloid/fbt-run.bat.txt 2015-02-23 17:52:41 UTC (rev 60765) @@ -1,4 +1,5 @@ @echo off +setlocal enabledelayedexpansion enableextensions cls @rem File name: C:\firebird\QA\fbt-repo\fbt-run.bat @rem It is recommended to put this file in the 'top-level' folder - "QA\fbt-repo". @@ -13,6 +14,17 @@ set /p curdir= < tmp.tmp.tmp del tmp.tmp.tmp +set cdprefix= +set find_what=%~dp0 +set repl_with= +for /f "tokens=* delims=\" %%a in ("%curdir%") do ( + echo %%a + set string=%%a + set cdprefix=!string:%find_what%=%repl_with%! + set cdprefix=!cdprefix:tests\=%repl_with%! + set cdprefix=!cdprefix:\=.! +) + set fbt_name=%~n1 set fb25home=C:\MIX\firebird\fb25\bin set fb30home=C:\MIX\firebird\fb30 @@ -30,15 +42,32 @@ echo ------------------------------------------------------->>fbt-run.30.log %fb30home%\fbsvcmgr localhost/%fb30port%:service_mgr user %isc_user% password %isc_password% info_server_version 1>>fbt-run.30.log 2>&1 echo. -echo Running for 2.5 . . . -fbt_run -b %fb25home% bugs.%fbt_name% -o localhost/%fb25port% 1>>fbt-run.25.log 2>fbt-run.25.err -echo Running for 3.0 . . . -fbt_run -b %fb30home% bugs.%fbt_name% -o localhost/%fb30port% 1>>fbt-run.30.log 2>fbt-run.30.err +set fbt_run=fbt_run -b %fb25home% %cdprefix%.%fbt_name% -o localhost/%fb25port% +echo Command: %fbt_run%>>fbt-run.25.log +echo Running for 2.5: %fbt_run% +cmd /c %fbt_run% 1>>fbt-run.25.log 2>fbt-run.25.err +set fbt_run=fbt_run -b %fb30home% %cdprefix%.%fbt_name% -o localhost/%fb30port% +echo Command: %fbt_run%>>fbt-run.30.log +echo Running for 3.0: %fbt_run% +cmd /c %fbt_run% 1>>fbt-run.30.log 2>fbt-run.30.err + set overall=0 set e25size=0 set e30size=0 +:chkn25 +findstr /B /I "Nothing to run" fbt-run.25.log 1>nul 2>&1 +if errorlevel 1 goto chkn30 +set overall=1 +goto showlog + +:chkn30 +findstr /B /I "Nothing to run" fbt-run.30.log 1>nul 2>&1 +if errorlevel 1 goto chk_25 +set overall=1 +goto showlog + :chk_25 findstr /B /I "FAIL ERROR" fbt-run.25.log 1>nul 2>&1 if errorlevel 1 goto chk_30 @@ -62,6 +91,8 @@ set overall=1 ) +:showlog + echo ^|^|^|^|^|^|^|^|^|^|^|^|^|^|^|^|^|^|^|^| Log25: start ^|^|^|^|^|^|^|^|^|^|^|^|^|^|^|^|^|^|^|^| type fbt-run.25.log echo ^|^|^|^|^|^|^|^|^|^|^|^|^|^|^|^|^|^|^|^| Log25: finish ^|^|^|^|^|^|^|^|^|^|^|^|^|^|^|^|^|^|^|^| This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ta...@us...> - 2015-03-05 18:26:20
|
Revision: 60839 http://sourceforge.net/p/firebird/code/60839 Author: tabloid Date: 2015-03-05 18:26:17 +0000 (Thu, 05 Mar 2015) Log Message: ----------- See added / modified .fbt file(s) Added Paths: ----------- qa/fbt-repository/trunk/tests/bugs/core_1992_dialect_1.fbt qa/fbt-repository/trunk/tests/bugs/core_1992_dialect_3.fbt qa/fbt-repository/trunk/tests/functional/tabloid/arithmetic-cast-float-to-int-as-round.fbt qa/fbt-repository/trunk/tests/functional/tabloid/arithmetic-numexpr-eval-dialect-1.fbt qa/fbt-repository/trunk/tests/functional/tabloid/arithmetic-numexpr-eval-dialect-3.fbt Removed Paths: ------------- qa/fbt-repository/trunk/tests/bugs/core_1992.fbt qa/fbt-repository/trunk/tests/functional/tabloid/arithmetic-results-01.fbt Deleted: qa/fbt-repository/trunk/tests/bugs/core_1992.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_1992.fbt 2015-03-05 18:08:32 UTC (rev 60838) +++ qa/fbt-repository/trunk/tests/bugs/core_1992.fbt 2015-03-05 18:26:17 UTC (rev 60839) @@ -1,846 +0,0 @@ -{ -'id': 'bugs.core_1992', -'qmid': None, -'tracker_id': 'CORE-1992', -'title': 'bad BLR -- invalid stream for union select', -'description': '', -'min_versions': '2.5.2', -'versions': [ -{ - 'firebird_version': '2.5', - 'platform': 'All', - 'page_size': '4096', - 'test_type': 'ISQL', - 'sql_dialect': 1, - 'init_script': - """ - set term ^; - create or alter procedure - sp01( - a_01 smallint, - a_02 int, - --a_03 bigint, - a_04 numeric(9,0), - a_05 numeric(10,0), - a_06 float, - a_07 double precision, - --a_08 date, - --a_09 time, - a_10 timestamp, - a_11 varchar(1), - a_12 char(2), - a_13 blob - ) returns ( - o_01 smallint, - o_02 int, - --o_03 bigint, - o_04 numeric(9,0), - o_05 numeric(10,0), - o_06 float, - o_07 double precision, - --o_08 date, - --o_09 time, - o_10 timestamp, - o_11 varchar(1), - o_12 char(2), - o_13 blob - ) as - begin - suspend; - end - ^ - set term ;^ - commit; - """, - 'test_script': - """ - set list on; - SELECT - Project7.C8 AS par_name, - Project7.C9 AS par_type, - Project7.C10 AS par_dir - FROM ( SELECT - UnionAll3.SchemaName AS C1, - UnionAll3.Name AS C2, - UnionAll3.ReturnTypeName AS C3, - UnionAll3.IsAggregate AS C4, - UnionAll3.C1 AS C5, - UnionAll3.IsBuiltIn AS C6, - UnionAll3.IsNiladic AS C7, - UnionAll3.C2 AS C8, - UnionAll3.C3 AS C9, - UnionAll3.C4 AS C10, - UnionAll3.C5 AS C11, - 1 AS C12 - FROM (SELECT - Extent1.SchemaName AS SchemaName, - Extent1.Name AS Name, - Extent1.ReturnTypeName AS ReturnTypeName, - Extent1.IsAggregate AS IsAggregate, - CAST(1 AS SMALLINT) AS C1, - Extent1.IsBuiltIn AS IsBuiltIn, - Extent1.IsNiladic AS IsNiladic, - UnionAll1.Name AS C2, - UnionAll1.TypeName AS C3, - UnionAll1.Mode AS C4, - UnionAll1.Ordinal AS C5 - FROM ( - SELECT - TRIM(f.rdb$function_name) as Id - , null as CatalogName - , null as SchemaName - , TRIM(f.rdb$function_name) as Name - , TRIM(CASE fa.rdb$field_type - WHEN 7 THEN CASE fa.rdb$field_sub_type - WHEN 0 THEN 'smallint' - WHEN 1 THEN 'numeric' - WHEN 2 THEN 'decimal' - END - WHEN 8 THEN CASE fa.rdb$field_sub_type - WHEN 0 THEN 'int' - WHEN 1 THEN 'numeric' - WHEN 2 THEN 'decimal' - END - WHEN 16 THEN CASE fa.rdb$field_sub_type - WHEN 0 THEN 'bigint' - WHEN 1 THEN 'numeric' - WHEN 2 THEN 'decimal' - END - WHEN 10 THEN 'float' - WHEN 27 THEN 'double' - WHEN 12 THEN 'date' - WHEN 13 THEN 'time' - WHEN 35 THEN 'timestamp' - WHEN 261 THEN 'blob' - WHEN 37 THEN 'varchar' - WHEN 14 THEN 'char' - WHEN 40 THEN 'cstring' - END) as ReturnTypeName - , fa.rdb$character_length as ReturnMaxLength - , fa.rdb$field_precision as ReturnPrecision - , 0 as ReturnDateTimePrecision - , fa.rdb$field_scale * (-1) as ReturnScale - , null as ReturnCollationCatalog - , null as ReturnCollationSchema - , null as ReturnCollationName - , null as ReturnCharacterSetCatalog - , null as ReturnCharacterSetSchema - , null as ReturnCharacterSetName - , CAST(0 as smallint) as ReturnIsMultiSet - , CAST(0 as smallint) as IsAggregate - , CAST(0 as smallint) as IsBuiltIn - , CAST((select CASE COUNT(*) WHEN 1 THEN 1 ELSE 0 END FROM - rdb$function_arguments fa WHERE fa.rdb$function_name = - f.rdb$function_name) as smallint) as IsNiladic - FROM - rdb$functions f INNER JOIN rdb$function_arguments fa ON - (f.rdb$function_name = fa.rdb$function_name AND f.rdb$return_argument - = fa.rdb$argument_position) - WHERE f.rdb$system_flag = 0 -- ::: nb ::: need add alias f. in 3.0! - ) AS Extent1 - LEFT OUTER JOIN (SELECT - Extent2.Name AS Name, - Extent2.Ordinal AS Ordinal, - Extent2.TypeName AS TypeName, - Extent2.Mode AS Mode, - 0 AS C1, - Extent2.ParentId AS ParentId - FROM ( - SELECT - null as Id - , null as ParentId - , null as Name - , null as Ordinal - , null as TypeName - , null as MaxLength - , null as DblPrecision - , null as DateTimePrecision - , null as Scale - , null as CollationCatalog - , null as CollationSchema - , null as CollationName - , null as CharacterSetCatalog - , null as CharacterSetSchema - , null as CharacterSetName - , null as IsMultiSet - - , null as Mode - , null as DefaultType - FROM - rdb$database - WHERE - 0=1 - ) AS Extent2 - UNION ALL - SELECT - Extent3.Name AS Name, - Extent3.Ordinal AS Ordinal, - Extent3.TypeName AS TypeName, - Extent3.Mode AS Mode, - 6 AS C1, - Extent3.ParentId AS ParentId - FROM ( - SELECT - TRIM(pp.rdb$procedure_name) || 'x' || - TRIM(pp.rdb$parameter_name) as Id - , TRIM(pp.rdb$procedure_name) as ParentId - , TRIM(pp.rdb$parameter_name) as Name - , pp.rdb$parameter_number+1 as Ordinal - , TRIM(CASE f.rdb$field_type - WHEN 7 THEN CASE f.rdb$field_sub_type - WHEN 0 THEN 'smallint' - WHEN 1 THEN 'numeric' - WHEN 2 THEN 'decimal' - END - WHEN 8 THEN CASE f.rdb$field_sub_type - WHEN 0 THEN 'int' - WHEN 1 THEN 'numeric' - WHEN 2 THEN 'decimal' - END - WHEN 16 THEN CASE f.rdb$field_sub_type - WHEN 0 THEN 'bigint' - WHEN 1 THEN 'numeric' - WHEN 2 THEN 'decimal' - END - WHEN 10 THEN 'float' - WHEN 27 THEN 'double' - WHEN 12 THEN 'date' - WHEN 13 THEN 'time' - WHEN 35 THEN 'timestamp' - WHEN 261 THEN 'blob' - WHEN 37 THEN 'varchar' - WHEN 14 THEN 'char' - WHEN 40 THEN 'cstring' - END) as TypeName - , f.rdb$character_length as MaxLength - , f.rdb$field_precision as DblPrecision - , 0 as DateTimePrecision - , f.rdb$field_scale * (-1) as Scale - , null as CollationCatalog - , null as CollationSchema - , null CollationName - , null as CharacterSetCatalog - , null as CharacterSetSchema - , null as CharacterSetName - , CAST(0 as smallint) as IsMultiSet - , TRIM(IIF(pp.rdb$parameter_type = 1, 'OUT', 'IN')) as Mode - , NULL as DefaultType - FROM - rdb$procedure_parameters pp INNER JOIN rdb$fields f ON - (pp.rdb$field_source = f.rdb$field_name) - ) AS Extent3) AS UnionAll1 ON (0 = UnionAll1.C1) AND - (Extent1.Id = UnionAll1.ParentId) - UNION ALL - SELECT - Extent4.SchemaName AS SchemaName, - Extent4.Name AS Name, - CAST(NULL AS varchar(1000)) AS C1, - CAST(0 AS SMALLINT) AS C2, - CAST(0 AS SMALLINT) AS C3, - CAST(0 AS SMALLINT) AS C4, - CAST(0 AS SMALLINT) AS C5, - UnionAll2.Name AS C6, - UnionAll2.TypeName AS C7, - UnionAll2.Mode AS C8, - UnionAll2.Ordinal AS C9 - FROM ( - SELECT - TRIM(rdb$procedure_name) as Id - , null as CatalogName - , '' as SchemaName -- bug or not??? need to be not null - , TRIM(rdb$procedure_name) as Name - FROM - rdb$procedures - ) AS Extent4 - LEFT OUTER JOIN (SELECT - Extent5.Name AS Name, - Extent5.Ordinal AS Ordinal, - Extent5.TypeName AS TypeName, - Extent5.Mode AS Mode, - 0 AS C1, - Extent5.ParentId AS ParentId - FROM ( - SELECT - null as Id - , null as ParentId - , null as Name - , null as Ordinal - , null as TypeName - , null as MaxLength - , null as DblPrecision - , null as DateTimePrecision - , null as Scale - , null as CollationCatalog - , null as CollationSchema - , null as CollationName - , null as CharacterSetCatalog - , null as CharacterSetSchema - , null as CharacterSetName - , null as IsMultiSet - , null as Mode - , null as DefaultType - FROM - rdb$database - WHERE - 0=1 - ) AS Extent5 - UNION ALL - SELECT - Extent6.Name AS Name, - Extent6.Ordinal AS Ordinal, - Extent6.TypeName AS TypeName, - Extent6.Mode AS Mode, - 6 AS C1, - Extent6.ParentId AS ParentId - FROM ( - SELECT - TRIM(pp.rdb$procedure_name) || 'x' || - TRIM(pp.rdb$parameter_name) as Id - , TRIM(pp.rdb$procedure_name) as ParentId - , TRIM(pp.rdb$parameter_name) as Name - , pp.rdb$parameter_number+1 as Ordinal - , TRIM(CASE f.rdb$field_type - WHEN 7 THEN CASE f.rdb$field_sub_type - WHEN 0 THEN 'smallint' - WHEN 1 THEN 'numeric' - WHEN 2 THEN 'decimal' - END - WHEN 8 THEN CASE f.rdb$field_sub_type - WHEN 0 THEN 'int' - WHEN 1 THEN 'numeric' - WHEN 2 THEN 'decimal' - END - WHEN 16 THEN CASE f.rdb$field_sub_type - WHEN 0 THEN 'bigint' - WHEN 1 THEN 'numeric' - WHEN 2 THEN 'decimal' - END - WHEN 10 THEN 'float' - WHEN 27 THEN 'double' - WHEN 12 THEN 'date' - WHEN 13 THEN 'time' - WHEN 35 THEN 'timestamp' - WHEN 261 THEN 'blob' - WHEN 37 THEN 'varchar' - WHEN 14 THEN 'char' - WHEN 40 THEN 'cstring' - END) as TypeName - , f.rdb$character_length as MaxLength - , f.rdb$field_precision as DblPrecision - , 0 as DateTimePrecision - , f.rdb$field_scale * (-1) as Scale - , null as CollationCatalog - , null as CollationSchema - , null CollationName - , null as CharacterSetCatalog - , null as CharacterSetSchema - , null as CharacterSetName - , CAST(0 as smallint) as IsMultiSet - , TRIM(IIF(pp.rdb$parameter_type = 1, 'OUT', 'IN')) as Mode - , NULL as DefaultType - FROM - rdb$procedure_parameters pp INNER JOIN rdb$fields f ON - (pp.rdb$field_source = f.rdb$field_name) - ) AS Extent6) AS UnionAll2 ON (6 = UnionAll2.C1) AND - (Extent4.Id = UnionAll2.ParentId)) AS UnionAll3 - ) AS Project7 - order by par_dir,par_name - ; - """, - 'expected_stdout': - """ - PAR_NAME A_01 - PAR_TYPE smallint - PAR_DIR IN - PAR_NAME A_02 - PAR_TYPE int - PAR_DIR IN - PAR_NAME A_04 - PAR_TYPE numeric - PAR_DIR IN - PAR_NAME A_05 - PAR_TYPE double - PAR_DIR IN - PAR_NAME A_06 - PAR_TYPE float - PAR_DIR IN - PAR_NAME A_07 - PAR_TYPE double - PAR_DIR IN - PAR_NAME A_10 - PAR_TYPE timestamp - PAR_DIR IN - PAR_NAME A_11 - PAR_TYPE varchar - PAR_DIR IN - PAR_NAME A_12 - PAR_TYPE char - PAR_DIR IN - PAR_NAME A_13 - PAR_TYPE blob - PAR_DIR IN - PAR_NAME O_01 - PAR_TYPE smallint - PAR_DIR OUT - PAR_NAME O_02 - PAR_TYPE int - PAR_DIR OUT - PAR_NAME O_04 - PAR_TYPE numeric - PAR_DIR OUT - PAR_NAME O_05 - PAR_TYPE double - PAR_DIR OUT - PAR_NAME O_06 - PAR_TYPE float - PAR_DIR OUT - PAR_NAME O_07 - PAR_TYPE double - PAR_DIR OUT - PAR_NAME O_10 - PAR_TYPE timestamp - PAR_DIR OUT - PAR_NAME O_11 - PAR_TYPE varchar - PAR_DIR OUT - PAR_NAME O_12 - PAR_TYPE char - PAR_DIR OUT - PAR_NAME O_13 - PAR_TYPE blob - PAR_DIR OUT - """, - 'expected_stderr': - """ - """ -}, -{ - 'firebird_version': '2.5', - 'platform': 'All', - 'page_size': '4096', - 'test_type': 'ISQL', - 'sql_dialect': 3, - 'init_script': - """ - - set term ^; - create or alter procedure - sp01( - a_01 smallint, - a_02 int, - a_03 bigint, - a_04 numeric(9,0), - a_05 numeric(10,0), - a_06 float, - a_07 double precision, - a_08 date, - a_09 time, - a_10 timestamp, - a_11 varchar(1), - a_12 char(2), - a_13 blob - ) returns ( - o_01 smallint, - o_02 int, - o_03 bigint, - o_04 numeric(9,0), - o_05 numeric(10,0), - o_06 float, - o_07 double precision, - o_08 date, - o_09 time, - o_10 timestamp, - o_11 varchar(1), - o_12 char(2), - o_13 blob - ) as - begin - suspend; - end - ^ - set term ;^ - commit; - """, - 'test_script': - """ - - set list on; - SELECT - Project7.C8 AS par_name, - Project7.C9 AS par_type, - Project7.C10 AS par_dir - FROM ( SELECT - UnionAll3.SchemaName AS C1, - UnionAll3.Name AS C2, - UnionAll3.ReturnTypeName AS C3, - UnionAll3.IsAggregate AS C4, - UnionAll3.C1 AS C5, - UnionAll3.IsBuiltIn AS C6, - UnionAll3.IsNiladic AS C7, - UnionAll3.C2 AS C8, - UnionAll3.C3 AS C9, - UnionAll3.C4 AS C10, - UnionAll3.C5 AS C11, - 1 AS C12 - FROM (SELECT - Extent1.SchemaName AS SchemaName, - Extent1.Name AS Name, - Extent1.ReturnTypeName AS ReturnTypeName, - Extent1.IsAggregate AS IsAggregate, - CAST(1 AS SMALLINT) AS C1, - Extent1.IsBuiltIn AS IsBuiltIn, - Extent1.IsNiladic AS IsNiladic, - UnionAll1.Name AS C2, - UnionAll1.TypeName AS C3, - UnionAll1.Mode AS C4, - UnionAll1.Ordinal AS C5 - FROM ( - SELECT - TRIM(f.rdb$function_name) as Id - , null as CatalogName - , null as SchemaName - , TRIM(f.rdb$function_name) as Name - , TRIM(CASE fa.rdb$field_type - WHEN 7 THEN CASE fa.rdb$field_sub_type - WHEN 0 THEN 'smallint' - WHEN 1 THEN 'numeric' - WHEN 2 THEN 'decimal' - END - WHEN 8 THEN CASE fa.rdb$field_sub_type - WHEN 0 THEN 'int' - WHEN 1 THEN 'numeric' - WHEN 2 THEN 'decimal' - END - WHEN 16 THEN CASE fa.rdb$field_sub_type - WHEN 0 THEN 'bigint' - WHEN 1 THEN 'numeric' - WHEN 2 THEN 'decimal' - END - WHEN 10 THEN 'float' - WHEN 27 THEN 'double' - WHEN 12 THEN 'date' - WHEN 13 THEN 'time' - WHEN 35 THEN 'timestamp' - WHEN 261 THEN 'blob' - WHEN 37 THEN 'varchar' - WHEN 14 THEN 'char' - WHEN 40 THEN 'cstring' - END) as ReturnTypeName - , fa.rdb$character_length as ReturnMaxLength - , fa.rdb$field_precision as ReturnPrecision - , 0 as ReturnDateTimePrecision - , fa.rdb$field_scale * (-1) as ReturnScale - , null as ReturnCollationCatalog - , null as ReturnCollationSchema - , null as ReturnCollationName - , null as ReturnCharacterSetCatalog - , null as ReturnCharacterSetSchema - , null as ReturnCharacterSetName - , CAST(0 as smallint) as ReturnIsMultiSet - , CAST(0 as smallint) as IsAggregate - , CAST(0 as smallint) as IsBuiltIn - , CAST((select CASE COUNT(*) WHEN 1 THEN 1 ELSE 0 END FROM - rdb$function_arguments fa WHERE fa.rdb$function_name = - f.rdb$function_name) as smallint) as IsNiladic - FROM - rdb$functions f INNER JOIN rdb$function_arguments fa ON - (f.rdb$function_name = fa.rdb$function_name AND f.rdb$return_argument - = fa.rdb$argument_position) - WHERE f.rdb$system_flag = 0 -- ::: nb ::: need add alias f. in 3.0! - ) AS Extent1 - LEFT OUTER JOIN (SELECT - Extent2.Name AS Name, - Extent2.Ordinal AS Ordinal, - Extent2.TypeName AS TypeName, - Extent2.Mode AS Mode, - 0 AS C1, - Extent2.ParentId AS ParentId - FROM ( - SELECT - null as Id - , null as ParentId - , null as Name - , null as Ordinal - , null as TypeName - , null as MaxLength - , null as DblPrecision - , null as DateTimePrecision - , null as Scale - , null as CollationCatalog - , null as CollationSchema - , null as CollationName - , null as CharacterSetCatalog - , null as CharacterSetSchema - , null as CharacterSetName - , null as IsMultiSet - - , null as Mode - , null as DefaultType - FROM - rdb$database - WHERE - 0=1 - ) AS Extent2 - UNION ALL - SELECT - Extent3.Name AS Name, - Extent3.Ordinal AS Ordinal, - Extent3.TypeName AS TypeName, - Extent3.Mode AS Mode, - 6 AS C1, - Extent3.ParentId AS ParentId - FROM ( - SELECT - TRIM(pp.rdb$procedure_name) || 'x' || - TRIM(pp.rdb$parameter_name) as Id - , TRIM(pp.rdb$procedure_name) as ParentId - , TRIM(pp.rdb$parameter_name) as Name - , pp.rdb$parameter_number+1 as Ordinal - , TRIM(CASE f.rdb$field_type - WHEN 7 THEN CASE f.rdb$field_sub_type - WHEN 0 THEN 'smallint' - WHEN 1 THEN 'numeric' - WHEN 2 THEN 'decimal' - END - WHEN 8 THEN CASE f.rdb$field_sub_type - WHEN 0 THEN 'int' - WHEN 1 THEN 'numeric' - WHEN 2 THEN 'decimal' - END - WHEN 16 THEN CASE f.rdb$field_sub_type - WHEN 0 THEN 'bigint' - WHEN 1 THEN 'numeric' - WHEN 2 THEN 'decimal' - END - WHEN 10 THEN 'float' - WHEN 27 THEN 'double' - WHEN 12 THEN 'date' - WHEN 13 THEN 'time' - WHEN 35 THEN 'timestamp' - WHEN 261 THEN 'blob' - WHEN 37 THEN 'varchar' - WHEN 14 THEN 'char' - WHEN 40 THEN 'cstring' - END) as TypeName - , f.rdb$character_length as MaxLength - , f.rdb$field_precision as DblPrecision - , 0 as DateTimePrecision - , f.rdb$field_scale * (-1) as Scale - , null as CollationCatalog - , null as CollationSchema - , null CollationName - , null as CharacterSetCatalog - , null as CharacterSetSchema - , null as CharacterSetName - , CAST(0 as smallint) as IsMultiSet - , TRIM(IIF(pp.rdb$parameter_type = 1, 'OUT', 'IN')) as Mode - , NULL as DefaultType - FROM - rdb$procedure_parameters pp INNER JOIN rdb$fields f ON - (pp.rdb$field_source = f.rdb$field_name) - ) AS Extent3) AS UnionAll1 ON (0 = UnionAll1.C1) AND - (Extent1.Id = UnionAll1.ParentId) - UNION ALL - SELECT - Extent4.SchemaName AS SchemaName, - Extent4.Name AS Name, - CAST(NULL AS varchar(1000)) AS C1, - CAST(0 AS SMALLINT) AS C2, - CAST(0 AS SMALLINT) AS C3, - CAST(0 AS SMALLINT) AS C4, - CAST(0 AS SMALLINT) AS C5, - UnionAll2.Name AS C6, - UnionAll2.TypeName AS C7, - UnionAll2.Mode AS C8, - UnionAll2.Ordinal AS C9 - FROM ( - SELECT - TRIM(rdb$procedure_name) as Id - , null as CatalogName - , '' as SchemaName -- bug or not??? need to be not null - , TRIM(rdb$procedure_name) as Name - FROM - rdb$procedures - ) AS Extent4 - LEFT OUTER JOIN (SELECT - Extent5.Name AS Name, - Extent5.Ordinal AS Ordinal, - Extent5.TypeName AS TypeName, - Extent5.Mode AS Mode, - 0 AS C1, - Extent5.ParentId AS ParentId - FROM ( - SELECT - null as Id - , null as ParentId - , null as Name - , null as Ordinal - , null as TypeName - , null as MaxLength - , null as DblPrecision - , null as DateTimePrecision - , null as Scale - , null as CollationCatalog - , null as CollationSchema - , null as CollationName - , null as CharacterSetCatalog - , null as CharacterSetSchema - , null as CharacterSetName - , null as IsMultiSet - , null as Mode - , null as DefaultType - FROM - rdb$database - WHERE - 0=1 - ) AS Extent5 - UNION ALL - SELECT - Extent6.Name AS Name, - Extent6.Ordinal AS Ordinal, - Extent6.TypeName AS TypeName, - Extent6.Mode AS Mode, - 6 AS C1, - Extent6.ParentId AS ParentId - FROM ( - SELECT - TRIM(pp.rdb$procedure_name) || 'x' || - TRIM(pp.rdb$parameter_name) as Id - , TRIM(pp.rdb$procedure_name) as ParentId - , TRIM(pp.rdb$parameter_name) as Name - , pp.rdb$parameter_number+1 as Ordinal - , TRIM(CASE f.rdb$field_type - WHEN 7 THEN CASE f.rdb$field_sub_type - WHEN 0 THEN 'smallint' - WHEN 1 THEN 'numeric' - WHEN 2 THEN 'decimal' - END - WHEN 8 THEN CASE f.rdb$field_sub_type - WHEN 0 THEN 'int' - WHEN 1 THEN 'numeric' - WHEN 2 THEN 'decimal' - END - WHEN 16 THEN CASE f.rdb$field_sub_type - WHEN 0 THEN 'bigint' - WHEN 1 THEN 'numeric' - WHEN 2 THEN 'decimal' - END - WHEN 10 THEN 'float' - WHEN 27 THEN 'double' - WHEN 12 THEN 'date' - WHEN 13 THEN 'time' - WHEN 35 THEN 'timestamp' - WHEN 261 THEN 'blob' - WHEN 37 THEN 'varchar' - WHEN 14 THEN 'char' - WHEN 40 THEN 'cstring' - END) as TypeName - , f.rdb$character_length as MaxLength - , f.rdb$field_precision as DblPrecision - , 0 as DateTimePrecision - , f.rdb$field_scale * (-1) as Scale - , null as CollationCatalog - , null as CollationSchema - , null CollationName - , null as CharacterSetCatalog - , null as CharacterSetSchema - , null as CharacterSetName - , CAST(0 as smallint) as IsMultiSet - , TRIM(IIF(pp.rdb$parameter_type = 1, 'OUT', 'IN')) as Mode - , NULL as DefaultType - FROM - rdb$procedure_parameters pp INNER JOIN rdb$fields f ON - (pp.rdb$field_source = f.rdb$field_name) - ) AS Extent6) AS UnionAll2 ON (6 = UnionAll2.C1) AND - (Extent4.Id = UnionAll2.ParentId)) AS UnionAll3 - ) AS Project7 - order by par_dir,par_name - ; - """, - 'expected_stdout': - """ - PAR_NAME A_01 - PAR_TYPE smallint - PAR_DIR IN - PAR_NAME A_02 - PAR_TYPE int - PAR_DIR IN - PAR_NAME A_03 - PAR_TYPE bigint - PAR_DIR IN - PAR_NAME A_04 - PAR_TYPE numeric - PAR_DIR IN - PAR_NAME A_05 - PAR_TYPE numeric - PAR_DIR IN - PAR_NAME A_06 - PAR_TYPE float - PAR_DIR IN - PAR_NAME A_07 - PAR_TYPE double - PAR_DIR IN - PAR_NAME A_08 - PAR_TYPE date - PAR_DIR IN - PAR_NAME A_09 - PAR_TYPE time - PAR_DIR IN - PAR_NAME A_10 - PAR_TYPE timestamp - PAR_DIR IN - PAR_NAME A_11 - PAR_TYPE varchar - PAR_DIR IN - PAR_NAME A_12 - PAR_TYPE char - PAR_DIR IN - PAR_NAME A_13 - PAR_TYPE blob - PAR_DIR IN - PAR_NAME O_01 - PAR_TYPE smallint - PAR_DIR OUT - PAR_NAME O_02 - PAR_TYPE int - PAR_DIR OUT - PAR_NAME O_03 - PAR_TYPE bigint - PAR_DIR OUT - PAR_NAME O_04 - PAR_TYPE numeric - PAR_DIR OUT - PAR_NAME O_05 - PAR_TYPE numeric - PAR_DIR OUT - PAR_NAME O_06 - PAR_TYPE float - PAR_DIR OUT - PAR_NAME O_07 - PAR_TYPE double - PAR_DIR OUT - PAR_NAME O_08 - PAR_TYPE date - PAR_DIR OUT - PAR_NAME O_09 - PAR_TYPE time - PAR_DIR OUT - PAR_NAME O_10 - PAR_TYPE timestamp - PAR_DIR OUT - PAR_NAME O_11 - PAR_TYPE varchar - PAR_DIR OUT - PAR_NAME O_12 - PAR_TYPE char - PAR_DIR OUT - PAR_NAME O_13 - PAR_TYPE blob - PAR_DIR OUT - """, - 'expected_stderr': - """ - """ -} -] -} Copied: qa/fbt-repository/trunk/tests/bugs/core_1992_dialect_1.fbt (from rev 60817, qa/fbt-repository/trunk/tests/bugs/core_1992.fbt) =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_1992_dialect_1.fbt (rev 0) +++ qa/fbt-repository/trunk/tests/bugs/core_1992_dialect_1.fbt 2015-03-05 18:26:17 UTC (rev 60839) @@ -0,0 +1,418 @@ +{ +'id': 'bugs.core_1992_dialect_1', +'qmid': None, +'tracker_id': 'CORE-1992', +'title': 'bad BLR -- invalid stream for union select', +'description': '', +'min_versions': '2.5.2', +'versions': [ +{ + 'firebird_version': '2.5', + 'platform': 'All', + 'page_size': '4096', + 'test_type': 'ISQL', + 'sql_dialect': 1, + 'init_script': + """ + set term ^; + create or alter procedure + sp01( + a_01 smallint, + a_02 int, + --a_03 bigint, + a_04 numeric(9,0), + a_05 numeric(10,0), + a_06 float, + a_07 double precision, + --a_08 date, + --a_09 time, + a_10 timestamp, + a_11 varchar(1), + a_12 char(2), + a_13 blob + ) returns ( + o_01 smallint, + o_02 int, + --o_03 bigint, + o_04 numeric(9,0), + o_05 numeric(10,0), + o_06 float, + o_07 double precision, + --o_08 date, + --o_09 time, + o_10 timestamp, + o_11 varchar(1), + o_12 char(2), + o_13 blob + ) as + begin + suspend; + end + ^ + set term ;^ + commit; + """, + 'test_script': + """ + set list on; + SELECT + Project7.C8 AS par_name, + Project7.C9 AS par_type, + Project7.C10 AS par_dir + FROM ( SELECT + UnionAll3.SchemaName AS C1, + UnionAll3.Name AS C2, + UnionAll3.ReturnTypeName AS C3, + UnionAll3.IsAggregate AS C4, + UnionAll3.C1 AS C5, + UnionAll3.IsBuiltIn AS C6, + UnionAll3.IsNiladic AS C7, + UnionAll3.C2 AS C8, + UnionAll3.C3 AS C9, + UnionAll3.C4 AS C10, + UnionAll3.C5 AS C11, + 1 AS C12 + FROM (SELECT + Extent1.SchemaName AS SchemaName, + Extent1.Name AS Name, + Extent1.ReturnTypeName AS ReturnTypeName, + Extent1.IsAggregate AS IsAggregate, + CAST(1 AS SMALLINT) AS C1, + Extent1.IsBuiltIn AS IsBuiltIn, + Extent1.IsNiladic AS IsNiladic, + UnionAll1.Name AS C2, + UnionAll1.TypeName AS C3, + UnionAll1.Mode AS C4, + UnionAll1.Ordinal AS C5 + FROM ( + SELECT + TRIM(f.rdb$function_name) as Id + , null as CatalogName + , null as SchemaName + , TRIM(f.rdb$function_name) as Name + , TRIM(CASE fa.rdb$field_type + WHEN 7 THEN CASE fa.rdb$field_sub_type + WHEN 0 THEN 'smallint' + WHEN 1 THEN 'numeric' + WHEN 2 THEN 'decimal' + END + WHEN 8 THEN CASE fa.rdb$field_sub_type + WHEN 0 THEN 'int' + WHEN 1 THEN 'numeric' + WHEN 2 THEN 'decimal' + END + WHEN 16 THEN CASE fa.rdb$field_sub_type + WHEN 0 THEN 'bigint' + WHEN 1 THEN 'numeric' + WHEN 2 THEN 'decimal' + END + WHEN 10 THEN 'float' + WHEN 27 THEN 'double' + WHEN 12 THEN 'date' + WHEN 13 THEN 'time' + WHEN 35 THEN 'timestamp' + WHEN 261 THEN 'blob' + WHEN 37 THEN 'varchar' + WHEN 14 THEN 'char' + WHEN 40 THEN 'cstring' + END) as ReturnTypeName + , fa.rdb$character_length as ReturnMaxLength + , fa.rdb$field_precision as ReturnPrecision + , 0 as ReturnDateTimePrecision + , fa.rdb$field_scale * (-1) as ReturnScale + , null as ReturnCollationCatalog + , null as ReturnCollationSchema + , null as ReturnCollationName + , null as ReturnCharacterSetCatalog + , null as ReturnCharacterSetSchema + , null as ReturnCharacterSetName + , CAST(0 as smallint) as ReturnIsMultiSet + , CAST(0 as smallint) as IsAggregate + , CAST(0 as smallint) as IsBuiltIn + , CAST((select CASE COUNT(*) WHEN 1 THEN 1 ELSE 0 END FROM + rdb$function_arguments fa WHERE fa.rdb$function_name = + f.rdb$function_name) as smallint) as IsNiladic + FROM + rdb$functions f INNER JOIN rdb$function_arguments fa ON + (f.rdb$function_name = fa.rdb$function_name AND f.rdb$return_argument + = fa.rdb$argument_position) + WHERE f.rdb$system_flag = 0 -- ::: nb ::: need add alias f. in 3.0! + ) AS Extent1 + LEFT OUTER JOIN (SELECT + Extent2.Name AS Name, + Extent2.Ordinal AS Ordinal, + Extent2.TypeName AS TypeName, + Extent2.Mode AS Mode, + 0 AS C1, + Extent2.ParentId AS ParentId + FROM ( + SELECT + null as Id + , null as ParentId + , null as Name + , null as Ordinal + , null as TypeName + , null as MaxLength + , null as DblPrecision + , null as DateTimePrecision + , null as Scale + , null as CollationCatalog + , null as CollationSchema + , null as CollationName + , null as CharacterSetCatalog + , null as CharacterSetSchema + , null as CharacterSetName + , null as IsMultiSet + + , null as Mode + , null as DefaultType + FROM + rdb$database + WHERE + 0=1 + ) AS Extent2 + UNION ALL + SELECT + Extent3.Name AS Name, + Extent3.Ordinal AS Ordinal, + Extent3.TypeName AS TypeName, + Extent3.Mode AS Mode, + 6 AS C1, + Extent3.ParentId AS ParentId + FROM ( + SELECT + TRIM(pp.rdb$procedure_name) || 'x' || + TRIM(pp.rdb$parameter_name) as Id + , TRIM(pp.rdb$procedure_name) as ParentId + , TRIM(pp.rdb$parameter_name) as Name + , pp.rdb$parameter_number+1 as Ordinal + , TRIM(CASE f.rdb$field_type + WHEN 7 THEN CASE f.rdb$field_sub_type + WHEN 0 THEN 'smallint' + WHEN 1 THEN 'numeric' + WHEN 2 THEN 'decimal' + END + WHEN 8 THEN CASE f.rdb$field_sub_type + WHEN 0 THEN 'int' + WHEN 1 THEN 'numeric' + WHEN 2 THEN 'decimal' + END + WHEN 16 THEN CASE f.rdb$field_sub_type + WHEN 0 THEN 'bigint' + WHEN 1 THEN 'numeric' + WHEN 2 THEN 'decimal' + END + WHEN 10 THEN 'float' + WHEN 27 THEN 'double' + WHEN 12 THEN 'date' + WHEN 13 THEN 'time' + WHEN 35 THEN 'timestamp' + WHEN 261 THEN 'blob' + WHEN 37 THEN 'varchar' + WHEN 14 THEN 'char' + WHEN 40 THEN 'cstring' + END) as TypeName + , f.rdb$character_length as MaxLength + , f.rdb$field_precision as DblPrecision + , 0 as DateTimePrecision + , f.rdb$field_scale * (-1) as Scale + , null as CollationCatalog + , null as CollationSchema + , null CollationName + , null as CharacterSetCatalog + , null as CharacterSetSchema + , null as CharacterSetName + , CAST(0 as smallint) as IsMultiSet + , TRIM(IIF(pp.rdb$parameter_type = 1, 'OUT', 'IN')) as Mode + , NULL as DefaultType + FROM + rdb$procedure_parameters pp INNER JOIN rdb$fields f ON + (pp.rdb$field_source = f.rdb$field_name) + ) AS Extent3) AS UnionAll1 ON (0 = UnionAll1.C1) AND + (Extent1.Id = UnionAll1.ParentId) + UNION ALL + SELECT + Extent4.SchemaName AS SchemaName, + Extent4.Name AS Name, + CAST(NULL AS varchar(1000)) AS C1, + CAST(0 AS SMALLINT) AS C2, + CAST(0 AS SMALLINT) AS C3, + CAST(0 AS SMALLINT) AS C4, + CAST(0 AS SMALLINT) AS C5, + UnionAll2.Name AS C6, + UnionAll2.TypeName AS C7, + UnionAll2.Mode AS C8, + UnionAll2.Ordinal AS C9 + FROM ( + SELECT + TRIM(rdb$procedure_name) as Id + , null as CatalogName + , '' as SchemaName -- bug or not??? need to be not null + , TRIM(rdb$procedure_name) as Name + FROM + rdb$procedures + ) AS Extent4 + LEFT OUTER JOIN (SELECT + Extent5.Name AS Name, + Extent5.Ordinal AS Ordinal, + Extent5.TypeName AS TypeName, + Extent5.Mode AS Mode, + 0 AS C1, + Extent5.ParentId AS ParentId + FROM ( + SELECT + null as Id + , null as ParentId + , null as Name + , null as Ordinal + , null as TypeName + , null as MaxLength + , null as DblPrecision + , null as DateTimePrecision + , null as Scale + , null as CollationCatalog + , null as CollationSchema + , null as CollationName + , null as CharacterSetCatalog + , null as CharacterSetSchema + , null as CharacterSetName + , null as IsMultiSet + , null as Mode + , null as DefaultType + FROM + rdb$database + WHERE + 0=1 + ) AS Extent5 + UNION ALL + SELECT + Extent6.Name AS Name, + Extent6.Ordinal AS Ordinal, + Extent6.TypeName AS TypeName, + Extent6.Mode AS Mode, + 6 AS C1, + Extent6.ParentId AS ParentId + FROM ( + SELECT + TRIM(pp.rdb$procedure_name) || 'x' || + TRIM(pp.rdb$parameter_name) as Id + , TRIM(pp.rdb$procedure_name) as ParentId + , TRIM(pp.rdb$parameter_name) as Name + , pp.rdb$parameter_number+1 as Ordinal + , TRIM(CASE f.rdb$field_type + WHEN 7 THEN CASE f.rdb$field_sub_type + WHEN 0 THEN 'smallint' + WHEN 1 THEN 'numeric' + WHEN 2 THEN 'decimal' + END + WHEN 8 THEN CASE f.rdb$field_sub_type + WHEN 0 THEN 'int' + WHEN 1 THEN 'numeric' + WHEN 2 THEN 'decimal' + END + WHEN 16 THEN CASE f.rdb$field_sub_type + WHEN 0 THEN 'bigint' + WHEN 1 THEN 'numeric' + WHEN 2 THEN 'decimal' + END + WHEN 10 THEN 'float' + WHEN 27 THEN 'double' + WHEN 12 THEN 'date' + WHEN 13 THEN 'time' + WHEN 35 THEN 'timestamp' + WHEN 261 THEN 'blob' + WHEN 37 THEN 'varchar' + WHEN 14 THEN 'char' + WHEN 40 THEN 'cstring' + END) as TypeName + , f.rdb$character_length as MaxLength + , f.rdb$field_precision as DblPrecision + , 0 as DateTimePrecision + , f.rdb$field_scale * (-1) as Scale + , null as CollationCatalog + , null as CollationSchema + , null CollationName + , null as CharacterSetCatalog + , null as CharacterSetSchema + , null as CharacterSetName + , CAST(0 as smallint) as IsMultiSet + , TRIM(IIF(pp.rdb$parameter_type = 1, 'OUT', 'IN')) as Mode + , NULL as DefaultType + FROM + rdb$procedure_parameters pp INNER JOIN rdb$fields f ON + (pp.rdb$field_source = f.rdb$field_name) + ) AS Extent6) AS UnionAll2 ON (6 = UnionAll2.C1) AND + (Extent4.Id = UnionAll2.ParentId)) AS UnionAll3 + ) AS Project7 + order by par_dir,par_name + ; + """, + 'expected_stdout': + """ + PAR_NAME A_01 + PAR_TYPE smallint + PAR_DIR IN + PAR_NAME A_02 + PAR_TYPE int + PAR_DIR IN + PAR_NAME A_04 + PAR_TYPE numeric + PAR_DIR IN + PAR_NAME A_05 + PAR_TYPE double + PAR_DIR IN + PAR_NAME A_06 + PAR_TYPE float + PAR_DIR IN + PAR_NAME A_07 + PAR_TYPE double + PAR_DIR IN + PAR_NAME A_10 + PAR_TYPE timestamp + PAR_DIR IN + PAR_NAME A_11 + PAR_TYPE varchar + PAR_DIR IN + PAR_NAME A_12 + PAR_TYPE char + PAR_DIR IN + PAR_NAME A_13 + PAR_TYPE blob + PAR_DIR IN + PAR_NAME O_01 + PAR_TYPE smallint + PAR_DIR OUT + PAR_NAME O_02 + PAR_TYPE int + PAR_DIR OUT + PAR_NAME O_04 + PAR_TYPE numeric + PAR_DIR OUT + PAR_NAME O_05 + PAR_TYPE double + PAR_DIR OUT + PAR_NAME O_06 + PAR_TYPE float + PAR_DIR OUT + PAR_NAME O_07 + PAR_TYPE double + PAR_DIR OUT + PAR_NAME O_10 + PAR_TYPE timestamp + PAR_DIR OUT + PAR_NAME O_11 + PAR_TYPE varchar + PAR_DIR OUT + PAR_NAME O_12 + PAR_TYPE char + PAR_DIR OUT + PAR_NAME O_13 + PAR_TYPE blob + PAR_DIR OUT + """, + 'expected_stderr': + """ + """ +} +] +} Added: qa/fbt-repository/trunk/tests/bugs/core_1992_dialect_3.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_1992_dialect_3.fbt (rev 0) +++ qa/fbt-repository/trunk/tests/bugs/core_1992_dialect_3.fbt 2015-03-05 18:26:17 UTC (rev 60839) @@ -0,0 +1,438 @@ +{ +'id': 'bugs.core_1992_dialect_3', +'qmid': None, +'tracker_id': 'CORE-1992', +'title': 'bad BLR -- invalid stream for union select', +'description': '', +'min_versions': '2.5.2', +'versions': [ +{ + 'firebird_version': '2.5', + 'platform': 'All', + 'page_size': '4096', + 'test_type': 'ISQL', + 'sql_dialect': 3, + 'init_script': + """ + + set term ^; + create or alter procedure + sp01( + a_01 smallint, + a_02 int, + a_03 bigint, + a_04 numeric(9,0), + a_05 numeric(10,0), + a_06 float, + a_07 double precision, + a_08 date, + a_09 time, + a_10 timestamp, + a_11 varchar(1), + a_12 char(2), + a_13 blob + ) returns ( + o_01 smallint, + o_02 int, + o_03 bigint, + o_04 numeric(9,0), + o_05 numeric(10,0), + o_06 float, + o_07 double precision, + o_08 date, + o_09 time, + o_10 timestamp, + o_11 varchar(1), + o_12 char(2), + o_13 blob + ) as + begin + suspend; + end + ^ + set term ;^ + commit; + """, + 'test_script': + """ + + set list on; + SELECT + Project7.C8 AS par_name, + Project7.C9 AS par_type, + Project7.C10 AS par_dir + FROM ( SELECT + UnionAll3.SchemaName AS C1, + UnionAll3.Name AS C2, + UnionAll3.ReturnTypeName AS C3, + UnionAll3.IsAggregate AS C4, + UnionAll3.C1 AS C5, + UnionAll3.IsBuiltIn AS C6, + UnionAll3.IsNiladic AS C7, + UnionAll3.C2 AS C8, + UnionAll3.C3 AS C9, + UnionAll3.C4 AS C10, + UnionAll3.C5 AS C11, + 1 AS C12 + FROM (SELECT + Extent1.SchemaName AS SchemaName, + Extent1.Name AS Name, + Extent1.ReturnTypeName AS ReturnTypeName, + Extent1.IsAggregate AS IsAggregate, + CAST(1 AS SMALLINT) AS C1, + Extent1.IsBuiltIn AS IsBuiltIn, + Extent1.IsNiladic AS IsNiladic, + UnionAll1.Name AS C2, + UnionAll1.TypeName AS C3, + UnionAll1.Mode AS C4, + UnionAll1.Ordinal AS C5 + FROM ( + SELECT + TRIM(f.rdb$function_name) as Id + , null as CatalogName + , null as SchemaName + , TRIM(f.rdb$function_name) as Name + , TRIM(CASE fa.rdb$field_type + WHEN 7 THEN CASE fa.rdb$field_sub_type + WHEN 0 THEN 'smallint' + WHEN 1 THEN 'numeric' + WHEN 2 THEN 'decimal' + END + WHEN 8 THEN CASE fa.rdb$field_sub_type + WHEN 0 THEN 'int' + WHEN 1 THEN 'numeric' + WHEN 2 THEN 'decimal' + END + WHEN 16 THEN CASE fa.rdb$field_sub_type + WHEN 0 THEN 'bigint' + WHEN 1 THEN 'numeric' + WHEN 2 THEN 'decimal' + END + WHEN 10 THEN 'float' + WHEN 27 THEN 'double' + WHEN 12 THEN 'date' + WHEN 13 THEN 'time' + WHEN 35 THEN 'timestamp' + WHEN 261 THEN 'blob' + WHEN 37 THEN 'varchar' + WHEN 14 THEN 'char' + WHEN 40 THEN 'cstring' + END) as ReturnTypeName + , fa.rdb$character_length as ReturnMaxLength + , fa.rdb$field_precision as ReturnPrecision + , 0 as ReturnDateTimePrecision + , fa.rdb$field_scale * (-1) as ReturnScale + , null as ReturnCollationCatalog + , null as ReturnCollationSchema + , null as ReturnCollationName + , null as ReturnCharacterSetCatalog + , null as ReturnCharacterSetSchema + , null as ReturnCharacterSetName + , CAST(0 as smallint) as ReturnIsMultiSet + , CAST(0 as smallint) as IsAggregate + , CAST(0 as smallint) as IsBuiltIn + , CAST((select CASE COUNT(*) WHEN 1 THEN 1 ELSE 0 END FROM + rdb$function_arguments fa WHERE fa.rdb$function_name = + f.rdb$function_name) as smallint) as IsNiladic + FROM + rdb$functions f INNER JOIN rdb$function_arguments fa ON + (f.rdb$function_name = fa.rdb$function_name AND f.rdb$return_argument + = fa.rdb$argument_position) + WHERE f.rdb$system_flag = 0 -- ::: nb ::: need add alias f. in 3.0! + ) AS Extent1 + LEFT OUTER JOIN (SELECT + Extent2.Name AS Name, + Extent2.Ordinal AS Ordinal, + Extent2.TypeName AS TypeName, + Extent2.Mode AS Mode, + 0 AS C1, + Extent2.ParentId AS ParentId + FROM ( + SELECT + null as Id + , null as ParentId + , null as Name + , null as Ordinal + , null as TypeName + , null as MaxLength + , null as DblPrecision + , null as DateTimePrecision + , null as Scale + , null as CollationCatalog + , null as CollationSchema + , null as CollationName + , null as CharacterSetCatalog + , null as CharacterSetSchema + , null as CharacterSetName + , null as IsMultiSet + + , null as Mode + , null as DefaultType + FROM + rdb$database + WHERE + 0=1 + ) AS Extent2 + UNION ALL + SELECT + Extent3.Name AS Name, + Extent3.Ordinal AS Ordinal, + Extent3.TypeName AS TypeName, + Extent3.Mode AS Mode, + 6 AS C1, + Extent3.ParentId AS ParentId + FROM ( + SELECT + TRIM(pp.rdb$procedure_name) || 'x' || + TRIM(pp.rdb$parameter_name) as Id + , TRIM(pp.rdb$procedure_name) as ParentId + , TRIM(pp.rdb$parameter_name) as Name + , pp.rdb$parameter_number+1 as Ordinal + , TRIM(CASE f.rdb$field_type + WHEN 7 THEN CASE f.rdb$field_sub_type + WHEN 0 THEN 'smallint' + WHEN 1 THEN 'numeric' + WHEN 2 THEN 'decimal' + END + WHEN 8 THEN CASE f.rdb$field_sub_type + WHEN 0 THEN 'int' + WHEN 1 THEN 'numeric' + WHEN 2 THEN 'decimal' + END + WHEN 16 THEN CASE f.rdb$field_sub_type + WHEN 0 THEN 'bigint' + WHEN 1 THEN 'numeric' + WHEN 2 THEN 'decimal' + END + WHEN 10 THEN 'float' + WHEN 27 THEN 'double' + WHEN 12 THEN 'date' + WHEN 13 THEN 'time' + WHEN 35 THEN 'timestamp' + WHEN 261 THEN 'blob' + WHEN 37 THEN 'varchar' + WHEN 14 THEN 'char' + WHEN 40 THEN 'cstring' + END) as TypeName + , f.rdb$character_length as MaxLength + , f.rdb$field_precision as DblPrecision + , 0 as DateTimePrecision + , f.rdb$field_scale * (-1) as Scale + , null as CollationCatalog + , null as CollationSchema + , null CollationName + , null as CharacterSetCatalog + , null as CharacterSetSchema + , null as CharacterSetName + , CAST(0 as smallint) as IsMultiSet + , TRIM(IIF(pp.rdb$parameter_type = 1, 'OUT', 'IN')) as Mode + , NULL as DefaultType + FROM + rdb$procedure_parameters pp INNER JOIN rdb$fields f ON + (pp.rdb$field_source = f.rdb$field_name) + ) AS Extent3) AS UnionAll1 ON (0 = UnionAll1.C1) AND + (Extent1.Id = UnionAll1.ParentId) + UNION ALL + SELECT + Extent4.SchemaName AS SchemaName, + Extent4.Name AS Name, + CAST(NULL AS varchar(1000)) AS C1, + CAST(0 AS SMALLINT) AS C2, + CAST(0 AS SMALLINT) AS C3, + CAST(0 AS SMALLINT) AS C4, + CAST(0 AS SMALLINT) AS C5, + UnionAll2.Name AS C6, + UnionAll2.TypeName AS C7, + UnionAll2.Mode AS C8, + UnionAll2.Ordinal AS C9 + FROM ( + SELECT + TRIM(rdb$procedure_name) as Id + , null as CatalogName + , '' as SchemaName -- bug or not??? need to be not null + , TRIM(rdb$procedure_name) as Name + FROM + rdb$procedures + ) AS Extent4 + LEFT OUTER JOIN (SELECT + Extent5.Name AS Name, + Extent5.Ordinal AS Ordinal, + Extent5.TypeName AS TypeName, + Extent5.Mode AS Mode, + 0 AS C1, + Extent5.ParentId AS ParentId + FROM ( + SELECT + null as Id + , null as ParentId + , null as Name + , null as Ordinal + , null as TypeName + , null as MaxLength + , null as DblPrecision + , null as DateTimePrecision + , null as Scale + , null as CollationCatalog + , null as CollationSchema + , null as CollationName + , null as CharacterSetCatalog + , null as CharacterSetSchema + , null as CharacterSetName + , null as IsMultiSet + , null as Mode + , null as DefaultType + FROM + rdb$database + WHERE + 0=1 + ) AS Extent5 + UNION ALL + SELECT + Extent6.Name AS Name, + Extent6.Ordinal AS Ordinal, + Extent6.TypeName AS TypeName, + Extent6.Mode AS Mode, + 6 AS C1, + Extent6.ParentId AS ParentId + FROM ( + SELECT + TRIM(pp.rdb$procedure_name) || 'x' || + TRIM(pp.rdb$parameter_name) as Id + , TRIM(pp.rdb$procedure_name) as ParentId + , TRIM(pp.rdb$parameter_name) as Name + , pp.rdb$parameter_number+1 as Ordinal + , TRIM(CASE f.rdb$field_type + WHEN 7 THEN CASE f.rdb$field_sub_type + WHEN 0 THEN 'smallint' + WHEN 1 THEN 'numeric' + WHEN 2 THEN 'decimal' + END + WHEN 8 THEN CASE f.rdb$field_sub_type + WHEN 0 THEN 'int' + WHEN 1 THEN 'numeric' + WHEN 2 THEN 'decimal' + END + WHEN 16 THEN CASE f.rdb$field_sub_type + WHEN 0 THEN 'bigint' + WHEN 1 THEN 'numeric' + WHEN 2 THEN 'decimal' + END + WHEN 10 THEN 'float' + WHEN 27 THEN 'double' + WHEN 12 THEN 'date' + WHEN 13 THEN 'time' + WHEN 35 THEN 'timestamp' + WHEN 261 THEN 'blob' + WHEN 37 THEN 'varchar' + WHEN 14 THEN 'char' + WHEN 40 THEN 'cstring' + END) as TypeName + , f.rdb$character_length as MaxLength + , f.rdb$field_precision as DblPrecision + , 0 as DateTimePrecision + , f.rdb$field_scale * (-1) as Scale + , null as CollationCatalog + , null as CollationSchema + , null CollationName + , null as CharacterSetCatalog + , null as CharacterSetSchema + , null as CharacterSetName + , CAST(0 as smallint) as IsMultiSet + , TRIM(IIF(pp.rdb$parameter_type = 1, 'OUT', 'IN')) as Mode + , NULL as DefaultType + FROM + rdb$procedure_parameters pp INNER JOIN rdb$fields f ON + (pp.rdb$field_source = f.rdb$field_name) + ) AS Extent6) AS UnionAll2 ON (6 = UnionAll2.C1) AND + (Extent4.Id = UnionAll2.ParentId)) AS UnionAll3 + ) AS Project7 + order by par_dir,par_name + ; + """, + 'expected_stdout': + """ + PAR_NAME A_01 + PAR_TYPE smallint + PAR_DIR IN + PAR_NAME A_02 + PAR_TYPE int + PAR_DIR IN + PAR_NAME A_03 + PAR_TYPE bigint + PAR_DIR IN + PAR_NAME A_04 + PAR_TYPE numeric + PAR_DIR IN + PAR_NAME A_05 + PAR_TYPE numeric + PAR_DIR IN + PAR_NAME A_06 + PAR_TYPE float + PAR_DIR IN + PAR_NAME A_07 + PAR_TYPE double + PAR_DIR IN + PAR_NAME A_08 + PAR_TYPE date + PAR_DIR IN + PAR_NAME A_09 + PAR_TYPE time + PAR_DIR IN + PAR_NAME A_10 + PAR_TYPE timestamp + PAR_DIR IN + PAR_NAME A_11 + PAR_TYPE varchar + PAR_DIR IN + PAR_NAME A_12 + PAR_TYPE char + PAR_DIR IN + PAR_NAME A_13 + PAR_TYPE blob + PAR_DIR IN + PAR_NAME O_01 + PAR_TYPE smallint + PAR_DIR OUT + PAR_NAME O_02 + PAR_TYPE int + PAR_DIR OUT + PAR_NAME O_03 + PAR_TYPE bigint + PAR_DIR OUT + PAR_NAME ... [truncated message content] |
From: <ta...@us...> - 2015-03-19 14:54:34
|
Revision: 61019 http://sourceforge.net/p/firebird/code/61019 Author: tabloid Date: 2015-03-19 14:54:31 +0000 (Thu, 19 Mar 2015) Log Message: ----------- See added / modified .fbt file(s) Modified Paths: -------------- qa/fbt-repository/trunk/tests/functional/tabloid/batches/1fbt-run-all.bat.txt qa/fbt-repository/trunk/tests/functional/tabloid/batches/1fbt-run-all.conf Added Paths: ----------- qa/fbt-repository/trunk/tests/bugs/core_1846.fbt Added: qa/fbt-repository/trunk/tests/bugs/core_1846.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_1846.fbt (rev 0) +++ qa/fbt-repository/trunk/tests/bugs/core_1846.fbt 2015-03-19 14:54:31 UTC (rev 61019) @@ -0,0 +1,45 @@ +{ +'id': 'bugs.core_1846', +'qmid': None, +'tracker_id': 'CORE-1846', +'title': 'Allow index walk (ORDER plan) when there is a composite index {A, B} and the query looks like WHERE A = ? ORDER BY B', +'description': '', +'min_versions': '3.0', +'versions': [ +{ + 'firebird_version': '3.0', + 'platform': 'All', + 'page_size': '4096', + 'init_script': + """ + """, + 'test_type': 'ISQL', + 'test_script': + """ + recreate table test( + n1 int + ,n2 int + ); + commit; + + insert into test select rand()*100, rand()*100 from rdb$types; + commit; + + create index test_n1_n2_asc on test(n1, n2); + commit; + create descending index test_n2_n1_desc on test(n2, n1); + commit; + + set planonly; + select * from test where n1 = ? order by n2 asc; + select * from test where n2 = ? order by n1 desc; + """, + 'expected_stdout': + """ + PLAN (TEST ORDER TEST_N1_N2_ASC) + PLAN (TEST ORDER TEST_N2_N1_DESC) + """, + 'substitutions': [('=.*','')] +} +] +} Property changes on: qa/fbt-repository/trunk/tests/bugs/core_1846.fbt ___________________________________________________________________ Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Modified: qa/fbt-repository/trunk/tests/functional/tabloid/batches/1fbt-run-all.bat.txt =================================================================== --- qa/fbt-repository/trunk/tests/functional/tabloid/batches/1fbt-run-all.bat.txt 2015-03-19 14:52:00 UTC (rev 61018) +++ qa/fbt-repository/trunk/tests/functional/tabloid/batches/1fbt-run-all.bat.txt 2015-03-19 14:54:31 UTC (rev 61019) @@ -25,12 +25,13 @@ copy e20.fd0 e20.fdb 1>nul echo. echo|set /p=%time%, test: -echo.|C:\MIX\firebird\oldfb20\bin\isql -z localhost/3207:C:\MIX\firebird\QA\fbt-repo\tmp\E20.FDB|findstr /i /b /c:"WI-"|findstr /i /e /c:"2.0" +echo.|%fb20Cs_bin%\isql -z localhost/%fb20Cs_port%:%~dp0e20.fdb|findstr /i /b /c:"WI-"|findstr /i /e /c:"2.0" set run_isql=%fb20Cs_bin%\isql localhost/%fb20Cs_port%:%~dp0e20.fdb -i %1 2^>e20Cs.err ^| sed "s/ *$//" 1^>e20Cs.log echo "%run_isql%" cmd /c %run_isql% @rem 1>e20Cs.log 2>e20Cs.err + copy e21.fd0 e21.fdb 1>nul echo. echo|set /p=%time%, test: Modified: qa/fbt-repository/trunk/tests/functional/tabloid/batches/1fbt-run-all.conf =================================================================== --- qa/fbt-repository/trunk/tests/functional/tabloid/batches/1fbt-run-all.conf 2015-03-19 14:52:00 UTC (rev 61018) +++ qa/fbt-repository/trunk/tests/functional/tabloid/batches/1fbt-run-all.conf 2015-03-19 14:54:31 UTC (rev 61019) @@ -1,9 +1,15 @@ -fb21sS_bin=C:\MIX\firebird\fb21\bin -fb21sS_port=3217 +fb20Cs_bin=C:\MIX\firebird\oldfb20\bin +fb20Cs_port=3207 +fb21Cs_bin=C:\MIX\firebird\oldfb21\bin +fb21Cs_port=3217 + fb25sC_bin=C:\MIX\firebird\fb25\bin fb25sC_port=3050 +fb30Cs_bin=C:\MIX\firebird\fb30Cs +fb30Cs_port=3329 + fb30sC_bin=C:\MIX\firebird\fb30 fb30sC_port=3330 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ta...@us...> - 2015-03-19 18:58:37
|
Revision: 61025 http://sourceforge.net/p/firebird/code/61025 Author: tabloid Date: 2015-03-19 18:58:34 +0000 (Thu, 19 Mar 2015) Log Message: ----------- See added / modified .fbt file(s) Added Paths: ----------- qa/fbt-repository/trunk/tests/bugs/core_3736.fbt qa/fbt-repository/trunk/tests/functional/tabloid/batches/svn-get-local-updated.bat.txt Added: qa/fbt-repository/trunk/tests/bugs/core_3736.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_3736.fbt (rev 0) +++ qa/fbt-repository/trunk/tests/bugs/core_3736.fbt 2015-03-19 18:58:34 UTC (rev 61025) @@ -0,0 +1,148 @@ +{ +'id': 'bugs.core_3736', +'qmid': '', +'tracker_id': 'CORE-3736', +'title': 'WITH LOCK clause is allowed for users with read-only rights on some table, thus blocking others from updating this table', +'description': '', +'versions': [ +{ + 'firebird_version': '3.0', + 'platform': 'All', + 'test_type': 'ISQL', + 'init_script': + """ + """, + 'test_script': + """ + drop user tmp$c3736_ro; -- read-only access to the table + drop user tmp$c3736_ud; -- access for UPDATE and DELETE on the table + commit; + + create user tmp$c3736_ro password 'tmp$c3736_ro'; + create user tmp$c3736_ud password 'tmp$c3736_ud'; + commit; + + revoke all on all from tmp$c3736_ro; + revoke all on all from tmp$c3736_ud; + commit; + + recreate table t_read_only_for_non_sys(id int); + commit; + insert into t_read_only_for_non_sys values(1); + insert into t_read_only_for_non_sys values(2); + insert into t_read_only_for_non_sys values(3); + insert into t_read_only_for_non_sys values(4); + insert into t_read_only_for_non_sys values(5); + commit; + + grant select on t_read_only_for_non_sys to tmp$c3736_ro; + commit; + grant update,delete,select on t_read_only_for_non_sys to tmp$c3736_ud; + commit; + + set transaction no wait; + + update t_read_only_for_non_sys set id = id where id >= 4; + + set term ^; + execute block returns( who_am_i type of column sec$users.sec$user_name, my_action varchar(20), what_i_see int ) + as + declare v_dbname type of column mon$database.mon$database_name; + declare v_usr_ro type of column sec$users.sec$user_name = 'tmp$c3736_ro'; + declare v_pwd_ro varchar(20) = 'tmp$c3736_ro'; + declare v_connect varchar(255); + begin + select 'localhost:' || d.mon$database_name + from mon$database d + into v_dbname; + + for + execute statement 'select current_user, ''select_read_only'', id from t_read_only_for_non_sys' -- for update with lock' + on external (v_dbname) + as user (v_usr_ro) password (v_pwd_ro) + into who_am_i, my_action, what_i_see + do + suspend; + + for + execute statement 'select current_user, ''select_with_lock'', id from t_read_only_for_non_sys for update with lock' + on external (v_dbname) + as user (v_usr_ro) password (v_pwd_ro) + into who_am_i, my_action, what_i_see + do + suspend; + + + end + ^ + set term ;^ + rollback; + + set transaction no wait; + + update t_read_only_for_non_sys set id = id where id >= 4; + + set term ^; + execute block returns( who_am_i type of column sec$users.sec$user_name, my_action varchar(20), what_i_see int ) + as + declare v_dbname type of column mon$database.mon$database_name; + declare v_usr_ud type of column sec$users.sec$user_name = 'tmp$c3736_ud'; + declare v_pwd_ud varchar(20) = 'tmp$c3736_ud'; + declare v_connect varchar(255); + begin + select 'localhost:' || d.mon$database_name + from mon$database d + into v_dbname; + + for + execute statement 'select current_user, ''select_with_lock'', id from t_read_only_for_non_sys for update with lock' + on external (v_dbname) + as user (v_usr_ud) password (v_pwd_ud) + into who_am_i, my_action, what_i_see + do + suspend; + + end + ^ + set term ;^ + rollback; + """, + 'expected_stdout': + """ + WHO_AM_I MY_ACTION WHAT_I_SEE + =============================== ==================== ============ + TMP$C3736_RO select_read_only 1 + TMP$C3736_RO select_read_only 2 + TMP$C3736_RO select_read_only 3 + TMP$C3736_RO select_read_only 4 + TMP$C3736_RO select_read_only 5 + + + WHO_AM_I MY_ACTION WHAT_I_SEE + =============================== ==================== ============ + TMP$C3736_UD select_with_lock 1 + TMP$C3736_UD select_with_lock 2 + TMP$C3736_UD select_with_lock 3 + """, + 'expected_stderr': + """ + Execute statement error at isc_dsql_prepare : + 335544352 : no permission for UPDATE access to TABLE T_READ_ONLY_FOR_NON_SYS + Statement : select current_user, 'select_with_lock', id from t_read_only_for_non_sys for update with lock + Execute statement error at isc_dsql_fetch : + 335544878 : concurrent transaction number is 806 + Statement : select current_user, 'select_with_lock', id from t_read_only_for_non_sys for update with lock + """, + 'substitutions': [ + ('=.*',''), + ('Statement failed, SQLSTATE.*',''), + ('record not found for user:.*',''), + ('unknown ISC error.*', ''), + ('Warning: ALL on ALL is not granted to.*', ''), + ('Data source.*',''), + ('TABLE T_READ_ONLY_FOR_NON_SYS',''), + ('concurrent transaction number is.*','') + ] +} +] +} Property changes on: qa/fbt-repository/trunk/tests/bugs/core_3736.fbt ___________________________________________________________________ Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: qa/fbt-repository/trunk/tests/functional/tabloid/batches/svn-get-local-updated.bat.txt =================================================================== --- qa/fbt-repository/trunk/tests/functional/tabloid/batches/svn-get-local-updated.bat.txt (rev 0) +++ qa/fbt-repository/trunk/tests/functional/tabloid/batches/svn-get-local-updated.bat.txt 2015-03-19 18:58:34 UTC (rev 61025) @@ -0,0 +1 @@ +svn st | findstr /r /v /b /c:"?" \ No newline at end of file Property changes on: qa/fbt-repository/trunk/tests/functional/tabloid/batches/svn-get-local-updated.bat.txt ___________________________________________________________________ Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mak...@us...> - 2015-03-24 12:38:10
|
Revision: 61075 http://sourceforge.net/p/firebird/code/61075 Author: makowski Date: 2015-03-24 12:38:08 +0000 (Tue, 24 Mar 2015) Log Message: ----------- make COLL-VERSION insensitive to last digit diff Modified Paths: -------------- qa/fbt-repository/trunk/tests/bugs/core_4418.fbt qa/fbt-repository/trunk/tests/bugs/core_4452.fbt qa/fbt-repository/trunk/tests/functional/basic/db/db_03.fbt qa/fbt-repository/trunk/tests/functional/basic/isql/isql_03.fbt Modified: qa/fbt-repository/trunk/tests/bugs/core_4418.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_4418.fbt 2015-03-24 01:30:20 UTC (rev 61074) +++ qa/fbt-repository/trunk/tests/bugs/core_4418.fbt 2015-03-24 12:38:08 UTC (rev 61075) @@ -99,8 +99,11 @@ DM_IDS BIGINT Nullable DM_NUMS VARCHAR(20) CHARACTER SET UTF8 Nullable COLLATE NUMS_COLL -NUMS_COLL, CHARACTER SET UTF8, FROM EXTERNAL ('UNICODE'), PAD SPACE, CASE INSENSITIVE, 'COLL-VERSION=58.0.6.50;NUMERIC-SORT=1' - """ +NUMS_COLL, CHARACTER SET UTF8, FROM EXTERNAL ('UNICODE'), PAD SPACE, CASE INSENSITIVE, 'COLL-VERSION=58.0.6.xx;NUMERIC-SORT=1' + """, + 'substitutions': [ + ('COLL-VERSION=58\.0\.6\.[0-9][0-9]','COLL-VERSION=58.0.6.xx') + ] } ] } Modified: qa/fbt-repository/trunk/tests/bugs/core_4452.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_4452.fbt 2015-03-24 01:30:20 UTC (rev 61074) +++ qa/fbt-repository/trunk/tests/bugs/core_4452.fbt 2015-03-24 12:38:08 UTC (rev 61075) @@ -37,17 +37,20 @@ """, 'expected_stdout': """ -NAME_COLL, CHARACTER SET UTF8, FROM EXTERNAL ('UNICODE'), PAD SPACE, CASE INSENSITIVE, 'COLL-VERSION=58.0.6.50' -NUMS_COLL, CHARACTER SET UTF8, FROM EXTERNAL ('UNICODE'), PAD SPACE, CASE INSENSITIVE, 'COLL-VERSION=58.0.6.50;NUMERIC-SORT=1' +NAME_COLL, CHARACTER SET UTF8, FROM EXTERNAL ('UNICODE'), PAD SPACE, CASE INSENSITIVE, 'COLL-VERSION=58.0.6.xx' +NUMS_COLL, CHARACTER SET UTF8, FROM EXTERNAL ('UNICODE'), PAD SPACE, CASE INSENSITIVE, 'COLL-VERSION=58.0.6.xx;NUMERIC-SORT=1' -NAME_COLL, CHARACTER SET UTF8, FROM EXTERNAL ('UNICODE'), PAD SPACE, CASE INSENSITIVE, 'COLL-VERSION=58.0.6.50' -NUMS_COLL, CHARACTER SET UTF8, FROM EXTERNAL ('UNICODE'), PAD SPACE, CASE INSENSITIVE, 'COLL-VERSION=58.0.6.50;NUMERIC-SORT=1' +NAME_COLL, CHARACTER SET UTF8, FROM EXTERNAL ('UNICODE'), PAD SPACE, CASE INSENSITIVE, 'COLL-VERSION=58.0.6.xx' +NUMS_COLL, CHARACTER SET UTF8, FROM EXTERNAL ('UNICODE'), PAD SPACE, CASE INSENSITIVE, 'COLL-VERSION=58.0.6.xx;NUMERIC-SORT=1' """, 'expected_stderr': """ There are no user-defined collations in this database There are no user-defined collations in this database - """ + """, + 'substitutions': [ + ('COLL-VERSION=58\.0\.6\.[0-9][0-9]','COLL-VERSION=58.0.6.xx') + ] } ] } Modified: qa/fbt-repository/trunk/tests/functional/basic/db/db_03.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/basic/db/db_03.fbt 2015-03-24 01:30:20 UTC (rev 61074) +++ qa/fbt-repository/trunk/tests/functional/basic/db/db_03.fbt 2015-03-24 12:38:08 UTC (rev 61075) @@ -4858,7 +4858,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES 1d:f3 - COLL-VERSION=58.0.6.50 + COLL-VERSION=58.0.6.xx RDB$SECURITY_CLASS SQL$219 RDB$OWNER_NAME SYSDBA @@ -4871,7 +4871,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME UNICODE RDB$SPECIFIC_ATTRIBUTES 1d:f4 - COLL-VERSION=58.0.6.50 + COLL-VERSION=58.0.6.xx RDB$SECURITY_CLASS SQL$220 RDB$OWNER_NAME SYSDBA @@ -6545,7 +6545,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES 1d:f6 - COLL-VERSION=58.0.6.50 + COLL-VERSION=58.0.6.xx RDB$SECURITY_CLASS SQL$359 RDB$OWNER_NAME SYSDBA @@ -6573,7 +6573,10 @@ RDB$SECURITY_CLASS SQL$361 RDB$OWNER_NAME SYSDBA """, - 'substitutions': [('RDB\$SPECIFIC_ATTRIBUTES.*','')] + 'substitutions': [ + ('RDB\$SPECIFIC_ATTRIBUTES.*',''), + ('COLL-VERSION=58\.0\.6\.[0-9][0-9]','COLL-VERSION=58.0.6.xx') + ] } ] } Modified: qa/fbt-repository/trunk/tests/functional/basic/isql/isql_03.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/basic/isql/isql_03.fbt 2015-03-24 01:30:20 UTC (rev 61074) +++ qa/fbt-repository/trunk/tests/functional/basic/isql/isql_03.fbt 2015-03-24 12:38:08 UTC (rev 61075) @@ -412,7 +412,7 @@ BIG_5, CHARACTER SET BIG_5, PAD SPACE, SYSTEM BS_BA, CHARACTER SET WIN1250, PAD SPACE, SYSTEM CP943C, CHARACTER SET CP943C, PAD SPACE, SYSTEM -CP943C_UNICODE, CHARACTER SET CP943C, PAD SPACE, 'COLL-VERSION=58.0.6.50', SYSTEM +CP943C_UNICODE, CHARACTER SET CP943C, PAD SPACE, 'COLL-VERSION=58.0.6.xx', SYSTEM CS_CZ, CHARACTER SET ISO8859_2, PAD SPACE, SYSTEM CYRL, CHARACTER SET CYRL, PAD SPACE, SYSTEM DA_DA, CHARACTER SET ISO8859_1, PAD SPACE, SYSTEM @@ -536,9 +536,9 @@ TIS620, CHARACTER SET TIS620, PAD SPACE, SYSTEM TIS620_UNICODE, CHARACTER SET TIS620, PAD SPACE, SYSTEM UCS_BASIC, CHARACTER SET UTF8, PAD SPACE, SYSTEM -UNICODE, CHARACTER SET UTF8, PAD SPACE, 'COLL-VERSION=58.0.6.50', SYSTEM -UNICODE_CI, CHARACTER SET UTF8, FROM EXTERNAL ('UNICODE'), PAD SPACE, CASE INSENSITIVE, 'COLL-VERSION=58.0.6.50', SYSTEM -UNICODE_CI_AI, CHARACTER SET UTF8, FROM EXTERNAL ('UNICODE'), PAD SPACE, CASE INSENSITIVE, ACCENT INSENSITIVE, 'COLL-VERSION=58.0.6.50', SYSTEM +UNICODE, CHARACTER SET UTF8, PAD SPACE, 'COLL-VERSION=58.0.6.xx', SYSTEM +UNICODE_CI, CHARACTER SET UTF8, FROM EXTERNAL ('UNICODE'), PAD SPACE, CASE INSENSITIVE, 'COLL-VERSION=58.0.6.xx', SYSTEM +UNICODE_CI_AI, CHARACTER SET UTF8, FROM EXTERNAL ('UNICODE'), PAD SPACE, CASE INSENSITIVE, ACCENT INSENSITIVE, 'COLL-VERSION=58.0.6.xx', SYSTEM UNICODE_FSS, CHARACTER SET UNICODE_FSS, PAD SPACE, SYSTEM UTF8, CHARACTER SET UTF8, PAD SPACE, SYSTEM WIN1250, CHARACTER SET WIN1250, PAD SPACE, SYSTEM @@ -557,7 +557,10 @@ WIN_CZ, CHARACTER SET WIN1250, PAD SPACE, CASE INSENSITIVE, SYSTEM WIN_CZ_CI_AI, CHARACTER SET WIN1250, PAD SPACE, CASE INSENSITIVE, ACCENT INSENSITIVE, SYSTEM WIN_PTBR, CHARACTER SET WIN1252, PAD SPACE, CASE INSENSITIVE, ACCENT INSENSITIVE, SYSTEM - """ + """, + 'substitutions': [ + ('COLL-VERSION=58\.0\.6\.[0-9][0-9]','COLL-VERSION=58.0.6.xx') + ] } ] } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ta...@us...> - 2015-05-11 19:18:05
|
Revision: 61522 http://sourceforge.net/p/firebird/code/61522 Author: tabloid Date: 2015-05-11 19:18:02 +0000 (Mon, 11 May 2015) Log Message: ----------- See added / modified .fbt file(s) Modified Paths: -------------- qa/fbt-repository/trunk/tests/functional/database/create_02.fbt Added Paths: ----------- qa/fbt-repository/trunk/tests/bugs/core_2289.fbt Added: qa/fbt-repository/trunk/tests/bugs/core_2289.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_2289.fbt (rev 0) +++ qa/fbt-repository/trunk/tests/bugs/core_2289.fbt 2015-05-11 19:18:02 UTC (rev 61522) @@ -0,0 +1,74 @@ +{ +'id': 'bugs.core_2289', +'qmid': None, +'tracker_id': 'CORE-2289', +'title': "Wrong (primary) constraint name is reported for the foreign key violation during FK creation", +'description': '', +'min_versions': '2.1.7', +'versions': [ +{ + 'firebird_version': '2.1', + 'platform': 'All', + 'page_size': '4096', + 'test_type': 'ISQL', + 'init_script': + """ + """, + 'test_script': + """ + recreate table packet_detail(id int, packet_id int); + recreate table packet(id int, constraint packet_pk primary key(id) using index packet_idx); + commit; + insert into packet_detail(id, packet_id) values(1, 753); + commit; + + alter table packet_detail + add constraint packet_detail_fk + foreign key (packet_id) + references packet(id) + using index packet_detail_idx + ; + commit; + """, + 'expected_stderr': + """ + Statement failed, SQLCODE = -530 + violation of FOREIGN KEY constraint "PACKET_DETAIL_FK" on table "PACKET_DETAIL" + -Foreign key reference target does not exist + -Problematic key value is ("PACKET_ID" = 753) + """ +}, +{ + 'firebird_version': '2.5', + 'platform': 'All', + 'page_size': '4096', + 'test_type': 'ISQL', + 'init_script': + """ + """, + 'test_script': + """ + recreate table packet_detail(id int, packet_id int); + recreate table packet(id int, constraint packet_pk primary key(id) using index packet_idx); + commit; + insert into packet_detail(id, packet_id) values(1, 753); + commit; + + alter table packet_detail + add constraint packet_detail_fk + foreign key (packet_id) + references packet(id) + using index packet_detail_idx + ; + commit; + """, + 'expected_stderr': + """ + Statement failed, SQLSTATE = 23000 + violation of FOREIGN KEY constraint "PACKET_DETAIL_FK" on table "PACKET_DETAIL" + -Foreign key reference target does not exist + -Problematic key value is ("PACKET_ID" = 753) + """ +} +] +} Property changes on: qa/fbt-repository/trunk/tests/bugs/core_2289.fbt ___________________________________________________________________ Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Modified: qa/fbt-repository/trunk/tests/functional/database/create_02.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/database/create_02.fbt 2015-05-11 15:48:35 UTC (rev 61521) +++ qa/fbt-repository/trunk/tests/functional/database/create_02.fbt 2015-05-11 19:18:02 UTC (rev 61522) @@ -133,6 +133,7 @@ 'platform': 'All', 'user_name': 'test', 'user_password': 'test', + 'init_script':'grant create database to test_user;', 'test_type': 'ISQL', 'test_script': 'SHOW DATABASE;', 'expected_stdout': """ Owner: TEST This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ta...@us...> - 2015-05-16 06:29:00
|
Revision: 61556 http://sourceforge.net/p/firebird/code/61556 Author: tabloid Date: 2015-05-16 06:28:58 +0000 (Sat, 16 May 2015) Log Message: ----------- See added / modified .fbt file(s) Modified Paths: -------------- qa/fbt-repository/trunk/tests/functional/tabloid/batches/1fbreplace.bat.txt Added Paths: ----------- qa/fbt-repository/trunk/tests/bugs/core_4735.fbt Added: qa/fbt-repository/trunk/tests/bugs/core_4735.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_4735.fbt (rev 0) +++ qa/fbt-repository/trunk/tests/bugs/core_4735.fbt 2015-05-16 06:28:58 UTC (rev 61556) @@ -0,0 +1,38 @@ +{ +'id': 'bugs.core_4735', +'qmid': None, +'tracker_id': 'CORE-4735', +'title': "Expression 'where bool_field IS true | false' should also use index as 'where bool_field = true | false' (if such index exists)", +'description': '', +'min_versions': '3.0', +'versions': [ +{ + 'firebird_version': '3.0', + 'platform': 'All', + 'page_size': '4096', + 'test_type': 'ISQL', + 'init_script': + """ + """, + 'test_script': + """ + recreate table test(bar boolean primary key using index test_pk, foo boolean, "Foo" boolean, "Bar" boolean); + commit; + create index test_compound1 on test(foo, bar); + create index test_compound2 on test("Foo", "Bar", foo, bar); + commit; + + set plan on; + select * from test where bar IS true; -- PK + select * from test where foo IS NOT true and bar IS distinct from foo; -- compound1 + select * from test where "Foo" IS NOT false and "Bar" IS true and foo is not distinct from bar; -- compound2 + """, + 'expected_stdout': + """ + PLAN (TEST INDEX (TEST_PK)) + PLAN (TEST INDEX (TEST_COMPOUND1)) + PLAN (TEST INDEX (TEST_COMPOUND2)) + """ +} +] +} Property changes on: qa/fbt-repository/trunk/tests/bugs/core_4735.fbt ___________________________________________________________________ Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Modified: qa/fbt-repository/trunk/tests/functional/tabloid/batches/1fbreplace.bat.txt =================================================================== --- qa/fbt-repository/trunk/tests/functional/tabloid/batches/1fbreplace.bat.txt 2015-05-16 00:09:59 UTC (rev 61555) +++ qa/fbt-repository/trunk/tests/functional/tabloid/batches/1fbreplace.bat.txt 2015-05-16 06:28:58 UTC (rev 61556) @@ -23,18 +23,20 @@ setlocal enabledelayedexpansion enableextensions @rem check that 7-Zip is avaliable: -7z 1>%~n0.log 2>&1 +7za 1>%~n0.log 2>&1 findstr /i /c /b "7-Zip" %~n0.log 1>nul 2>&1 if errorlevel 1 ( del %~n0.log - echo 7-Zip archiver is required for this batch. + echo, + echo 7za.exe - command line stand alone version of 7-Zip archiver - is required for this batch for backups. + echo Download it from: http://sourceforge.net/projects/sevenzip/files/7-Zip and save in some of PATH folder goto end ) del %~n0.log 2>nul @rem List of Firebird services to be upgraded: -set FB_SERVICES=fb30Cs fb30sC fb30sS -@rem set FB_SERVICES=fb30Cs +set FB_SERVICES=%1 +if .%1.==.. set FB_SERVICES=fb30Cs fb30sC fb30sS @rem Folder where downloaded snapshot files are: set SNAPSHOT_DIR=C:\1INSTALL\FIREBIRD\snapshot_builds\30 @@ -112,12 +114,15 @@ echo !time! Packing previous FB build to !archname!>>%log% @rem set cmd_run=rar u -m5 -ep1 -idp -r -dh !archname! !fp!\doc !fp!\include !fp!\intl !fp!\lib !fp!\plugins !fp!\*.conf !fp!\*.dll !fp!\*.exe !fp!\*.bat !fp!\firebird.msg !fp!\security*.fdb - set cmd_run=7z u -bd -r -ssw !archname! !fp!\doc !fp!\include !fp!\intl !fp!\lib !fp!\plugins !fp!\*.conf !fp!\*.dll !fp!\*.exe !fp!\*.bat !fp!\firebird.msg !fp!\security*.fdb + set cmd_run=7za u -bd -r -ssw !archname! !fp!\doc !fp!\include !fp!\intl !fp!\lib !fp!\plugins !fp!\*.conf !fp!\*.dll !fp!\*.exe !fp!\*.bat !fp!\firebird.msg !fp!\security*.fdb echo !time! !cmd_run! cmd /c !cmd_run! 1>>%log% 2>&1 echo Done. echo !time! Done.>>%log% + dir !archname! | findstr /i /c:!archname! 1>%~n0.err 2>&1 + type %~n0.err>>%log% + type %~n0.err set fn=!fp!\fbclient.dll if exist !fn! ( This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mak...@us...> - 2015-10-28 15:48:57
|
Revision: 62455 http://sourceforge.net/p/firebird/code/62455 Author: makowski Date: 2015-10-28 15:48:54 +0000 (Wed, 28 Oct 2015) Log Message: ----------- adapt tests for FB3.0 under Linux Modified Paths: -------------- qa/fbt-repository/trunk/tests/bugs/core_3942.fbt qa/fbt-repository/trunk/tests/bugs/core_4503.fbt qa/fbt-repository/trunk/tests/bugs/core_4880.fbt qa/fbt-repository/trunk/tests/functional/shadow/create_02.fbt Modified: qa/fbt-repository/trunk/tests/bugs/core_3942.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_3942.fbt 2015-10-28 14:44:40 UTC (rev 62454) +++ qa/fbt-repository/trunk/tests/bugs/core_3942.fbt 2015-10-28 15:48:54 UTC (rev 62455) @@ -40,6 +40,74 @@ -Exiting before completion due to errors """, 'substitutions':[('.*database.*already exists.*','database already exists.*')] +}, +{ + 'firebird_version': '3.0', + 'platform': 'Windows', + 'test_type': 'Python', + 'init_script': + """ + """, + 'test_script': + """import os +db_conn.close() +fdb='$(DATABASE_LOCATION)bugs.core_3942.fdb' +fbk = os.path.join(context['temp_directory'],'tmp.core_3942.fbk') +runProgram('gbak',['-b','-user',user_name,'-password',user_password,dsn,fbk]) +print ('Trying to overwrite eisting database file using gbak -se...') +runProgram('gbak',['-c','-se','localhost:service_mgr','-user',user_name,'-password',user_password,fbk,fdb]) +print ('Trying to overwrite eisting database file using fbsvcmgr...') +runProgram('fbsvcmgr',['localhost:service_mgr','user','SYSDBA','password','masterkey','action_restore','dbname',fdb,'bkp_file',fbk]) +if os.path.isfile(fbk): + os.remove(fbk) + """, + 'expected_stdout': + """ + Trying to overwrite eisting database file using gbak -se... + Trying to overwrite eisting database file using fbsvcmgr... + """, + 'expected_stderr': + """ + gbak: ERROR:database C:/FBTESTING/qa/fbt-repo/tmp/bugs.core_3942.fdb already exists. To replace it, use the -REP switch + gbak: ERROR: Exiting before completion due to errors + gbak:Exiting before completion due to errors + database C:/FBTESTING/qa/fbt-repo/tmp/bugs.core_3942.fdb already exists. To replace it, use the -REP switch + -Exiting before completion due to errors + """, + 'substitutions':[('.*database.*already exists.*','database already exists.*')] +}, +{ + 'firebird_version': '3.0', + 'platform': 'Linux', + 'test_type': 'Python', + 'init_script': + """ + """, + 'test_script': + """import os +db_conn.close() +fdb='$(DATABASE_LOCATION)bugs.core_3942.fdb' +fbk = os.path.join(context['temp_directory'],'tmp.core_3942.fbk') +runProgram('gbak',['-b','-user',user_name,'-password',user_password,dsn,fbk]) +print ('Trying to overwrite eisting database file using gbak -se...') +runProgram('gbak',['-c','-se','localhost:service_mgr','-user',user_name,'-password',user_password,fbk,fdb]) +print ('Trying to overwrite eisting database file using fbsvcmgr...') +runProgram('fbsvcmgr',['localhost:service_mgr','user','SYSDBA','password','masterkey','action_restore','dbname',fdb,'bkp_file',fbk]) +if os.path.isfile(fbk): + os.remove(fbk) + """, + 'expected_stdout': + """ + Trying to overwrite eisting database file using gbak -se... + Trying to overwrite eisting database file using fbsvcmgr... + """, + 'expected_stderr': + """ + gbak: ERROR:database C:/FBTESTING/qa/fbt-repo/tmp/bugs.core_3942.fdb already exists. To replace it, use the -REP switch + gbak: ERROR: Exiting before completion due to errors + gbak:Exiting before completion due to errors + """, + 'substitutions':[('.*database.*already exists.*','database already exists.*')] } ] } Modified: qa/fbt-repository/trunk/tests/bugs/core_4503.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_4503.fbt 2015-10-28 14:44:40 UTC (rev 62454) +++ qa/fbt-repository/trunk/tests/bugs/core_4503.fbt 2015-10-28 15:48:54 UTC (rev 62455) @@ -51,7 +51,7 @@ 4 JOHN 1 MICK 3 #SYSDBA """, - 'substitutions':[ + 'substitutions':[('.*0.*TMP.*','') ] } ] Modified: qa/fbt-repository/trunk/tests/bugs/core_4880.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_4880.fbt 2015-10-28 14:44:40 UTC (rev 62454) +++ qa/fbt-repository/trunk/tests/bugs/core_4880.fbt 2015-10-28 15:48:54 UTC (rev 62455) @@ -28,7 +28,7 @@ 'versions': [ { 'firebird_version': '3.0', - 'platform': 'All', + 'platform': 'Windows', 'page_size': '4096', 'init_script': """ Modified: qa/fbt-repository/trunk/tests/functional/shadow/create_02.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/shadow/create_02.fbt 2015-10-28 14:44:40 UTC (rev 62454) +++ qa/fbt-repository/trunk/tests/functional/shadow/create_02.fbt 2015-10-28 15:48:54 UTC (rev 62455) @@ -233,7 +233,7 @@ 'test_type': 'ISQL', 'test_script': """ - create shadow 1 manual conditional '$(DATABASE_LOCATION)test.shd' file '$(DATABASE_LOCATION)test.s00' starting at page 1000; + create shadow 1 manual conditional '$(DATABASE_LOCATION)TEST.SHD' file '$(DATABASE_LOCATION)TEST.S00' starting at page 1000; commit; set list on; set count on; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mak...@us...> - 2016-04-11 10:40:51
|
Revision: 63223 http://sourceforge.net/p/firebird/code/63223 Author: makowski Date: 2016-04-11 10:40:48 +0000 (Mon, 11 Apr 2016) Log Message: ----------- try to fix false fails under Linux Modified Paths: -------------- qa/fbt-repository/trunk/tests/bugs/core_0014.fbt qa/fbt-repository/trunk/tests/bugs/core_4418.fbt qa/fbt-repository/trunk/tests/bugs/core_4452.fbt qa/fbt-repository/trunk/tests/bugs/core_4766.fbt qa/fbt-repository/trunk/tests/bugs/core_4802.fbt qa/fbt-repository/trunk/tests/functional/basic/isql/isql_03.fbt Modified: qa/fbt-repository/trunk/tests/bugs/core_0014.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_0014.fbt 2016-04-11 10:06:32 UTC (rev 63222) +++ qa/fbt-repository/trunk/tests/bugs/core_0014.fbt 2016-04-11 10:40:48 UTC (rev 63223) @@ -10,7 +10,7 @@ 'firebird_version': '2.5', 'platform': 'All', 'test_type': 'ISQL', - 'test_script': + 'test_script': """ -- Works OK on 1.5.6 and up to 4.0.0. create domain dom_datum_vreme as timestamp not null; @@ -59,10 +59,10 @@ as begin - update ulaz_master u set u.vrednost = u.vrednost + new.ukupno + update ulaz_master u set u.vrednost = u.vrednost + new.ukupno where u.ulzid = new.ulzid; - update ulaz_master u set u.rvrednost = u.rvrednost + (1 - new.rabat/100) * new.ukupno + update ulaz_master u set u.rvrednost = u.rvrednost + (1 - new.rabat/100) * new.ukupno where u.ulzid = new.ulzid; end @@ -73,7 +73,7 @@ -- this trigger sets fiedls to null on rc8. -- on rc6 it works as it should. - insert into ulaz_master(ulzid, datum, broj_racuna, dobid, dobavljac, napid, nacin_placanja) + insert into ulaz_master(ulzid, datum, broj_racuna, dobid, dobavljac, napid, nacin_placanja) values(1000, '19.03.2016 12:01:03', 'qwerty123', 78966, 'foo-bar', 32101, 'asd-fgh-jkl' ); /* create domain dom_datum_vreme as timestamp not null; @@ -92,20 +92,20 @@ napid dom_jid not null, nacin_placanja dom_naziv not null, */ - + set list on; set count on; select * from ulaz_master; - insert into + insert into ulaz_detalji(ulzid, artid, artikal, kolicina, cena, rabat, vratio) values(1000, 1000, 'liste', 19, 7, 30, 0); select * from ulaz_detalji; select * from ulaz_master; """, - 'expected_stdout': + 'expected_stdout': """ ULZID 1000 DATUM 2016-03-19 12:01:03.0000 @@ -115,8 +115,8 @@ NAPID 32101 NACIN_PLACANJA asd-fgh-jkl DATUMPRISPECA <null> - VREDNOST 0.0000000000000000 - RVREDNOST 0.0000000000000000 + VREDNOST 0.000000000000000 + RVREDNOST 0.000000000000000 STATUS 0 @@ -151,7 +151,10 @@ """, 'expected_stderr': """ - """ + """, + 'substitutions': [ + ('0\.0000000000000000','0\.000000000000000') + ] } ] } Modified: qa/fbt-repository/trunk/tests/bugs/core_4418.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_4418.fbt 2016-04-11 10:06:32 UTC (rev 63222) +++ qa/fbt-repository/trunk/tests/bugs/core_4418.fbt 2016-04-11 10:40:48 UTC (rev 63223) @@ -99,10 +99,11 @@ DM_IDS BIGINT Nullable DM_NUMS VARCHAR(20) CHARACTER SET UTF8 Nullable COLLATE NUMS_COLL -NUMS_COLL, CHARACTER SET UTF8, FROM EXTERNAL ('UNICODE'), PAD SPACE, CASE INSENSITIVE, 'COLL-VERSION=58.0.6.xx;NUMERIC-SORT=1' +NUMS_COLL, CHARACTER SET UTF8, FROM EXTERNAL ('UNICODE'), PAD SPACE, CASE INSENSITIVE, 'COLL-VERSION=xx;NUMERIC-SORT=1' """, 'substitutions': [ - ('COLL-VERSION=58\.0\.6\.[0-9][0-9]','COLL-VERSION=58.0.6.xx') + ('COLL-VERSION=58\.0\.6\.[0-9][0-9]','COLL-VERSION=xx'), + ('COLL-VERSION=137\.51','COLL-VERSION=xx') ] } ] Modified: qa/fbt-repository/trunk/tests/bugs/core_4452.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_4452.fbt 2016-04-11 10:06:32 UTC (rev 63222) +++ qa/fbt-repository/trunk/tests/bugs/core_4452.fbt 2016-04-11 10:40:48 UTC (rev 63223) @@ -37,11 +37,11 @@ """, 'expected_stdout': """ -NAME_COLL, CHARACTER SET UTF8, FROM EXTERNAL ('UNICODE'), PAD SPACE, CASE INSENSITIVE, 'COLL-VERSION=58.0.6.xx' -NUMS_COLL, CHARACTER SET UTF8, FROM EXTERNAL ('UNICODE'), PAD SPACE, CASE INSENSITIVE, 'COLL-VERSION=58.0.6.xx;NUMERIC-SORT=1' +NAME_COLL, CHARACTER SET UTF8, FROM EXTERNAL ('UNICODE'), PAD SPACE, CASE INSENSITIVE, 'COLL-VERSION=xx' +NUMS_COLL, CHARACTER SET UTF8, FROM EXTERNAL ('UNICODE'), PAD SPACE, CASE INSENSITIVE, 'COLL-VERSION=xx;NUMERIC-SORT=1' -NAME_COLL, CHARACTER SET UTF8, FROM EXTERNAL ('UNICODE'), PAD SPACE, CASE INSENSITIVE, 'COLL-VERSION=58.0.6.xx' -NUMS_COLL, CHARACTER SET UTF8, FROM EXTERNAL ('UNICODE'), PAD SPACE, CASE INSENSITIVE, 'COLL-VERSION=58.0.6.xx;NUMERIC-SORT=1' +NAME_COLL, CHARACTER SET UTF8, FROM EXTERNAL ('UNICODE'), PAD SPACE, CASE INSENSITIVE, 'COLL-VERSION=xx' +NUMS_COLL, CHARACTER SET UTF8, FROM EXTERNAL ('UNICODE'), PAD SPACE, CASE INSENSITIVE, 'COLL-VERSION=xx;NUMERIC-SORT=1' """, 'expected_stderr': """ @@ -49,7 +49,8 @@ There are no user-defined collations in this database """, 'substitutions': [ - ('COLL-VERSION=58\.0\.6\.[0-9][0-9]','COLL-VERSION=58.0.6.xx') + ('COLL-VERSION=58\.0\.6\.[0-9][0-9]','COLL-VERSION=xx'), + ('COLL-VERSION=137\.51','COLL-VERSION=xx') ] } ] Modified: qa/fbt-repository/trunk/tests/bugs/core_4766.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_4766.fbt 2016-04-11 10:06:32 UTC (rev 63222) +++ qa/fbt-repository/trunk/tests/bugs/core_4766.fbt 2016-04-11 10:40:48 UTC (rev 63223) @@ -30,7 +30,7 @@ create or alter user boss password '123' grant admin role; commit; - + set term ^; execute block as begin @@ -48,13 +48,13 @@ begin execute statement 'drop user mgr1' as user 'BOSS' password '123' role 'RDB$ADMIN'; - end + end -- This lead to 2nd "SQLSTATE = 28000" with text: -- before build 32136: "add record error / -no permission for INSERT access to TABLE PLG$VIEW_USERS" -- since that build: "find/delete record error / -no permission for DELETE access to TABLE" ^ set term ;^ - + -- Attention: see above ROLLBACK labaled as [###NB###]: without that rollback following -- COMMIT will again try to ADD user boss/123 and only after it - drop user statement, -- and this will lead to fail again with error about adding (not deleting) user. @@ -65,7 +65,7 @@ rollback; drop user boss; - commit; + commit; """, 'expected_stderr': """ @@ -76,7 +76,9 @@ find/delete record error -no permission for DELETE access to TABLE PLG """, - 'substitutions':[('TABLE PLG\$VIEW_USERS','TABLE PLG'), ('TABLE PLG\$SRP_VIEW', 'TABLE PLG') ] + 'substitutions':[('TABLE PLG\$VIEW_USERS','TABLE PLG'), + ('TABLE PLG\$SRP_VIEW', 'TABLE PLG'), + ('find/delete', 'delete' ] } ] } Modified: qa/fbt-repository/trunk/tests/bugs/core_4802.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_4802.fbt 2016-04-11 10:06:32 UTC (rev 63222) +++ qa/fbt-repository/trunk/tests/bugs/core_4802.fbt 2016-04-11 10:40:48 UTC (rev 63223) @@ -13,24 +13,24 @@ """ """, 'test_type': 'ISQL', - 'test_script': + 'test_script': """ set wng off; - - recreate table test(fld_for_seniors varchar(70), fld_for_juniors varchar(70)); + + recreate table test(fld_for_seniors varchar(70), fld_for_juniors varchar(70)); commit; - - create or alter user BIG_BROTHER password '123' revoke admin role; - create or alter user SENIOR_MNGR password '456' revoke admin role; - create or alter user JUNIOR_MNGR password '789' revoke admin role; + + create or alter user BIG_BROTHER password '123' revoke admin role; + create or alter user SENIOR_MNGR password '456' revoke admin role; + create or alter user JUNIOR_MNGR password '789' revoke admin role; create role FLD_FOR_SENIORS_UPDATER; create role FLD_FOR_JUNIORS_UPDATER; commit; - + revoke all on all from BIG_BROTHER; revoke all on all from SENIOR_MNGR; revoke all on all from JUNIOR_MNGR; - + -- Statement failed, SQLSTATE = 28000 -- unsuccessful metadata update -- -REVOKE failed @@ -39,56 +39,56 @@ -- revoke all on all from role FLD_FOR_SENIORS_UPDATER; -- revoke all on all from role FLD_FOR_JUNIORS_UPDATER; commit; - grant select on test to PUBLIC; - + grant select on test to PUBLIC; + grant update(fld_for_seniors) on test to BIG_BROTHER; commit; - + grant update(fld_for_seniors) on test to FLD_FOR_SENIORS_UPDATER; grant update(fld_for_juniors) on test to FLD_FOR_JUNIORS_UPDATER; - + grant FLD_FOR_SENIORS_UPDATER to SENIOR_MNGR; grant FLD_FOR_JUNIORS_UPDATER to JUNIOR_MNGR; commit; - + show grants; - - insert into test values( 'created by '||upper(current_user), 'created by '||lower(current_user) ); + + insert into test values( 'created by '||upper(current_user), 'created by '||lower(current_user) ); commit; set list on; - + --set echo on; - + connect '$(DSN)' user 'BIG_BROTHER' password '123'; select current_user, current_role from rdb$database; update test set fld_for_seniors = 'updated by '||upper(current_user)||', role: '||upper(current_role); select * from test; - + update test set fld_for_juniors = 'updated by '||lower(current_user)||', role: '||lower(current_role); select * from test; commit; --------------------------------------------------------------- - + connect '$(DSN)' user 'SENIOR_MNGR' password '456' role 'FLD_FOR_SENIORS_UPDATER'; select current_user, current_role from rdb$database; update test set fld_for_seniors = 'updated by '||upper(current_user)||', role: '||upper(current_role); select * from test; - + update test set fld_for_juniors ='updated by '||lower(current_user)||', role: '||lower(current_role); select * from test; commit; --------------------------------------------------------------- - + connect '$(DSN)' user 'JUNIOR_MNGR' password '789' role 'FLD_FOR_JUNIORS_UPDATER'; select current_user, current_role from rdb$database; update test set fld_for_seniors = 'updated by '||upper(current_user)||', role: '||upper(current_role); select * from test; - + update test set fld_for_juniors ='updated by '||lower(current_user)||', role: '||lower(current_role); select * from test; commit; --------------------------------------------------------------- - + connect '$(DSN)' user 'SYSDBA' password 'masterkey'; drop role FLD_FOR_SENIORS_UPDATER; drop role FLD_FOR_JUNIORS_UPDATER; @@ -97,7 +97,7 @@ drop user JUNIOR_MNGR; commit; """, - 'expected_stdout': + 'expected_stdout': """ /* Grant permissions for this database */ GRANT UPDATE (FLD_FOR_SENIORS) ON TEST TO USER BIG_BROTHER @@ -106,7 +106,7 @@ GRANT SELECT ON TEST TO PUBLIC GRANT FLD_FOR_JUNIORS_UPDATER TO JUNIOR_MNGR GRANT FLD_FOR_SENIORS_UPDATER TO SENIOR_MNGR - + USER BIG_BROTHER ROLE NONE FLD_FOR_SENIORS updated by BIG_BROTHER, role: NONE @@ -128,17 +128,18 @@ FLD_FOR_SENIORS updated by SENIOR_MNGR, role: FLD_FOR_SENIORS_UPDATER FLD_FOR_JUNIORS updated by junior_mngr, role: fld_for_juniors_updater """, - 'expected_stderr': + 'expected_stderr': """ Statement failed, SQLSTATE = 28000 no permission for UPDATE access to COLUMN TEST.FLD_FOR_JUNIORS - + Statement failed, SQLSTATE = 28000 no permission for UPDATE access to COLUMN TEST.FLD_FOR_JUNIORS - + Statement failed, SQLSTATE = 28000 no permission for UPDATE access to COLUMN TEST.FLD_FOR_SENIORS - """ + """, + 'substitutions':[('GRANT.*TMP.*','')] } ] } Modified: qa/fbt-repository/trunk/tests/functional/basic/isql/isql_03.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/basic/isql/isql_03.fbt 2016-04-11 10:06:32 UTC (rev 63222) +++ qa/fbt-repository/trunk/tests/functional/basic/isql/isql_03.fbt 2016-04-11 10:40:48 UTC (rev 63223) @@ -380,7 +380,7 @@ SHOW SYSTEM FUNCTIONS; """, - 'expected_stdout': + 'expected_stdout': """ MON$ATTACHMENTS MON$CALL_STACK MON$CONTEXT_VARIABLES MON$DATABASE @@ -556,10 +556,11 @@ WIN1258, CHARACTER SET WIN1258, PAD SPACE, SYSTEM WIN_CZ, CHARACTER SET WIN1250, PAD SPACE, CASE INSENSITIVE, SYSTEM WIN_CZ_CI_AI, CHARACTER SET WIN1250, PAD SPACE, CASE INSENSITIVE, ACCENT INSENSITIVE, SYSTEM -WIN_PTBR, CHARACTER SET WIN1252, PAD SPACE, CASE INSENSITIVE, ACCENT INSENSITIVE, SYSTEM +WIN_PTBR, CHARACTER SET WIN1252, PAD SPACE, CASE INSENSITIVE, ACCENT INSENSITIVE, SYSTEM """, 'substitutions': [ - ("'COLL-VERSION=58\.0\.6\.[0-9][0-9]', ","") + ("'COLL-VERSION=58\.0\.6\.[0-9][0-9]', ",""), + ("'COLL-VERSION=137\.51', ","") ] } ] This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mak...@us...> - 2016-04-12 07:24:26
|
Revision: 63230 http://sourceforge.net/p/firebird/code/63230 Author: makowski Date: 2016-04-12 07:24:23 +0000 (Tue, 12 Apr 2016) Log Message: ----------- try to fix more false fails under Linux Modified Paths: -------------- qa/fbt-repository/trunk/tests/bugs/core_2484.fbt qa/fbt-repository/trunk/tests/bugs/core_4503.fbt qa/fbt-repository/trunk/tests/bugs/core_4766.fbt qa/fbt-repository/trunk/tests/functional/basic/db/db_03.fbt Modified: qa/fbt-repository/trunk/tests/bugs/core_2484.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_2484.fbt 2016-04-11 14:58:03 UTC (rev 63229) +++ qa/fbt-repository/trunk/tests/bugs/core_2484.fbt 2016-04-12 07:24:23 UTC (rev 63230) @@ -13,7 +13,7 @@ 'test_script': """ import os - + db_conn.close() os.environ["ISC_USER"] = user_name os.environ["ISC_PASSWORD"] = user_password @@ -33,9 +33,13 @@ """ Statement failed, SQLSTATE = 08001 I/O error during "ReadFile" operation for file "C:\MIX\FIREBIRD\QA\FBT-REPO\TMP\TMP_2484_FAKE.FDB" - -Error while trying to read from file + -Error while trying to read from file """, - 'substitutions':[('.*for file.*', '.*for file')] -} + 'substitutions':[ + ('.*for file.*', ''), + ('SQLSTATE = HY000', 'SQLSTATE = 08001'), + ('file.* tmp_2484_fake.fdb is not a valid database', '-Error while trying to read from file') + ] +} ] } Modified: qa/fbt-repository/trunk/tests/bugs/core_4503.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_4503.fbt 2016-04-11 14:58:03 UTC (rev 63229) +++ qa/fbt-repository/trunk/tests/bugs/core_4503.fbt 2016-04-12 07:24:23 UTC (rev 63230) @@ -51,7 +51,9 @@ 4 JOHN 1 MICK 3 #SYSDBA """, - 'substitutions':[('.*0.*TMP.*','') + 'substitutions':[ + ('.*0.*TMP.*',''), + ('.*3.*SYSDBA', '') ] } ] Modified: qa/fbt-repository/trunk/tests/bugs/core_4766.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_4766.fbt 2016-04-11 14:58:03 UTC (rev 63229) +++ qa/fbt-repository/trunk/tests/bugs/core_4766.fbt 2016-04-12 07:24:23 UTC (rev 63230) @@ -73,13 +73,12 @@ add record error -no permission for INSERT access to TABLE PLG Statement failed, SQLSTATE = 28000 - find/delete record error + delete record error -no permission for DELETE access to TABLE PLG """, 'substitutions':[('TABLE PLG\$VIEW_USERS','TABLE PLG'), ('TABLE PLG\$SRP_VIEW', 'TABLE PLG'), - ('TABLE PLG\$USERS', 'TABLE PLG'), - ] + ('find/delete', 'delete') ] } ] } Modified: qa/fbt-repository/trunk/tests/functional/basic/db/db_03.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/basic/db/db_03.fbt 2016-04-11 14:58:03 UTC (rev 63229) +++ qa/fbt-repository/trunk/tests/functional/basic/db/db_03.fbt 2016-04-12 07:24:23 UTC (rev 63230) @@ -427,7 +427,7 @@ set blob all; select * from RDB$COLLATIONS; """, - 'expected_stdout': + 'expected_stdout': """ RDB$COLLATION_NAME NONE RDB$COLLATION_ID 0 @@ -438,7 +438,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME OCTETS RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 1 @@ -448,7 +448,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME ASCII RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 2 @@ -458,7 +458,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME UNICODE_FSS RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 3 @@ -468,7 +468,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME UTF8 RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 4 @@ -478,7 +478,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME UCS_BASIC RDB$COLLATION_ID 1 RDB$CHARACTER_SET_ID 4 @@ -488,7 +488,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME UNICODE RDB$COLLATION_ID 2 RDB$CHARACTER_SET_ID 4 @@ -498,7 +498,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME SJIS_0208 RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 5 @@ -508,7 +508,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME EUCJ_0208 RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 6 @@ -518,7 +518,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DOS437 RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 10 @@ -528,7 +528,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME PDOX_ASCII RDB$COLLATION_ID 1 RDB$CHARACTER_SET_ID 10 @@ -538,7 +538,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME PDOX_INTL RDB$COLLATION_ID 2 RDB$CHARACTER_SET_ID 10 @@ -548,7 +548,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME PDOX_SWEDFIN RDB$COLLATION_ID 3 RDB$CHARACTER_SET_ID 10 @@ -558,7 +558,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DB_DEU437 RDB$COLLATION_ID 4 RDB$CHARACTER_SET_ID 10 @@ -568,7 +568,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DB_ESP437 RDB$COLLATION_ID 5 RDB$CHARACTER_SET_ID 10 @@ -578,7 +578,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DB_FIN437 RDB$COLLATION_ID 6 RDB$CHARACTER_SET_ID 10 @@ -588,7 +588,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DB_FRA437 RDB$COLLATION_ID 7 RDB$CHARACTER_SET_ID 10 @@ -598,7 +598,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DB_ITA437 RDB$COLLATION_ID 8 RDB$CHARACTER_SET_ID 10 @@ -608,7 +608,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DB_NLD437 RDB$COLLATION_ID 9 RDB$CHARACTER_SET_ID 10 @@ -618,7 +618,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DB_SVE437 RDB$COLLATION_ID 10 RDB$CHARACTER_SET_ID 10 @@ -628,7 +628,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DB_UK437 RDB$COLLATION_ID 11 RDB$CHARACTER_SET_ID 10 @@ -638,7 +638,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DB_US437 RDB$COLLATION_ID 12 RDB$CHARACTER_SET_ID 10 @@ -648,7 +648,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DOS850 RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 11 @@ -658,7 +658,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DB_FRC850 RDB$COLLATION_ID 1 RDB$CHARACTER_SET_ID 11 @@ -668,7 +668,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DB_DEU850 RDB$COLLATION_ID 2 RDB$CHARACTER_SET_ID 11 @@ -678,7 +678,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DB_ESP850 RDB$COLLATION_ID 3 RDB$CHARACTER_SET_ID 11 @@ -688,7 +688,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DB_FRA850 RDB$COLLATION_ID 4 RDB$CHARACTER_SET_ID 11 @@ -698,7 +698,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DB_ITA850 RDB$COLLATION_ID 5 RDB$CHARACTER_SET_ID 11 @@ -708,7 +708,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DB_NLD850 RDB$COLLATION_ID 6 RDB$CHARACTER_SET_ID 11 @@ -718,7 +718,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DB_PTB850 RDB$COLLATION_ID 7 RDB$CHARACTER_SET_ID 11 @@ -728,7 +728,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DB_SVE850 RDB$COLLATION_ID 8 RDB$CHARACTER_SET_ID 11 @@ -738,7 +738,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DB_UK850 RDB$COLLATION_ID 9 RDB$CHARACTER_SET_ID 11 @@ -748,7 +748,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DB_US850 RDB$COLLATION_ID 10 RDB$CHARACTER_SET_ID 11 @@ -758,7 +758,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DOS865 RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 12 @@ -768,7 +768,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME PDOX_NORDAN4 RDB$COLLATION_ID 1 RDB$CHARACTER_SET_ID 12 @@ -778,7 +778,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DB_DAN865 RDB$COLLATION_ID 2 RDB$CHARACTER_SET_ID 12 @@ -788,7 +788,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DB_NOR865 RDB$COLLATION_ID 3 RDB$CHARACTER_SET_ID 12 @@ -798,7 +798,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME ISO8859_1 RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 21 @@ -808,7 +808,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DA_DA RDB$COLLATION_ID 1 RDB$CHARACTER_SET_ID 21 @@ -818,7 +818,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DU_NL RDB$COLLATION_ID 2 RDB$CHARACTER_SET_ID 21 @@ -828,7 +828,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME FI_FI RDB$COLLATION_ID 3 RDB$CHARACTER_SET_ID 21 @@ -838,7 +838,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME FR_FR RDB$COLLATION_ID 4 RDB$CHARACTER_SET_ID 21 @@ -848,7 +848,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME FR_CA RDB$COLLATION_ID 5 RDB$CHARACTER_SET_ID 21 @@ -858,7 +858,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DE_DE RDB$COLLATION_ID 6 RDB$CHARACTER_SET_ID 21 @@ -868,7 +868,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME IS_IS RDB$COLLATION_ID 7 RDB$CHARACTER_SET_ID 21 @@ -878,7 +878,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME IT_IT RDB$COLLATION_ID 8 RDB$CHARACTER_SET_ID 21 @@ -888,7 +888,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME NO_NO RDB$COLLATION_ID 9 RDB$CHARACTER_SET_ID 21 @@ -898,7 +898,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME ES_ES RDB$COLLATION_ID 10 RDB$CHARACTER_SET_ID 21 @@ -908,7 +908,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME SV_SV RDB$COLLATION_ID 11 RDB$CHARACTER_SET_ID 21 @@ -918,7 +918,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME EN_UK RDB$COLLATION_ID 12 RDB$CHARACTER_SET_ID 21 @@ -928,7 +928,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME EN_US RDB$COLLATION_ID 14 RDB$CHARACTER_SET_ID 21 @@ -938,7 +938,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME PT_PT RDB$COLLATION_ID 15 RDB$CHARACTER_SET_ID 21 @@ -948,7 +948,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME PT_BR RDB$COLLATION_ID 16 RDB$CHARACTER_SET_ID 21 @@ -958,7 +958,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME ES_ES_CI_AI RDB$COLLATION_ID 17 RDB$CHARACTER_SET_ID 21 @@ -968,7 +968,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME ISO8859_2 RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 22 @@ -978,7 +978,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME CS_CZ RDB$COLLATION_ID 1 RDB$CHARACTER_SET_ID 22 @@ -988,7 +988,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME ISO_HUN RDB$COLLATION_ID 2 RDB$CHARACTER_SET_ID 22 @@ -998,7 +998,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME ISO_PLK RDB$COLLATION_ID 3 RDB$CHARACTER_SET_ID 22 @@ -1008,7 +1008,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME ISO8859_3 RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 23 @@ -1018,7 +1018,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME ISO8859_4 RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 34 @@ -1028,7 +1028,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME ISO8859_5 RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 35 @@ -1038,7 +1038,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME ISO8859_6 RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 36 @@ -1048,7 +1048,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME ISO8859_7 RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 37 @@ -1058,7 +1058,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME ISO8859_8 RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 38 @@ -1068,7 +1068,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME ISO8859_9 RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 39 @@ -1078,7 +1078,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME ISO8859_13 RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 40 @@ -1088,7 +1088,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME LT_LT RDB$COLLATION_ID 1 RDB$CHARACTER_SET_ID 40 @@ -1098,7 +1098,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DOS852 RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 45 @@ -1108,7 +1108,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DB_CSY RDB$COLLATION_ID 1 RDB$CHARACTER_SET_ID 45 @@ -1118,7 +1118,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DB_PLK RDB$COLLATION_ID 2 RDB$CHARACTER_SET_ID 45 @@ -1128,7 +1128,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DB_SLO RDB$COLLATION_ID 4 RDB$CHARACTER_SET_ID 45 @@ -1138,7 +1138,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME PDOX_CSY RDB$COLLATION_ID 5 RDB$CHARACTER_SET_ID 45 @@ -1148,7 +1148,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME PDOX_PLK RDB$COLLATION_ID 6 RDB$CHARACTER_SET_ID 45 @@ -1158,7 +1158,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME PDOX_HUN RDB$COLLATION_ID 7 RDB$CHARACTER_SET_ID 45 @@ -1168,7 +1168,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME PDOX_SLO RDB$COLLATION_ID 8 RDB$CHARACTER_SET_ID 45 @@ -1178,7 +1178,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DOS857 RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 46 @@ -1188,7 +1188,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DB_TRK RDB$COLLATION_ID 1 RDB$CHARACTER_SET_ID 46 @@ -1198,7 +1198,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DOS860 RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 13 @@ -1208,7 +1208,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DB_PTG860 RDB$COLLATION_ID 1 RDB$CHARACTER_SET_ID 13 @@ -1218,7 +1218,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DOS861 RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 47 @@ -1228,7 +1228,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME PDOX_ISL RDB$COLLATION_ID 1 RDB$CHARACTER_SET_ID 47 @@ -1238,7 +1238,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DOS863 RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 14 @@ -1248,7 +1248,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DB_FRC863 RDB$COLLATION_ID 1 RDB$CHARACTER_SET_ID 14 @@ -1258,7 +1258,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME CYRL RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 50 @@ -1268,7 +1268,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DB_RUS RDB$COLLATION_ID 1 RDB$CHARACTER_SET_ID 50 @@ -1278,7 +1278,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME PDOX_CYRL RDB$COLLATION_ID 2 RDB$CHARACTER_SET_ID 50 @@ -1288,7 +1288,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DOS737 RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 9 @@ -1298,7 +1298,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DOS775 RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 15 @@ -1308,7 +1308,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DOS858 RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 16 @@ -1318,7 +1318,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DOS862 RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 17 @@ -1328,7 +1328,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DOS864 RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 18 @@ -1338,7 +1338,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DOS866 RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 48 @@ -1348,7 +1348,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DOS869 RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 49 @@ -1358,7 +1358,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME WIN1250 RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 51 @@ -1368,7 +1368,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME PXW_CSY RDB$COLLATION_ID 1 RDB$CHARACTER_SET_ID 51 @@ -1378,7 +1378,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME PXW_HUNDC RDB$COLLATION_ID 2 RDB$CHARACTER_SET_ID 51 @@ -1388,7 +1388,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME PXW_PLK RDB$COLLATION_ID 3 RDB$CHARACTER_SET_ID 51 @@ -1398,7 +1398,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME PXW_SLOV RDB$COLLATION_ID 4 RDB$CHARACTER_SET_ID 51 @@ -1408,7 +1408,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME PXW_HUN RDB$COLLATION_ID 5 RDB$CHARACTER_SET_ID 51 @@ -1418,7 +1418,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME BS_BA RDB$COLLATION_ID 6 RDB$CHARACTER_SET_ID 51 @@ -1428,7 +1428,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME WIN_CZ RDB$COLLATION_ID 7 RDB$CHARACTER_SET_ID 51 @@ -1438,7 +1438,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME WIN_CZ_CI_AI RDB$COLLATION_ID 8 RDB$CHARACTER_SET_ID 51 @@ -1448,7 +1448,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME WIN1251 RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 52 @@ -1458,7 +1458,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME PXW_CYRL RDB$COLLATION_ID 1 RDB$CHARACTER_SET_ID 52 @@ -1468,7 +1468,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME WIN1251_UA RDB$COLLATION_ID 2 RDB$CHARACTER_SET_ID 52 @@ -1478,7 +1478,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME WIN1252 RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 53 @@ -1488,7 +1488,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME PXW_INTL RDB$COLLATION_ID 1 RDB$CHARACTER_SET_ID 53 @@ -1498,7 +1498,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME PXW_INTL850 RDB$COLLATION_ID 2 RDB$CHARACTER_SET_ID 53 @@ -1508,7 +1508,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME PXW_NORDAN4 RDB$COLLATION_ID 3 RDB$CHARACTER_SET_ID 53 @@ -1518,7 +1518,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME PXW_SPAN RDB$COLLATION_ID 4 RDB$CHARACTER_SET_ID 53 @@ -1528,7 +1528,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME PXW_SWEDFIN RDB$COLLATION_ID 5 RDB$CHARACTER_SET_ID 53 @@ -1538,7 +1538,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME WIN_PTBR RDB$COLLATION_ID 6 RDB$CHARACTER_SET_ID 53 @@ -1548,7 +1548,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME WIN1253 RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 54 @@ -1558,7 +1558,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME PXW_GREEK RDB$COLLATION_ID 1 RDB$CHARACTER_SET_ID 54 @@ -1568,7 +1568,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME WIN1254 RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 55 @@ -1578,7 +1578,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME PXW_TURK RDB$COLLATION_ID 1 RDB$CHARACTER_SET_ID 55 @@ -1588,7 +1588,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME NEXT RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 19 @@ -1598,7 +1598,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME NXT_US RDB$COLLATION_ID 1 RDB$CHARACTER_SET_ID 19 @@ -1608,7 +1608,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME NXT_DEU RDB$COLLATION_ID 2 RDB$CHARACTER_SET_ID 19 @@ -1618,7 +1618,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME NXT_FRA RDB$COLLATION_ID 3 RDB$CHARACTER_SET_ID 19 @@ -1628,7 +1628,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME NXT_ITA RDB$COLLATION_ID 4 RDB$CHARACTER_SET_ID 19 @@ -1638,7 +1638,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME NXT_ESP RDB$COLLATION_ID 5 RDB$CHARACTER_SET_ID 19 @@ -1648,7 +1648,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME WIN1255 RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 58 @@ -1658,7 +1658,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME WIN1256 RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 59 @@ -1668,7 +1668,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME WIN1257 RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 60 @@ -1678,7 +1678,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME WIN1257_EE RDB$COLLATION_ID 1 RDB$CHARACTER_SET_ID 60 @@ -1688,7 +1688,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME WIN1257_LT RDB$COLLATION_ID 2 RDB$CHARACTER_SET_ID 60 @@ -1698,7 +1698,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME WIN1257_LV RDB$COLLATION_ID 3 RDB$CHARACTER_SET_ID 60 @@ -1708,7 +1708,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME KSC_5601 RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 44 @@ -1718,7 +1718,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME KSC_DICTIONARY RDB$COLLATION_ID 1 RDB$CHARACTER_SET_ID 44 @@ -1728,7 +1728,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME BIG_5 RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 56 @@ -1738,7 +1738,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME GB_2312 RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 57 @@ -1748,7 +1748,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME KOI8R RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 63 @@ -1758,7 +1758,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME KOI8R_RU RDB$COLLATION_ID 1 RDB$CHARACTER_SET_ID 63 @@ -1768,7 +1768,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME KOI8U RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 64 @@ -1778,7 +1778,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME KOI8U_UA RDB$COLLATION_ID 1 RDB$CHARACTER_SET_ID 64 @@ -1788,7 +1788,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME WIN1258 RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 65 @@ -1811,7 +1811,7 @@ set blob all; select * from RDB$COLLATIONS; """, - 'expected_stdout': + 'expected_stdout': """ RDB$COLLATION_NAME NONE RDB$COLLATION_ID 0 @@ -1822,7 +1822,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME OCTETS RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 1 @@ -1832,7 +1832,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME ASCII RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 2 @@ -1842,7 +1842,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME UNICODE_FSS RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 3 @@ -1852,7 +1852,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME UTF8 RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 4 @@ -1862,7 +1862,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME UCS_BASIC RDB$COLLATION_ID 1 RDB$CHARACTER_SET_ID 4 @@ -1872,7 +1872,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME UNICODE RDB$COLLATION_ID 2 RDB$CHARACTER_SET_ID 4 @@ -1882,7 +1882,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME UNICODE_CI RDB$COLLATION_ID 3 RDB$CHARACTER_SET_ID 4 @@ -1892,7 +1892,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME UNICODE RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME SJIS_0208 RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 5 @@ -1902,7 +1902,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME EUCJ_0208 RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 6 @@ -1912,7 +1912,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DOS437 RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 10 @@ -1922,7 +1922,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME PDOX_ASCII RDB$COLLATION_ID 1 RDB$CHARACTER_SET_ID 10 @@ -1932,7 +1932,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME PDOX_INTL RDB$COLLATION_ID 2 RDB$CHARACTER_SET_ID 10 @@ -1942,7 +1942,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME PDOX_SWEDFIN RDB$COLLATION_ID 3 RDB$CHARACTER_SET_ID 10 @@ -1952,7 +1952,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DB_DEU437 RDB$COLLATION_ID 4 RDB$CHARACTER_SET_ID 10 @@ -1962,7 +1962,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DB_ESP437 RDB$COLLATION_ID 5 RDB$CHARACTER_SET_ID 10 @@ -1972,7 +1972,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DB_FIN437 RDB$COLLATION_ID 6 RDB$CHARACTER_SET_ID 10 @@ -1982,7 +1982,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DB_FRA437 RDB$COLLATION_ID 7 RDB$CHARACTER_SET_ID 10 @@ -1992,7 +1992,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DB_ITA437 RDB$COLLATION_ID 8 RDB$CHARACTER_SET_ID 10 @@ -2002,7 +2002,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DB_NLD437 RDB$COLLATION_ID 9 RDB$CHARACTER_SET_ID 10 @@ -2012,7 +2012,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DB_SVE437 RDB$COLLATION_ID 10 RDB$CHARACTER_SET_ID 10 @@ -2022,7 +2022,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DB_UK437 RDB$COLLATION_ID 11 RDB$CHARACTER_SET_ID 10 @@ -2032,7 +2032,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DB_US437 RDB$COLLATION_ID 12 RDB$CHARACTER_SET_ID 10 @@ -2042,7 +2042,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DOS850 RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 11 @@ -2052,7 +2052,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DB_FRC850 RDB$COLLATION_ID 1 RDB$CHARACTER_SET_ID 11 @@ -2062,7 +2062,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DB_DEU850 RDB$COLLATION_ID 2 RDB$CHARACTER_SET_ID 11 @@ -2072,7 +2072,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DB_ESP850 RDB$COLLATION_ID 3 RDB$CHARACTER_SET_ID 11 @@ -2082,7 +2082,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DB_FRA850 RDB$COLLATION_ID 4 RDB$CHARACTER_SET_ID 11 @@ -2092,7 +2092,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DB_ITA850 RDB$COLLATION_ID 5 RDB$CHARACTER_SET_ID 11 @@ -2102,7 +2102,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DB_NLD850 RDB$COLLATION_ID 6 RDB$CHARACTER_SET_ID 11 @@ -2112,7 +2112,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DB_PTB850 RDB$COLLATION_ID 7 RDB$CHARACTER_SET_ID 11 @@ -2122,7 +2122,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DB_SVE850 RDB$COLLATION_ID 8 RDB$CHARACTER_SET_ID 11 @@ -2132,7 +2132,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DB_UK850 RDB$COLLATION_ID 9 RDB$CHARACTER_SET_ID 11 @@ -2142,7 +2142,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DB_US850 RDB$COLLATION_ID 10 RDB$CHARACTER_SET_ID 11 @@ -2152,7 +2152,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DOS865 RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 12 @@ -2162,7 +2162,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME PDOX_NORDAN4 RDB$COLLATION_ID 1 RDB$CHARACTER_SET_ID 12 @@ -2172,7 +2172,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DB_DAN865 RDB$COLLATION_ID 2 RDB$CHARACTER_SET_ID 12 @@ -2182,7 +2182,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DB_NOR865 RDB$COLLATION_ID 3 RDB$CHARACTER_SET_ID 12 @@ -2192,7 +2192,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME ISO8859_1 RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 21 @@ -2202,7 +2202,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DA_DA RDB$COLLATION_ID 1 RDB$CHARACTER_SET_ID 21 @@ -2212,7 +2212,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DU_NL RDB$COLLATION_ID 2 RDB$CHARACTER_SET_ID 21 @@ -2222,7 +2222,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME FI_FI RDB$COLLATION_ID 3 RDB$CHARACTER_SET_ID 21 @@ -2232,7 +2232,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME FR_FR RDB$COLLATION_ID 4 RDB$CHARACTER_SET_ID 21 @@ -2242,7 +2242,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME FR_CA RDB$COLLATION_ID 5 RDB$CHARACTER_SET_ID 21 @@ -2252,7 +2252,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME DE_DE RDB$COLLATION_ID 6 RDB$CHARACTER_SET_ID 21 @@ -2262,7 +2262,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME IS_IS RDB$COLLATION_ID 7 RDB$CHARACTER_SET_ID 21 @@ -2272,7 +2272,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME IT_IT RDB$COLLATION_ID 8 RDB$CHARACTER_SET_ID 21 @@ -2282,7 +2282,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME NO_NO RDB$COLLATION_ID 9 RDB$CHARACTER_SET_ID 21 @@ -2292,7 +2292,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME ES_ES RDB$COLLATION_ID 10 RDB$CHARACTER_SET_ID 21 @@ -2303,7 +2303,7 @@ RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES 1d:30 DISABLE-COMPRESSIONS=1;SPECIALS-FIRST=1 - + RDB$COLLATION_NAME SV_SV RDB$COLLATION_ID 11 RDB$CHARACTER_SET_ID 21 @@ -2313,7 +2313,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME EN_UK RDB$COLLATION_ID 12 RDB$CHARACTER_SET_ID 21 @@ -2323,7 +2323,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME EN_US RDB$COLLATION_ID 14 RDB$CHARACTER_SET_ID 21 @@ -2333,7 +2333,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME PT_PT RDB$COLLATION_ID 15 RDB$CHARACTER_SET_ID 21 @@ -2343,7 +2343,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME PT_BR RDB$COLLATION_ID 16 RDB$CHARACTER_SET_ID 21 @@ -2353,7 +2353,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME ES_ES_CI_AI RDB$COLLATION_ID 17 RDB$CHARACTER_SET_ID 21 @@ -2364,7 +2364,7 @@ RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES 1d:37 DISABLE-COMPRESSIONS=1;SPECIALS-FIRST=1 - + RDB$COLLATION_NAME FR_FR_CI_AI RDB$COLLATION_ID 18 RDB$CHARACTER_SET_ID 21 @@ -2375,7 +2375,7 @@ RDB$BASE_COLLATION_NAME FR_FR RDB$SPECIFIC_ATTRIBUTES 1d:39 SPECIALS-FIRST=1 - + RDB$COLLATION_NAME ISO8859_2 RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 22 @@ -2385,7 +2385,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME CS_CZ RDB$COLLATION_ID 1 RDB$CHARACTER_SET_ID 22 @@ -2395,7 +2395,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME ISO_HUN RDB$COLLATION_ID 2 RDB$CHARACTER_SET_ID 22 @@ -2405,7 +2405,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME ISO_PLK RDB$COLLATION_ID 3 RDB$CHARACTER_SET_ID 22 @@ -2415,7 +2415,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME ISO8859_3 RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 23 @@ -2425,7 +2425,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME ISO8859_4 RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 34 @@ -2435,7 +2435,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME ISO8859_5 RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 35 @@ -2445,7 +2445,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME ISO8859_6 RDB$COLLATION_ID 0 RDB$CHARACTER_SET_ID 36 @@ -2455,7 +2455,7 @@ RDB$FUNCTION_NAME <null> RDB$BASE_COLLATION_NAME <null> RDB$SPECIFIC_ATTRIBUTES <null> - + RDB$COLLATION_NAME ISO8859_7 RDB$COLLATION_ID ... [truncated message content] |
From: <mak...@us...> - 2016-04-14 15:17:35
|
Revision: 63243 http://sourceforge.net/p/firebird/code/63243 Author: makowski Date: 2016-04-14 15:17:33 +0000 (Thu, 14 Apr 2016) Log Message: ----------- try to fix more false fails under Linux Modified Paths: -------------- qa/fbt-repository/trunk/tests/bugs/core_0899.fbt qa/fbt-repository/trunk/tests/bugs/core_0924.fbt qa/fbt-repository/trunk/tests/bugs/core_1451.fbt qa/fbt-repository/trunk/tests/bugs/core_2101.fbt qa/fbt-repository/trunk/tests/bugs/core_2140.fbt qa/fbt-repository/trunk/tests/bugs/core_4380.fbt qa/fbt-repository/trunk/tests/bugs/core_4555.fbt qa/fbt-repository/trunk/tests/functional/tabloid/no-dups-in-call-stack.fbt Modified: qa/fbt-repository/trunk/tests/bugs/core_0899.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_0899.fbt 2016-04-14 12:37:40 UTC (rev 63242) +++ qa/fbt-repository/trunk/tests/bugs/core_0899.fbt 2016-04-14 15:17:33 UTC (rev 63243) @@ -117,7 +117,10 @@ Statement failed, SQLSTATE = 42000 no current record for fetch operation -At procedure 'SP_FETCHED' line: 13, col: 3 -""" +""", + 'substitutions': [('line:\s[0-9]+,','line: x'), + ('col:\s[0-9]+','col: y') + ] }, { 'firebird_version': '2.1', @@ -231,7 +234,10 @@ Statement failed, SQLCODE = -508 no current record for fetch operation -At procedure 'SP_FETCHED' line: 13, col: 3 -""" +""", + 'substitutions': [('line:\s[0-9]+,','line: x'), + ('col:\s[0-9]+','col: y') + ] } ] } Modified: qa/fbt-repository/trunk/tests/bugs/core_0924.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_0924.fbt 2016-04-14 12:37:40 UTC (rev 63242) +++ qa/fbt-repository/trunk/tests/bugs/core_0924.fbt 2016-04-14 15:17:33 UTC (rev 63243) @@ -34,7 +34,10 @@ -Column unknown -DB_KEY -At line 1, column 8 -""" +""", + 'substitutions': [('line\s[0-9]+,','line x'), + ('column\s[0-9]+','column y') + ] }, { 'firebird_version': '2.0', @@ -63,7 +66,10 @@ Dynamic SQL Error -SQL error code = -607 -Cannot SELECT RDB$DB_KEY from a stored procedure. -""" +""", + 'substitutions': [('line\s[0-9]+,','line x'), + ('column\s[0-9]+','column y') + ] } ] } Modified: qa/fbt-repository/trunk/tests/bugs/core_1451.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_1451.fbt 2016-04-14 12:37:40 UTC (rev 63242) +++ qa/fbt-repository/trunk/tests/bugs/core_1451.fbt 2016-04-14 15:17:33 UTC (rev 63243) @@ -29,7 +29,10 @@ -Column unknown -DB_KEY -At line 2, column 7 -""" +""", + 'substitutions': [('line\s[0-9]+,','line x'), + ('column\s[0-9]+','column y') + ] }, { 'firebird_version': '2.0.5', Modified: qa/fbt-repository/trunk/tests/bugs/core_2101.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_2101.fbt 2016-04-14 12:37:40 UTC (rev 63242) +++ qa/fbt-repository/trunk/tests/bugs/core_2101.fbt 2016-04-14 15:17:33 UTC (rev 63243) @@ -70,7 +70,10 @@ 'expected_stderr': """Statement failed, SQLSTATE = HY109 attempt to fetch past the last record in a record stream -At procedure 'P1' line: 9, col: 8 -""" +""", + 'substitutions':[ ('line:\s[0-9]+,','line: x'), + ('col:\s[0-9]+','col: y') + ] } ] } Modified: qa/fbt-repository/trunk/tests/bugs/core_2140.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_2140.fbt 2016-04-14 12:37:40 UTC (rev 63242) +++ qa/fbt-repository/trunk/tests/bugs/core_2140.fbt 2016-04-14 15:17:33 UTC (rev 63243) @@ -39,7 +39,9 @@ -At line 1, column 67 -""" +""", + 'substitutions':[('column.*','column x') + ] } ] } Modified: qa/fbt-repository/trunk/tests/bugs/core_4380.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_4380.fbt 2016-04-14 12:37:40 UTC (rev 63242) +++ qa/fbt-repository/trunk/tests/bugs/core_4380.fbt 2016-04-14 15:17:33 UTC (rev 63243) @@ -11,20 +11,20 @@ 'platform': 'All', 'page_size': '4096', 'test_type': 'ISQL', - 'test_script': + 'test_script': """ -- NB: i'm not sure that this test properly reflects the trouble described in the ticket. -- At least on 3.0 Alpha 1, Alpha 2 and Beta 2 (31807) output is identical. -- Note that value in "BLR to Source mapping" under 'Column' was changed to reflect -- real offset from the beginning of line in THIS .fbt file (right shifted on 4 character). set term ^; - create procedure sp_test_master(a_id int) returns(o_txt varchar(20)) as - begin + create procedure sp_test_master(a_id int) returns(o_txt varchar(20)) as + begin end ^ set term ;^ commit; - + set blob all; set list on; select rdb$debug_info from rdb$procedures; @@ -32,23 +32,25 @@ 'expected_stdout': """ RDB$DEBUG_INFO 1a:f0 - Parameters: - Number Name Type - -------------------------------------------------- - 0 A_ID INPUT - 0 O_TXT OUTPUT - - Variables: - Number Name - ------------------------------------------- - 0 O_TXT - - BLR to Source mapping: - BLR offset Line Column - -------------------------------- - 42 2 5 + Parameters: + Number Name Type + -------------------------------------------------- + 0 A_ID INPUT + 0 O_TXT OUTPUT + + Variables: + Number Name + ------------------------------------------- + 0 O_TXT + + BLR to Source mapping: + BLR offset Line Column + -------------------------------- + 42 2 5 """, - 'substitutions':[ ('RDB\$DEBUG_INFO.*', '') ] + 'substitutions':[ ('RDB\$DEBUG_INFO.*', ''), + ('\s.*42\s.*1\s.*70','42 2 5') + ] } ] } Modified: qa/fbt-repository/trunk/tests/bugs/core_4555.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_4555.fbt 2016-04-14 12:37:40 UTC (rev 63242) +++ qa/fbt-repository/trunk/tests/bugs/core_4555.fbt 2016-04-14 15:17:33 UTC (rev 63243) @@ -50,10 +50,10 @@ show exception; Exception Name Used by, Type =============================== ============================================= - E1 + E1 Msg: e1 - - E2 + + E2 Msg: e2 """, 'expected_stderr': @@ -66,7 +66,10 @@ -e1 -At trigger 'T_DDL' line: 6, col: 9 """, - 'substitutions': [('=.*','')] + 'substitutions': [('=.*',''), + ('line:\s[0-9]+,','line: x'), + ('col:\s[0-9]+','col: y') + ] } ] } Modified: qa/fbt-repository/trunk/tests/functional/tabloid/no-dups-in-call-stack.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/tabloid/no-dups-in-call-stack.fbt 2016-04-14 12:37:40 UTC (rev 63242) +++ qa/fbt-repository/trunk/tests/functional/tabloid/no-dups-in-call-stack.fbt 2016-04-14 15:17:33 UTC (rev 63243) @@ -8,10 +8,10 @@ 'versions': [ { 'firebird_version': '2.5', - 'platform': 'All', + 'platform': 'Windows', 'page_size': '4096', 'test_type': 'ISQL', - 'init_script': + 'init_script': """ -- sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1109867&msg=16438071 -- run: fbt_run -b <path to isql> functional.tabloid.no-dups-in-call-stack -o localhost/<port> @@ -33,7 +33,7 @@ ,source_column int ); commit; - + set term ^; create or alter procedure dbg_get_stack(a_whoami varchar(31)) as @@ -59,9 +59,9 @@ c.mon$source_column from mon$call_stack c where c.mon$caller_id is null - + UNION ALL - + select r.call_level+1, c.mon$statement_id, c.mon$call_id, @@ -70,7 +70,7 @@ c.mon$source_line, c.mon$source_column from mon$call_stack c - join r + join r on c.mon$caller_id = r.mon$call_id ) select @@ -105,12 +105,12 @@ ); end end - + end ^ set term ;^ commit; - + --------------------------------- set term ^; create or alter procedure p_04 as @@ -151,7 +151,7 @@ set term ;^ commit; """, - 'test_script': + 'test_script': """ delete from dbg_stack; commit; @@ -162,16 +162,183 @@ select s.whoami, s.call_level, s.object_name, s.object_type, s.source_line from dbg_stack s; """, - 'expected_stdout': + 'expected_stdout': """ -WHOAMI CALL_LEVEL OBJECT_NAME OBJECT_TYPE SOURCE_LINE -====== ============ =============== =========== ============ -p_04 1 P_01 5 6 -p_04 2 P_02 5 6 -p_04 3 P_03 5 7 -p_04 4 P_04 5 8 -p_04 5 DBG_GET_STACK 5 13 +WHOAMI CALL_LEVEL OBJECT_NAME OBJECT_TYPE SOURCE_LINE +====== ============ =============== =========== ============ +p_04 1 P_01 5 6 +p_04 2 P_02 5 6 +p_04 3 P_03 5 7 +p_04 4 P_04 5 8 +p_04 5 DBG_GET_STACK 5 13 """ +}, +{ + 'firebird_version': '3.0', + 'platform': 'Linux', + 'page_size': '4096', + 'test_type': 'ISQL', + 'init_script': + """ + -- sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1109867&msg=16438071 + -- run: fbt_run -b <path to isql> functional.tabloid.no-dups-in-call-stack -o localhost/<port> + set term ^; + create or alter procedure dbg_get_stack as begin end^ + create or alter procedure p_01 as begin end^ + create or alter procedure p_02 as begin end^ + create or alter procedure p_03 as begin end^ + create or alter procedure p_04 as begin end^ + set term ;^ + recreate table dbg_stack( + whoami varchar(31) + ,call_level int + ,statement_id int + ,call_id int + ,object_name char(31) + ,object_type smallint + ,source_line int + ,source_column int + ); + commit; + + set term ^; + create or alter procedure dbg_get_stack(a_whoami varchar(31)) + as + declare v_call_level smallint; + declare v_mon$statement_id type of column mon$call_stack.mon$statement_id; + declare v_mon$call_id type of column mon$call_stack.mon$call_id; + declare v_mon$object_name type of column mon$call_stack.mon$object_name; + declare v_mon$object_type type of column mon$call_stack.mon$object_type; + declare v_mon$source_line type of column mon$call_stack.mon$source_line; + declare v_mon$source_column type of column mon$call_stack.mon$source_column; + begin + in autonomous transaction do + begin + for + with recursive + r as ( + select 1 call_level, + c.mon$statement_id, + c.mon$call_id, + c.mon$object_name, + c.mon$object_type, + c.mon$source_line, + c.mon$source_column + from mon$call_stack c + where c.mon$caller_id is null + + UNION ALL + + select r.call_level+1, + c.mon$statement_id, + c.mon$call_id, + c.mon$object_name, + c.mon$object_type, + c.mon$source_line, + c.mon$source_column + from mon$call_stack c + join r + on c.mon$caller_id = r.mon$call_id + ) + select + r.call_level + ,r.mon$statement_id + ,r.mon$call_id + ,r.mon$object_name + ,r.mon$object_type + ,r.mon$source_line + ,r.mon$source_column + from r + --as cursor cr do + into + v_call_level + ,v_mon$statement_id + ,v_mon$call_id + ,v_mon$object_name + ,v_mon$object_type + ,v_mon$source_line + ,v_mon$source_column + do begin + insert into dbg_stack + values( + :a_whoami + ,:v_call_level + ,:v_mon$statement_id + ,:v_mon$call_id + ,:v_mon$object_name + ,:v_mon$object_type + ,:v_mon$source_line + ,:v_mon$source_column + ); + end + end + + end + ^ + set term ;^ + commit; + + --------------------------------- + set term ^; + create or alter procedure p_04 as + declare n int; + begin + -- dummy row 1 + -- dummy row 2 + -- dummy row 3 + -- dummy row 4 + execute procedure dbg_get_stack( 'p_04' ); + end + ^ + create or alter procedure p_03 as + declare n int; + begin + -- dummy row 1 + -- dummy row 2 + -- dummy row 3 + execute procedure p_04; + end + ^ + create or alter procedure p_02 as + declare n int; + begin + -- dummy row 1 + -- dummy row 2 + execute procedure p_03; + end + ^ + create or alter procedure p_01 as + declare n int; + begin + -- dummy row 1 + delete from dbg_stack; + execute procedure p_02; + end + ^ + set term ;^ + commit; + """, + 'test_script': + """ + delete from dbg_stack; + commit; + execute procedure p_01; + commit; + set width whoami 6; + set width object_name 15; + select s.whoami, s.call_level, s.object_name, s.object_type, s.source_line + from dbg_stack s; + """, + 'expected_stdout': + """ +WHOAMI CALL_LEVEL OBJECT_NAME OBJECT_TYPE SOURCE_LINE +====== ============ =============== =========== ============ +p_04 1 P_01 5 5 +p_04 2 P_02 5 3 +p_04 3 P_03 5 3 +p_04 4 P_04 5 3 +p_04 5 DBG_GET_STACK 5 13 + """ } ] } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ta...@us...> - 2016-06-23 05:19:12
|
Revision: 63423 http://sourceforge.net/p/firebird/code/63423 Author: tabloid Date: 2016-06-23 05:19:09 +0000 (Thu, 23 Jun 2016) Log Message: ----------- See added / modified .fbt file(s) Modified Paths: -------------- qa/fbt-repository/trunk/tests/bugs/core_2026.fbt Added Paths: ----------- qa/fbt-repository/trunk/tests/functional/syspriv/monitor_any_attachment.fbt Modified: qa/fbt-repository/trunk/tests/bugs/core_2026.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_2026.fbt 2016-06-21 06:31:33 UTC (rev 63422) +++ qa/fbt-repository/trunk/tests/bugs/core_2026.fbt 2016-06-23 05:19:09 UTC (rev 63423) @@ -15,6 +15,11 @@ { 'firebird_version': '2.5', 'platform': 'All', + 'init_script': + """ + recreate table test(x integer default 0); + commit; + """, 'database_character_set': 'ISO8859_1', 'test_type': 'Python', 'test_script': @@ -26,8 +31,6 @@ db_conn.close() -runProgram('isql',[dsn],'recreate table test (test integer default 0);') - script=''' set list on; set blob all; @@ -37,14 +40,19 @@ from rdb$relation_fields where rdb$default_source is not null; ''' +runProgram('isql',[dsn],script) runProgram('gfix',['-mode','read_only',dsn]) runProgram('isql',['-ch','iso8859_1',dsn],script) """, 'expected_stdout': """ + MON$READ_ONLY 0 + RDB$FIELD_NAME X + default 0 + Records affected: 1 MON$READ_ONLY 1 - RDB$FIELD_NAME TEST + RDB$FIELD_NAME X default 0 Records affected: 1 """, Added: qa/fbt-repository/trunk/tests/functional/syspriv/monitor_any_attachment.fbt =================================================================== --- qa/fbt-repository/trunk/tests/functional/syspriv/monitor_any_attachment.fbt (rev 0) +++ qa/fbt-repository/trunk/tests/functional/syspriv/monitor_any_attachment.fbt 2016-06-23 05:19:09 UTC (rev 63423) @@ -0,0 +1,113 @@ +{ +'id': 'functional.syspriv.monitor_any_attachment', +'tracker_id': '', +'title': 'Check ability to monitor any attachment.', +'description': + """ + """, +'min_versions': '4.0.0', +'versions': [ +{ + 'firebird_version': '4.0', + 'platform': 'All', + 'test_type': 'ISQL', + 'test_script': + """ + set wng off; + set bail on; + set list on; + set count on; + + create or alter view v_check as + select + current_user as who_ami + ,r.rdb$role_name + ,rdb$role_in_use(r.rdb$role_name) as rdb$role_in_use + ,r.rdb$system_privileges + from mon$database m cross join rdb$roles r; + commit; + + create or alter user u01 password '123' revoke admin role; + revoke all on all from u01; + commit; + + grant select on v_check to public; + commit; + + set term ^; + execute block as + begin + execute statement 'drop role role_for_monitor_any_attach'; + when any do begin end + end + ^ + set term ;^ + commit; + + -- Monitor (via MON$ tables) attachments from other users: + create role role_for_monitor_any_attach + set system privileges to MONITOR_ANY_ATTACHMENT; + commit; + grant default role_for_monitor_any_attach to user u01; + commit; + + connect '$(DSN)' user u01 password '123'; + commit; + select * from v_check; + commit; + + set term ^; + execute block returns( + who_am_i rdb$user, + who_else_here rdb$user, + what_he_is_doing varchar(50) + ) as + declare another_user varchar(31); + begin + execute statement 'select current_user from rdb$database' + on external 'localhost:' || rdb$get_context('SYSTEM','DB_NAME') + as user 'SYSDBA' password 'masterkey' + into another_user; + + for + select + current_user, + a.mon$user, + s.mon$sql_text + from mon$attachments a join mon$statements s using(mon$attachment_id) + where a.mon$user<>current_user and a.mon$system_flag is distinct from 1 + into who_am_i, who_else_here, what_he_is_doing + do + suspend; + end + ^ + set term ;^ + commit; + + connect '$(DSN)' user sysdba password 'masterkey'; + drop user u01; + drop role role_for_monitor_any_attach; + commit; + """, + 'expected_stdout': + """ + WHO_AMI U01 + RDB$ROLE_NAME RDB$ADMIN + RDB$ROLE_IN_USE <false> + RDB$SYSTEM_PRIVILEGES FFFFFFFFFFFFFFFF + WHO_AMI U01 + RDB$ROLE_NAME ROLE_FOR_MONITOR_ANY_ATTACH + RDB$ROLE_IN_USE <true> + RDB$SYSTEM_PRIVILEGES 8000000000000000 + Records affected: 2 + WHO_AM_I U01 + WHO_ELSE_HERE SYSDBA + WHAT_HE_IS_DOING select current_user from rdb$database + Records affected: 1 + """, + 'expected_stderr': + """ + """ +} +] +} Property changes on: qa/fbt-repository/trunk/tests/functional/syspriv/monitor_any_attachment.fbt ___________________________________________________________________ Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ta...@us...> - 2017-03-04 17:26:36
|
Revision: 63689 http://sourceforge.net/p/firebird/code/63689 Author: tabloid Date: 2017-03-04 17:26:34 +0000 (Sat, 04 Mar 2017) Log Message: ----------- See added / modified .fbt file(s) Modified Paths: -------------- qa/fbt-repository/trunk/tests/functional/tabloid/batches/run-all.bat.txt Added Paths: ----------- qa/fbt-repository/trunk/tests/bugs/core_5480.fbt Added: qa/fbt-repository/trunk/tests/bugs/core_5480.fbt =================================================================== --- qa/fbt-repository/trunk/tests/bugs/core_5480.fbt (rev 0) +++ qa/fbt-repository/trunk/tests/bugs/core_5480.fbt 2017-03-04 17:26:34 UTC (rev 63689) @@ -0,0 +1,65 @@ +{ +'id': 'bugs.core_5480', +'qmid': None, +'tracker_id': 'CORE-5480', +'title': 'SUBSTRING startposition smaller than 1 should be allowed', +'description': + """ + Test is based on ticket samples, plus similar checks for non-ascii strings. + Checked on WI-T4.0.0.546 with UTF8 charset. Works fine. + """, +'min_versions': '4.0', +'versions': [ +{ + 'firebird_version': '4.0', + 'platform': 'All', + 'connection_character_set': 'UTF8', + 'test_type': 'ISQL', + 'init_script': + """ + """, + 'test_script': + """ + set list on; + + -- ASCII string tests: + select '|' || substring('abcdef' from 0) || '|' a01 from rdb$database; -- Expected result: 'abcdef' + select '|' || substring('abcdef' from 0 for 2) || '|' a02 from rdb$database; --Expected result: 'a' (and NOT 'ab') + select '|' || substring('abcdef' from -5 for 2) || '|' a03 from rdb$database; --Expected result: '' + select '|' || substring('abcdef' from -1 for 3) || '|' a04 from rdb$database; --Expected result: 'a' + select '|' || substring('abcdef' from -2 for 5) || '|' a05 from rdb$database; --Expected result: 'ab' + select '|' || substring('abcdef' from -2147483645 for 2147483647) || '|' a06 from rdb$database; -- added case with big values for arguments + + -- multi-byte string tests: + -- Euro sign (requires three bytes for encoding) concatenated + -- with letters from Danish, German & Iceland alphabets: + select '|' || substring('€åßðéæø' from 0) || '|' n01 from rdb$database; + select '|' || substring('€åßðéæø' from 0 for 2) || '|' n02 from rdb$database; + select '|' || substring('€åßðéæø' from -5 for 2) || '|' n03 from rdb$database; + select '|' || substring('€åßðéæø' from -1 for 3) || '|' n04 from rdb$database; + select '|' || substring('€åßðéæø' from -2 for 5) || '|' n05 from rdb$database; + select '|' || substring('€åßðéæø' from -2147483645 for 2147483647) || '|' n06 from rdb$database; + + """, + 'expected_stdout': + """ + A01 |abcdef| + A02 |a| + A03 || + A04 |a| + A05 |ab| + A06 |a| + + N01 |€åßðéæø| + N02 |€| + N03 || + N04 |€| + N05 |€å| + N06 |€| + """, + 'expected_stderr': + """ + """ +} +] +} Property changes on: qa/fbt-repository/trunk/tests/bugs/core_5480.fbt ___________________________________________________________________ Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Modified: qa/fbt-repository/trunk/tests/functional/tabloid/batches/run-all.bat.txt =================================================================== --- qa/fbt-repository/trunk/tests/functional/tabloid/batches/run-all.bat.txt 2017-02-17 11:21:58 UTC (rev 63688) +++ qa/fbt-repository/trunk/tests/functional/tabloid/batches/run-all.bat.txt 2017-03-04 17:26:34 UTC (rev 63689) @@ -18,6 +18,7 @@ set pyp=C:\Python27 md !logdir! 2>nul +::taskkill /fi "SERVICES eq FirebirdServerfb40_tmp" /f /im * if exist !joblog! ( del !joblog! @@ -208,9 +209,17 @@ set msg=Restore original file !fp!\firebird.conf call :sho "!msg!" !joblog! - copy !fp!\firebird.conf.previous !fp!\firebird.conf 2>&1 1>>!joblog! - dir !fp!\firebird.conf | findstr /i /c:firebird 2>&1 1>>!joblog! + ( + copy !fp!\firebird.conf.previous !fp!\firebird.conf + dir !fp!\firebird.conf | findstr /i /c:firebird + echo Check content of ORIGINAL !fp!\firebird.conf that was in use before this QA run: + echo -------------------------------------- + findstr /r /c:"^^[^^#;]" !fp!\firebird.conf + echo -------------------------------------- + ) 2>&1 1>>!joblog! + + @rem Original firebird.conf restored, no we can clear flag: set job_failed_flag=0 @@ -487,12 +496,13 @@ setlocal set fbs=%1 set joblog=%2 - + set tk_used=0 +:loop4stop set cmd_run=sc query FirebirdServer!fbs! call :sho "!cmd_run!" !joblog! cmd /c !cmd_run! | findstr /i /c:"STOPPED" 1>nul 2>&1 if errorlevel 1 ( - set msg=Attempt to stop service FirebirdServer!fbs! + set msg=Attempt to stop service FirebirdServer!fbs!, flag of TASKKILL usage: !tk_used! call :sho "!msg!" !joblog! set cmd_run=sc stop FirebirdServer!fbs! @@ -502,6 +512,9 @@ set msg=Wait a few seconds. . . call :sho "!msg!" !joblog! + @rem It's enough to wait no more than 10 seconds. + @rem Otherwise service should be forcely teminated using windows TASKKILL utility. + ping -n 11 127.0.0.1 1>nul set msg=Check that service was really stopped. @@ -512,6 +525,30 @@ cmd /c !cmd_run! | findstr /i /c:state /c:service_name 1>>!joblog! 2>&1 cmd /c !cmd_run! | findstr /i /c:"STOPPED" 1>nul 2>&1 if errorlevel 1 ( + @rem NB: taskkill should be called with /f switch in order to kill service. + @rem E:\FB40.TMPINSTANCE>taskkill /fi "SERVICES eq FirebirdServerfb40_tmp" /f /im * + @rem Expected STDOUT should be: + @rem SUCCESS: The process with PID 5992 has been terminated. + + if .!tk_used!.==.0. ( + + set msg=FAIL: service !fbs! is not in 'STOPPED' state. Try to terminate it using TASKKILL. + call :sho "!msg!" !joblog! + + taskkill /fi "SERVICES eq FirebirdServer!fbs!" /f /im * 1>>!joblog! 2>&1 + set tk_used=1 + findstr /i /r /c:"SUCCESS: The process with PID .* terminated" !joblog! 1>nul 2>&1 + if not errorlevel 1 ( + set msg=Service !fbs! executable was successfully terminated by TASKKILL. Loop to STOP service by SC command. + call :sho "!msg!" !joblog! + goto loop4stop + ) else ( + set msg=FAIL: service !fbs! executable can not be terminated using TASKKILL. Job terminated. + call :sho "!msg!" !joblog! + goto final + ) + ) + set msg=FAIL: service !fbs! is not in 'STOPPED' state. Job terminated. call :sho "!msg!" !joblog! goto final This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |