I am using MySQL 5.1.34 community server. I have taken the MySQL timezone description tables from here.
Now for some timezones the time displayed by MySQL is wrong, because of wrong "day light saving" calculation for these time zones.
Ex: The query
select convert_tz(now(),'GMT','Australia/Sydney');
is giving wrong result.
Wrong time is displayed for the following timezones:
America/Sao_Paulo
America/Caracas
America/Buenos_Aires
Asia/Karachi
Asia/Dhaka
Australia/Adelaide
Australia/Sydney
But for all other timezones(except the ones above) the "day light saving" calculation is perfect and it displays the correct time.
What am I missing here ? Updating to a later version of MySQL will help ?
My timezones table were not updated. Just updated them from here and now everything is working fine.