-----BEGIN PGP SIGNED MESSAGE----- Hash: RIPEMD160
> An XS module provides an interface the high speed C++ loading code. > The perl code passes the DBI handle to the XS module which then has > to extract the PQConn handle in order to send data to it. What exactly is the slow part? DBD::Pg uses XS extensively as well, so it's good to know about real world limitations where the Perl bumps up against the C. Maybe we can fix that part instead of having to tie yet another language into the mix. > It all works OK, except that there doesn't seem to be a way to > access the PQConn pointer within the imp_dbh_st, other than > including dbdimp.h - which is risky in case our XS module gets > compiled against a different DBD::Pg version to the one that > is actually on the server at runtime. My first instinct is to make the version a requirement somehow. Not knowing your system, I'm guessing that's problematic. > One idea would be to provide an access to the PQConn handle - > either via a database handle attribute, or some C function > one could call. If we made a patch like that would it be likely > to be accepted? Or would exposing the underlying database > connection be considered bad form? At first blush, I don't see any reason to deny that. It's just hooking to the underlying plumbing, there is no escalation of privs or anything. And we could certainly keep it as a super-advanced, here-be-dragons kind of attribute. - -- Greg Sabino Mullane [email protected] End Point Corporation http://www.endpoint.com/ PGP Key: 0x14964AC8 201211102142 http://biglumber.com/x/web?pk=2529DF6AB8F79407E94445B4BC9B906714964AC8 -----BEGIN PGP SIGNATURE----- iEYEAREDAAYFAlCfEM0ACgkQvJuQZxSWSshJfwCcD2rEbI/gKybGGON6WfJPepVS +L8An2bdTR2G3Gc9r4tqbo/tizt87p2S =ZYwp -----END PGP SIGNATURE-----
