Hi all,
in order to debug "step by step" the postmaster,
just to understand better the code, is it enough
to compile it after having exported:

CFLAGS='-O0 -g' ?

do you have any hint and/or tips ?

BTW what do you use for this task ?

Regards
Gaetano Mendola




Mon, 23 Aug 2004 18:27:24 +0200
Gaetano Mendola <mendola@bigfoot.com>
debuging postgres
> in order to debug "step by step" the postmaster,
> just to understand better the code, is it enough
> to compile it after having exported:
> 
> CFLAGS='-O0 -g' ?
> 
> do you have any hint and/or tips ?
> 
> BTW what do you use for this task ?

./configure --enable-debug

Chris


Tue, 24 Aug 2004 09:14:21 +0800
Christopher Kings-Lynne <chriskl@familyhealth.com.au>
Re: debuging postgres
Christopher Kings-Lynne wrote:

>> in order to debug "step by step" the postmaster,
>> just to understand better the code, is it enough
>> to compile it after having exported:
>>
>> CFLAGS='-O0 -g' ?
>>
>> do you have any hint and/or tips ?
>>
>> BTW what do you use for this task ?
> 
> 
> ./configure --enable-debug

Is this enough? I'm seeing that with --enable-debug only the
option -g is passed to the compiler and the option -O2 is
still there, is it not better compile with -O0 if you are
going to debug it?


Regards
Gaetano Mendola









Tue, 24 Aug 2004 13:29:43 +0200
Gaetano Mendola <mendola@bigfoot.com>
Re: debuging postgres
Gaetano Mendola <mendola@bigfoot.com> writes:
> Christopher Kings-Lynne wrote:
>> ./configure --enable-debug

> Is this enough? I'm seeing that with --enable-debug only the
> option -g is passed to the compiler and the option -O2 is
> still there, is it not better compile with -O0 if you are
> going to debug it?

If you want to single-step through the code a lot, then -O0 is good.
But are you really gonna do that so much?  I do most of my tracing
at the level of function calls.

I tend to use -O1 as a compromise setting --- the code isn't totally
scrambled but it doesn't run like a dog either.  (Also, for development
purposes, -O0 is evil because it disables certain useful warnings in
gcc.)

			regards, tom lane

Tue, 24 Aug 2004 12:42:22 -0400
Tom Lane <tgl@sss.pgh.pa.us>
Re: debuging postgres 
Tom Lane wrote:

 > Gaetano Mendola <mendola@bigfoot.com> writes:
 >
 >>Christopher Kings-Lynne wrote:
 >>
 >>>./configure --enable-debug
 >
 >
 >>Is this enough? I'm seeing that with --enable-debug only the
 >>option -g is passed to the compiler and the option -O2 is
 >>still there, is it not better compile with -O0 if you are
 >>going to debug it?
 >
 >
 > If you want to single-step through the code a lot, then -O0 is good.
 > But are you really gonna do that so much?  I do most of my tracing
 > at the level of function calls.

Of course not, but given that I don't know nothing I guess at the
beginning in order to see what is going on and understand how the code
work I need to "inspect" some variables some times.

 > I tend to use -O1 as a compromise setting --- the code isn't totally
 > scrambled but it doesn't run like a dog either.  (Also, for development
 > purposes, -O0 is evil because it disables certain useful warnings in
 > gcc.)

Thank you for the advice.


Regards
Gaetano Mendola





Tue, 24 Aug 2004 20:39:37 +0200
Gaetano Mendola <mendola@bigfoot.com>
Re: debuging postgres
> Is this enough? I'm seeing that with --enable-debug only the
> option -g is passed to the compiler and the option -O2 is
> still there, is it not better compile with -O0 if you are
> going to debug it?

Well, I use the following:

./configure --prefix=blah --enable-debug --enable-cassert 
--enable-depend --with-openssl --with-perl --with-pam

(Or something like that)

My theory is that the more I compile in the more that gets tested :)

Chris


Wed, 25 Aug 2004 09:41:27 +0800
Christopher Kings-Lynne <chriskl@familyhealth.com.au>
Re: debuging postgres