Bug 209455 - [Win] http/tests/misc/last-modified-parsing.html always fails on Windows EWS
Summary: [Win] http/tests/misc/last-modified-parsing.html always fails on Windows EWS
Status: NEW
Alias: None
Product: WebKit
Classification: Unclassified
Component: Tools / Tests (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Nobody
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2020-03-23 17:33 PDT by David Kilzer (:ddkilzer)
Modified: 2021-05-13 19:13 PDT (History)
10 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description David Kilzer (:ddkilzer) 2020-03-23 17:33:08 PDT
http/tests/misc/last-modified-parsing.html always fails on Windows EWS.

Looks like a timezone issue (off by 8 hours):

--- /home/buildbot/worker/Windows-EWS/build/layout-test-results/http/tests/misc/last-modified-parsing-expected.txt
+++ /home/buildbot/worker/Windows-EWS/build/layout-test-results/http/tests/misc/last-modified-parsing-actual.txt
@@ -3,34 +3,34 @@
 --------
 Frame: '<!--frame1-->'
 --------
-Fri, 21 Nov 2008 01:03:33 GMT
+Fri, 21 Nov 2008 09:03:33 GMT
 
 --------
 Frame: '<!--frame2-->'
 --------
-Fri, 21 Nov 2008 01:03:33 GMT
+Fri, 21 Nov 2008 09:03:33 GMT
 
 --------
 Frame: '<!--frame3-->'
 --------
-Fri, 21 Nov 1997 01:03:33 GMT
+Fri, 21 Nov 1997 09:03:33 GMT
 
 --------
 Frame: '<!--frame4-->'
 --------
-Fri, 21 Nov 2008 01:03:33 GMT
+Fri, 21 Nov 2008 09:03:33 GMT
 
 --------
 Frame: '<!--frame5-->'
 --------
-Thu, 21 Feb 2008 01:03:33 GMT
+Thu, 21 Feb 2008 09:03:33 GMT
 
 --------
 Frame: '<!--frame6-->'
 --------
-Sun, 03 Feb 2008 01:03:33 GMT
+Sun, 03 Feb 2008 09:03:33 GMT
 
 --------
 Frame: '<!--frame7-->'
 --------
-Mon, 03 Mar 2008 01:03:33 GMT
+Mon, 03 Mar 2008 09:03:33 GMT
Comment 1 David Kilzer (:ddkilzer) 2020-03-23 17:43:15 PDT
Committed r258892: <https://trac.webkit.org/changeset/258892/webkit>

This should speed up the Windows EWS bot.
Comment 2 David Kilzer (:ddkilzer) 2020-03-23 17:50:06 PDT
It's been failing for a while:
<https://results.webkit.org/?suite=layout-tests&test=http%2Ftests%2Fmisc%2Flast-modified-parsing.html&platform=win>

Looks like it regressed between r258625 (working) and r258626 (failing).

<https://trac.webkit.org/changeset/258626/webkit>

I wonder how a change to build scripts could have caused this regression?

[GTK][WPE] Migrate to Flatpak-based dev SDK
<​https://bugs.webkit.org/show_bug.cgi?id=205658>
Comment 3 Philippe Normand 2020-03-24 01:53:12 PDT
Is this bot running on a ... linux platform? :)
Comment 4 David Kilzer (:ddkilzer) 2020-03-24 14:55:31 PDT
(In reply to Philippe Normand from comment #3)
> Is this bot running on a ... linux platform? :)

Of course not.  I'm just reporting what I noticed in the results:

<https://results.webkit.org/?suite=layout-tests&test=http%2Ftests%2Fmisc%2Flast-modified-parsing.html&platform=win>

Note that there is shared Python and Perl code used by the Windows platform in build/test scripts, too, which were modified as part of the patch.  (I did not review the patch to see if code shared by the Windows port was modified, though.)
Comment 5 Philippe Normand 2020-03-25 03:07:12 PDT
As commented in the other bug, can you check if the TZ env var has any effect on your bots? I suspect this is the source of the problem, because if it's set on your bots, it is now white-listed into the test environment.
Comment 6 David Kilzer (:ddkilzer) 2020-03-25 08:55:21 PDT
(In reply to Philippe Normand from comment #5)
> As commented in the other bug, can you check if the TZ env var has any
> effect on your bots? I suspect this is the source of the problem, because if
> it's set on your bots, it is now white-listed into the test environment.

Thanks Phillippe!  I've added some folks to the Cc list that can check this.
Comment 7 Fujii Hironori 2021-05-13 19:13:28 PDT
There are two problems.

run-webkit-tests set 'TZ' env var to 'US/Pacific' (Bug 186612).
However, Windows' std::localtime doesn't understand it, and treats it GMT.
'TZ' env var should be 'PST8PDT' for Windows.

_tzset | Microsoft Docs
https://docs.microsoft.com/en-us/cpp/c-runtime-library/reference/tzset

Date.parse() doesn't take 'TZ' env var into account.
It always assumes the local timezone.