摘要: postgres.h是postgresql数据库服务器端各个主要模块代码都会包含的一个头文件。这个头文件中包含了服务器端广泛使用的变量的声明,因此,首先分析这个文件对阅读整个源码有很大的帮助。postgres.h又包含了三个头文件:c.h:一些简单类型的定义,其中包括很多typedef和一些简单的struct。utils/elog.h:一些错误报告和日志的定义。utils/palloc.h:定义了... 阅读全文
posted @ 2010-01-18 22:06 电信415实验室 阅读(1733) 评论(0) 推荐(1)
摘要: 上次我分析了PostgreSQL存储系统页面管理的页面初始化函数PageInit,接下来的工作量相当大,由于源码有几十万行,如果像上次一样逐条语句分析的话,那么整体的篇幅是相当巨大的,语言也不容易组织。因此接下来的工作我准备对于每一个.c或者.h文件 的每个数据结构以及函数等整体代码块作出整体分析。下面我来对backend/storage/page/bufpage.c 中的剩余函数进行分析: 紧接... 阅读全文
posted @ 2010-01-18 20:30 电信415实验室 阅读(1221) 评论(0) 推荐(0)
摘要: 步骤:1.显而易见,我们第一步的任务是编译PostgreSQL源代码,将压缩的源代码解压缩,具体怎么做就不用我说了吧,解压缩后的文件夹是postgresql-8.1.1.进入该文件夹后首先要执行的是configure,用于产生Makefile文件,执行命令./configure --enable-debug --enable-assert --without-readline --without-... 阅读全文
posted @ 2010-01-18 16:49 电信415实验室 阅读(1115) 评论(0) 推荐(0)