Add timeline for next release to developer's FAQ.

This commit is contained in:
Bruce Momjian 2006-12-19 22:37:37 +00:00
parent f528e242fc
commit 1cacb3a098
2 changed files with 85 additions and 40 deletions

View File

@ -1,7 +1,7 @@
Developer's Frequently Asked Questions (FAQ) for PostgreSQL Developer's Frequently Asked Questions (FAQ) for PostgreSQL
Last updated: Mon Nov 13 23:18:46 EST 2006 Last updated: Tue Dec 19 17:37:24 EST 2006
Current maintainer: Bruce Momjian (bruce@momjian.us) Current maintainer: Bruce Momjian (bruce@momjian.us)
@ -30,6 +30,7 @@ General Questions
1.16) Where can I get a copy of the SQL standards? 1.16) Where can I get a copy of the SQL standards?
1.17) Where can I get technical assistance? 1.17) Where can I get technical assistance?
1.18) How do I get involved in PostgreSQL web site development? 1.18) How do I get involved in PostgreSQL web site development?
1.19) What is the timeline for the next major PostgreSQL release?
Technical Questions Technical Questions
@ -796,3 +797,24 @@ typedef struct nameData
pgsql/data directory. The client profile file will be put in the pgsql/data directory. The client profile file will be put in the
client's current directory. Linux requires a compile with client's current directory. Linux requires a compile with
-DLINUX_PROFILE for proper profiling. -DLINUX_PROFILE for proper profiling.
2.9) What is the timeline for the next major PostgreSQL release?
The development schedule for the 8.3 release is:
March 1, 2006
Initial community review of all major feature patches
April 1, 2006
Feature freeze, all patches must be submitted for review and
application
mid-May, 2006
All patches applied, beta testing begins
July, 2006
Release of 8.3.0
Patches that appear after appropriate dates are typically not applied
but held for the next major release.

View File

