HEAD built with msvc++ crashes on initdb. I'd appreciate any pointers as
to where to start looking...
Unhandled exception at 0x0046b9c7 in postgres.exe: 0xC0000005: Access
violation reading location 0x000006b3.
Backtrace:
> postgres.exe!_bt_start_vacuum(RelationData * rel=0x0000067f)
Line 1000 + 0x3 bytes C postgres.exe!btbulkdelete(FunctionCallInfoData *
fcinfo=0x00d2f778) Line 527 + 0x9 bytes C postgres.exe!OidFunctionCall3(unsigned int functionId=332,
unsigned long arg1=23780584, unsigned long arg2=64453888, unsigned long
arg3=62953160) Line 1460 + 0xf bytes C postgres.exe!index_build(RelationData * heapRelation=0x016adce8,
RelationData * indexRelation=0x03d77d00, IndexInfo *
indexInfo=0x03c096c8, char isprimary=0, char istoast=0) Line 1301 +
0x15 bytes C postgres.exe!build_indices() Line 1249 + 0x1a bytes C postgres.exe!boot_yyparse() Line 285
C postgres.exe!BootstrapMain(int argc=4, char * * argv=0x0121241c)
Line 487 C postgres.exe!main(int argc=5, char * * argv=0x01212418) Line
181 + 0xd bytes C
The crash is on the line:vac->relid = rel->rd_lockInfo.lockRelId;
in _bt_start_vacuum().
From what I can tell, the entire rel pointer is invalid at this point,
because the debugger says "Expression cannot be evaluated" for all
fields in it, including simple ints.
//Magnus