Open JaroslavTulach opened 8 months ago
Another case https://github.com/enso-org/enso/actions/runs/7505108009/job/20433662846?pr=8728#step:10:10041
GitHub
Hybrid visual and textual functional programming. Contribute to enso-org/enso development by creating an account on GitHub.
One more I think https://github.com/enso-org/enso/actions/runs/7541119249/job/20534564672?pr=8757#step:10:10246
GitHub
Hybrid visual and textual functional programming. Contribute to enso-org/enso development by creating an account on GitHub.
Simpler reproducer in https://github.com/enso-org/enso/issues/8913
Running
enso$ ./built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/bin/enso --run test/Base_Tests/src/Data/Time/Time_Of_Day_Spec.enso
after upgrade to 5f53f6767d1e377e8794c19821f06ee4e82cbf89 - e.g. latest GraalVM seems to fix the issue.
after upgrade to https://github.com/enso-org/enso/commit/5f53f6767d1e377e8794c19821f06ee4e82cbf89 - e.g. latest GraalVM seems to fix the issue.
@JaroslavTulach It does not. The reproducer mentioned in the duplicate issue still fails with:
$ env JAVA_OPTS=-ea enso --run test/Base_Tests/src/Data/Time/Date_Spec.enso
...
PythonDate date part tests: [8/8, 5133ms]
- should return if a leap year [4971ms]
- should return the number of days in the year [9ms]
- should return the century [6ms]
- should return the quarter [16ms]
- should return the number of days in the year [19ms]
- should return the day_of_year [15ms]
- should return the day_of_week [18ms]
- should return the correct week of year [76ms]
Traceback (most recent call last):
File "/home/pavel/dev/enso-2/test/Base_Tests/src/Data/Time/Date_Spec.enso", line 533, in Date_Spec.main
File "/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Test/0.0.0-dev/src/Suite.enso", line 83, in Suite.run_with_filter
File "/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Test/0.0.0-dev/src/Test_Reporter.enso", line 22, in Test_Reporter.wrap_junit_testsuites
File "/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Test/0.0.0-dev/src/Suite.enso", line 84, in Suite.run_with_filter<arg-1>
File "/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Base/0.0.0-dev/src/Data/Vector.enso", line 612, in Vector.flat_map
File "/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Base/0.0.0-dev/src/Internal/Array_Like_Helpers.enso", line 240, in Array_Like_Helpers.flat_map
File "/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Base/0.0.0-dev/src/Internal/Array_Like_Helpers.enso", line 240, in Array_Like_Helpers.flat_map<arg-0>
File "/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Base/0.0.0-dev/src/Data/Vector.enso", line 574, in Vector.map
File "/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Base/0.0.0-dev/src/Internal/Array_Like_Helpers.enso", line 234, in Array_Like_Helpers.map
File "/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Base/0.0.0-dev/src/Internal/Array_Like_Helpers.enso", line 103, in Array_Like_Helpers.vector_from_function
File "/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Base/0.0.0-dev/src/Internal/Array_Like_Helpers.enso", line 88, in wrapped_function
File "/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Base/0.0.0-dev/src/Function.enso", line 46, in Function.<<
File "/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Test/0.0.0-dev/src/Suite.enso", line 85, in <anonymous>
File "/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Test/0.0.0-dev/src/Helpers.enso", line 23, in Helpers.run_group_with_filter
File "/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Test/0.0.0-dev/src/Helpers.enso", line 33, in Helpers.run_specs_from_group
File "/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Test/0.0.0-dev/src/Helpers.enso", line 36, in case_branch
File "/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Base/0.0.0-dev/src/Data/Vector.enso", line 574, in Vector.map
File "/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Base/0.0.0-dev/src/Internal/Array_Like_Helpers.enso", line 234, in Array_Like_Helpers.map
File "/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Base/0.0.0-dev/src/Internal/Array_Like_Helpers.enso", line 103, in Array_Like_Helpers.vector_from_function
File "/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Base/0.0.0-dev/src/Internal/Array_Like_Helpers.enso", line 88, in wrapped_function
File "/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Base/0.0.0-dev/src/Function.enso", line 46, in Function.<<
File "/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Test/0.0.0-dev/src/Helpers.enso", line 37, in <anonymous>
File "/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Test/0.0.0-dev/src/Helpers.enso", line 49, in Helpers.run_spec
File "/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Test/0.0.0-dev/src/Helpers.enso", line 50, in case_branch
File "/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Base/0.0.0-dev/src/Data/Time/Duration.enso", line 131, in Duration.type.time_execution
File "/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Test/0.0.0-dev/src/Helpers.enso", line 51, in case_branch<arg-1>
File "/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Test/0.0.0-dev/src/Helpers.enso", line 51, in case_branch<arg-3>
File "/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Test/0.0.0-dev/src/Helpers.enso", line 59, in Helpers.execute_spec_code
File "/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Base/0.0.0-dev/src/Panic.enso", line 185, in Panic.type.recover
File "/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Test/0.0.0-dev/src/Helpers.enso", line 60, in Helpers.execute_spec_code<arg-1>
File "/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Test/0.0.0-dev/src/Group.enso", line 25, in <anonymous>
File "/home/pavel/dev/enso-2/test/Base_Tests/src/Data/Time/Date_Spec.enso", line 472, in <anonymous><arg-1>
File "/home/pavel/dev/enso-2/test/Base_Tests/src/Data/Time/Date_Spec.enso", line 568, in Date_Spec.python_date
File "/home/pavel/dev/enso-2/test/Base_Tests/src/Data/Time/Date_Spec.enso", line 568, in Date_Spec.python_date<arg-2>
File "/home/pavel/dev/enso-2/test/Base_Tests/src/Data/Time/Date_Spec.enso", line 577, in Date_Spec.python_date_impl
Cannot invoke "com.oracle.graal.python.builtins.objects.frame.PFrame$Reference.getPyFrame()" because the return value of "com.oracle.graal.python.builtins.objects.function.PArguments.getCurrentFrameInfo(com.oracle.truffle.api.frame.Frame)" is null
Execution finished with an error: java.lang.NullPointerException: Cannot invoke "com.oracle.graal.python.builtins.objects.frame.PFrame$Reference.getPyFrame()" because the return value of "com.oracle.graal.python.builtins.objects.function.PArguments.getCurrentFrameInfo(com.oracle.truffle.api.frame.Frame)" is null
at <java> org.graalvm.py/com.oracle.graal.python.nodes.frame.MaterializeFrameNode.getPFrame(MaterializeFrameNode.java:205)
at <java> org.graalvm.py/com.oracle.graal.python.nodes.frame.MaterializeFrameNodeGen.execute(MaterializeFrameNodeGen.java:128)
at <java> org.graalvm.py/com.oracle.graal.python.nodes.frame.MaterializeFrameNode.execute(MaterializeFrameNode.java:98)
at <java> org.graalvm.py/com.oracle.graal.python.runtime.ExecutionContext$CallContext.materialize(ExecutionContext.java:167)
at <java> org.graalvm.py/com.oracle.graal.python.runtime.ExecutionContext$CallContext.prepareCall(ExecutionContext.java:131)
at <java> org.graalvm.py/com.oracle.graal.python.runtime.ExecutionContext$CallContext.prepareCall(ExecutionContext.java:108)
at <java> org.graalvm.py/com.oracle.graal.python.nodes.call.CallTargetInvokeNode.doNoClosure(CallTargetInvokeNode.java:130)
at <java> org.graalvm.py/com.oracle.graal.python.nodes.call.CallTargetInvokeNode.doGeneric(CallTargetInvokeNode.java:141)
at <java> org.graalvm.py/com.oracle.graal.python.nodes.call.CallTargetInvokeNodeGen.execute(CallTargetInvokeNodeGen.java:73)
at <java> org.graalvm.py/com.oracle.graal.python.nodes.call.CallDispatchNode.callFunctionCachedCt(CallDispatchNode.java:133)
at <java> org.graalvm.py/com.oracle.graal.python.nodes.call.CallDispatchNodeGen.executeInternal(CallDispatchNodeGen.java:192)
at <java> org.graalvm.py/com.oracle.graal.python.nodes.call.CallDispatchNode.executeCall(CallDispatchNode.java:85)
at <java> org.graalvm.py/com.oracle.graal.python.nodes.call.CallNode.functionCall(CallNode.java:142)
at <java> org.graalvm.py/com.oracle.graal.python.nodes.call.CallNodeGen.executeInternal(CallNodeGen.java:225)
at <java> org.graalvm.py/com.oracle.graal.python.nodes.call.CallNode.execute(CallNode.java:129)
at <java> org.graalvm.py/com.oracle.graal.python.PythonLanguage$RootNodeWithArguments.execute(PythonLanguage.java:654)
at <python> <python> <module>(Unknown)
at <epb> <epb> null(Unknown)
at <enso> Date_Spec.python_date_impl(Date_Spec.enso:577-579)
at <enso> Date_Spec.python_date<arg-2>(Date_Spec.enso:568:22-52)
at <enso> Panic.catch(Internal)
at <enso> Date_Spec.python_date(Date_Spec.enso:568-571)
at <enso> <anonymous><arg-1>(Date_Spec.enso:472:18-43)
at <enso> null(Internal)
at <enso> <anonymous>(/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Test/0.0.0-dev/src/Group.enso:25:61-64)
at <enso> Helpers.execute_spec_code<arg-1>(/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Test/0.0.0-dev/src/Helpers.enso:60:18-34)
at <enso> Panic.catch(Internal)
at <enso> Panic.type.recover(/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Base/0.0.0-dev/src/Panic.enso:185-190)
at <enso> Helpers.execute_spec_code(/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Test/0.0.0-dev/src/Helpers.enso:59-63)
at <enso> case_branch<arg-3>(/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Test/0.0.0-dev/src/Helpers.enso:51:37-63)
at <enso> case_branch<arg-1>(/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Test/0.0.0-dev/src/Helpers.enso:51:13-64)
at <enso> Runtime.no_inline(Internal)
at <enso> Duration.type.time_execution(/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Base/0.0.0-dev/src/Data/Time/Duration.enso:131:18-43)
at <enso> case_branch(/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Test/0.0.0-dev/src/Helpers.enso:50-51)
at <enso> Helpers.run_spec(/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Test/0.0.0-dev/src/Helpers.enso:49-52)
at <enso> <anonymous>(/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Test/0.0.0-dev/src/Helpers.enso:37:24-36)
at <enso> Function.<<(/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Base/0.0.0-dev/src/Function.enso:46:26-38)
at <enso> wrapped_function(/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Base/0.0.0-dev/src/Internal/Array_Like_Helpers.enso:88:18-27)
at <enso> Array_Like_Helpers.vector_from_function(Internal)
at <enso> Array_Like_Helpers.vector_from_function(/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Base/0.0.0-dev/src/Internal/Array_Like_Helpers.enso:103:15-68)
at <enso> Array_Like_Helpers.map(/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Base/0.0.0-dev/src/Internal/Array_Like_Helpers.enso:234:5-74)
at <enso> Vector.map(/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Base/0.0.0-dev/src/Data/Vector.enso:574:9-56)
at <enso> case_branch(/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Test/0.0.0-dev/src/Helpers.enso:36-40)
at <enso> Helpers.run_specs_from_group(/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Test/0.0.0-dev/src/Helpers.enso:33-43)
at <enso> Helpers.run_group_with_filter(/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Test/0.0.0-dev/src/Helpers.enso:23:5-45)
at <enso> <anonymous>(/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Test/0.0.0-dev/src/Suite.enso:85:27-73)
at <enso> Function.<<(/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Base/0.0.0-dev/src/Function.enso:46:26-38)
at <enso> wrapped_function(/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Base/0.0.0-dev/src/Internal/Array_Like_Helpers.enso:88:18-27)
at <enso> Array_Like_Helpers.vector_from_function(Internal)
at <enso> Array_Like_Helpers.vector_from_function(/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Base/0.0.0-dev/src/Internal/Array_Like_Helpers.enso:103:15-68)
at <enso> Array_Like_Helpers.map(/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Base/0.0.0-dev/src/Internal/Array_Like_Helpers.enso:234:5-74)
at <enso> Vector.map(/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Base/0.0.0-dev/src/Data/Vector.enso:574:9-56)
at <enso> Array_Like_Helpers.flat_map<arg-0>(/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Base/0.0.0-dev/src/Internal/Array_Like_Helpers.enso:240:5-35)
at <enso> Array_Like_Helpers.flat_map(/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Base/0.0.0-dev/src/Internal/Array_Like_Helpers.enso:240:5-45)
at <enso> Vector.flat_map(/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Base/0.0.0-dev/src/Data/Vector.enso:612:9-61)
at <enso> Suite.run_with_filter<arg-1>(/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Test/0.0.0-dev/src/Suite.enso:84-87)
at <enso> Test_Reporter.wrap_junit_testsuites(/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Test/0.0.0-dev/src/Test_Reporter.enso:22:14-19)
at <enso> Suite.run_with_filter(/home/pavel/dev/enso-2/built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/lib/Standard/Test/0.0.0-dev/src/Suite.enso:83-87)
at <enso> Date_Spec.main(Date_Spec.enso:533:5-25)
The aforementioned reproducer is:
diff --git a/test/Base_Tests/src/Data/Time/Date_Spec.enso b/test/Base_Tests/src/Data/Time/Date_Spec.enso
index 507bf23fc..227a5c81f 100644
--- a/test/Base_Tests/src/Data/Time/Date_Spec.enso
+++ b/test/Base_Tests/src/Data/Time/Date_Spec.enso
@@ -15,14 +15,14 @@ add_specs suite_builder =
spec_with suite_builder "Date" Date.new Date.parse
spec_with suite_builder "JavaScriptDate" js_date js_parse
if Polyglot.is_language_installed "python" then
- spec_with suite_builder "PythonDate" python_date python_parse pending="https://github.com/enso-org/enso/issues/8913"
+ spec_with suite_builder "PythonDate" python_date python_parse
spec_with suite_builder "JavaDate" java_date java_parse
spec_with suite_builder "JavaScriptArrayWithADate" js_array_date js_parse
-spec_with suite_builder name create_new_date parse_date pending=Nothing =
- if pending.is_nothing then Date_Part_Spec.add_specs suite_builder name create_new_date
+spec_with suite_builder name create_new_date parse_date =
+ Date_Part_Spec.add_specs suite_builder name create_new_date
- suite_builder.group name pending=pending group_builder->
+ suite_builder.group name group_builder->
group_builder.specify "should create local date" <|
date = create_new_date 2020 1 1
On my machine, the aforementioned reproducer fails transiently. Before you close this issue, at least enable the PythonDate tests and see whether the CI can handle that.
Thank you Pavel, yes, the issue can still be reproduced:
enso$ curl -L https://github.com/enso-org/enso/commit/94792cf0dbdd1a0fb197d2f8f7162b09bb0de2be.patch | patch -p1 -R
enso$ JAVA_OPTS=-ea ./built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/bin/enso --run test/Base_Tests/src/Data/Time/Date_Spec.enso
may (sometimes, infrequently) fail on my Ubuntu with the message you provided.
Still hapenning: https://github.com/enso-org/enso/actions/runs/8522833894/job/23343863220#step:8:3385
GitHub
Hybrid visual and textual functional programming. Contribute to enso-org/enso development by creating an account on GitHub.
@hubertp has noticed a CI failure:
there is the reproducer:
git checkout
afe1be9sbt buildEngineDistribution
./built-distribution/enso-engine-0.0.0-dev-linux-amd64/enso-0.0.0-dev/bin/enso --run test/Tests/src/Data/Time/Time_Of_Day_Spec.enso
The crash appears then.