Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Greenplum
Gpdb
提交
1ea01720
G
Gpdb
项目概览
Greenplum
/
Gpdb
通知
7
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
G
Gpdb
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
1ea01720
编写于
9月 12, 1997
作者:
B
Bruce Momjian
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
heapattr functions now return a Datum, not char *.
上级
6e04b4b2
变更
28
隐藏空白更改
内联
并排
Showing
28 changed file
with
177 addition
and
188 deletion
+177
-188
src/backend/access/common/heaptuple.c
src/backend/access/common/heaptuple.c
+25
-28
src/backend/access/common/heapvalid.c
src/backend/access/common/heapvalid.c
+5
-5
src/backend/access/common/printtup.c
src/backend/access/common/printtup.c
+9
-8
src/backend/access/index/indexam.c
src/backend/access/index/indexam.c
+8
-8
src/backend/commands/async.c
src/backend/commands/async.c
+12
-12
src/backend/commands/copy.c
src/backend/commands/copy.c
+2
-3
src/backend/commands/vacuum.c
src/backend/commands/vacuum.c
+8
-11
src/backend/executor/execJunk.c
src/backend/executor/execJunk.c
+4
-7
src/backend/executor/execQual.c
src/backend/executor/execQual.c
+16
-19
src/backend/executor/functions.c
src/backend/executor/functions.c
+2
-6
src/backend/executor/nodeAgg.c
src/backend/executor/nodeAgg.c
+1
-1
src/backend/executor/nodeGroup.c
src/backend/executor/nodeGroup.c
+3
-3
src/backend/executor/nodeUnique.c
src/backend/executor/nodeUnique.c
+3
-3
src/backend/executor/spi.c
src/backend/executor/spi.c
+3
-3
src/backend/libpq/be-dumpdata.c
src/backend/libpq/be-dumpdata.c
+2
-2
src/backend/parser/catalog_utils.c
src/backend/parser/catalog_utils.c
+3
-3
src/backend/parser/parser.c
src/backend/parser/parser.c
+3
-3
src/backend/rewrite/rewriteRemove.c
src/backend/rewrite/rewriteRemove.c
+6
-6
src/backend/rewrite/rewriteSupport.c
src/backend/rewrite/rewriteSupport.c
+9
-9
src/backend/storage/large_object/inv_api.c
src/backend/storage/large_object/inv_api.c
+6
-6
src/backend/utils/adt/not_in.c
src/backend/utils/adt/not_in.c
+6
-6
src/backend/utils/cache/catcache.c
src/backend/utils/cache/catcache.c
+17
-17
src/backend/utils/cache/syscache.c
src/backend/utils/cache/syscache.c
+3
-3
src/backend/utils/fmgr/dfmgr.c
src/backend/utils/fmgr/dfmgr.c
+3
-3
src/backend/utils/sort/lselect.c
src/backend/utils/sort/lselect.c
+3
-3
src/backend/utils/time/tqual.c
src/backend/utils/time/tqual.c
+8
-2
src/include/access/heapam.h
src/include/access/heapam.h
+6
-7
src/include/executor/spi.h
src/include/executor/spi.h
+1
-1
未找到文件。
src/backend/access/common/heaptuple.c
浏览文件 @
1ea01720
...
...
@@ -8,7 +8,7 @@
*
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/access/common/heaptuple.c,v 1.2
4 1997/09/08 21:40:18
momjian Exp $
* $Header: /cvsroot/pgsql/src/backend/access/common/heaptuple.c,v 1.2
5 1997/09/12 04:07:06
momjian Exp $
*
* NOTES
* The old interface functions have been converted to macros
...
...
@@ -372,25 +372,25 @@ heap_sysattrbyval(AttrNumber attno)
* heap_getsysattr
* ----------------
*/
char
*
Datum
heap_getsysattr
(
HeapTuple
tup
,
Buffer
b
,
int
attnum
)
{
switch
(
attnum
)
{
case
SelfItemPointerAttributeNumber
:
return
((
char
*
)
&
tup
->
t_ctid
);
return
((
Datum
)
&
tup
->
t_ctid
);
case
ObjectIdAttributeNumber
:
return
((
char
*
)
(
long
)
tup
->
t_oid
);
return
((
Datum
)
(
long
)
tup
->
t_oid
);
case
MinTransactionIdAttributeNumber
:
return
((
char
*
)
(
long
)
tup
->
t_xmin
);
return
((
Datum
)
(
long
)
tup
->
t_xmin
);
case
MinCommandIdAttributeNumber
:
return
((
char
*
)
(
long
)
tup
->
t_cmin
);
return
((
Datum
)
(
long
)
tup
->
t_cmin
);
case
MaxTransactionIdAttributeNumber
:
return
((
char
*
)
(
long
)
tup
->
t_xmax
);
return
((
Datum
)
(
long
)
tup
->
t_xmax
);
case
MaxCommandIdAttributeNumber
:
return
((
char
*
)
(
long
)
tup
->
t_cmax
);
return
((
Datum
)
(
long
)
tup
->
t_cmax
);
case
ChainItemPointerAttributeNumber
:
return
((
char
*
)
&
tup
->
t_chain
);
return
((
Datum
)
&
tup
->
t_chain
);
case
AnchorItemPointerAttributeNumber
:
elog
(
WARN
,
"heap_getsysattr: t_anchor does not exist!"
);
break
;
...
...
@@ -409,7 +409,7 @@ heap_getsysattr(HeapTuple tup, Buffer b, int attnum)
if
(
!
AbsoluteTimeIsBackwardCompatiblyValid
(
tup
->
t_tmin
)
&&
TransactionIdDidCommit
(
tup
->
t_xmin
))
tup
->
t_tmin
=
TransactionIdGetCommitTime
(
tup
->
t_xmin
);
return
((
char
*
)
(
long
)
tup
->
t_tmin
);
return
((
Datum
)
(
long
)
tup
->
t_tmin
);
case
MaxAbsoluteTimeAttributeNumber
:
if
(
!
AbsoluteTimeIsBackwardCompatiblyReal
(
tup
->
t_tmax
))
{
...
...
@@ -418,9 +418,9 @@ heap_getsysattr(HeapTuple tup, Buffer b, int attnum)
else
tup
->
t_tmax
=
CURRENT_ABSTIME
;
}
return
((
char
*
)
(
long
)
tup
->
t_tmax
);
return
((
Datum
)
(
long
)
tup
->
t_tmax
);
case
VersionTypeAttributeNumber
:
return
((
char
*
)
(
long
)
tup
->
t_vtype
);
return
((
Datum
)
(
long
)
tup
->
t_vtype
);
default:
elog
(
WARN
,
"heap_getsysattr: undefined attnum %d"
,
attnum
);
}
...
...
@@ -444,7 +444,7 @@ heap_getsysattr(HeapTuple tup, Buffer b, int attnum)
* the same attribute descriptor will go much quicker. -cim 5/4/91
* ----------------
*/
char
*
Datum
fastgetattr
(
HeapTuple
tup
,
int
attnum
,
TupleDesc
tupleDesc
,
...
...
@@ -479,7 +479,7 @@ fastgetattr(HeapTuple tup,
attnum
--
;
if
(
att
[
attnum
]
->
attcacheoff
>
0
)
{
return
(
char
*
)
return
(
Datum
)
fetchatt
(
&
(
att
[
attnum
]),
(
char
*
)
tup
+
tup
->
t_hoff
+
att
[
attnum
]
->
attcacheoff
);
}
...
...
@@ -489,7 +489,7 @@ fastgetattr(HeapTuple tup,
/*
* first attribute is always at position zero
*/
return
((
char
*
)
fetchatt
(
&
(
att
[
0
]),
(
char
*
)
tup
+
tup
->
t_hoff
));
return
((
Datum
)
fetchatt
(
&
(
att
[
0
]),
(
char
*
)
tup
+
tup
->
t_hoff
));
}
tp
=
(
char
*
)
tup
+
tup
->
t_hoff
;
...
...
@@ -543,13 +543,13 @@ fastgetattr(HeapTuple tup,
{
if
(
att
[
attnum
]
->
attcacheoff
>
0
)
{
return
(
char
*
)
return
(
Datum
)
fetchatt
(
&
(
att
[
attnum
]),
tp
+
att
[
attnum
]
->
attcacheoff
);
}
else
if
(
attnum
==
0
)
{
return
(
char
*
)
return
(
Datum
)
fetchatt
(
&
(
att
[
0
]),
(
char
*
)
tup
+
tup
->
t_hoff
);
}
else
if
(
!
HeapTupleAllFixed
(
tup
))
...
...
@@ -618,7 +618,7 @@ fastgetattr(HeapTuple tup,
}
return
(
char
*
)
fetchatt
(
&
(
att
[
attnum
]),
tp
+
att
[
attnum
]
->
attcacheoff
);
(
Datum
)
fetchatt
(
&
(
att
[
attnum
]),
tp
+
att
[
attnum
]
->
attcacheoff
);
}
else
{
...
...
@@ -729,7 +729,7 @@ fastgetattr(HeapTuple tup,
off
=
LONGALIGN
(
off
);
break
;
}
return
((
char
*
)
fetchatt
(
&
(
att
[
attnum
]),
tp
+
off
));
return
((
Datum
)
fetchatt
(
&
(
att
[
attnum
]),
tp
+
off
));
}
}
...
...
@@ -782,11 +782,11 @@ heap_deformtuple(HeapTuple tuple,
{
bool
isnull
;
values
[
i
]
=
(
Datum
)
heap_getattr
(
tuple
,
InvalidBuffer
,
i
+
1
,
tdesc
,
&
isnull
);
values
[
i
]
=
heap_getattr
(
tuple
,
InvalidBuffer
,
i
+
1
,
tdesc
,
&
isnull
);
if
(
isnull
)
nulls
[
i
]
=
'n'
;
else
...
...
@@ -936,15 +936,12 @@ heap_modifytuple(HeapTuple tuple,
if
(
repl
[
attoff
]
==
' '
)
{
char
*
attr
;
attr
=
value
[
attoff
]
=
heap_getattr
(
tuple
,
InvalidBuffer
,
AttrOffsetGetAttrNumber
(
attoff
),
RelationGetTupleDescriptor
(
relation
),
&
isNull
);
value
[
attoff
]
=
PointerGetDatum
(
attr
);
nulls
[
attoff
]
=
(
isNull
)
?
'n'
:
' '
;
}
...
...
src/backend/access/common/heapvalid.c
浏览文件 @
1ea01720
...
...
@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/access/common/Attic/heapvalid.c,v 1.1
8 1997/09/08 02:19:51
momjian Exp $
* $Header: /cvsroot/pgsql/src/backend/access/common/Attic/heapvalid.c,v 1.1
9 1997/09/12 04:07:09
momjian Exp $
*
*-------------------------------------------------------------------------
*/
...
...
@@ -42,10 +42,10 @@ heap_keytest(HeapTuple t,
for
(;
nkeys
--
;
keys
++
)
{
atp
=
(
Datum
)
heap_getattr
(
t
,
InvalidBuffer
,
keys
->
sk_attno
,
tupdesc
,
&
isnull
);
atp
=
heap_getattr
(
t
,
InvalidBuffer
,
keys
->
sk_attno
,
tupdesc
,
&
isnull
);
if
(
isnull
)
/* XXX eventually should check if SK_ISNULL */
...
...
src/backend/access/common/printtup.c
浏览文件 @
1ea01720
...
...
@@ -8,7 +8,7 @@
*
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/access/common/printtup.c,v 1.1
7 1997/09/08 02:19:56
momjian Exp $
* $Header: /cvsroot/pgsql/src/backend/access/common/printtup.c,v 1.1
8 1997/09/12 04:07:12
momjian Exp $
*
*-------------------------------------------------------------------------
*/
...
...
@@ -76,8 +76,8 @@ printtup(HeapTuple tuple, TupleDesc typeinfo)
int
i
,
j
,
k
;
char
*
outputstr
,
*
attr
;
char
*
outputstr
;
Datum
attr
;
bool
isnull
;
Oid
typoutput
;
...
...
@@ -176,8 +176,8 @@ void
debugtup
(
HeapTuple
tuple
,
TupleDesc
typeinfo
)
{
register
int
i
;
char
*
attr
,
*
value
;
Datum
attr
;
char
*
value
;
bool
isnull
;
Oid
typoutput
;
...
...
@@ -212,7 +212,7 @@ printtup_internal(HeapTuple tuple, TupleDesc typeinfo)
int
i
,
j
,
k
;
char
*
attr
;
Datum
attr
;
bool
isnull
;
/* ----------------
...
...
@@ -308,9 +308,10 @@ printtup_internal(HeapTuple tuple, TupleDesc typeinfo)
else
{
pq_putint
(
len
,
sizeof
(
int32
));
pq_putnchar
(
attr
,
len
);
pq_putnchar
(
DatumGetPointer
(
attr
)
,
len
);
#ifdef IPORTAL_DEBUG
fprintf
(
stderr
,
"byref length %d data %x
\n
"
,
len
,
attr
);
fprintf
(
stderr
,
"byref length %d data %x
\n
"
,
len
,
DatumGetPointer
(
attr
));
#endif
}
}
...
...
src/backend/access/index/indexam.c
浏览文件 @
1ea01720
...
...
@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/access/index/indexam.c,v 1.1
6 1997/09/08 21:41:06
momjian Exp $
* $Header: /cvsroot/pgsql/src/backend/access/index/indexam.c,v 1.1
7 1997/09/12 04:07:15
momjian Exp $
*
* INTERFACE ROUTINES
* index_open - open an index relation by relationId
...
...
@@ -385,11 +385,11 @@ GetIndexValue(HeapTuple tuple,
for
(
i
=
0
;
i
<
FIgetnArgs
(
fInfo
);
i
++
)
{
attData
[
i
]
=
(
Datum
)
heap_getattr
(
tuple
,
buffer
,
attrNums
[
i
],
hTupDesc
,
attNull
);
attData
[
i
]
=
heap_getattr
(
tuple
,
buffer
,
attrNums
[
i
],
hTupDesc
,
attNull
);
}
returnVal
=
(
Datum
)
fmgr_array_args
(
FIgetProcOid
(
fInfo
),
FIgetnArgs
(
fInfo
),
...
...
@@ -400,8 +400,8 @@ GetIndexValue(HeapTuple tuple,
}
else
{
returnVal
=
(
Datum
)
heap_getattr
(
tuple
,
buffer
,
attrNums
[
attOff
],
hTupDesc
,
attNull
);
returnVal
=
heap_getattr
(
tuple
,
buffer
,
attrNums
[
attOff
],
hTupDesc
,
attNull
);
}
return
returnVal
;
}
src/backend/commands/async.c
浏览文件 @
1ea01720
...
...
@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/commands/async.c,v 1.
19 1997/09/08 02:21:54
momjian Exp $
* $Header: /cvsroot/pgsql/src/backend/commands/async.c,v 1.
20 1997/09/12 04:07:20
momjian Exp $
*
*-------------------------------------------------------------------------
*/
...
...
@@ -216,8 +216,8 @@ Async_Notify(char *relname)
while
(
HeapTupleIsValid
(
lTuple
=
heap_getnext
(
sRel
,
0
,
&
b
)))
{
d
=
(
Datum
)
heap_getattr
(
lTuple
,
b
,
Anum_pg_listener_notify
,
tdesc
,
&
isnull
);
d
=
heap_getattr
(
lTuple
,
b
,
Anum_pg_listener_notify
,
tdesc
,
&
isnull
);
if
(
!
DatumGetInt32
(
d
))
{
rTuple
=
heap_modifytuple
(
lTuple
,
b
,
lRel
,
value
,
nulls
,
repl
);
...
...
@@ -293,13 +293,13 @@ Async_NotifyAtCommit()
while
(
HeapTupleIsValid
(
lTuple
=
heap_getnext
(
sRel
,
0
,
&
b
)))
{
d
=
(
Datum
)
heap_getattr
(
lTuple
,
b
,
Anum_pg_listener_relname
,
tdesc
,
&
isnull
);
d
=
heap_getattr
(
lTuple
,
b
,
Anum_pg_listener_relname
,
tdesc
,
&
isnull
);
if
(
AsyncExistsPendingNotify
((
char
*
)
DatumGetPointer
(
d
)))
{
d
=
(
Datum
)
heap_getattr
(
lTuple
,
b
,
Anum_pg_listener_pid
,
tdesc
,
&
isnull
);
d
=
heap_getattr
(
lTuple
,
b
,
Anum_pg_listener_pid
,
tdesc
,
&
isnull
);
if
(
ourpid
==
DatumGetInt32
(
d
))
{
...
...
@@ -444,12 +444,12 @@ Async_Listen(char *relname, int pid)
s
=
heap_beginscan
(
lDesc
,
0
,
NowTimeQual
,
0
,
(
ScanKey
)
NULL
);
while
(
HeapTupleIsValid
(
htup
=
heap_getnext
(
s
,
0
,
&
b
)))
{
d
=
(
Datum
)
heap_getattr
(
htup
,
b
,
Anum_pg_listener_relname
,
tdesc
,
&
isnull
);
d
=
heap_getattr
(
htup
,
b
,
Anum_pg_listener_relname
,
tdesc
,
&
isnull
);
relnamei
=
DatumGetPointer
(
d
);
if
(
!
strncmp
(
relnamei
,
relname
,
NAMEDATALEN
))
{
d
=
(
Datum
)
heap_getattr
(
htup
,
b
,
Anum_pg_listener_pid
,
tdesc
,
&
isnull
);
d
=
heap_getattr
(
htup
,
b
,
Anum_pg_listener_pid
,
tdesc
,
&
isnull
);
pid
=
DatumGetInt32
(
d
);
if
(
pid
==
ourPid
)
{
...
...
@@ -609,8 +609,8 @@ Async_NotifyFrontEnd()
while
(
HeapTupleIsValid
(
lTuple
=
heap_getnext
(
sRel
,
0
,
&
b
)))
{
d
=
(
Datum
)
heap_getattr
(
lTuple
,
b
,
Anum_pg_listener_relname
,
tdesc
,
&
isnull
);
d
=
heap_getattr
(
lTuple
,
b
,
Anum_pg_listener_relname
,
tdesc
,
&
isnull
);
rTuple
=
heap_modifytuple
(
lTuple
,
b
,
lRel
,
value
,
nulls
,
repl
);
heap_replace
(
lRel
,
&
lTuple
->
t_ctid
,
rTuple
);
...
...
src/backend/commands/copy.c
浏览文件 @
1ea01720
...
...
@@ -6,7 +6,7 @@
*
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/commands/copy.c,v 1.3
3 1997/09/08 21:42:30
momjian Exp $
* $Header: /cvsroot/pgsql/src/backend/commands/copy.c,v 1.3
4 1997/09/12 04:07:25
momjian Exp $
*
*-------------------------------------------------------------------------
*/
...
...
@@ -270,8 +270,7 @@ CopyTo(Relation rel, bool binary, bool oids, FILE *fp, char *delim)
for
(
i
=
0
;
i
<
attr_count
;
i
++
)
{
value
=
(
Datum
)
heap_getattr
(
tuple
,
InvalidBuffer
,
i
+
1
,
tupDesc
,
&
isnull
);
value
=
heap_getattr
(
tuple
,
InvalidBuffer
,
i
+
1
,
tupDesc
,
&
isnull
);
if
(
!
binary
)
{
if
(
!
isnull
)
...
...
src/backend/commands/vacuum.c
浏览文件 @
1ea01720
...
...
@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/commands/vacuum.c,v 1.4
6 1997/09/08 21:42:48
momjian Exp $
* $Header: /cvsroot/pgsql/src/backend/commands/vacuum.c,v 1.4
7 1997/09/12 04:07:30
momjian Exp $
*
*-------------------------------------------------------------------------
*/
...
...
@@ -308,8 +308,7 @@ vc_getrels(NameData *VacRelP)
* Berkeley.
*/
d
=
(
Datum
)
heap_getattr
(
pgctup
,
buf
,
Anum_pg_class_relname
,
pgcdesc
,
&
n
);
d
=
heap_getattr
(
pgctup
,
buf
,
Anum_pg_class_relname
,
pgcdesc
,
&
n
);
rname
=
(
char
*
)
d
;
/* skip archive relations */
...
...
@@ -334,8 +333,7 @@ vc_getrels(NameData *VacRelP)
continue
;
}
d
=
(
Datum
)
heap_getattr
(
pgctup
,
buf
,
Anum_pg_class_relsmgr
,
pgcdesc
,
&
n
);
d
=
heap_getattr
(
pgctup
,
buf
,
Anum_pg_class_relsmgr
,
pgcdesc
,
&
n
);
smgrno
=
DatumGetInt16
(
d
);
/* skip write-once storage managers */
...
...
@@ -345,8 +343,7 @@ vc_getrels(NameData *VacRelP)
continue
;
}
d
=
(
Datum
)
heap_getattr
(
pgctup
,
buf
,
Anum_pg_class_relkind
,
pgcdesc
,
&
n
);
d
=
heap_getattr
(
pgctup
,
buf
,
Anum_pg_class_relkind
,
pgcdesc
,
&
n
);
rkind
=
DatumGetChar
(
d
);
...
...
@@ -1714,8 +1711,8 @@ vc_attrstats(Relation onerel, VRelStats *vacrelstats, HeapTuple htup)
VacAttrStats
*
stats
=
&
vacattrstats
[
i
];
bool
value_hit
=
true
;
value
=
(
Datum
)
heap_getattr
(
htup
,
InvalidBuffer
,
stats
->
attr
->
attnum
,
tupDesc
,
&
isnull
);
value
=
heap_getattr
(
htup
,
InvalidBuffer
,
stats
->
attr
->
attnum
,
tupDesc
,
&
isnull
);
if
(
!
VacAttrStatsEqValid
(
stats
))
continue
;
...
...
@@ -2289,8 +2286,8 @@ vc_getindices(Oid relid, int *nindices, Relation **Irel)
while
(
HeapTupleIsValid
(
pgitup
=
heap_getnext
(
pgiscan
,
0
,
NULL
)))
{
d
=
(
Datum
)
heap_getattr
(
pgitup
,
InvalidBuffer
,
Anum_pg_index_indexrelid
,
pgidesc
,
&
n
);
d
=
heap_getattr
(
pgitup
,
InvalidBuffer
,
Anum_pg_index_indexrelid
,
pgidesc
,
&
n
);
i
++
;
if
(
i
%
10
==
0
)
ioid
=
(
Oid
*
)
repalloc
(
ioid
,
(
i
+
10
)
*
sizeof
(
Oid
));
...
...
src/backend/executor/execJunk.c
浏览文件 @
1ea01720
...
...
@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/executor/execJunk.c,v 1.
8 1997/09/08 21:42:56
momjian Exp $
* $Header: /cvsroot/pgsql/src/backend/executor/execJunk.c,v 1.
9 1997/09/12 04:07:33
momjian Exp $
*
*-------------------------------------------------------------------------
*/
...
...
@@ -315,8 +315,7 @@ ExecGetJunkAttribute(JunkFilter *junkfilter,
tuple
=
slot
->
val
;
tupType
=
(
TupleDesc
)
junkfilter
->
jf_tupType
;
*
value
=
(
Datum
)
heap_getattr
(
tuple
,
InvalidBuffer
,
resno
,
tupType
,
isNull
);
*
value
=
heap_getattr
(
tuple
,
InvalidBuffer
,
resno
,
tupType
,
isNull
);
return
true
;
}
...
...
@@ -391,10 +390,8 @@ ExecRemoveJunk(JunkFilter *junkfilter, TupleTableSlot *slot)
*/
for
(
i
=
0
;
i
<
cleanLength
;
i
++
)
{
Datum
d
=
(
Datum
)
heap_getattr
(
tuple
,
InvalidBuffer
,
cleanMap
[
i
],
tupType
,
&
isNull
);
values
[
i
]
=
d
;
values
[
i
]
=
heap_getattr
(
tuple
,
InvalidBuffer
,
cleanMap
[
i
],
tupType
,
&
isNull
);
if
(
isNull
)
nulls
[
i
]
=
'n'
;
...
...
src/backend/executor/execQual.c
浏览文件 @
1ea01720
...
...
@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/executor/execQual.c,v 1.1
6 1997/09/08 21:43:00
momjian Exp $
* $Header: /cvsroot/pgsql/src/backend/executor/execQual.c,v 1.1
7 1997/09/12 04:07:36
momjian Exp $
*
*-------------------------------------------------------------------------
*/
...
...
@@ -305,12 +305,11 @@ ExecEvalVar(Var *variable, ExprContext *econtext, bool *isNull)
return
(
Datum
)
tempSlot
;
}
result
=
(
Datum
)
heap_getattr
(
heapTuple
,
/* tuple containing attribute */
buffer
,
/* buffer associated with tuple */
attnum
,
/* attribute number of desired attribute */
tuple_type
,
/* tuple descriptor of tuple */
isNull
);
/* return: is attribute null? */
result
=
heap_getattr
(
heapTuple
,
/* tuple containing attribute */
buffer
,
/* buffer associated with tuple */
attnum
,
/* attribute number of desired attribute */
tuple_type
,
/* tuple descriptor of tuple */
isNull
);
/* return: is attribute null? */
/* ----------------
* return null if att is null
...
...
@@ -530,12 +529,11 @@ GetAttributeByNum(TupleTableSlot *slot,
return
(
char
*
)
NULL
;
}
retval
=
(
Datum
)
heap_getattr
(
slot
->
val
,
slot
->
ttc_buffer
,
attrno
,
slot
->
ttc_tupleDescriptor
,
isNull
);
retval
=
heap_getattr
(
slot
->
val
,
slot
->
ttc_buffer
,
attrno
,
slot
->
ttc_tupleDescriptor
,
isNull
);
if
(
*
isNull
)
return
(
char
*
)
NULL
;
return
(
char
*
)
retval
;
...
...
@@ -595,12 +593,11 @@ GetAttributeByName(TupleTableSlot *slot, char *attname, bool *isNull)
if
(
attrno
==
InvalidAttrNumber
)
elog
(
WARN
,
"GetAttributeByName: attribute %s not found"
,
attname
);
retval
=
(
Datum
)
heap_getattr
(
slot
->
val
,
slot
->
ttc_buffer
,
attrno
,
tupdesc
,
isNull
);
retval
=
heap_getattr
(
slot
->
val
,
slot
->
ttc_buffer
,
attrno
,
tupdesc
,
isNull
);
if
(
*
isNull
)
return
(
char
*
)
NULL
;
return
(
char
*
)
retval
;
...
...
src/backend/executor/functions.c
浏览文件 @
1ea01720
...
...
@@ -8,7 +8,7 @@
*
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/executor/functions.c,v 1.1
0 1997/09/08 21:43:08
momjian Exp $
* $Header: /cvsroot/pgsql/src/backend/executor/functions.c,v 1.1
1 1997/09/12 04:07:41
momjian Exp $
*
*-------------------------------------------------------------------------
*/
...
...
@@ -83,11 +83,7 @@ ProjectAttribute(TupleDesc TD,
AttrNumber
attrno
=
attrVar
->
varattno
;
val
=
PointerGetDatum
(
heap_getattr
(
tup
,
InvalidBuffer
,
attrno
,
TD
,
isnullP
));
val
=
heap_getattr
(
tup
,
InvalidBuffer
,
attrno
,
TD
,
isnullP
);
if
(
*
isnullP
)
return
(
Datum
)
NULL
;
...
...
src/backend/executor/nodeAgg.c
浏览文件 @
1ea01720
...
...
@@ -638,7 +638,7 @@ aggGetAttr(TupleTableSlot *slot,
return
(
Datum
)
tempSlot
;
}
result
=
(
Datum
)
result
=
heap_getattr
(
heapTuple
,
/* tuple containing attribute */
buffer
,
/* buffer associated with tuple */
attnum
,
/* attribute number of desired attribute */
...
...
src/backend/executor/nodeGroup.c
浏览文件 @
1ea01720
...
...
@@ -13,7 +13,7 @@
* columns. (ie. tuples from the same group are consecutive)
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/executor/nodeGroup.c,v 1.
9 1997/09/08 21:43:10
momjian Exp $
* $Header: /cvsroot/pgsql/src/backend/executor/nodeGroup.c,v 1.
10 1997/09/12 04:07:43
momjian Exp $
*
*-------------------------------------------------------------------------
*/
...
...
@@ -388,8 +388,8 @@ sameGroup(TupleTableSlot *oldslot,
{
bool
isNull1
,
isNull2
;
char
*
attr1
,
*
attr2
;
Datum
attr1
,
attr2
;
char
*
val1
,
*
val2
;
int
i
;
...
...
src/backend/executor/nodeUnique.c
浏览文件 @
1ea01720
...
...
@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/executor/nodeUnique.c,v 1.1
0 1997/09/08 21:43:21
momjian Exp $
* $Header: /cvsroot/pgsql/src/backend/executor/nodeUnique.c,v 1.1
1 1997/09/12 04:07:44
momjian Exp $
*
*-------------------------------------------------------------------------
*/
...
...
@@ -182,8 +182,8 @@ ExecUnique(Unique *node)
*/
bool
isNull1
,
isNull2
;
char
*
attr1
,
*
attr2
;
Datum
attr1
,
attr2
;
char
*
val1
,
*
val2
;
...
...
src/backend/executor/spi.c
浏览文件 @
1ea01720
...
...
@@ -319,7 +319,7 @@ SPI_fname(TupleDesc tupdesc, int fnumber)
char
*
SPI_getvalue
(
HeapTuple
tuple
,
TupleDesc
tupdesc
,
int
fnumber
)
{
char
*
val
;
Datum
val
;
bool
isnull
;
Oid
foutoid
;
...
...
@@ -346,10 +346,10 @@ SPI_getvalue(HeapTuple tuple, TupleDesc tupdesc, int fnumber)
return
(
fmgr
(
foutoid
,
val
,
gettypelem
(
tupdesc
->
attrs
[
fnumber
-
1
]
->
atttypid
)));
}
char
*
Datum
SPI_getbinval
(
HeapTuple
tuple
,
TupleDesc
tupdesc
,
int
fnumber
,
bool
*
isnull
)
{
char
*
val
;
Datum
val
;
*
isnull
=
true
;
SPI_result
=
0
;
...
...
src/backend/libpq/be-dumpdata.c
浏览文件 @
1ea01720
...
...
@@ -8,7 +8,7 @@
*
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/libpq/Attic/be-dumpdata.c,v 1.
8 1997/09/08 21:43:39
momjian Exp $
* $Header: /cvsroot/pgsql/src/backend/libpq/Attic/be-dumpdata.c,v 1.
9 1997/09/12 04:07:50
momjian Exp $
*
*-------------------------------------------------------------------------
*/
...
...
@@ -213,7 +213,7 @@ void
be_printtup
(
HeapTuple
tuple
,
TupleDesc
typeinfo
)
{
int
i
;
char
*
attr
;
Datum
attr
;
bool
isnull
;
Oid
typoutput
;
...
...
src/backend/parser/catalog_utils.c
浏览文件 @
1ea01720
...
...
@@ -6,7 +6,7 @@
*
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/parser/Attic/catalog_utils.c,v 1.2
5 1997/09/08 21:46:04
momjian Exp $
* $Header: /cvsroot/pgsql/src/backend/parser/Attic/catalog_utils.c,v 1.2
6 1997/09/12 04:07:56
momjian Exp $
*
*-------------------------------------------------------------------------
*/
...
...
@@ -1378,8 +1378,8 @@ findsupers(Oid relid, Oid **supervec)
{
qentry
=
(
SuperQE
*
)
palloc
(
sizeof
(
SuperQE
));
d
=
(
Datum
)
fastgetattr
(
inhtup
,
Anum_pg_inherits_inhparent
,
inhtupdesc
,
&
isNull
);
d
=
fastgetattr
(
inhtup
,
Anum_pg_inherits_inhparent
,
inhtupdesc
,
&
isNull
);
qentry
->
sqe_relid
=
DatumGetObjectId
(
d
);
/* put this one on the queue */
...
...
src/backend/parser/parser.c
浏览文件 @
1ea01720
...
...
@@ -6,7 +6,7 @@
*
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/parser/parser.c,v 1.2
5 1997/09/08 21:46:12
momjian Exp $
* $Header: /cvsroot/pgsql/src/backend/parser/parser.c,v 1.2
6 1997/09/12 04:08:01
momjian Exp $
*
*-------------------------------------------------------------------------
*/
...
...
@@ -230,7 +230,7 @@ parser_typecast(Value *expr, TypeName *typename, int typlen)
case
T_Integer
:
const_string
=
(
char
*
)
palloc
(
256
);
string_palloced
=
true
;
sprintf
(
const_string
,
"%d"
,
expr
->
val
.
ival
);
sprintf
(
const_string
,
"%
l
d"
,
expr
->
val
.
ival
);
break
;
default:
elog
(
WARN
,
...
...
@@ -405,7 +405,7 @@ parser_typecast2(Node *expr, Oid exprType, Type tp, int typlen)
case
CASHOID
:
/* money */
const_string
=
(
char
*
)
palloc
(
256
);
string_palloced
=
true
;
sprintf
(
const_string
,
"%d"
,
sprintf
(
const_string
,
"%
l
d"
,
(
long
)
((
Const
*
)
expr
)
->
constvalue
);
break
;
case
TEXTOID
:
/* text */
...
...
src/backend/rewrite/rewriteRemove.c
浏览文件 @
1ea01720
...
...
@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/rewrite/rewriteRemove.c,v 1.
4 1997/09/08 02:28:20
momjian Exp $
* $Header: /cvsroot/pgsql/src/backend/rewrite/rewriteRemove.c,v 1.
5 1997/09/12 04:08:06
momjian Exp $
*
*-------------------------------------------------------------------------
*/
...
...
@@ -109,11 +109,11 @@ RemoveRewriteRule(char *ruleName)
*/
ruleId
=
tuple
->
t_oid
;
eventRelationOidDatum
=
PointerGetDatum
(
heap_getattr
(
tuple
,
buffer
,
Anum_pg_rewrite_ev_class
,
RelationGetTupleDescriptor
(
RewriteRelation
),
&
isNull
)
);
heap_getattr
(
tuple
,
buffer
,
Anum_pg_rewrite_ev_class
,
RelationGetTupleDescriptor
(
RewriteRelation
),
&
isNull
);
if
(
isNull
)
{
/* XXX strange!!! */
...
...
src/backend/rewrite/rewriteSupport.c
浏览文件 @
1ea01720
...
...
@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/rewrite/rewriteSupport.c,v 1.
9 1997/09/08 21:46:44
momjian Exp $
* $Header: /cvsroot/pgsql/src/backend/rewrite/rewriteSupport.c,v 1.
10 1997/09/12 04:08:10
momjian Exp $
*
*-------------------------------------------------------------------------
*/
...
...
@@ -58,14 +58,14 @@ RuleIdGetActionInfo(Oid ruleoid, bool *instead_flag, Query **parseTrees)
if
(
ruletuple
==
NULL
)
elog
(
WARN
,
"rule %u isn't in rewrite system relation"
,
ruleoid
);
ruleaction
=
heap_getattr
(
ruletuple
,
InvalidBuffer
,
Anum_pg_rewrite_action
,
ruleTupdesc
,
&
action_is_null
);
rule_evqual_string
=
heap_getattr
(
ruletuple
,
InvalidBuffer
,
Anum_pg_rewrite_ev_qual
,
ruleTupdesc
,
&
action_is_null
);
ruleaction
=
(
char
*
)
heap_getattr
(
ruletuple
,
InvalidBuffer
,
Anum_pg_rewrite_action
,
ruleTupdesc
,
&
action_is_null
);
rule_evqual_string
=
(
char
*
)
heap_getattr
(
ruletuple
,
InvalidBuffer
,
Anum_pg_rewrite_ev_qual
,
ruleTupdesc
,
&
action_is_null
);
*
instead_flag
=
!!
heap_getattr
(
ruletuple
,
InvalidBuffer
,
Anum_pg_rewrite_is_instead
,
ruleTupdesc
,
&
instead_is_null
);
...
...
src/backend/storage/large_object/inv_api.c
浏览文件 @
1ea01720
...
...
@@ -8,7 +8,7 @@
*
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/storage/large_object/inv_api.c,v 1.1
7 1997/09/08 21:47:17
momjian Exp $
* $Header: /cvsroot/pgsql/src/backend/storage/large_object/inv_api.c,v 1.1
8 1997/09/12 04:08:15
momjian Exp $
*
*-------------------------------------------------------------------------
*/
...
...
@@ -472,7 +472,7 @@ inv_read(LargeObjectDesc *obj_desc, char *buf, int nbytes)
}
/* copy the data from this block into the buffer */
d
=
(
Datum
)
heap_getattr
(
htup
,
b
,
2
,
obj_desc
->
hdesc
,
&
isNull
);
d
=
heap_getattr
(
htup
,
b
,
2
,
obj_desc
->
hdesc
,
&
isNull
);
fsblock
=
(
struct
varlena
*
)
DatumGetPointer
(
d
);
off
=
obj_desc
->
offset
-
obj_desc
->
lowbyte
;
...
...
@@ -648,9 +648,9 @@ inv_fetchtup(LargeObjectDesc *obj_desc, Buffer *bufP)
* return the tuple.
*/
d
=
(
Datum
)
heap_getattr
(
htup
,
*
bufP
,
1
,
obj_desc
->
hdesc
,
&
isNull
);
d
=
heap_getattr
(
htup
,
*
bufP
,
1
,
obj_desc
->
hdesc
,
&
isNull
);
lastbyte
=
(
int32
)
DatumGetInt32
(
d
);
d
=
(
Datum
)
heap_getattr
(
htup
,
*
bufP
,
2
,
obj_desc
->
hdesc
,
&
isNull
);
d
=
heap_getattr
(
htup
,
*
bufP
,
2
,
obj_desc
->
hdesc
,
&
isNull
);
fsblock
=
(
struct
varlena
*
)
DatumGetPointer
(
d
);
/*
...
...
@@ -817,7 +817,7 @@ inv_wrold(LargeObjectDesc *obj_desc,
newpage
=
BufferGetPage
(
newbuf
);
hr
=
obj_desc
->
heap_r
;
freespc
=
IFREESPC
(
page
);
d
=
(
Datum
)
heap_getattr
(
htup
,
buffer
,
2
,
obj_desc
->
hdesc
,
&
isNull
);
d
=
heap_getattr
(
htup
,
buffer
,
2
,
obj_desc
->
hdesc
,
&
isNull
);
fsblock
=
(
struct
varlena
*
)
DatumGetPointer
(
d
);
tupbytes
=
fsblock
->
vl_len
-
sizeof
(
fsblock
->
vl_len
);
...
...
@@ -1218,7 +1218,7 @@ _inv_getsize(Relation hreln, TupleDesc hdesc, Relation ireln)
index_endscan
(
iscan
);
/* get olastbyte attribute */
d
=
(
Datum
)
heap_getattr
(
htup
,
buf
,
1
,
hdesc
,
&
isNull
);
d
=
heap_getattr
(
htup
,
buf
,
1
,
hdesc
,
&
isNull
);
size
=
DatumGetInt32
(
d
)
+
1
;
/* wei hates it if you forget to do this */
...
...
src/backend/utils/adt/not_in.c
浏览文件 @
1ea01720
...
...
@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/utils/adt/Attic/not_in.c,v 1.
5 1997/09/08 02:30:52
momjian Exp $
* $Header: /cvsroot/pgsql/src/backend/utils/adt/Attic/not_in.c,v 1.
6 1997/09/12 04:08:21
momjian Exp $
*
*-------------------------------------------------------------------------
*/
...
...
@@ -82,11 +82,11 @@ int4notin(int16 not_in_arg, char *relation_and_attr)
current_tuple
!=
NULL
&&
retval
;
current_tuple
=
heap_getnext
(
scan_descriptor
,
0
,
NULL
))
{
value
=
PointerGetDatum
(
heap_getattr
(
current_tuple
,
InvalidBuffer
,
(
AttrNumber
)
attrid
,
RelationGetTupleDescriptor
(
relation_to_scan
),
&
dummy
)
);
value
=
heap_getattr
(
current_tuple
,
InvalidBuffer
,
(
AttrNumber
)
attrid
,
RelationGetTupleDescriptor
(
relation_to_scan
),
&
dummy
);
integer_value
=
DatumGetInt16
(
value
);
if
(
left_side_argument
==
integer_value
)
...
...
src/backend/utils/cache/catcache.c
浏览文件 @
1ea01720
...
...
@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/utils/cache/catcache.c,v 1.1
3 1997/09/08 21:48:45
momjian Exp $
* $Header: /cvsroot/pgsql/src/backend/utils/cache/catcache.c,v 1.1
4 1997/09/12 04:08:28
momjian Exp $
*
* Notes:
* XXX This needs to use exception.h to handle recovery when
...
...
@@ -387,40 +387,40 @@ CatalogCacheComputeTupleHashIndex(struct catcache * cacheInOutP,
cacheInOutP
->
cc_skey
[
3
].
sk_argument
=
(
cacheInOutP
->
cc_key
[
3
]
==
ObjectIdAttributeNumber
)
?
(
Datum
)
tuple
->
t_oid
:
(
Datum
)
fastgetattr
(
tuple
,
cacheInOutP
->
cc_key
[
3
],
RelationGetTupleDescriptor
(
relation
),
&
isNull
);
:
fastgetattr
(
tuple
,
cacheInOutP
->
cc_key
[
3
],
RelationGetTupleDescriptor
(
relation
),
&
isNull
);
Assert
(
!
isNull
);
/* FALLTHROUGH */
case
3
:
cacheInOutP
->
cc_skey
[
2
].
sk_argument
=
(
cacheInOutP
->
cc_key
[
2
]
==
ObjectIdAttributeNumber
)
?
(
Datum
)
tuple
->
t_oid
:
(
Datum
)
fastgetattr
(
tuple
,
cacheInOutP
->
cc_key
[
2
],
RelationGetTupleDescriptor
(
relation
),
&
isNull
);
:
fastgetattr
(
tuple
,
cacheInOutP
->
cc_key
[
2
],
RelationGetTupleDescriptor
(
relation
),
&
isNull
);
Assert
(
!
isNull
);
/* FALLTHROUGH */
case
2
:
cacheInOutP
->
cc_skey
[
1
].
sk_argument
=
(
cacheInOutP
->
cc_key
[
1
]
==
ObjectIdAttributeNumber
)
?
(
Datum
)
tuple
->
t_oid
:
(
Datum
)
fastgetattr
(
tuple
,
cacheInOutP
->
cc_key
[
1
],
RelationGetTupleDescriptor
(
relation
),
&
isNull
);
:
fastgetattr
(
tuple
,
cacheInOutP
->
cc_key
[
1
],
RelationGetTupleDescriptor
(
relation
),
&
isNull
);
Assert
(
!
isNull
);
/* FALLTHROUGH */
case
1
:
cacheInOutP
->
cc_skey
[
0
].
sk_argument
=
(
cacheInOutP
->
cc_key
[
0
]
==
ObjectIdAttributeNumber
)
?
(
Datum
)
tuple
->
t_oid
:
(
Datum
)
fastgetattr
(
tuple
,
cacheInOutP
->
cc_key
[
0
],
RelationGetTupleDescriptor
(
relation
),
&
isNull
);
:
fastgetattr
(
tuple
,
cacheInOutP
->
cc_key
[
0
],
RelationGetTupleDescriptor
(
relation
),
&
isNull
);
Assert
(
!
isNull
);
break
;
default:
...
...
src/backend/utils/cache/syscache.c
浏览文件 @
1ea01720
...
...
@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/utils/cache/syscache.c,v 1.
7 1997/09/08 21:48:56
momjian Exp $
* $Header: /cvsroot/pgsql/src/backend/utils/cache/syscache.c,v 1.
8 1997/09/12 04:08:35
momjian Exp $
*
* NOTES
* These routines allow the parser/planner/executor to perform
...
...
@@ -494,7 +494,7 @@ SearchSysCacheGetAttribute(int cacheId,
int32
attributeLength
,
attributeByValue
;
bool
isNull
;
char
*
attributeValue
;
Datum
attributeValue
;
void
*
returnValue
;
tp
=
SearchSysCacheTuple
(
cacheId
,
key1
,
key2
,
key3
,
key4
);
...
...
@@ -562,7 +562,7 @@ SearchSysCacheGetAttribute(int cacheId,
:
attributeLength
;
/* fixed length */
tmp
=
(
char
*
)
palloc
(
size
);
memmove
(
tmp
,
attributeValue
,
size
);
memmove
(
tmp
,
(
void
*
)
attributeValue
,
size
);
returnValue
=
(
void
*
)
tmp
;
}
...
...
src/backend/utils/fmgr/dfmgr.c
浏览文件 @
1ea01720
...
...
@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/utils/fmgr/dfmgr.c,v 1.1
1 1997/09/08 02:31:34
momjian Exp $
* $Header: /cvsroot/pgsql/src/backend/utils/fmgr/dfmgr.c,v 1.1
2 1997/09/12 04:08:39
momjian Exp $
*
*-------------------------------------------------------------------------
*/
...
...
@@ -53,9 +53,9 @@ fmgr_dynamic(Oid procedureId, int *pronargs)
{
HeapTuple
procedureTuple
;
Form_pg_proc
procedureStruct
;
char
*
proname
;
char
*
probinattr
,
char
*
proname
,
*
probinstring
;
Datum
probinattr
;
func_ptr
user_fn
;
Relation
rdesc
;
bool
isnull
;
...
...
src/backend/utils/sort/lselect.c
浏览文件 @
1ea01720
...
...
@@ -8,7 +8,7 @@
*
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/utils/sort/Attic/lselect.c,v 1.
7 1997/09/08 02:32:25
momjian Exp $
* $Header: /cvsroot/pgsql/src/backend/utils/sort/Attic/lselect.c,v 1.
8 1997/09/12 04:08:46
momjian Exp $
*
*-------------------------------------------------------------------------
*/
...
...
@@ -197,8 +197,8 @@ puttuple(struct leftist ** treep,
int
tuplecmp
(
HeapTuple
ltup
,
HeapTuple
rtup
,
LeftistContext
context
)
{
register
char
*
lattr
,
*
rattr
;
register
Datum
lattr
,
rattr
;
int
nkey
=
0
;
int
result
=
0
;
bool
isnull
;
...
...
src/backend/utils/time/tqual.c
浏览文件 @
1ea01720
...
...
@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/utils/time/tqual.c,v 1.
7 1997/09/08 21:49:3
7 momjian Exp $
* $Header: /cvsroot/pgsql/src/backend/utils/time/tqual.c,v 1.
8 1997/09/12 04:08:5
7 momjian Exp $
*
*-------------------------------------------------------------------------
*/
...
...
@@ -32,9 +32,11 @@ static AbsoluteTime TimeQualGetStartTime(TimeQual qual);
static
bool
TimeQualIncludesNow
(
TimeQual
qual
);
static
bool
TimeQualIndicatesDisableValidityChecking
(
TimeQual
qual
);
static
bool
TimeQualIsLegal
(
TimeQual
qual
);
#ifndef NO_ASSERT_CHECKING
static
bool
TimeQualIsRanged
(
TimeQual
qual
);
static
bool
TimeQualIsSnapshot
(
TimeQual
qual
);
static
bool
TimeQualIsValid
(
TimeQual
qual
);
#endif
static
bool
TimeQualIsSnapshot
(
TimeQual
qual
);
/*
* TimeQualMode --
...
...
@@ -133,6 +135,7 @@ HeapTupleSatisfiesUpperUnboundedInternalTimeQual(HeapTuple tuple,
* TimeQualIsValid --
* True iff time qualification is valid.
*/
#ifndef NO_ASSERT_CHECKING
static
bool
TimeQualIsValid
(
TimeQual
qual
)
{
...
...
@@ -179,6 +182,7 @@ TimeQualIsValid(TimeQual qual)
}
return
(
true
);
}
#endif
/*
* TimeQualIsLegal --
...
...
@@ -332,6 +336,7 @@ TimeQualIsSnapshot(TimeQual qual)
* Note:
* Assumes time qualification is valid.
*/
#ifndef NO_ASSERT_CHECKING
static
bool
TimeQualIsRanged
(
TimeQual
qual
)
{
...
...
@@ -344,6 +349,7 @@ TimeQualIsRanged(TimeQual qual)
return
((
bool
)
!
(((
InternalTimeQual
)
qual
)
->
mode
&
TimeQualAt
));
}
#endif
/*
* TimeQualIndicatesDisableValidityChecking --
...
...
src/include/access/heapam.h
浏览文件 @
1ea01720
...
...
@@ -6,7 +6,7 @@
*
* Copyright (c) 1994, Regents of the University of California
*
* $Id: heapam.h,v 1.1
5 1997/09/08 21:50:45
momjian Exp $
* $Id: heapam.h,v 1.1
6 1997/09/12 04:09:03
momjian Exp $
*
*-------------------------------------------------------------------------
*/
...
...
@@ -97,11 +97,11 @@ typedef HeapAccessStatisticsData *HeapAccessStatistics;
#define heap_getattr(tup, b, attnum, tupleDesc, isnull) \
(AssertMacro((tup) != NULL) ? \
((attnum) > (int) (tup)->t_natts) ? \
(((isnull) ? (*(isnull) = true) : (char)NULL), (
char *
)NULL) : \
(((isnull) ? (*(isnull) = true) : (char)NULL), (
Datum
)NULL) : \
((attnum) > 0) ? \
fastgetattr((tup), (attnum), (tupleDesc), (isnull)) : \
(((isnull) ? (*(isnull) = false) : (char)NULL), heap_getsysattr((tup), (b), (attnum))) : \
(
char *
)NULL)
(
Datum
)NULL)
extern
HeapAccessStatistics
heap_access_stats
;
/* in stats.c */
...
...
@@ -143,10 +143,9 @@ DataFill(char *data, TupleDesc tupleDesc,
extern
int
heap_attisnull
(
HeapTuple
tup
,
int
attnum
);
extern
int
heap_sysattrlen
(
AttrNumber
attno
);
extern
bool
heap_sysattrbyval
(
AttrNumber
attno
);
extern
char
*
heap_getsysattr
(
HeapTuple
tup
,
Buffer
b
,
int
attnum
);
extern
char
*
fastgetattr
(
HeapTuple
tup
,
int
attnum
,
TupleDesc
att
,
bool
*
isnull
);
extern
Datum
heap_getsysattr
(
HeapTuple
tup
,
Buffer
b
,
int
attnum
);
extern
Datum
fastgetattr
(
HeapTuple
tup
,
int
attnum
,
TupleDesc
att
,
bool
*
isnull
);
extern
HeapTuple
heap_copytuple
(
HeapTuple
tuple
);
extern
HeapTuple
heap_formtuple
(
TupleDesc
tupleDescriptor
,
...
...
src/include/executor/spi.h
浏览文件 @
1ea01720
...
...
@@ -80,7 +80,7 @@ extern void *SPI_saveplan(void *plan);
extern
int
SPI_fnumber
(
TupleDesc
tupdesc
,
char
*
fname
);
extern
char
*
SPI_fname
(
TupleDesc
tupdesc
,
int
fnumber
);
extern
char
*
SPI_getvalue
(
HeapTuple
tuple
,
TupleDesc
tupdesc
,
int
fnumber
);
extern
char
*
SPI_getbinval
(
HeapTuple
tuple
,
TupleDesc
tupdesc
,
int
fnumber
,
bool
*
isnull
);
extern
Datum
SPI_getbinval
(
HeapTuple
tuple
,
TupleDesc
tupdesc
,
int
fnumber
,
bool
*
isnull
);
extern
char
*
SPI_gettype
(
TupleDesc
tupdesc
,
int
fnumber
);
extern
Oid
SPI_gettypeid
(
TupleDesc
tupdesc
,
int
fnumber
);
extern
char
*
SPI_getrelname
(
Relation
rel
);
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录