On Sunday 22 February 2004 02:29 pm, Tim Bunce wrote:
> On Sun, Feb 22, 2004 at 11:15:46AM -1000, Beau E. Cox wrote:
> > Hello Folks,
> >
> > I have converted DBI ( the latest svn trunk - #93 )
> > to use PERL_NO_GET_CONTEXT ( with pTHX_/aTHX_ added
> > where necessary ). The DBI test suite works fine,
> > an I have been using it w/o problems on my production
> > Apache 2.0.48/mod_perl 1.9913(cvs)/perl 5.8.3 on a Linux box
> > ( kernel 2.4.25, current GNU via Sorcerer ).
>
> Cool. Thanks! (For those that don't know, this makes the DBI
> and drivers faster and safer under threads, esp for mod_perl 2)
>
> > I didn't realize it when I began, but this change
> > has a great impact on all DBDs: the DBIXS.h and
> > dbd_xsh.h headers change, as well as the exposed DBI/
> > DBD interface, so EVERY dbd using XS would have to change
> > as well.
>
> Yeap. That's why I didn't do it before. You'll notice the ToDO
> file says "Add PERL_NO_GET_CONTEXT for multiplicity/threads":
> http://search.cpan.org/src/TIMB/DBI/ToDo
>
> > As a learning experience, I converted DBD-mysql-2.9003
> > and am almost done with DBD-Pg-1.32_2. The mysql conversion
> > effort took about two hours.
> >
> > NOTE: there are problems implementing this scheme in
> > perl 5.8.2 - prob. the perl ithreads bug.
> >
> > So, it was very instructive, and I have patches for what
> > I did.
> >
> > Tim: would you like me to submit the DBI patch? Via svn?
>
> Not yet. After DBI 1.41 is released I was planning to have a
> discussion here about how best to manage the migration to DBI v2.
>
> A big part of the switch to DBI v2 is the opportunity it gives
> us to break, er, fix, er, fix by breaking things. There are several
> changes I want to make that are not backwards compatible.
> Switching to PERL_NO_GET_CONTEXT is one of those.
>
> I'll start that discussion this week sometime.
>
> So, for now, please keep your working copy updated until I branch
> off v1 and advance the trunk to v2.

Of course. Incorporating the NO_GET_CONTEXT at the time of a
switch to v2 is the only sane way to implement it. Good idea.

>
> Meanwhile, please also test for perl5.6.1. I'll need to know it
> works back there as well.

OK. I will test with 5.6.1 later today and let you know the
results.

>
> Thanks again!
>
> Tim.

So my plan is to keep current with DBI svn and keep applying
my patch and testing it to be sure it works. I will also
keep DBD-mysql and DBD-Pg in-sync.

I also may have a c test program (that really abuses ithread
switching) ready to add to your test suite.

The patch will be ready when you are.

Aloha => Beau;



Reply via email to