 *		(wb)intotyp - used by WriteSetCollectTuple
./access/common/printtup.c
	Buffer		wbuf;
	BlockNumber wblkno;
	wblkno = BUCKET_TO_BLKNO(bucket);
	wbuf = _hash_getbuf(rel, wblkno, HASH_WRITE);
	wpage = BufferGetPage(wbuf);
		_hash_relbuf(rel, wbuf, HASH_WRITE);
			wblkno = wopaque->hasho_nextblkno;
			_hash_wrtbuf(rel, wbuf);
			if (!BlockNumberIsValid(wblkno) || (rblkno == wblkno))
				/* wbuf is already released */
			wbuf = _hash_getbuf(rel, wblkno, HASH_WRITE);
			wpage = BufferGetPage(wbuf);
			if (rblkno == wblkno)
				_hash_wrtbuf(rel, wbuf);
./access/hash/hashovfl.c
	 *	(wb) locks must not be set if we insert into the target relation
					*	(wb) Insert operations also have to set read locks
	 *	(wb) lock must not be set if the target relation is
	 *	(wb) lock must not be set if the target relation is
./access/heap/heapam.c
					BTItem		newbti = _bt_tapenext(itape, &tapepos[t]);
					if (newbti == (BTItem) NULL)
							newbti = _bt_tapenext(itape, &tapepos[t]);
					if (newbti != (BTItem) NULL)
						_bt_setsortkey(index, newbti, &(nexte.btpqe_item));
