Migration Guide : Migrating from Version 8.5.2 : EsTimeZone class has changed
EsTimeZone class has changed
Reason for change
The DateAndTime object keeps track of its time zone by holding a timeZone instance variable, which is an EsTimeZone object. EsTimeZone objects -- and therefore DateAndTime objects -- can be fairly memory intensive because they contain not only a timeZoneRule instance variable indicating the current time zone rule, but also a timeZoneRuleSet instance variable providing a complete set of all the time zone rule for the time zone. For some time zones, the number of rules could run into the hundreds, making them larger than absolutely necessary and slowing database transactions.
Change
The timeZoneRuleSet instance variable in EsTimeZone has been replaced by a timeZoneName instance variable, which holds the name of the time zone, e.g., America/New_York, for the DateAndTime object. The entire time zone rule set can be retrieved if need be by using the time zone name. The timeZoneRule instance variable is unchanged.
Action required
None. DateAndTime objects that were created prior to 8.6 are mutated automatically to the new EsTimeZone shape and all the DateAndTime and EsTimeZone APIs remain the same.
Last modified date: 07/02/2019