-
Notifications
You must be signed in to change notification settings - Fork 691
timeout are not working on windows. #4378
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
timeout are not working on windows. #4378
Conversation
akosthekiss
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please, change commit message. The language used throughout the project is English.
Please, fix pylint check errors.
f6de887 to
26fef50
Compare
34876a0 to
2ad8357
Compare
|
The change looks good, but I would change the commit log to be more descriptive. Now it says what was wrong, but it should say what have been done in the commit. For example: Fix the test262 timeout on Windows Use the platform independent python threading.Timer instead of the unix only timeout tool. |
2ad8357 to
947ec64
Compare
done |
c08e984 to
1f0c7e1
Compare
Fixed |
tools/runners/test262-harness.py
Outdated
| }) | ||
| (code, out, err) = TestCase.execute(command) | ||
| # Only es2015 or esnext need the timeout option. | ||
| (code, out, err) = TestCase.execute(command, 60) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Add timeout option for the usage in es5.1,
setting to 60 for pass two time consuming tests.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not sure if it is a good idea to have 60 seconds timeout unconditionally,
because language/statements/for-of/iterator-next-reference.js in ES2015-test262
is a wrong test (outdated because of spec change) and stucks in an infinite loop.
Increasing timeout means that running ES2015-test262 will take an extra minute because of this wrong test.
8 seconds timeout is enough to remove 2 slow tests from es2015 excludelist. And tests run in 80 seconds
for me with 8 seconds timeout, but in 80+57 seconds with 60 seconds timeout.
In nutshell: I would keep general timeout as low as possible, but we could add extra timeout for ES5.1 if it is necessary.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
60 is needed to pass two new tests
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not sure if it is a good idea to have 60 seconds timeout unconditionally,
because language/statements/for-of/iterator-next-reference.js in ES2015-test262
is a wrong test (outdated because of spec change) and stucks in an infinite loop.Increasing timeout means that running ES2015-test262 will take an extra minute because of this wrong test.
8 seconds timeout is enough to remove 2 slow tests from es2015 excludelist. And tests run in 80 seconds
for me with 8 seconds timeout, but in 80+57 seconds with 60 seconds timeout.In nutshell: I would keep general timeout as low as possible, but we could add extra timeout for ES5.1 if it is necessary.
60s needed to pass
These two tests consume lot of time in jerryscript, maybe it's a performance issue.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The bottleneck is the wrong language/statements/for-of/iterator-next-reference.js in test262-es2015. If we increase the timeout, we unnecessarily increase the runtime, because we have to wait to kill this wrong test. Otherwise the 2 unskipped es2015 test is also covered by esnext, because test262 maintainers know these are slow tests and refactored them to be faster. So we don't loose anything if we keep the timeout as is and leave these tests skipped.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The bottleneck is the wrong language/statements/for-of/iterator-next-reference.js in test262-es2015. If we increase the timeout, we unnecessarily increase the runtime, because we have to wait to kill this wrong test. Otherwise the 2 unskipped es2015 test is also covered by esnext, because test262 maintainers know these are slow tests and refactored them to be faster. So we don't loose anything if we keep the timeout as is and leave these tests skipped.
Not that simple, the debug version build jerryscript are slower, we need more time tolerance, and that won't increate the total test262 running time much, because tests are running in parallel, the testes consume lot of time won't be a bottleneck.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@ossy-szeged Revert to 5 seconds.
1f0c7e1 to
f615a7c
Compare
LaszloLango
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
0083443 to
d4fd6f5
Compare
9c532cb to
d4fd6f5
Compare
385549a to
a460fd0
Compare
|
@akosthekiss timeout parameter removed, please take a look |
Use the platform independent python threading.Timer instead of the unix only timeout tool. The timeout error are like the following things: ``` C:\Users\lygstate>timeout -version Error: The specified timeout (/T) value is invalid. The valid range is from -1 to 99999 seconds. C:\Users\lygstate>timeout 0 python Error: invalid syntax. The default option does not allow more than '1' times. Type "TIMEOUT /?" to learn how to use it. ``` JerryScript-DCO-1.0-Signed-off-by: Yonggang Luo luoyonggang@gmail.com
a460fd0 to
d8622de
Compare
akosthekiss
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
ossy-szeged
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Fix the test262 timeout on Windows
Use the platform independent python threading.Timer instead of the unix only timeout tool.
The timeout error are like the following things:
timeout option are added for future ES5.1 test262 usage
in pull request
#4391
The timeout setting to 60 to getting maximal tolerance
By doing this also fixes tests for es2015:
built-ins/decodeURIComponent/S15.1.3.2_A2.5_T1.js
built-ins/decodeURI/S15.1.3.1_A2.5_T1.js
JerryScript-DCO-1.0-Signed-off-by: Yonggang Luo luoyonggang@gmail.com