Revert DTrace patch from Robert Lor

This commit is contained in:
Bruce Momjian 2009-04-02 20:59:10 +00:00
parent 735cb9692d
commit 0e550ff617
15 changed files with 15 additions and 112 deletions

View File

@ -41,7 +41,7 @@
* Portions Copyright (c) 1996-2009, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
* $PostgreSQL: pgsql/src/backend/access/transam/slru.c,v 1.46 2009/04/02 19:14:33 momjian Exp $
* $PostgreSQL: pgsql/src/backend/access/transam/slru.c,v 1.47 2009/04/02 20:59:10 momjian Exp $
*
*-------------------------------------------------------------------------
*/
@ -57,7 +57,6 @@
#include "storage/fd.h"
#include "storage/shmem.h"
#include "miscadmin.h"
#include "pg_trace.h"
/*
@ -373,7 +372,6 @@ SimpleLruReadPage(SlruCtl ctl, int pageno, bool write_ok,
{
SlruShared shared = ctl->shared;
TRACE_POSTGRESQL_SLRU_READPAGE_START((uintptr_t)ctl, pageno, write_ok, xid);
/* Outer loop handles restart if we must wait for someone else's I/O */
for (;;)
{
@ -401,7 +399,6 @@ SimpleLruReadPage(SlruCtl ctl, int pageno, bool write_ok,
}
/* Otherwise, it's ready to use */
SlruRecentlyUsed(shared, slotno);
TRACE_POSTGRESQL_SLRU_READPAGE_DONE(slotno);
return slotno;
}
@ -449,7 +446,6 @@ SimpleLruReadPage(SlruCtl ctl, int pageno, bool write_ok,
SlruReportIOError(ctl, pageno, xid);
SlruRecentlyUsed(shared, slotno);
TRACE_POSTGRESQL_SLRU_READPAGE_DONE(slotno);
return slotno;
}
}
@ -474,8 +470,6 @@ SimpleLruReadPage_ReadOnly(SlruCtl ctl, int pageno, TransactionId xid)
SlruShared shared = ctl->shared;
int slotno;
TRACE_POSTGRESQL_SLRU_READPAGE_READONLY((uintptr_t)ctl, pageno, xid);
/* Try to find the page while holding only shared lock */
LWLockAcquire(shared->ControlLock, LW_SHARED);
@ -517,8 +511,6 @@ SimpleLruWritePage(SlruCtl ctl, int slotno, SlruFlush fdata)
int pageno = shared->page_number[slotno];
bool ok;
TRACE_POSTGRESQL_SLRU_WRITEPAGE_START((uintptr_t)ctl, pageno, slotno);
/* If a write is in progress, wait for it to finish */
while (shared->page_status[slotno] == SLRU_PAGE_WRITE_IN_PROGRESS &&
shared->page_number[slotno] == pageno)
@ -533,10 +525,7 @@ SimpleLruWritePage(SlruCtl ctl, int slotno, SlruFlush fdata)
if (!shared->page_dirty[slotno] ||
shared->page_status[slotno] != SLRU_PAGE_VALID ||
shared->page_number[slotno] != pageno)
{
TRACE_POSTGRESQL_SLRU_WRITEPAGE_DONE();
return;
}
/*
* Mark the slot write-busy, and clear the dirtybit. After this point, a
@ -580,8 +569,6 @@ SimpleLruWritePage(SlruCtl ctl, int slotno, SlruFlush fdata)
/* Now it's okay to ereport if we failed */
if (!ok)
SlruReportIOError(ctl, pageno, InvalidTransactionId);
TRACE_POSTGRESQL_SLRU_WRITEPAGE_DONE();
}
/*
@ -606,8 +593,6 @@ SlruPhysicalReadPage(SlruCtl ctl, int pageno, int slotno)
SlruFileName(ctl, path, segno);
TRACE_POSTGRESQL_SLRU_READPAGE_PHYSICAL_START((uintptr_t)ctl, path, pageno, slotno);
/*
* In a crash-and-restart situation, it's possible for us to receive
* commands to set the commit status of transactions whose bits are in
@ -622,7 +607,6 @@ SlruPhysicalReadPage(SlruCtl ctl, int pageno, int slotno)
{
slru_errcause = SLRU_OPEN_FAILED;
slru_errno = errno;
TRACE_POSTGRESQL_SLRU_READPAGE_PHYSICAL_DONE(false, slru_errcause, slru_errno);
return false;
}
@ -630,7 +614,6 @@ SlruPhysicalReadPage(SlruCtl ctl, int pageno, int slotno)
(errmsg("file \"%s\" doesn't exist, reading as zeroes",
path)));
MemSet(shared->page_buffer[slotno], 0, BLCKSZ);
TRACE_POSTGRESQL_SLRU_READPAGE_PHYSICAL_DONE(true, -1, -1);
return true;
}
@ -639,7 +622,6 @@ SlruPhysicalReadPage(SlruCtl ctl, int pageno, int slotno)
slru_errcause = SLRU_SEEK_FAILED;
slru_errno = errno;
close(fd);
TRACE_POSTGRESQL_SLRU_READPAGE_PHYSICAL_DONE(false, slru_errcause, slru_errno);
return false;
}
@ -649,7 +631,6 @@ SlruPhysicalReadPage(SlruCtl ctl, int pageno, int slotno)
slru_errcause = SLRU_READ_FAILED;
slru_errno = errno;
close(fd);
TRACE_POSTGRESQL_SLRU_READPAGE_PHYSICAL_DONE(false, slru_errcause, slru_errno);
return false;
}
@ -657,12 +638,9 @@ SlruPhysicalReadPage(SlruCtl ctl, int pageno, int slotno)
{
slru_errcause = SLRU_CLOSE_FAILED;
slru_errno = errno;
TRACE_POSTGRESQL_SLRU_READPAGE_PHYSICAL_DONE(false, slru_errcause, slru_errno);
return false;
}
TRACE_POSTGRESQL_SLRU_READPAGE_PHYSICAL_DONE(true, -1, -1);
return true;
}
@ -690,8 +668,6 @@ SlruPhysicalWritePage(SlruCtl ctl, int pageno, int slotno, SlruFlush fdata)
char path[MAXPGPATH];
int fd = -1;
TRACE_POSTGRESQL_SLRU_WRITEPAGE_PHYSICAL_START((uintptr_t)ctl, pageno, slotno);
/*
* Honor the write-WAL-before-data rule, if appropriate, so that we do not
* write out data before associated WAL records. This is the same action
@ -777,7 +753,6 @@ SlruPhysicalWritePage(SlruCtl ctl, int pageno, int slotno, SlruFlush fdata)
{
slru_errcause = SLRU_OPEN_FAILED;
slru_errno = errno;
TRACE_POSTGRESQL_SLRU_WRITEPAGE_PHYSICAL_DONE(false, slru_errcause, slru_errno);
return false;
}
@ -806,7 +781,6 @@ SlruPhysicalWritePage(SlruCtl ctl, int pageno, int slotno, SlruFlush fdata)
slru_errno = errno;
if (!fdata)
close(fd);
TRACE_POSTGRESQL_SLRU_WRITEPAGE_PHYSICAL_DONE(false, slru_errcause, slru_errno);
return false;
}
@ -820,7 +794,6 @@ SlruPhysicalWritePage(SlruCtl ctl, int pageno, int slotno, SlruFlush fdata)
slru_errno = errno;
if (!fdata)
close(fd);
TRACE_POSTGRESQL_SLRU_WRITEPAGE_PHYSICAL_DONE(false, slru_errcause, slru_errno);
return false;
}
@ -835,7 +808,6 @@ SlruPhysicalWritePage(SlruCtl ctl, int pageno, int slotno, SlruFlush fdata)
slru_errcause = SLRU_FSYNC_FAILED;
slru_errno = errno;
close(fd);
TRACE_POSTGRESQL_SLRU_WRITEPAGE_PHYSICAL_DONE(false, slru_errcause, slru_errno);
return false;
}
@ -843,12 +815,10 @@ SlruPhysicalWritePage(SlruCtl ctl, int pageno, int slotno, SlruFlush fdata)
{
slru_errcause = SLRU_CLOSE_FAILED;
slru_errno = errno;
TRACE_POSTGRESQL_SLRU_WRITEPAGE_PHYSICAL_DONE(false, slru_errcause, slru_errno);
return false;
}
}
TRACE_POSTGRESQL_SLRU_WRITEPAGE_PHYSICAL_DONE(true, -1, -1);
return true;
}

View File

@ -12,7 +12,7 @@
*
*
* IDENTIFICATION
* $PostgreSQL: pgsql/src/backend/executor/execScan.c,v 1.45 2009/04/02 19:14:33 momjian Exp $
* $PostgreSQL: pgsql/src/backend/executor/execScan.c,v 1.46 2009/04/02 20:59:10 momjian Exp $
*
*-------------------------------------------------------------------------
*/
@ -20,7 +20,6 @@
#include "executor/executor.h"
#include "miscadmin.h"
#include "pg_trace.h"
#include "utils/memutils.h"
@ -61,8 +60,6 @@ ExecScan(ScanState *node,
qual = node->ps.qual;
projInfo = node->ps.ps_ProjInfo;
TRACE_POSTGRESQL_EXECUTOR_SCAN((uintptr_t)node, ((Scan *)node->ps.plan)->scanrelid, (uintptr_t)accessMtd);
/*
* If we have neither a qual to check nor a projection to do, just skip
* all the overhead and return the raw scan tuple.

View File

@ -61,7 +61,7 @@
* Portions Copyright (c) 1994, Regents of the University of California
*
* IDENTIFICATION
* $PostgreSQL: pgsql/src/backend/executor/nodeAgg.c,v 1.165 2009/04/02 19:14:33 momjian Exp $
* $PostgreSQL: pgsql/src/backend/executor/nodeAgg.c,v 1.166 2009/04/02 20:59:10 momjian Exp $
*
*-------------------------------------------------------------------------
*/
@ -79,7 +79,6 @@
#include "parser/parse_agg.h"
#include "parser/parse_coerce.h"
#include "parser/parse_oper.h"
#include "pg_trace.h"
#include "utils/acl.h"
#include "utils/builtins.h"
#include "utils/lsyscache.h"
@ -815,8 +814,6 @@ ExecAgg(AggState *node)
if (node->agg_done)
return NULL;
TRACE_POSTGRESQL_EXECUTOR_AGG((uintptr_t)node, ((Agg *) node->ss.ps.plan)->aggstrategy);
/*
* Check to see if we're still projecting out tuples from a previous agg
* tuple (because there is a function-returning-set in the projection

View File

@ -15,7 +15,7 @@
* locate group boundaries.
*
* IDENTIFICATION
* $PostgreSQL: pgsql/src/backend/executor/nodeGroup.c,v 1.74 2009/04/02 19:14:33 momjian Exp $
* $PostgreSQL: pgsql/src/backend/executor/nodeGroup.c,v 1.75 2009/04/02 20:59:10 momjian Exp $
*
*-------------------------------------------------------------------------
*/
@ -24,7 +24,6 @@
#include "executor/executor.h"
#include "executor/nodeGroup.h"
#include "pg_trace.h"
/*
@ -50,8 +49,6 @@ ExecGroup(GroupState *node)
numCols = ((Group *) node->ss.ps.plan)->numCols;
grpColIdx = ((Group *) node->ss.ps.plan)->grpColIdx;
TRACE_POSTGRESQL_EXECUTOR_GROUP((uintptr_t)node, numCols);
/*
* Check to see if we're still projecting out tuples from a previous group
* tuple (because there is a function-returning-set in the projection

View File

@ -8,7 +8,7 @@
*
*
* IDENTIFICATION
* $PostgreSQL: pgsql/src/backend/executor/nodeHash.c,v 1.119 2009/04/02 19:14:33 momjian Exp $
* $PostgreSQL: pgsql/src/backend/executor/nodeHash.c,v 1.120 2009/04/02 20:59:10 momjian Exp $
*
*-------------------------------------------------------------------------
*/
@ -33,7 +33,6 @@
#include "executor/nodeHashjoin.h"
#include "miscadmin.h"
#include "parser/parse_expr.h"
#include "pg_trace.h"
#include "utils/dynahash.h"
#include "utils/memutils.h"
#include "utils/lsyscache.h"
@ -80,8 +79,6 @@ MultiExecHash(HashState *node)
ExprContext *econtext;
uint32 hashvalue;
TRACE_POSTGRESQL_EXECUTOR_HASH_MULTI((uintptr_t)node);
/* must provide our own instrumentation support */
if (node->ps.instrument)
InstrStartNode(node->ps.instrument);

View File

@ -8,7 +8,7 @@
*
*
* IDENTIFICATION
* $PostgreSQL: pgsql/src/backend/executor/nodeHashjoin.c,v 1.99 2009/04/02 19:14:33 momjian Exp $
* $PostgreSQL: pgsql/src/backend/executor/nodeHashjoin.c,v 1.100 2009/04/02 20:59:10 momjian Exp $
*
*-------------------------------------------------------------------------
*/
@ -19,7 +19,6 @@
#include "executor/hashjoin.h"
#include "executor/nodeHash.h"
#include "executor/nodeHashjoin.h"
#include "pg_trace.h"
#include "utils/memutils.h"
@ -62,8 +61,6 @@ ExecHashJoin(HashJoinState *node)
uint32 hashvalue;
int batchno;
TRACE_POSTGRESQL_EXECUTOR_HASHJOIN((uintptr_t)node);
/*
* get information from HashJoin node
*/

View File

@ -8,7 +8,7 @@
*
*
* IDENTIFICATION
* $PostgreSQL: pgsql/src/backend/executor/nodeLimit.c,v 1.37 2009/04/02 19:14:33 momjian Exp $
* $PostgreSQL: pgsql/src/backend/executor/nodeLimit.c,v 1.38 2009/04/02 20:59:10 momjian Exp $
*
*-------------------------------------------------------------------------
*/
@ -23,7 +23,6 @@
#include "executor/executor.h"
#include "executor/nodeLimit.h"
#include "pg_trace.h"
static void recompute_limits(LimitState *node);
@ -42,8 +41,6 @@ ExecLimit(LimitState *node)
TupleTableSlot *slot;
PlanState *outerPlan;
TRACE_POSTGRESQL_EXECUTOR_LIMIT((uintptr_t)node);
/*
* get information from the node
*/

View File

@ -8,7 +8,7 @@
*
*
* IDENTIFICATION
* $PostgreSQL: pgsql/src/backend/executor/nodeMaterial.c,v 1.67 2009/04/02 19:14:33 momjian Exp $
* $PostgreSQL: pgsql/src/backend/executor/nodeMaterial.c,v 1.68 2009/04/02 20:59:10 momjian Exp $
*
*-------------------------------------------------------------------------
*/
@ -24,7 +24,6 @@
#include "executor/executor.h"
#include "executor/nodeMaterial.h"
#include "miscadmin.h"
#include "pg_trace.h"
/* ----------------------------------------------------------------
* ExecMaterial
@ -46,8 +45,6 @@ ExecMaterial(MaterialState *node)
bool eof_tuplestore;
TupleTableSlot *slot;
TRACE_POSTGRESQL_EXECUTOR_MATERIAL((uintptr_t)node);
/*
* get state info from node
*/

View File

@ -8,7 +8,7 @@
*
*
* IDENTIFICATION
* $PostgreSQL: pgsql/src/backend/executor/nodeMergejoin.c,v 1.95 2009/04/02 19:14:33 momjian Exp $
* $PostgreSQL: pgsql/src/backend/executor/nodeMergejoin.c,v 1.96 2009/04/02 20:59:10 momjian Exp $
*
*-------------------------------------------------------------------------
*/
@ -98,7 +98,6 @@
#include "executor/execdefs.h"
#include "executor/nodeMergejoin.h"
#include "miscadmin.h"
#include "pg_trace.h"
#include "utils/acl.h"
#include "utils/lsyscache.h"
#include "utils/memutils.h"
@ -566,8 +565,6 @@ ExecMergeJoin(MergeJoinState *node)
bool doFillOuter;
bool doFillInner;
TRACE_POSTGRESQL_EXECUTOR_MERGEJOIN((uintptr_t)node);
/*
* get information from node
*/

View File

@ -8,7 +8,7 @@
*
*
* IDENTIFICATION
* $PostgreSQL: pgsql/src/backend/executor/nodeNestloop.c,v 1.51 2009/04/02 19:14:33 momjian Exp $
* $PostgreSQL: pgsql/src/backend/executor/nodeNestloop.c,v 1.52 2009/04/02 20:59:10 momjian Exp $
*
*-------------------------------------------------------------------------
*/
@ -23,7 +23,6 @@
#include "executor/execdebug.h"
#include "executor/nodeNestloop.h"
#include "pg_trace.h"
#include "utils/memutils.h"
@ -68,8 +67,6 @@ ExecNestLoop(NestLoopState *node)
List *otherqual;
ExprContext *econtext;
TRACE_POSTGRESQL_EXECUTOR_NESTLOOP((uintptr_t)node);
/*
* get information from the node
*/

View File

@ -37,7 +37,7 @@
*
*
* IDENTIFICATION
* $PostgreSQL: pgsql/src/backend/executor/nodeSetOp.c,v 1.29 2009/04/02 19:14:33 momjian Exp $
* $PostgreSQL: pgsql/src/backend/executor/nodeSetOp.c,v 1.30 2009/04/02 20:59:10 momjian Exp $
*
*-------------------------------------------------------------------------
*/
@ -46,7 +46,6 @@
#include "executor/executor.h"
#include "executor/nodeSetOp.h"
#include "pg_trace.h"
#include "utils/memutils.h"
@ -197,8 +196,6 @@ ExecSetOp(SetOpState *node)
SetOp *plannode = (SetOp *) node->ps.plan;
TupleTableSlot *resultTupleSlot = node->ps.ps_ResultTupleSlot;
TRACE_POSTGRESQL_EXECUTOR_SETOP((uintptr_t)node);
/*
* If the previously-returned tuple needs to be returned more than once,
* keep returning it.

View File

@ -8,7 +8,7 @@
*
*
* IDENTIFICATION
* $PostgreSQL: pgsql/src/backend/executor/nodeSort.c,v 1.64 2009/04/02 19:14:33 momjian Exp $
* $PostgreSQL: pgsql/src/backend/executor/nodeSort.c,v 1.65 2009/04/02 20:59:10 momjian Exp $
*
*-------------------------------------------------------------------------
*/
@ -18,7 +18,6 @@
#include "executor/execdebug.h"
#include "executor/nodeSort.h"
#include "miscadmin.h"
#include "pg_trace.h"
#include "utils/tuplesort.h"
@ -54,8 +53,6 @@ ExecSort(SortState *node)
dir = estate->es_direction;
tuplesortstate = (Tuplesortstate *) node->tuplesortstate;
TRACE_POSTGRESQL_EXECUTOR_SORT((uintptr_t)node, dir);
/*
* If first time through, read all tuples from outer plan and pass them to
* tuplesort.c. Subsequent calls just fetch tuples from tuplesort.

View File

@ -7,7 +7,7 @@
* Portions Copyright (c) 1994, Regents of the University of California
*
* IDENTIFICATION
* $PostgreSQL: pgsql/src/backend/executor/nodeSubplan.c,v 1.97 2009/04/02 19:14:33 momjian Exp $
* $PostgreSQL: pgsql/src/backend/executor/nodeSubplan.c,v 1.98 2009/04/02 20:59:10 momjian Exp $
*
*-------------------------------------------------------------------------
*/
@ -24,7 +24,6 @@
#include "executor/nodeSubplan.h"
#include "nodes/makefuncs.h"
#include "optimizer/clauses.h"
#include "pg_trace.h"
#include "utils/array.h"
#include "utils/lsyscache.h"
#include "utils/memutils.h"
@ -93,8 +92,6 @@ ExecHashSubPlan(SubPlanState *node,
ExprContext *innerecontext = node->innerecontext;
TupleTableSlot *slot;
TRACE_POSTGRESQL_EXECUTOR_SUBPLAN_HASH((uintptr_t)node);
/* Shouldn't have any direct correlation Vars */
if (subplan->parParam != NIL || node->args != NIL)
elog(ERROR, "hashed subplan with direct correlation not supported");
@ -230,8 +227,6 @@ ExecScanSubPlan(SubPlanState *node,
ListCell *l;
ArrayBuildState *astate = NULL;
TRACE_POSTGRESQL_EXECUTOR_SUBPLAN_SCAN((uintptr_t)node);
/*
* We are probably in a short-lived expression-evaluation context. Switch
* to the per-query context for manipulating the child plan's chgParam,

View File

@ -16,7 +16,7 @@
*
*
* IDENTIFICATION
* $PostgreSQL: pgsql/src/backend/executor/nodeUnique.c,v 1.59 2009/04/02 19:14:33 momjian Exp $
* $PostgreSQL: pgsql/src/backend/executor/nodeUnique.c,v 1.60 2009/04/02 20:59:10 momjian Exp $
*
*-------------------------------------------------------------------------
*/
@ -35,7 +35,6 @@
#include "executor/executor.h"
#include "executor/nodeUnique.h"
#include "pg_trace.h"
#include "utils/memutils.h"
@ -51,8 +50,6 @@ ExecUnique(UniqueState *node)
TupleTableSlot *slot;
PlanState *outerPlan;
TRACE_POSTGRESQL_EXECUTOR_UNIQUE((uintptr_t)node);
/*
* get information from the node
*/

View File

@ -3,7 +3,7 @@
*
* Copyright (c) 2006-2009, PostgreSQL Global Development Group
*
* $PostgreSQL: pgsql/src/backend/utils/probes.d,v 1.10 2009/04/02 19:14:34 momjian Exp $
* $PostgreSQL: pgsql/src/backend/utils/probes.d,v 1.11 2009/04/02 20:59:10 momjian Exp $
* ----------
*/
@ -15,7 +15,6 @@
* in probe definitions, as they cause compilation errors on Mac OS X 10.5.
*/
#define LocalTransactionId unsigned int
#define TransactionId unsigned int
#define LWLockId int
#define LWLockMode int
#define LOCKMODE int
@ -91,29 +90,4 @@ provider postgresql {
probe xlog__switch();
probe wal__buffer__write__dirty__start();
probe wal__buffer__write__dirty__done();
probe slru__readpage__start(unsigned long, int, bool, TransactionId);
probe slru__readpage__done(int);
probe slru__readpage__readonly(unsigned long, int, TransactionId);
probe slru__writepage__start(unsigned long, int, int);
probe slru__writepage__done();
probe slru__readpage__physical__start(unsigned long, char *, int, int);
probe slru__readpage__physical__done(int, int, int);
probe slru__writepage__physical__start(unsigned long, int, int);
probe slru__writepage__physical__done(int, int, int);
probe executor__scan(unsigned long, unsigned int, unsigned long);
probe executor__agg(unsigned long, int);
probe executor__group(unsigned long, int);
probe executor__hash__multi(unsigned long);
probe executor__hashjoin(unsigned long);
probe executor__limit(unsigned long);
probe executor__material(unsigned long);
probe executor__mergejoin(unsigned long);
probe executor__nestloop(unsigned long);
probe executor__setop(unsigned long);
probe executor__sort(unsigned long, int);
probe executor__subplan__hash(unsigned long);
probe executor__subplan__scan(unsigned long);
probe executor__unique(unsigned long);
};