slony1-bugs at lists.slony.info slony1-bugs at lists.slony.info
Fri Mar 13 15:51:04 PDT 2009
http://www.slony.info/bugzilla/show_bug.cgi?id=71


César Acuña <cjacuna at gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |cjacuna at gmail.com




--- Comment #3 from César Acuña <cjacuna at gmail.com>  2009-03-13 15:51:04 ---
Chris... sorry for the late response. 

I managed to narrow the problem to the function void dump_configuration(void)
in src/slon/confoptions.c


void
dump_configuration(void)
{
        int                     i;

        for (i = 0; ConfigureNamesInt[i].gen.name; i++)
        {
                slon_log(SLON_CONFIG, "main: Integer option %s = %d\n",
                        ConfigureNamesInt[i].gen.name,
*(ConfigureNamesInt[i].variable));
        }
        for (i = 0; ConfigureNamesBool[i].gen.name; i++)
        {
                slon_log(SLON_CONFIG, "main: Boolean option %s = %d\n",
                  ConfigureNamesBool[i].gen.name,
*(ConfigureNamesBool[i].variable));
        }

        for (i = 0; ConfigureNamesReal[i].gen.name; i++)
        {
                slon_log(SLON_CONFIG, "main: Real option %s = %f\n",
                  ConfigureNamesReal[i].gen.name,
*(ConfigureNamesReal[i].variable));
        }

        for (i = 0; ConfigureNamesString[i].gen.name; i++)
        {
--> Here           //slon_log(SLON_CONFIG, "main: String option %s = %s\n",
                                 ConfigureNamesString[i].gen.name,
*(ConfigureNamesString[i].variable));
        }
}


I commented out the line

slon_log(SLON_CONFIG, "main: String option %s = %s\n",
         ConfigureNamesString[i].gen.name,
*(ConfigureNamesString[i].variable));

and everything works fine.

Doing a little debugging, I found out that the problem arises when it tries to
dump to the log the content of the following configuration variables:

pid_file
archive_dir
sql_on_connection
lag_interval
command_on_logarchive


I appreciate the time you devoted to this problem.

Greetings,

César Acuña


(In reply to comment #2)
> Do you get any output before the crash, or is it buffered, and therefore lost?
> 
> That crash takes place while it's logging the set of configuration parameters
> to the slon log (file, or standard output).
> 
> If you have a way to capture the output in an unbuffered fashion, that would be
> pretty useful, as that would let us get closer to finding where it fails.
> 
> *Apparently*, as it's trying to dump the config parameters, one of them is
> failing to be accessed properly, hence the seg fault.  Perhaps one of them
> isn't properly enough initialized, and it would seem a mighty good thing if we
> can figure out at what point the failure takes place.
> 
> I'm not so familiar with Solaris; can you submit output to an unbuffered
> destination so that you capture as much log as possible?  If you can do that,
> that should make it pretty easy to track down where the problem would take
> place.
> 


-- 
Configure bugmail: http://www.slony.info/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
You are the assignee for the bug.


More information about the Slony1-bugs mailing list