Re: I am confused after reading codes of PostgreSQL three week - Mailing list pgsql-hackers

From Kevin Grittner
Subject Re: I am confused after reading codes of PostgreSQL three week
Date
Msg-id 4D81E74D020000250003BA30@gw.wicourts.gov
Whole thread Raw
In response to I am confused after reading codes of PostgreSQL three week  (hom <obsidianhom@gmail.com>)
Responses Re: I am confused after reading codes of PostgreSQL three week
Re: I am confused after reading codes of PostgreSQL three week
List pgsql-hackers
hom <obsidianhom@gmail.com> wrote:
> I try to known how a database is implemented and I have been
> reading PG source codes for a month.
That's ambitious.
find -name '*.h' -or -name '*.c' \ | egrep -v '^\./src/test/.+/tmp_check/' \ | xargs cat | wc -l
1059144
Depending on how you do the math, that's about 50,000 lines of code
per day to get through it in the time you mention.
> Is there any article or some way could help understand the source
> code ?
Your best bet would be to follow links from the Developers tab on
the main PostgreSQL web site:
http://www.postgresql.org/developer/
In particular the Developer FAQ page:
http://wiki.postgresql.org/wiki/Developer_FAQ
And the "Coding" links:
http://www.postgresql.org/developer/coding
may help.
Before reading code in a directory, be sure to read any README
file(s) in that directory carefully.
It helps to read this list.
In spite of reviewing all of that myself, it was rather intimidating
when I went to work on a major patch 14 months ago.  Robert Haas
offered some good advice which served me well in that effort --
divide the effort in to a series of incremental steps, each of which
deals with a small enough portion of the code to get your head
around.  As you work in any one narrow area, it becomes increasingly
clear; with that as a base you can expand your scope.
When you're working in the code, it is tremendously helpful to use
an editor with ctags support (or similar IDE functionality).
I hope this is helpful.  Good luck.
-Kevin


pgsql-hackers by date:

Previous
From: Bruce Momjian
Date:
Subject: Re: I am confused after reading codes of PostgreSQL three week
Next
From: Robert Haas
Date:
Subject: Re: Re: [COMMITTERS] pgsql: Basic Recovery Control functions for use in Hot Standby. Pause,