Since my version of pg is built with VC++ I thought it wise to also
use VC++ for the debugger plugin. So I converted the Makefile into 3
different VC++ projects - pldbgapi, plugin_debugger and targetinfo.
Note that targetinfo is not mentioned at all in the comments at the
top of Makefile - you may wish to update them.
Hi Charlie, thanks for the feedback (and thanks for the patches!).
Can you e-mail the VC++ projects that you created? (You can do that
off-list). I have VC++ here but I haven't tried to do a PG build in
that environment yet (guess it's time to learn).
However, I can't set any breakpoints using PgAdmin. I know the dlls
are loaded via Process Explorer, and in fact I can attach to them with
the VC++ debugger.
When you say that you can't set any breakpoints using PgAdmin, does that
mean that the menu choices ("Set Breakpoint" and "Debug") just don't
appear? Or are they there but don't do anything? Or are you getting an
Can you gather a PgAdmin log file (see Options on the File Menu, then
choose the Logging tab, check "Debug") and send it to me. That will
give me some clues.
That won't work... you want to open another session and SELECT
testwhere(7) from the new session.
5. SELECT * FROM pldbg_wait_for_target(1);
At this point the session hangs, as explained in your email. So what
happens next? I tried:
* Opening a new pgadmin window and doing step 6 (SELECT * FROM
pldbg_wait_for_breakpoint(1);). That didn't work.
The first session is your debugger client, the second session is the
target process (the application that you are debugging).
* I tried executing the function (select testwhere(7);). That didn't
I presume that you mean that the debugger session was still hung in the
call to pldbg_wait_for_target(1), right?
Did you remember to set shared_preload_librarys =
'$libdir/plugins/plugin_debugger' in your postgresql.conf file (and
restart the server aftwards)?.
---------------------------(end of broadcast)---------------------------
TIP 9: In versions below 8.0, the planner will ignore your desire to
choose an index scan if your joining column's datatypes do not