@ -13,7 +13,7 @@
<H1>Developer's Frequently Asked Questions (FAQ) for <H1>Developer's Frequently Asked Questions (FAQ) for
PostgreSQL</H1> PostgreSQL</H1>
<P>Last updated: Mon Nov 13 23:18:46 EST 2006</P> <P>Last updated: Tue Dec 19 17:37:24 EST 2006</P>
<P>Current maintainer: Bruce Momjian (<A href= <P>Current maintainer: Bruce Momjian (<A href=
"mailto:bruce@momjian.us">bruce@momjian.us</A>)<BR> "mailto:bruce@momjian.us">bruce@momjian.us</A>)<BR>
@ -55,6 +55,8 @@
assistance?<BR> assistance?<BR>
<A href="#item1.18">1.18</A>) How do I get involved in PostgreSQL web <A href="#item1.18">1.18</A>) How do I get involved in PostgreSQL web
site development?<BR> site development?<BR>
<A href="#item1.19">1.19</A>) What is the timeline for the next major
PostgreSQL release?<BR>
<H2>Technical Questions</H2> <H2>Technical Questions</H2>
@ -937,57 +939,78 @@
<H3 id="item2.7">2.7) What is CommandCounterIncrement()?</H3> <H3 id="item2.7">2.7) What is CommandCounterIncrement()?</H3>
<P>Normally, transactions can not see the rows they modify. This <P>Normally, transactions can not see the rows they modify.
allows <CODE>UPDATE foo SET x = x + 1</CODE> to work correctly.</P> This allows <CODE>UPDATE foo SET x = x + 1</CODE> to work
correctly.</P>
<P>However, there are cases where a transactions needs to see rows <P>However, there are cases where a transactions needs to see
affected in previous parts of the transaction. This is accomplished rows affected in previous parts of the transaction. This is
using a Command Counter. Incrementing the counter allows accomplished using a Command Counter. Incrementing the counter
transactions to be broken into pieces so each piece can see rows allows transactions to be broken into pieces so each piece can
modified by previous pieces. <I>CommandCounterIncrement()</I> see rows modified by previous pieces. <I>CommandCounterIncrement()</I>
increments the Command Counter, creating a new part of the increments the Command Counter, creating a new part of the
transaction.</P> transaction.</P>
<H3 id="item2.8">2.8) What debugging features are <H3 id="item2.8">2.8) What debugging features are available?</H3>
available?</H3>
<P>First, try running <I>configure</I> with the --enable-cassert <P>First, try running <I>configure</I> with the --enable-cassert
option, many <I>assert()</I>s monitor the progress of the backend option, many <I>assert()</I>s monitor the progress of the
and halt the program when something unexpected occurs.</P> backend and halt the program when something unexpected occurs.</P>
<P>The <I>postmaster</I> has a <I>-d</I> option that allows even more <P>The <I>postmaster</I> has a <I>-d</I> option that allows
detailed information to be reported. The <I>-d</I> option takes a even more detailed information to be reported. The <I>-d</I>
number that specifies the debug level. Be warned that high debug option takes a number that specifies the debug level. Be warned
level values generate large log files.</P> that high debug level values generate large log files.</P>
<P>If the <I>postmaster</I> is not running, you can actually run the <P>If the <I>postmaster</I> is not running, you can actually
<I>postgres</I> backend from the command line, and type your run the <I>postgres</I> backend from the command line, and type
<SMALL>SQL</SMALL> statement directly. This is recommended your <SMALL>SQL</SMALL> statement directly. This is recommended
<B>only</B> for debugging purposes. If you have compiled with debugging <B>only</B> for debugging purposes. If you have compiled with
symbols, you can use a debugger to see what is happening. Because debugging symbols, you can use a debugger to see what is
the backend was not started from <I>postmaster</I>, it is not happening. Because the backend was not started from <I>postmaster</I>,
running in an identical environment and locking/backend interaction it is not running in an identical environment and locking/backend
problems might not be duplicated.</P> interaction problems might not be duplicated.</P>
<P>If the <I>postmaster</I> is running, start <I>psql</I> in one <P>If the <I>postmaster</I> is running, start <I>psql</I> in
window, then find the <SMALL>PID</SMALL> of the <I>postgres</I> one window, then find the <SMALL>PID</SMALL> of the <I>postgres</I>
process used by <I>psql</I> using <CODE>SELECT pg_backend_pid()</CODE>. process used by <I>psql</I> using <CODE>SELECT pg_backend_pid()</CODE>.
Use a debugger to attach to the <I>postgres</I> <SMALL>PID</SMALL>. Use a debugger to attach to the <I>postgres</I> <SMALL>PID</SMALL>.
You can set breakpoints in the debugger and issue queries from the You can set breakpoints in the debugger and issue queries from
other. If you are looking to find the location that is generating the other. If you are looking to find the location that is
an error or log message, set a breakpoint at <I>errfinish</I>. generating an error or log message, set a breakpoint at
<I>errfinish</I>.
<I>psql</I>. If you are debugging <I>postgres</I> startup, you can <I>psql</I>. If you are debugging <I>postgres</I> startup, you
set PGOPTIONS="-W n", then start <I>psql</I>. This will cause startup can set PGOPTIONS="-W n", then start <I>psql</I>. This will
to delay for <I>n</I> seconds so you can attach to the process with cause startup to delay for <I>n</I> seconds so you can attach
the debugger, set any breakpoints, and continue through the startup to the process with the debugger, set any breakpoints, and
sequence.</P> continue through the startup sequence.</P>
<P>You can also compile with profiling to see what functions
are taking execution time. The backend profile files will be
deposited in the <I>pgsql/data</I> directory. The client profile
file will be put in the client's current directory. Linux
requires a compile with <I>-DLINUX_PROFILE</I> for proper
profiling.</P>
<H3 id="item2.9">2.9) What is the timeline for the next major
PostgreSQL release?<BR>
<P>The development schedule for the 8.3 release is:</P>
<DL>
<DD>March 1, 2006</DD>
<DT>Initial community review of all major feature patches</DT>
<DD>April 1, 2006</DD>
<DT>Feature freeze, all patches must be submitted for review and application</DT>
<DD>mid-May, 2006</DD>
<DT>All patches applied, beta testing begins</DT>
<DD>July, 2006</DD>
<DT>Release of 8.3.0</DT>
</DL>
<P>Patches that appear after appropriate dates are typically
not applied but held for the next major release.</P>
<P>You can also compile with profiling to see what functions are
taking execution time. The backend profile files will be deposited
in the <I>pgsql/data</I> directory. The client profile file will be
put in the client's current directory. Linux requires a compile with
<I>-DLINUX_PROFILE</I> for proper profiling.</P>
</BODY> </BODY>
</HTML> </HTML>