Robert Treat <xzilla@users.sourceforge.net> writes:
> Doing some testing with 8.5alpha3, my standby crashed this morning whilst
> doing some testing. Seems I have a core file, so thought I would send a report.
Hmm. Looks like it's crashing because DatabasePath is not set yet.
We could probably kluge around that by having this function return
without doing anything if DatabasePath is null, but I wonder if this
doesn't indicate that things are being done in the wrong order.
If DatabasePath isn't set, then there's a whole lot of other
infrastructure that's not good either:
> Current function is RelationCacheInitFileInvalidate
> 4237 snprintf(initfilename, sizeof(initfilename), "%s/%s",
> 4238 DatabasePath, RELCACHE_INIT_FILENAME);
> (dbx) where
> [1] strlen(0x0), at 0xfedb578c
> [2] _ndoprnt(0x8417d81, 0x8042e7c, 0x8042e50, 0x0), at 0xfee0d976
> [3] snprintf(0x8042e90, 0x400, 0x8417d7f, 0x0, 0x8417d30, 0x2f676f6c,
> 0x4f434552, 0x59524556), at 0xfee10734
> =>[4] RelationCacheInitFileInvalidate(beforeSend = '\0'), line 4237 in
> "relcache.c"
> [5] xact_redo_commit(xlrec = 0x84ed434, xid = 0, lsn = RECORD), line 4414 in
> "xact.c"
> [6] StartupXLOG(), line 5834 in "xlog.c"
> [7] StartupProcessMain(), line 8359 in "xlog.c"
> [8] AuxiliaryProcessMain(argc = 2, argv = 0x80475e0), line 408 in
> "bootstrap.c"
> [9] StartChildProcess(type = 134510104), line 4218 in "postmaster.c"
> [10] PostmasterMain(argc = 3, argv = 0x84c6e00), line 1061 in "postmaster.c"
> [11] main(argc = 3, argv = 0x84c6e00), line 188 in "main.c"
regards, tom lane