./access/nbtree/nbtsort.c
/*included for replication (wb 17.12.98)*/
	 *	(wb) Mark aborted reading txn's in case of remote bknd
	 * (wb get the process off all wait queues
	 *	(wb) added write set destroy
			 *		(wb) In this case, the write set has already been processed
			 *		(wb) write set must be dispatched in
		 *	(wb) The write set must be sent and processed in case 
* 	replicateWriteSet (wb)
./access/transam/xact.c
#include "catalog/catalog.h" //(wb)
		 *	(wb) lock must not be set if the target relation is the current
*	ExecProcessCollection (remote backend)  (wb)
./executor/execMain.c
	int			newbatch;
	newbatch = hashtable->curbatch + 1;
	if (newbatch == 1)
	if (newbatch > 1)
		FileUnlink(outerBatches[newbatch - 2]);
	while (newbatch <= nbatch && innerBatchSizes[newbatch - 1] == 0)
		FileUnlink(outerBatches[newbatch - 1]);
		FileUnlink(innerBatches[newbatch - 1]);
		newbatch++;
	if (newbatch > nbatch)
		return newbatch;
	ExecHashTableReset(hashtable, innerBatchSizes[newbatch - 1]);
											 innerBatches[newbatch - 1],
	FileUnlink(innerBatches[newbatch - 1]);
	hashtable->curbatch = newbatch;
	return newbatch;
./executor/nodeHashjoin.c
*	(wb) bufferedSock.c provides buffered sockets
	char *newbuf = NULL;
			newbuf = realloc(extbuf->buf, extbuf->buflen);
			if(newbuf)
				extbuf->buf = newbuf;
./libpq/bufferedSock.c
lowrite(int fd, struct varlena * wbuf)
	bytestowrite = VARSIZE(wbuf) - VARHDRSZ;
	totalwritten = lo_write(fd, VARDATA(wbuf), bytestowrite);
./libpq/be-fsstubs.c
				*	replication mgr should be started (wb)
	*	Replication manager startup (wb)
*	RmgrStartup (wb)
*	DoGroupComm (wb)
*	DoReplicaMgr (wb)
./postmaster/postmaster.c
*	replicaManager.c - The replication manager (wb)
./replication/replicaManager.c
*	pg_transis.c (wb)
./replication/pg_transis.c
 * 	writeset.c - writeset processing (wb)
./replication/writeset.c
*	rmgrLib.c - the replication manager communication library (wb)
./replication/rmgrLib.c
*	replicaManager.c - The replication manager (wb)
./replication/replicaManager-old.c
	bool		newblock = FALSE;
		newblock = TRUE;
./storage/buffer/bufmgr.c
	retval->offset = retval->lowbyte =
	retval->offset = retval->lowbyte = retval->highbyte = 0;
	if (offset >= obj_desc->lowbyte
		off = obj_desc->offset - obj_desc->lowbyte;
		|| obj_desc->offset < obj_desc->lowbyte
	obj_desc->lowbyte = firstbyte;
	Buffer		newbuf;
	if (obj_desc->offset == obj_desc->lowbyte
		&& obj_desc->lowbyte + nbytes >= obj_desc->highbyte)
	newbuf = buffer;
	newpage = BufferGetPage(newbuf);
			newbuf = ReadBuffer(hr, nblocks - 1);
			newbuf = ReadBuffer(hr, P_NEW);
		newpage = BufferGetPage(newbuf);
			ReleaseBuffer(newbuf);
			newbuf = ReadBuffer(hr, P_NEW);
			newpage = BufferGetPage(newbuf);
			PageInit(newpage, BufferGetPageSize(newbuf), 0);
	memmove(VARDATA(fsblock) + (obj_desc->offset - obj_desc->lowbyte),
	 * the lowbyte of the original block before jumping into
	obj_desc->offset = obj_desc->lowbyte;
	ntup = inv_newtuple(obj_desc, newbuf, newpage, VARDATA(fsblock),
	ntup = inv_newtuple(obj_desc, newbuf, newpage, (char *) NULL, tupbytes);
	if (obj_desc->offset > obj_desc->lowbyte) {
				obj_desc->offset - obj_desc->lowbyte);
		dptr += obj_desc->offset - obj_desc->lowbyte;
		sz = obj_desc->highbyte - (obj_desc->lowbyte + loc);
	if (newbuf != buffer)
		WriteBuffer(newbuf);
	obj_desc->lowbyte = obj_desc->offset;
./storage/large_object/inv_api.c
 * (wb)
* (wb)
 * 	(wb)
	* (wb) Don't continue if already aborted... ATTN: Aborting here may generate an abort in subsequent
		* (wb) initialize granted queue
		* (wb) initialize links for granted list
		 * 	(wb) 
			* (wb) initialize granted list pointers
		 * (wb) This has been modified to fit the process shadow scheme
*	(wb)
	* (wb) if the request mode is not REQ_SINGLE, the process must 
		* (wb) remove xid entry from granted list
		* (wb) remove also from granted list
 * (wb) modified to fit the process shadow scheme
./storage/lmgr/lock.c
 *	1/19/99 -- (wb) Altered process management in order to allow one process to
/* (wb) Prototypes for process shadow creation and deletion*/
 * (wb) Attaches to the process shadow table
	/*(wb) attach to the process shadow table*/
	* (wb)
*	(wb) GetShadow
*	(wb)
*	MarkAbortedReaders (wb)
*	RegisterAbortRequests (wb)
	 * (wb)
 * (wb)
		* (wb) The wait queue discipline has been changed. When inserting a
				break; //(wb) handles the special case (see above comment)
 * (wb) This function is now only responsible for putting
	* (wb) 
*	(wb)
 *	 (wb) This operation is now performed on shadows
 *	(wb) modified to support process shadows
 *	(wb) modified to work on shadows...
	 *	Note(wb, 12/03/98): 	
*	(wb)
./storage/lmgr/proc.c
	int			newblks;
	newblks = nblocks;
		if ((newblks = (*(smgrsw[which].smgr_truncate)) (reln, nblocks)) < 0)
	return newblks;
./storage/smgr/smgr.c
 *	last change: 1998/11/30, wb,  modified
				* r - start up in replication mode (remote)(wb)
				* r - start up as replicated txn (local) (wb)
		*	txn_type == REPLICATED_REMOTE (wb)
	 * replicated transactions (wb)
							* this query must be added to the write set (wb)
							*	correctly (wb)
./tcop/postgres.c
			   *newbi;
	newbi = &new_seg[new_segndx];
			*newbi = chainIndex;
			newbi = &chain->next;
./utils/hash/dynahash.c
 *	last change 1998/11/27, wb, added GotoReplicaMode boolean. This boolean indicates wether the 
#include "replication/writeset.h" //(wb) added for MyWriteSet
*	 3 globals needed when replicating (wb)
./utils/init/globals.c
	*	and exit callbacks must be registered (wb)
./utils/init/postinit.c
