On 09/29/2016 01:21 AM, Martin Burnicki wrote:
are the changes detected automatically at runtime and become effective for the application when a new version of the TZ DB is installed, or only after the application or run-time library is reloaded?
This depends on the library and on the application. Typically reloading is required, as this improves efficiency in the typical case. That's how the reference code works. The issue is not limited to updating tzdata version. It can also occur when the system changes the wall-clock time zone, e.g., by changing /etc/localtime to point to a different file. On mobile devices this can occur when you (say) cross the Trammell Bridge from Blountstown to Bristol in Florida, to go from "slow time" (CST) to "fast time" (EST). Some applications do tricks like 'setenv ("TZ", getenv ("TZ"))' to cajole the library into the heavyweight operation of reloading a changed zone file. The code is actually more complicated than that, as some libraries notice that you haven't actually changed TZ and so do nothing. My source for "slow" and "fast time": Klinkenberg J. Real Florida: time and time again. St Petersburg Times 2004-04-04. http://www.sptimes.com/2004/04/04/Floridian/Real_Florida__Time_an.shtml