On 28 July 2017 at 07:45, Tom Lane <t...@sss.pgh.pa.us> wrote: > Peter Geoghegan <p...@bowt.ie> writes: > > 2. Start somewhere. I have no idea where that should be, but it has to > > be some particular place that seems interesting to you. > > Don't forget to start with the available documentation, ie > https://www.postgresql.org/docs/devel/static/internals.html > You should certainly read > https://www.postgresql.org/docs/devel/static/overview.html > and depending on what your interests are, there are probably other > chapters of Part VII that are worth your time. > > Also keep an eye out for README files in the part of the source > tree you're browsing in.
In fact, even though you won't initially understand much from some of them, reading most of find src/ -name README\* can be quite useful. It's nearly time for me to do that again myself; each time I absorb more. There are very useful comments at the start of some of the source files too. Unfortunately in some cases the really important explanation will be on some function that you won't know to look for, not the comment at the top of the file, so there's an element of discovery there. I'd start with the docs as Tom suggested, then * https://www.postgresql.org/developer/ * https://momjian.us/main/presentations/internals.html * https://wiki.postgresql.org/wiki/Development_information * https://wiki.postgresql.org/wiki/So,_you_want_to_be_a_developer%3F * https://wiki.postgresql.org/wiki/Developer_FAQ (some of which need to be added to the "developer information" wiki page I think) -- Craig Ringer http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Training & Services