On Feb 12, 2008 10:25 PM, chasd <[EMAIL PROTECTED]> wrote:
>
>
> >> I use PostgreSQL ;)
> >
> > Ah, you are the one! (Just kidding.) Let me dig up if MDB2 has an
> > abstraction.
>
> This error happens to me if I use MySQL, so I don't think it is a
> MySQL vs. PostgreSQL thing.
> I use a remote machine for the database(s). The database check in
> check.php works, so
>
> $db_working = true;
>
> There is an abstraction for the unixtimestamp() thing in rcube_db.inc
> and rcube_mdb2.inc
> However I think something is amiss with the rcube_mdb2.inc file.
>
> ( looked at the two side-by-side, and there are some differences
> where I don't think there should be. The version in the header(s) is
> different between the two [1.16 vs. 1.17], so there might be some bug
> fixes in rcube_db.inc that aren't in rcube_mdb2.inc There are some
> references to PEAR:: in rcube_mdb2.inc that I think should be MDB2::)

Basically, one class extends the other. It's fine doing
PEAR::isError() or MDB2::isError(). PEAR should be included since it's
a direct dependency of MDB2.

You can see PEAR.php here:
<http://trac.roundcube.net/browser/trunk/roundcubemail/program/lib>

> If I hardcode using db in a couple lines from check.php instead
>
> require_once 'include/rcube_db.inc';
>      $DB = new rcube_db($rcmail_config['db_dsnw'], '', false);
>
> Then it works OK with MySQL.
>
> I think there might be some issues in the error handling code
> initialized by check.php. It isn't that I'm using PostgreSQL, but
> some database error I have is triggering a code path that you aren't
> exercising.
>
> You are checking the database connection with raw MDB2:: calls, but
> then for the timezone checks you use the rcube_mdb2.inc functions. I
> think you should use the same code path for both.

That could be it. I'll check it out tomorrow! Thanks so far.

Till
_______________________________________________
List info: http://lists.roundcube.net/dev/

Reply via email to