Skip to content

Commit dfaa7d5

Browse files
committed
Add field to RDB$VIEW_RELATIONS index
1 parent cd385b0 commit dfaa7d5

3 files changed

Lines changed: 18 additions & 18 deletions

File tree

src/jrd/SystemTriggers.epp

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1298,21 +1298,21 @@ void beforeInsertUserPrivilege(thread_db* tdbb, Record* record)
12981298
AutoCacheRequest request2(tdbb, request2CacheId);
12991299

13001300
FOR (REQUEST_HANDLE request2 TRANSACTION_HANDLE transaction)
1301-
RFL2 IN RDB$RELATION_FIELDS
1302-
CROSS VRL2 IN RDB$VIEW_RELATIONS
1303-
CROSS REL2 IN RDB$RELATIONS
1304-
WITH RFL2.RDB$SCHEMA_NAME = schemaName.c_str() AND
1305-
RFL2.RDB$PACKAGE_NAME MISSING AND
1306-
RFL2.RDB$RELATION_NAME = relationName.c_str() AND
1307-
RFL2.RDB$FIELD_NAME = fieldName.c_str() AND
1308-
RFL2.RDB$BASE_FIELD NOT MISSING AND
1309-
VRL2.RDB$SCHEMA_NAME = RFL2.RDB$SCHEMA_NAME AND
1310-
VRL2.RDB$PACKAGE_NAME MISSING AND
1311-
VRL2.RDB$VIEW_NAME = RFL2.RDB$RELATION_NAME AND
1312-
VRL2.RDB$VIEW_CONTEXT = RFL2.RDB$VIEW_CONTEXT AND
1313-
REL2.RDB$SCHEMA_NAME = VRL2.RDB$RELATION_SCHEMA_NAME AND
1314-
REL2.RDB$PACKAGE_NAME MISSING AND
1315-
REL2.RDB$RELATION_NAME = VRL2.RDB$RELATION_NAME
1301+
RFL2 IN RDB$RELATION_FIELDS
1302+
CROSS VRL2 IN RDB$VIEW_RELATIONS
1303+
CROSS REL2 IN RDB$RELATIONS
1304+
WITH RFL2.RDB$SCHEMA_NAME = schemaName.c_str() AND
1305+
RFL2.RDB$PACKAGE_NAME MISSING AND
1306+
RFL2.RDB$RELATION_NAME = relationName.c_str() AND
1307+
RFL2.RDB$FIELD_NAME = fieldName.c_str() AND
1308+
RFL2.RDB$BASE_FIELD NOT MISSING AND
1309+
VRL2.RDB$SCHEMA_NAME = RFL2.RDB$SCHEMA_NAME AND
1310+
VRL2.RDB$PACKAGE_NAME MISSING AND
1311+
VRL2.RDB$VIEW_NAME = RFL2.RDB$RELATION_NAME AND
1312+
VRL2.RDB$VIEW_CONTEXT = RFL2.RDB$VIEW_CONTEXT AND
1313+
REL2.RDB$SCHEMA_NAME = VRL2.RDB$RELATION_SCHEMA_NAME AND
1314+
REL2.RDB$PACKAGE_NAME MISSING AND
1315+
REL2.RDB$RELATION_NAME = VRL2.RDB$RELATION_NAME
13161316
{
13171317
const MetaName relation2Owner(REL2.RDB$OWNER_NAME);
13181318

src/jrd/dfw.epp

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2147,8 +2147,7 @@ static bool store_view_context_type(thread_db* tdbb, SSHORT phase, DeferredWork*
21472147
{
21482148
case 1:
21492149
{
2150-
// If RDB$PACKAGE_NAME IS NOT NULL or no record is found in RDB$RELATIONS,
2151-
// the context is a procedure;
2150+
// If no record is found in RDB$RELATIONS, the context is a procedure;
21522151
ViewContextType vct = VCT_PROCEDURE;
21532152

21542153
AutoRequest handle1;

src/jrd/idx.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -459,7 +459,8 @@ static inline constexpr struct ini_idx_t indices[] =
459459
// define index RDB$INDEX_84 for RDB$VIEW_RELATIONS RDB$RELATION_SCHEMA_NAME, RDB$RELATION_NAME;
460460
INDEX(84, rel_vrel, 0, 2, ODS_14_0)
461461
SEGMENT(f_vrl_rname_schema, idx_metadata), // schema name
462-
SEGMENT(f_vrl_rname, idx_metadata) // base relation name
462+
SEGMENT(f_vrl_pkg_name, idx_metadata), // package name
463+
SEGMENT(f_vrl_rname, idx_metadata) // base relation name
463464
}},
464465
// define index RDB$INDEX_85 for RDB$TRIGGER_MESSAGES RDB$SCHEMA_NAME, RDB$TRIGGER_NAME;
465466
INDEX(85, rel_msgs, 0, 2, ODS_14_0)

0 commit comments

Comments
 (0)