Seeing that mysql 4.1.7 is now "GA", I started looking into upgrading a
couple of servers.  I took some time to read through the release notes
(http://dev.mysql.com/doc/mysql/en/Upgrading-from-4.0.html), and I found
two things that looked like they might cause some fits with dbmail 2.0.0. 
Can someone verify if this is going to cause me trouble or not?

Incompatible change: TIMESTAMP is now returned as a string in
'YYYY-MM-DD HH:MM:SS' format (from 4.0.12 the --new option can be used to
make a 4.0 server behave as 4.1 in this respect). See section 12.3.1.2
TIMESTAMP Properties as of MySQL 4.1. If you want to have the value
returned as a number (as MySQL 4.0 does) you should add +0 to TIMESTAMP
columns when you retrieve them:

mysql> SELECT ts_col + 0 FROM tbl_name;

Display widths for TIMESTAMP columns are no longer supported. For example,
if you declare a column as TIMESTAMP(10), the (10) is ignored. These
changes were necessary for SQL standards compliance. In a future version,
a further change will be made (backward compatible with this change),
allowing the timestamp length to indicate the desired number of digits for
fractions of a second.

This looks like it has some potential to cause problems, but I'm not
familiar enough with dbmail to determine if it will or not.

This one looks like a definite show stopper since the code checks
for < 0 return values:
Some C API calls such as mysql_real_query()
now return 1 on error, not -1. You may have to change some old
applications if they use constructs like this:

if (mysql_real_query(mysql_object, query, query_length) == -1)
{
  printf("Got error");
}

Change the call to test for a non-zero value instead:

if (mysql_real_query(mysql_object, query, query_length) != 0)
{
  printf("Got error");
}



Reply via email to