Up Prev Next
From: Michael Peppler <mpeppler at peppler dot org>
Subject: Re: Porting Bugzilla to DBD::Sybase: multiple active sth's per dbh
Date: Feb 22 2004 3:50PM
On Sat, 2004-02-21 at 18:43, Edward J. Sabol wrote:
> > I'm not really keen to make such a big change to the code base, although
> > I would like to have Bugzilla work against Sybase (I admit that I looked
> > at the Bugzilla code a while back and decided that porting it would be
> > too difficult because of the way the SQL and database calls are done).
> Well, big changes are afoot to the Bugzilla codebase to make it more
> DBMS-independent. The charge is being led by PostgreSQL proponents mostly
> though, sometimes unfortunately to the potential detriment of other DBMSes,
> IMHO. The next release of Bugzilla will likely have PostgreSQL compatibility
> though, so it's definitely a step in the right direction. After that, rumor
> has it that Oracle will probably be next and Sybase if we're lucky. If you or
> anyone else on the Sybperl-l mailing list are interested, you might want to
> look in on (and possibly contribute to) the following bugs:
> PostgreSQL compatibility: http://bugzilla.mozilla.org/show_bug.cgi?id=98304
> DB-independent schema: http://bugzilla.mozilla.org/show_bug.cgi?id=146679
> Sybase compatibilty: http://bugzilla.mozilla.org/show_bug.cgi?id=173130
> Most of the ground work is going on in the PostgreSQL-compatibilty bug.
I did a quick browse of the pg bug, above... From the comments it looks
like the developers there aren't all that well versed in database
design, and the fact that the original code used a lot of MySQL specific
extensions makes porting it rather painful.
> > I'll try to look at the DBD::MySQL code and see if there is anything
> > there that could be reused, though I'd *really* prefer it if someone
> > (you?) could come up with a patch for DBD::Sybase that would handle
> > this... :-)
> I'll take a look, but, unfortunately, I've avoided learning XS over
> years, so I'm probably not the best programmer for the job unless the
> caching can be done in pure Perl.
One option that you have is to write a simple DBD driver in perl (maybe
call it DBD::Sybase-BZ :-), which implements a subset of the DBI
functionality that you need, and that internally calls DBD::Sybase,
caching the result sets (in perl) as needed).
That might be easier to do than to add caching logic to the C code of
Michael Peppler Data Migrations, Inc.
Sybase T-SQL/OpenClient/OpenServer/C/Perl developer available for short
or long term contract positions - http://www.peppler.org/resume.html