1
0
mirror of https://github.com/postgres/postgres.git synced 2025-07-30 11:03:19 +03:00

Up to now, SerializableSnapshot and QuerySnapshot are malloc'ed and

free'd for every transaction or statement, respectively.  This patch
puts these data structures into static memory, thus saving a few CPU
cycles and two malloc calls per transaction or (in isolation level
READ COMMITTED) per query.

Manfred Koizar
This commit is contained in:
Bruce Momjian
2003-06-12 01:42:21 +00:00
parent 752a4dac50
commit acd1536d9f
3 changed files with 30 additions and 33 deletions

View File

@ -8,7 +8,7 @@
* Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
* $Id: tqual.h,v 1.44 2003/02/23 23:20:52 tgl Exp $
* $Id: tqual.h,v 1.45 2003/06/12 01:42:21 momjian Exp $
*
*-------------------------------------------------------------------------
*/
@ -113,7 +113,7 @@ extern int HeapTupleSatisfiesUpdate(HeapTuple tuple,
extern HTSV_Result HeapTupleSatisfiesVacuum(HeapTupleHeader tuple,
TransactionId OldestXmin);
extern Snapshot GetSnapshotData(bool serializable);
extern Snapshot GetSnapshotData(Snapshot snapshot, bool serializable);
extern void SetQuerySnapshot(void);
extern Snapshot CopyQuerySnapshot(void);
extern void FreeXactSnapshot(void);