I can reproduce this slowdown in a Ubuntu jammy chroot:
``` apt install -y gcc tzdata printf '#include <time.h>\n#include <stdio.h>\n\nint main() {\n time_t t = time(0);\n int i;\n struct tm result;\n for(i=0; i < 10000000; i++)\n localtime_r(&t, &result);\n puts(ctime(&t));\n return 0;\n}\n' > bug.c gcc ./bug.c time ./a.out ln -sf /usr/share/zoneinfo/Europe/Moscow /etc/localtime dpkg-reconfigure --frontend noninteractive tzdata time ./a.out ```
On my machine it takes 0.284s for Etc/UTC but 1.276s for Europe/Moscow. Europe/Berlin takes 0.378s. This needs to be reported upstream.
I can reproduce this slowdown in a Ubuntu jammy chroot:
``` zoneinfo/ Europe/ Moscow /etc/localtime
apt install -y gcc tzdata
printf '#include <time.h>\n#include <stdio.h>\n\nint main() {\n time_t t = time(0);\n int i;\n struct tm result;\n for(i=0; i < 10000000; i++)\n localtime_r(&t, &result);\n puts(ctime(&t));\n return 0;\n}\n' > bug.c
gcc ./bug.c
time ./a.out
ln -sf /usr/share/
dpkg-reconfigure --frontend noninteractive tzdata
time ./a.out
```
On my machine it takes 0.284s for Etc/UTC but 1.276s for Europe/Moscow. Europe/Berlin takes 0.378s. This needs to be reported upstream.