Drupal 6 Error in date_api.module - serialization problem
In our Drupal site's user edit page, we're occasionally and randomly seeing an error that crashes the page completely. It reads as follows:

> Fatal error: Unsupported operand types in
> /path/to/drupal/modules/date/date_api.module on line 594

This is the line that crashes the script:

    return (!$required) ? ($none + $zonenames) : $zonenames;

Now, I have managed to fix this issue by running the following command on the database.


    
    UPDATE drupal.cache
    SET serialized = 1
    WHERE cid = 'date_timezone_identifiers_list';

So it seems like the problem is this cached list of timezones, stored in the database is serialized, but for whatever reason on occasion the flag in the cache table is marking it as NOT being serialized. So when the code in date_api.module runs it assumes it's dealing with an array rather than a serialized string and the script crashes while trying to execute an array operation. 

This happened once last January, and then again today. What I would like to know, is WHY that serialized field in the database is being set to a zero -- the underlying cause. It's really quite bad when our edit user page is randomly and unpredictable rendered unusable.


Drupal 6 Error in date_api.module - serialization problem
===

In our Drupal site's user edit page, we're occasionally and randomly seeing an error that crashes the page completely. It reads as follows:

> Fatal error: Unsupported operand types in
> /path/to/drupal/modules/date/date_api.module on line 594

This is the line that crashes the script:

    return (!$required) ? ($none + $zonenames) : $zonenames;

Now, I have managed to fix this issue by running the following command on the database.


    
    UPDATE drupal.cache
    SET serialized = 1
    WHERE cid = 'date_timezone_identifiers_list';

So it seems like the problem is this cached list of timezones, stored in the database is serialized, but for whatever reason on occasion the flag in the cache table is marking it as NOT being serialized. So when the code in date_api.module runs it assumes it's dealing with an array rather than a serialized string and the script crashes while trying to execute an array operation. 

This happened once last January, and then again today. What I would like to know, is WHY that serialized field in the database is being set to a zero -- the underlying cause. It's really quite bad when our edit user page is randomly and unpredictable rendered unusable.

