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
0c3281ce
Commit
0c3281ce
authored
Jun 12, 1999
by
Bruce Momjian
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Reversed out Massimo patch.
parent
603e153b
Changes
6
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
14 additions
and
111 deletions
+14
-111
src/backend/access/common/heaptuple.c
src/backend/access/common/heaptuple.c
+3
-26
src/backend/executor/nodeAgg.c
src/backend/executor/nodeAgg.c
+1
-47
src/backend/utils/misc/trace.c
src/backend/utils/misc/trace.c
+4
-7
src/backend/utils/mmgr/portalmem.c
src/backend/utils/mmgr/portalmem.c
+1
-19
src/include/utils/portal.h
src/include/utils/portal.h
+1
-5
src/include/utils/trace.h
src/include/utils/trace.h
+4
-7
No files found.
src/backend/access/common/heaptuple.c
View file @
0c3281ce
...
...
@@ -8,7 +8,7 @@
*
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/access/common/heaptuple.c,v 1.5
2 1999/06/12 14:05:36
momjian Exp $
* $Header: /cvsroot/pgsql/src/backend/access/common/heaptuple.c,v 1.5
3 1999/06/12 14:07:20
momjian Exp $
*
* NOTES
* The old interface functions have been converted to macros
...
...
@@ -27,11 +27,6 @@
#include <storage/bufpage.h>
#include <utils/memutils.h>
#ifdef FREE_TUPLE_MEMORY
#include <utils/portal.h>
#include <utils/trace.h>
#endif
#ifndef HAVE_MEMMOVE
#include <regex/utils.h>
#else
...
...
@@ -98,9 +93,6 @@ DataFill(char *data,
int
i
;
int
numberOfAttributes
=
tupleDesc
->
natts
;
Form_pg_attribute
*
att
=
tupleDesc
->
attrs
;
#ifdef FREE_TUPLE_MEMORY
bool
free_tuple_memory
=
pg_options
[
OPT_FREE_TUPLE_MEMORY
];
#endif
if
(
bit
!=
NULL
)
{
...
...
@@ -139,14 +131,6 @@ DataFill(char *data,
*
infomask
|=
HEAP_HASVARLENA
;
data_length
=
VARSIZE
(
DatumGetPointer
(
value
[
i
]));
memmove
(
data
,
DatumGetPointer
(
value
[
i
]),
data_length
);
#ifdef FREE_TUPLE_MEMORY
/* try to pfree value[i] - dz */
if
(
free_tuple_memory
&&
PortalHeapMemoryIsValid
(
CurrentMemoryContext
,
(
Pointer
)
value
[
i
]))
{
pfree
(
value
[
i
]);
}
#endif
break
;
case
sizeof
(
char
):
*
data
=
att
[
i
]
->
attbyval
?
...
...
@@ -163,15 +147,8 @@ DataFill(char *data,
*
((
int32
*
)
value
[
i
]));
break
;
default:
memmove
(
data
,
DatumGetPointer
(
value
[
i
]),
att
[
i
]
->
attlen
);
#ifdef FREE_TUPLE_MEMORY
/* try to pfree value[i] - dz */
if
(
free_tuple_memory
&&
PortalHeapMemoryIsValid
(
CurrentMemoryContext
,
(
Pointer
)
value
[
i
]))
{
pfree
(
value
[
i
]);
}
#endif
memmove
(
data
,
DatumGetPointer
(
value
[
i
]),
att
[
i
]
->
attlen
);
break
;
}
data
=
(
char
*
)
att_addlength
((
long
)
data
,
att
[
i
]
->
attlen
,
value
[
i
]);
...
...
src/backend/executor/nodeAgg.c
View file @
0c3281ce
...
...
@@ -31,11 +31,6 @@
#include "utils/syscache.h"
#include "optimizer/clauses.h"
#ifdef FREE_TUPLE_MEMORY
#include <utils/portal.h>
#include <utils/trace.h>
#endif
/*
* AggFuncInfo -
* keeps the transition functions information around
...
...
@@ -118,9 +113,7 @@ ExecAgg(Agg *node)
isNull1
=
FALSE
,
isNull2
=
FALSE
;
bool
qual_result
;
#ifdef FREE_TUPLE_MEMORY
bool
free_tuple_memory
=
pg_options
[
OPT_FREE_TUPLE_MEMORY
];
#endif
/* ---------------------
* get state info from node
...
...
@@ -248,10 +241,6 @@ ExecAgg(Agg *node)
for
(;;)
{
TupleTableSlot
*
outerslot
;
#ifdef FREE_TUPLE_MEMORY
Oid
valueType
;
bool
isByValue
=
0
;
#endif
isNull
=
isNull1
=
isNull2
=
0
;
outerslot
=
ExecProcNode
(
outerPlan
,
(
Plan
*
)
node
);
...
...
@@ -304,31 +293,6 @@ ExecAgg(Agg *node)
newVal
=
ExecEvalExpr
(
aggref
->
target
,
econtext
,
&
isNull
,
&
isDone
);
}
#ifdef FREE_TUPLE_MEMORY
if
(
free_tuple_memory
)
{
switch
(
nodeTag
(
aggref
->
target
))
{
case
T_Const
:
isByValue
=
((
Const
*
)
(
aggref
->
target
))
->
constbyval
;
break
;
case
T_Var
:
valueType
=
((
Var
*
)
(
aggref
->
target
))
->
vartype
;
isByValue
=
typeByVal
(
typeidType
(
valueType
));
break
;
case
T_Array
:
isByValue
=
((
Array
*
)(
aggref
->
target
))
->
arrayelembyval
;
break
;
case
T_ArrayRef
:
isByValue
=
((
ArrayRef
*
)(
aggref
->
target
))
->
refelembyval
;
break
;
case
T_Expr
:
valueType
=
((
Expr
*
)
(
aggref
->
target
))
->
typeOid
;
isByValue
=
typeByVal
(
typeidType
(
valueType
));
break
;
default:
break
;
}
}
#endif
if
(
isNull
&&
!
aggref
->
usenulls
)
continue
;
/* ignore this tuple for this agg */
...
...
@@ -389,16 +353,6 @@ ExecAgg(Agg *node)
(
FmgrValues
*
)
args
,
&
isNull2
);
Assert
(
!
isNull2
);
}
#ifdef FREE_TUPLE_MEMORY
/* try to pfree newVal if not isByValue - dz */
if
(
free_tuple_memory
&&
!
isByValue
&&
PortalHeapMemoryIsValid
(
CurrentMemoryContext
,
(
Pointer
)
newVal
))
{
pfree
(
newVal
);
}
#endif
}
/*
...
...
src/backend/utils/misc/trace.c
View file @
0c3281ce
...
...
@@ -73,9 +73,6 @@ static char *opt_names[] = {
"syslog"
,
/* use syslog for error messages */
"hostlookup"
,
/* enable hostname lookup in ps_status */
"showportnumber"
,
/* show port number in ps_status */
#ifdef FREE_TUPLE_MEMORY
"free_tuple_memory"
,
/* try to pfree memory for each tuple */
#endif
/* NUM_PG_OPTIONS */
/* must be the last item of enum */
};
...
...
@@ -407,9 +404,9 @@ read_pg_options(SIGNAL_ARGS)
}
/*
* Local
V
ariables:
*
tab-width: 4
*
c-indent-level: 4
*
c-basic-offset: 4
* Local
v
ariables:
*
tab-width: 4
*
c-indent-level: 4
*
c-basic-offset: 4
* End:
*/
src/backend/utils/mmgr/portalmem.c
View file @
0c3281ce
...
...
@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/utils/mmgr/portalmem.c,v 1.2
0 1999/06/12 14:05:39
momjian Exp $
* $Header: /cvsroot/pgsql/src/backend/utils/mmgr/portalmem.c,v 1.2
1 1999/06/12 14:07:26
momjian Exp $
*
*-------------------------------------------------------------------------
*/
...
...
@@ -289,24 +289,6 @@ PortalHeapMemoryFree(PortalHeapMemory this,
}
}
#ifdef FREE_TUPLE_MEMORY
/*
* PortalHeapMemoryIsValid --
*
* Check if a pointer is allocated in a memory context.
*
*/
bool
PortalHeapMemoryIsValid
(
MemoryContext
context
,
Pointer
pointer
)
{
HeapMemoryBlock
block
=
HEAPMEMBLOCK
((
PortalHeapMemory
)
context
);
AssertState
(
PointerIsValid
(
block
));
return
(
AllocSetContains
(
&
block
->
setData
,
pointer
));
}
#endif
/* ----------------
* PortalHeapMemoryRealloc
* ----------------
...
...
src/include/utils/portal.h
View file @
0c3281ce
...
...
@@ -6,7 +6,7 @@
*
* Copyright (c) 1994, Regents of the University of California
*
* $Id: portal.h,v 1.1
4 1999/06/12 14:05:40
momjian Exp $
* $Id: portal.h,v 1.1
5 1999/06/12 14:07:32
momjian Exp $
*
*-------------------------------------------------------------------------
*/
...
...
@@ -80,10 +80,6 @@ extern void EndPortalAllocMode(void);
extern
PortalVariableMemory
PortalGetVariableMemory
(
Portal
portal
);
extern
PortalHeapMemory
PortalGetHeapMemory
(
Portal
portal
);
#ifdef FREE_TUPLE_MEMORY
bool
PortalHeapMemoryIsValid
(
MemoryContext
context
,
Pointer
pointer
);
#endif
/* estimate of the maximum number of open portals a user would have,
* used in initially sizing the PortalHashTable in EnablePortalManager()
*/
...
...
src/include/utils/trace.h
View file @
0c3281ce
...
...
@@ -64,9 +64,6 @@ enum pg_option_enum {
OPT_SYSLOG
,
/* use syslog for error messages */
OPT_HOSTLOOKUP
,
/* enable hostname lookup in ps_status */
OPT_SHOWPORTNUMBER
,
/* show port number in ps_status */
#ifdef FREE_TUPLE_MEMORY
OPT_FREE_TUPLE_MEMORY
,
/* try to pfree memory for each tuple */
#endif
NUM_PG_OPTIONS
/* must be the last item of enum */
};
...
...
@@ -86,9 +83,9 @@ extern int pg_options[NUM_PG_OPTIONS];
#endif
/* TRACE_H */
/*
* Local
V
ariables:
*
tab-width: 4
*
c-indent-level: 4
*
c-basic-offset: 4
* Local
v
ariables:
*
tab-width: 4
*
c-indent-level: 4
*
c-basic-offset: 4
* End:
*/
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