clog 就是 commit log
用来记录事物最终状态的日志,放在数据库目录的pg_clog下面,
PG中,每一个事务的事务号是一个32的整数,有三个是比较特殊的
有四种状态,每个状态只需要两位就可以表示,
这样当事务提交时,就可以把事务的状态存在一个独立的日志文件中,文件中每两位在文件中的位置对应事务ID
实际的实现中,是通过一个LRU算法,从共享内存分出8个页面来实现的。
clog 就是 commit log
用来记录事物最终状态的日志,放在数据库目录的pg_clog下面,
PG中,每一个事务的事务号是一个32的整数,有三个是比较特殊的
有四种状态,每个状态只需要两位就可以表示,
这样当事务提交时,就可以把事务的状态存在一个独立的日志文件中,文件中每两位在文件中的位置对应事务ID
实际的实现中,是通过一个LRU算法,从共享内存分出8个页面来实现的。