Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
P
Postgres FD Implementation
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Abuhujair Javed
Postgres FD Implementation
Commits
74f418eb
Commit
74f418eb
authored
Nov 24, 1999
by
Bruce Momjian
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Add pg_statistic index, add missing Hiroshi file.
parent
61a93ed2
Changes
15
Hide whitespace changes
Inline
Side-by-side
Showing
15 changed files
with
156 additions
and
74 deletions
+156
-74
src/backend/catalog/aclchk.c
src/backend/catalog/aclchk.c
+5
-5
src/backend/catalog/indexing.c
src/backend/catalog/indexing.c
+56
-20
src/backend/commands/comment.c
src/backend/commands/comment.c
+1
-1
src/backend/commands/dbcommands.c
src/backend/commands/dbcommands.c
+2
-2
src/backend/commands/user.c
src/backend/commands/user.c
+3
-3
src/backend/rewrite/locks.c
src/backend/rewrite/locks.c
+2
-2
src/backend/utils/adt/acl.c
src/backend/utils/adt/acl.c
+3
-3
src/backend/utils/adt/ruleutils.c
src/backend/utils/adt/ruleutils.c
+2
-2
src/backend/utils/cache/syscache.c
src/backend/utils/cache/syscache.c
+36
-24
src/backend/utils/init/miscinit.c
src/backend/utils/init/miscinit.c
+2
-2
src/backend/utils/misc/superuser.c
src/backend/utils/misc/superuser.c
+2
-2
src/include/catalog/catversion.h
src/include/catalog/catversion.h
+2
-2
src/include/catalog/indexing.h
src/include/catalog/indexing.h
+7
-1
src/include/executor/nodeTidscan.h
src/include/executor/nodeTidscan.h
+27
-0
src/include/utils/syscache.h
src/include/utils/syscache.h
+6
-5
No files found.
src/backend/catalog/aclchk.c
View file @
74f418eb
...
...
@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/catalog/aclchk.c,v 1.3
1 1999/11/24 00:44:28
momjian Exp $
* $Header: /cvsroot/pgsql/src/backend/catalog/aclchk.c,v 1.3
2 1999/11/24 16:52:31
momjian Exp $
*
* NOTES
* See acl.h.
...
...
@@ -350,7 +350,7 @@ pg_aclcheck(char *relname, char *usename, AclMode mode)
int32
result
;
Relation
relation
;
tuple
=
SearchSysCacheTuple
(
USER
NAME
,
tuple
=
SearchSysCacheTuple
(
SHADOW
NAME
,
PointerGetDatum
(
usename
),
0
,
0
,
0
);
if
(
!
HeapTupleIsValid
(
tuple
))
...
...
@@ -469,7 +469,7 @@ pg_ownercheck(char *usename,
AclId
user_id
,
owner_id
=
0
;
tuple
=
SearchSysCacheTuple
(
USER
NAME
,
tuple
=
SearchSysCacheTuple
(
SHADOW
NAME
,
PointerGetDatum
(
usename
),
0
,
0
,
0
);
if
(
!
HeapTupleIsValid
(
tuple
))
...
...
@@ -535,7 +535,7 @@ pg_func_ownercheck(char *usename,
AclId
user_id
,
owner_id
;
tuple
=
SearchSysCacheTuple
(
USER
NAME
,
tuple
=
SearchSysCacheTuple
(
SHADOW
NAME
,
PointerGetDatum
(
usename
),
0
,
0
,
0
);
if
(
!
HeapTupleIsValid
(
tuple
))
...
...
@@ -577,7 +577,7 @@ pg_aggr_ownercheck(char *usename,
AclId
user_id
,
owner_id
;
tuple
=
SearchSysCacheTuple
(
USER
NAME
,
tuple
=
SearchSysCacheTuple
(
SHADOW
NAME
,
PointerGetDatum
(
usename
),
0
,
0
,
0
);
if
(
!
HeapTupleIsValid
(
tuple
))
...
...
src/backend/catalog/indexing.c
View file @
74f418eb
...
...
@@ -8,7 +8,7 @@
*
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/catalog/indexing.c,v 1.5
1 1999/11/22 17:55:57
momjian Exp $
* $Header: /cvsroot/pgsql/src/backend/catalog/indexing.c,v 1.5
2 1999/11/24 16:52:31
momjian Exp $
*
*-------------------------------------------------------------------------
*/
...
...
@@ -881,42 +881,77 @@ RewriteOidIndexScan(Relation heapRelation, Oid rewriteId)
HeapTuple
TypeNameIndexScan
(
Relation
heapRelation
,
char
*
typ
eName
)
ShadowNameIndexScan
(
Relation
heapRelation
,
char
*
us
eName
)
{
Relation
idesc
;
ScanKeyData
skey
[
1
];
HeapTuple
tuple
;
ScanKeyEntryInitialize
(
&
skey
[
0
],
(
bits16
)
0x0
,
(
AttrNumber
)
1
,
(
RegProcedure
)
F_NAMEEQ
,
PointerGetDatum
(
typ
eName
));
PointerGetDatum
(
us
eName
));
idesc
=
index_openr
(
Type
NameIndex
);
idesc
=
index_openr
(
Shadow
NameIndex
);
tuple
=
CatalogIndexFetchTuple
(
heapRelation
,
idesc
,
skey
,
1
);
index_close
(
idesc
);
return
tuple
;
}
HeapTuple
TypeOidIndexScan
(
Relation
heapRelation
,
Oid
type
Id
)
ShadowSysidIndexScan
(
Relation
heapRelation
,
int4
sys
Id
)
{
Relation
idesc
;
ScanKeyData
skey
[
1
];
HeapTuple
tuple
;
ScanKeyEntryInitialize
(
&
skey
[
0
],
(
bits16
)
0x0
,
(
AttrNumber
)
1
,
(
RegProcedure
)
F_INT4EQ
,
Int32GetDatum
(
sysId
));
idesc
=
index_openr
(
ShadowSysidIndex
);
tuple
=
CatalogIndexFetchTuple
(
heapRelation
,
idesc
,
skey
,
1
);
index_close
(
idesc
);
return
tuple
;
}
HeapTuple
StatisticRelidAttnumOpIndexScan
(
Relation
heapRelation
,
Oid
relId
,
AttrNumber
attNum
,
Oid
op
)
{
Relation
idesc
;
ScanKeyData
skey
[
3
];
HeapTuple
tuple
;
ScanKeyEntryInitialize
(
&
skey
[
0
],
(
bits16
)
0x0
,
(
AttrNumber
)
1
,
(
RegProcedure
)
F_OIDEQ
,
ObjectIdGetDatum
(
type
Id
));
ObjectIdGetDatum
(
rel
Id
));
idesc
=
index_openr
(
TypeOidIndex
);
tuple
=
CatalogIndexFetchTuple
(
heapRelation
,
idesc
,
skey
,
1
);
ScanKeyEntryInitialize
(
&
skey
[
1
],
(
bits16
)
0x0
,
(
AttrNumber
)
2
,
(
RegProcedure
)
F_INT2EQ
,
Int16GetDatum
(
attNum
));
ScanKeyEntryInitialize
(
&
skey
[
2
],
(
bits16
)
0x0
,
(
AttrNumber
)
3
,
(
RegProcedure
)
F_OIDEQ
,
ObjectIdGetDatum
(
op
));
idesc
=
index_openr
(
StatisticRelidAttnumOpIndex
);
tuple
=
CatalogIndexFetchTuple
(
heapRelation
,
idesc
,
skey
,
3
);
index_close
(
idesc
);
...
...
@@ -925,44 +960,45 @@ TypeOidIndexScan(Relation heapRelation, Oid typeId)
HeapTuple
ShadowNameIndexScan
(
Relation
heapRelation
,
char
*
us
eName
)
TypeNameIndexScan
(
Relation
heapRelation
,
char
*
typ
eName
)
{
Relation
idesc
;
ScanKeyData
skey
[
1
];
HeapTuple
tuple
;
ScanKeyEntryInitialize
(
&
skey
[
0
],
(
bits16
)
0x0
,
(
AttrNumber
)
1
,
(
RegProcedure
)
F_NAMEEQ
,
PointerGetDatum
(
us
eName
));
PointerGetDatum
(
typ
eName
));
idesc
=
index_openr
(
Shadow
NameIndex
);
idesc
=
index_openr
(
Type
NameIndex
);
tuple
=
CatalogIndexFetchTuple
(
heapRelation
,
idesc
,
skey
,
1
);
index_close
(
idesc
);
return
tuple
;
}
HeapTuple
ShadowSysidIndexScan
(
Relation
heapRelation
,
int4
sys
Id
)
TypeOidIndexScan
(
Relation
heapRelation
,
Oid
type
Id
)
{
Relation
idesc
;
ScanKeyData
skey
[
1
];
HeapTuple
tuple
;
ScanKeyEntryInitialize
(
&
skey
[
0
],
(
bits16
)
0x0
,
(
AttrNumber
)
1
,
(
RegProcedure
)
F_
INT4
EQ
,
Int32GetDatum
(
sys
Id
));
(
RegProcedure
)
F_
OID
EQ
,
ObjectIdGetDatum
(
type
Id
));
idesc
=
index_openr
(
ShadowSys
idIndex
);
idesc
=
index_openr
(
TypeO
idIndex
);
tuple
=
CatalogIndexFetchTuple
(
heapRelation
,
idesc
,
skey
,
1
);
index_close
(
idesc
);
return
tuple
;
}
src/backend/commands/comment.c
View file @
74f418eb
...
...
@@ -395,7 +395,7 @@ void CommentDatabase(char *database, char *comment) {
/*** Now, fetch user information ***/
username
=
GetPgUserName
();
usertuple
=
SearchSysCacheTuple
(
USER
NAME
,
PointerGetDatum
(
username
),
usertuple
=
SearchSysCacheTuple
(
SHADOW
NAME
,
PointerGetDatum
(
username
),
0
,
0
,
0
);
if
(
!
HeapTupleIsValid
(
usertuple
))
{
elog
(
ERROR
,
"current user '%s' does not exist"
,
username
);
...
...
src/backend/commands/dbcommands.c
View file @
74f418eb
...
...
@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/commands/dbcommands.c,v 1.4
4 1999/11/22 17:56:01
momjian Exp $
* $Header: /cvsroot/pgsql/src/backend/commands/dbcommands.c,v 1.4
5 1999/11/24 16:52:32
momjian Exp $
*
*-------------------------------------------------------------------------
*/
...
...
@@ -241,7 +241,7 @@ check_permissions(char *command,
char
path
[
MAXPGPATH
];
userName
=
GetPgUserName
();
utup
=
SearchSysCacheTuple
(
USER
NAME
,
utup
=
SearchSysCacheTuple
(
SHADOW
NAME
,
PointerGetDatum
(
userName
),
0
,
0
,
0
);
Assert
(
utup
);
...
...
src/backend/commands/user.c
View file @
74f418eb
...
...
@@ -5,7 +5,7 @@
*
* Copyright (c) 1994, Regents of the University of California
*
* $Id: user.c,v 1.3
7 1999/11/22 17:56:0
2 momjian Exp $
* $Id: user.c,v 1.3
8 1999/11/24 16:52:3
2 momjian Exp $
*
*-------------------------------------------------------------------------
*/
...
...
@@ -261,7 +261,7 @@ AlterUser(AlterUserStmt *stmt, CommandDest dest)
pg_shadow_rel
=
heap_openr
(
ShadowRelationName
,
AccessExclusiveLock
);
pg_shadow_dsc
=
RelationGetDescr
(
pg_shadow_rel
);
tuple
=
SearchSysCacheTuple
(
USER
NAME
,
tuple
=
SearchSysCacheTuple
(
SHADOW
NAME
,
PointerGetDatum
(
stmt
->
user
),
0
,
0
,
0
);
if
(
!
HeapTupleIsValid
(
tuple
))
...
...
@@ -374,7 +374,7 @@ RemoveUser(char *user, CommandDest dest)
pg_shadow_rel
=
heap_openr
(
ShadowRelationName
,
AccessExclusiveLock
);
pg_dsc
=
RelationGetDescr
(
pg_shadow_rel
);
tuple
=
SearchSysCacheTuple
(
USER
NAME
,
tuple
=
SearchSysCacheTuple
(
SHADOW
NAME
,
PointerGetDatum
(
user
),
0
,
0
,
0
);
if
(
!
HeapTupleIsValid
(
tuple
))
...
...
src/backend/rewrite/locks.c
View file @
74f418eb
...
...
@@ -6,7 +6,7 @@
*
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/rewrite/Attic/locks.c,v 1.2
5 1999/11/22 17:56:2
3 momjian Exp $
* $Header: /cvsroot/pgsql/src/backend/rewrite/Attic/locks.c,v 1.2
6 1999/11/24 16:52:3
3 momjian Exp $
*
*-------------------------------------------------------------------------
*/
...
...
@@ -170,7 +170,7 @@ checkLockPerms(List *locks, Query *parsetree, int rt_index)
*/
rte
=
(
RangeTblEntry
*
)
nth
(
rt_index
-
1
,
parsetree
->
rtable
);
ev_rel
=
heap_openr
(
rte
->
relname
,
AccessShareLock
);
usertup
=
SearchSysCacheTuple
(
USER
SYSID
,
usertup
=
SearchSysCacheTuple
(
SHADOW
SYSID
,
ObjectIdGetDatum
(
ev_rel
->
rd_rel
->
relowner
),
0
,
0
,
0
);
if
(
!
HeapTupleIsValid
(
usertup
))
...
...
src/backend/utils/adt/acl.c
View file @
74f418eb
...
...
@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/utils/adt/acl.c,v 1.4
2 1999/11/22 17:56:28
momjian Exp $
* $Header: /cvsroot/pgsql/src/backend/utils/adt/acl.c,v 1.4
3 1999/11/24 16:52:37
momjian Exp $
*
*-------------------------------------------------------------------------
*/
...
...
@@ -170,7 +170,7 @@ aclparse(char *s, AclItem *aip, unsigned *modechg)
switch
(
aip
->
ai_idtype
)
{
case
ACL_IDTYPE_UID
:
htup
=
SearchSysCacheTuple
(
USER
NAME
,
htup
=
SearchSysCacheTuple
(
SHADOW
NAME
,
PointerGetDatum
(
name
),
0
,
0
,
0
);
if
(
!
HeapTupleIsValid
(
htup
))
...
...
@@ -281,7 +281,7 @@ aclitemout(AclItem *aip)
switch
(
aip
->
ai_idtype
)
{
case
ACL_IDTYPE_UID
:
htup
=
SearchSysCacheTuple
(
USER
SYSID
,
htup
=
SearchSysCacheTuple
(
SHADOW
SYSID
,
ObjectIdGetDatum
(
aip
->
ai_id
),
0
,
0
,
0
);
if
(
!
HeapTupleIsValid
(
htup
))
...
...
src/backend/utils/adt/ruleutils.c
View file @
74f418eb
...
...
@@ -3,7 +3,7 @@
* out of it's tuple
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/utils/adt/ruleutils.c,v 1.3
2 1999/11/22 17:56:30
momjian Exp $
* $Header: /cvsroot/pgsql/src/backend/utils/adt/ruleutils.c,v 1.3
3 1999/11/24 16:52:37
momjian Exp $
*
* This software is copyrighted by Jan Wieck - Hamburg.
*
...
...
@@ -567,7 +567,7 @@ pg_get_userbyid(int32 uid)
* Get the pg_shadow entry and print the result
* ----------
*/
usertup
=
SearchSysCacheTuple
(
USER
SYSID
,
usertup
=
SearchSysCacheTuple
(
SHADOW
SYSID
,
ObjectIdGetDatum
(
uid
),
0
,
0
,
0
);
if
(
HeapTupleIsValid
(
usertup
))
{
...
...
src/backend/utils/cache/syscache.c
View file @
74f418eb
...
...
@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/utils/cache/syscache.c,v 1.4
2 1999/11/24 00:58:4
8 momjian Exp $
* $Header: /cvsroot/pgsql/src/backend/utils/cache/syscache.c,v 1.4
3 1999/11/24 16:52:3
8 momjian Exp $
*
* NOTES
* These routines allow the parser/planner/executor to perform
...
...
@@ -66,7 +66,8 @@ typedef HeapTuple (*ScanFunc) ();
lookups return only one row, so the index should be unique.
In backend/catalog/indexing.c, initialize the relation array with
the index names for the relation, and create the index lookup function.
the index names for the relation, fixed size of relation (or marking
first non-fixed length field), and create the index lookup function.
Pick one that takes similar arguments and use that one, but keep the
function names in the same order as the cache list for clarity.
...
...
@@ -333,52 +334,63 @@ static struct cachedesc cacheinfo[] = {
offsetof
(
FormData_pg_rewrite
,
ev_qual
),
RewriteOidIndex
,
RewriteOidIndexScan
},
{
TypeRelationName
,
/* TYPE
NAME */
{
ShadowRelationName
,
/* SHADOW
NAME */
1
,
{
Anum_pg_
type_typ
name
,
Anum_pg_
shadow_use
name
,
0
,
0
,
0
},
offsetof
(
FormData_pg_type
,
typalign
)
+
sizeof
(
char
),
TypeNameIndex
,
TypeNameIndexScan
},
{
TypeRelationName
,
/* TYPEOID */
sizeof
(
FormData_pg_shadow
),
NULL
,
NULL
/* ShadowNameIndex,
ShadowNameIndexScan*/
},
{
ShadowRelationName
,
/* SHADOWSYSID */
1
,
{
ObjectIdAttributeNumber
,
Anum_pg_shadow_usesysid
,
0
,
0
,
0
},
offsetof
(
FormData_pg_type
,
typalign
)
+
sizeof
(
char
),
TypeOidIndex
,
TypeOidIndexScan
},
{
ShadowRelationName
,
/* USERNAME */
sizeof
(
FormData_pg_shadow
),
NULL
,
NULL
/* ShadowSysidIndex,
ShadowSysidIndexScan*/
},
{
StatisticRelationName
,
/* STATRELID */
3
,
{
Anum_pg_statistic_starelid
,
Anum_pg_statistic_staattnum
,
Anum_pg_statistic_staop
,
0
},
offsetof
(
FormData_pg_statistic
,
stacommonval
),
StatisticRelidAttnumOpIndex
,
StatisticRelidAttnumOpIndexScan
},
{
TypeRelationName
,
/* TYPENAME */
1
,
{
Anum_pg_
shadow_use
name
,
Anum_pg_
type_typ
name
,
0
,
0
,
0
},
sizeof
(
FormData_pg_shadow
),
NULL
,
NULL
/* ShadowNameIndex,
ShadowNameIndexScan*/
},
{
ShadowRelationName
,
/* USERSYSID */
offsetof
(
FormData_pg_type
,
typalign
)
+
sizeof
(
char
),
TypeNameIndex
,
TypeNameIndexScan
},
{
TypeRelationName
,
/* TYPEOID */
1
,
{
Anum_pg_shadow_usesysid
,
ObjectIdAttributeNumber
,
0
,
0
,
0
},
sizeof
(
FormData_pg_shadow
),
NULL
,
NULL
/* ShadowSysidIndex,
ShadowSysidIndexScan*/
}
offsetof
(
FormData_pg_type
,
typalign
)
+
sizeof
(
char
),
TypeOidIndex
,
TypeOidIndexScan
}
};
static
struct
catcache
*
SysCache
[
lengthof
(
cacheinfo
)];
...
...
src/backend/utils/init/miscinit.c
View file @
74f418eb
...
...
@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/utils/init/miscinit.c,v 1.3
6 1999/11/22 17:56:34
momjian Exp $
* $Header: /cvsroot/pgsql/src/backend/utils/init/miscinit.c,v 1.3
7 1999/11/24 16:52:42
momjian Exp $
*
*-------------------------------------------------------------------------
*/
...
...
@@ -453,7 +453,7 @@ SetUserId()
}
userName
=
GetPgUserName
();
userTup
=
SearchSysCacheTuple
(
USER
NAME
,
userTup
=
SearchSysCacheTuple
(
SHADOW
NAME
,
PointerGetDatum
(
userName
),
0
,
0
,
0
);
if
(
!
HeapTupleIsValid
(
userTup
))
...
...
src/backend/utils/misc/superuser.c
View file @
74f418eb
...
...
@@ -8,7 +8,7 @@
*
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/utils/misc/superuser.c,v 1.1
1 1999/11/22 17:56:3
5 momjian Exp $
* $Header: /cvsroot/pgsql/src/backend/utils/misc/superuser.c,v 1.1
2 1999/11/24 16:52:4
5 momjian Exp $
*
* DESCRIPTION
* See superuser().
...
...
@@ -30,7 +30,7 @@ superuser(void)
HeapTuple
utup
;
utup
=
SearchSysCacheTuple
(
USER
NAME
,
utup
=
SearchSysCacheTuple
(
SHADOW
NAME
,
PointerGetDatum
(
UserName
),
0
,
0
,
0
);
Assert
(
utup
!=
NULL
);
...
...
src/include/catalog/catversion.h
View file @
74f418eb
...
...
@@ -36,7 +36,7 @@
*
* Copyright (c) 1994, Regents of the University of California
*
* $Id: catversion.h,v 1.
3 1999/11/22 17:56:37
momjian Exp $
* $Id: catversion.h,v 1.
4 1999/11/24 16:52:48
momjian Exp $
*
*-------------------------------------------------------------------------
*/
...
...
@@ -51,6 +51,6 @@
* catalog changes on the same day...)
*/
#define CATALOG_VERSION_NO 1999112
2
1
#define CATALOG_VERSION_NO 1999112
4
1
#endif
src/include/catalog/indexing.h
View file @
74f418eb
...
...
@@ -7,7 +7,7 @@
*
* Copyright (c) 1994, Regents of the University of California
*
* $Id: indexing.h,v 1.3
0 1999/11/23 04:47:39
momjian Exp $
* $Id: indexing.h,v 1.3
1 1999/11/24 16:52:48
momjian Exp $
*
*-------------------------------------------------------------------------
*/
...
...
@@ -37,6 +37,7 @@
#define Num_pg_relcheck_indices 1
#define Num_pg_rewrite_indices 2
#define Num_pg_shadow_indices 2
#define Num_pg_statistic_indices 1
#define Num_pg_trigger_indices 3
#define Num_pg_type_indices 2
...
...
@@ -72,6 +73,7 @@
#define RewriteRulenameIndex "pg_rewrite_rulename_index"
#define ShadowNameIndex "pg_shadow_name_index"
#define ShadowSysidIndex "pg_shadow_sysid_index"
#define StatisticRelidAttnumOpIndex "pg_statistic_relid_att_op_index"
#define TriggerConstrNameIndex "pg_trigger_tgconstrname_index"
#define TriggerConstrRelidIndex "pg_trigger_tgconstrrelid_index"
#define TriggerRelidIndex "pg_trigger_tgrelid_index"
...
...
@@ -96,6 +98,7 @@ extern char *Name_pg_proc_indices[];
extern
char
*
Name_pg_relcheck_indices
[];
extern
char
*
Name_pg_rewrite_indices
[];
extern
char
*
Name_pg_shadow_indices
[];
extern
char
*
Name_pg_statistic_indices
[];
extern
char
*
Name_pg_trigger_indices
[];
extern
char
*
Name_pg_type_indices
[];
...
...
@@ -150,6 +153,8 @@ extern HeapTuple RewriteRulenameIndexScan(Relation heapRelation,
char
*
ruleName
);
extern
HeapTuple
ShadowNameIndexScan
(
Relation
heapRelation
,
char
*
useName
);
extern
HeapTuple
ShadowSysidIndexScan
(
Relation
heapRelation
,
int4
sysId
);
extern
HeapTuple
StatisticRelidAttnumOpIndexScan
(
Relation
heapRelation
,
Oid
relId
,
AttrNumber
attNum
,
Oid
op
);
extern
HeapTuple
TypeNameIndexScan
(
Relation
heapRelation
,
char
*
typeName
);
extern
HeapTuple
TypeOidIndexScan
(
Relation
heapRelation
,
Oid
typeId
);
...
...
@@ -197,6 +202,7 @@ DECLARE_UNIQUE_INDEX(pg_rewrite_rulename_index on pg_rewrite using btree(rulenam
xDECLARE_UNIQUE_INDEX(pg_shadow_name_index on pg_shadow using btree(usename name_ops));
xDECLARE_UNIQUE_INDEX(pg_shadow_sysid_index on pg_shadow using btree(usesysid int4_ops));
*/
DECLARE_INDEX
(
pg_statistic_relid_att_op_index
on
pg_shadow
using
btree
(
starelid
oid_ops
,
staattnum
int2_ops
,
staop
oid_ops
));
DECLARE_INDEX
(
pg_trigger_tgconstrname_index
on
pg_trigger
using
btree
(
tgconstrname
name_ops
));
DECLARE_INDEX
(
pg_trigger_tgconstrrelid_index
on
pg_trigger
using
btree
(
tgconstrrelid
oid_ops
));
DECLARE_INDEX
(
pg_trigger_tgrelid_index
on
pg_trigger
using
btree
(
tgrelid
oid_ops
));
...
...
src/include/executor/nodeTidscan.h
0 → 100644
View file @
74f418eb
/*-------------------------------------------------------------------------
*
* nodeTidscan.h
*
*
*
* Copyright (c) 1994, Regents of the University of California
*
* $Id: nodeTidscan.h,v 1.1 1999/11/24 16:52:49 momjian Exp $
*
*-------------------------------------------------------------------------
*/
#ifndef NODETIDSCAN_H
#define NODETIDSCAN_H
#include "nodes/plannodes.h"
extern
TupleTableSlot
*
ExecTidScan
(
TidScan
*
node
);
extern
void
ExecTidReScan
(
TidScan
*
node
,
ExprContext
*
exprCtxt
,
Plan
*
parent
);
extern
void
ExecEndTidScan
(
TidScan
*
node
);
extern
void
ExecTidMarkPos
(
TidScan
*
node
);
extern
void
ExecTidRestrPos
(
TidScan
*
node
);
extern
bool
ExecInitTidScan
(
TidScan
*
node
,
EState
*
estate
,
Plan
*
parent
);
extern
int
ExecCountSlotsTidScan
(
TidScan
*
node
);
extern
void
ExecTidReScan
(
TidScan
*
node
,
ExprContext
*
exprCtxt
,
Plan
*
parent
);
#endif
/* NODETIDSCAN_H */
src/include/utils/syscache.h
View file @
74f418eb
...
...
@@ -8,7 +8,7 @@
*
* Copyright (c) 1994, Regents of the University of California
*
* $Id: syscache.h,v 1.2
1 1999/11/22 17:56:38
momjian Exp $
* $Id: syscache.h,v 1.2
2 1999/11/24 16:52:50
momjian Exp $
*
*-------------------------------------------------------------------------
*/
...
...
@@ -53,10 +53,11 @@
#define RELOID 20
#define RULENAME 21
#define RULEOID 22
#define TYPENAME 23
#define TYPEOID 24
#define USERNAME 25
#define USERSYSID 26
#define SHADOWNAME 23
#define SHADOWSYSID 24
#define STATRELID 25
#define TYPENAME 26
#define TYPEOID 27
/* ----------------
* struct cachedesc: information needed for a call to InitSysCache()
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment