Re: initdb issue on 64-bit Windows - (Was: [pgsql-packagers] PG 9.6beta2 tarballs are ready)
От | Craig Ringer |
---|---|
Тема | Re: initdb issue on 64-bit Windows - (Was: [pgsql-packagers] PG 9.6beta2 tarballs are ready) |
Дата | |
Msg-id | CAMsr+YF4c7qXaEsobO_P1Z2okubZPZYaUHi=R-EZB0kUv5t1GQ@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: initdb issue on 64-bit Windows - (Was: [pgsql-packagers] PG 9.6beta2 tarballs are ready) (Craig Ringer <craig@2ndquadrant.com>) |
Список | pgsql-hackers |
On 24 June 2016 at 10:21, Craig Ringer <craig@2ndquadrant.com> wrote:
* To get a backtrace, I had to:* Launch a VS x86 command prompt* devenv /debugexe bin\initdb.exe -D test* Set a breakpoint in initdb.c:3557 and initdb.c:3307* Run* When it traps at get_restricted_token(), manually move the execution pointer over the setup of the restricted execution token by dragging & dropping the yellow instruction pointer arrow. Yes, really. Or, y'know, comment it out and rebuild, but I was working with a supplied binary.* Continue until next breakpoint* Launch process explorer and find the pid of the postgres child process* Debug->attach to process, attach to the child postgres. This doesn't detach the parent, VS does multiprocess debugging.* Continue execution* vs will trap on the child when it crashes
Also, to save anyone else this hassle, I have saved a process dump (windows core file) and the debug symbols to gdrive. You can get them at:
Note that you will need a Visual Studio version installed. VS Community 2015 works fine. You only need to install the C++ devenv and C++ headers, you don't need MFC or any of the rest. The default install is fine if you don't mind a bigger download. Once installed, open postgres.dmp, then go to debug->options, symbols. There, enable the Microsoft Symbol Server, and also add a new entry for the absolute path to the symbols directory for the archive you unpacked. You should enable the symbol cache directory too, make a directory in your user dir and put it there.
If Haroon shared some gdrive links earlier on the thread I don't have access to, this is the same data just efficiently compressed (32MB instead of 180MB) and packaged up in a single convenient archive with the matching sources and a full working install. You'll need 7zip to unpack it, but that should be on your "install as soon as you install Windows" list anyway.
В списке pgsql-hackers по дате отправления: