ballerina-lang icon indicating copy to clipboard operation
ballerina-lang copied to clipboard

[Task]: Port nBallerina readonly and error types

Open lochana-chathura opened this issue 9 months ago • 1 comments

Description

$subject.

lochana-chathura avatar Apr 29 '24 03:04 lochana-chathura

Porting is completed. However, the following test (error1.bal) fails with a CCE. Investigating into it.

// EL<:E
// ER1<:E
// ER1<:ER2
// ER2<:E
// ER2<:ER1
type EL error<record {| int[] codes; |}>;
type ER1 error<record {| ER1? e; |}>;
type ER2 error<record {| ER2|() e; |}>;
type E error;
stacktrace (click to expand)
java.lang.ClassCastException: class io.ballerina.types.MappingAtomicType cannot be cast to class io.ballerina.types.ListAtomicType (io.ballerina.types.MappingAtomicType and io.ballerina.types.ListAtomicType are in unnamed module of loader 'app')
	at io.ballerina.types.Context.listAtomType(Context.java:69)
	at io.ballerina.types.typeops.ListOps.listSamples(ListOps.java:155)
	at io.ballerina.types.typeops.ListOps.listFormulaIsEmpty(ListOps.java:112)
	at io.ballerina.types.Common.bddEvery(Common.java:55)
	at io.ballerina.types.Common.bddEvery(Common.java:60)
	at io.ballerina.types.Common.bddEvery(Common.java:58)
	at io.ballerina.types.typeops.ListOps.lambda$listSubtypeIsEmpty$0(ListOps.java:69)
	at io.ballerina.types.Common.memoSubtypeIsEmpty(Common.java:205)
	at io.ballerina.types.typeops.ListOps.listSubtypeIsEmpty(ListOps.java:68)
	at io.ballerina.types.typeops.ErrorOps.errorSubtypeIsEmpty(ErrorOps.java:48)
	at io.ballerina.types.typeops.ErrorOps.isEmpty(ErrorOps.java:58)
	at io.ballerina.types.Core.isEmpty(Core.java:337)
	at io.ballerina.types.Core.isSubtype(Core.java:346)
	at io.ballerina.types.SemTypes.isSubtype(SemTypes.java:98)
	at io.ballerina.semtype.port.test.SemTypeTest.getSubtypeRels(SemTypeTest.java:299)
	at io.ballerina.semtype.port.test.SemTypeTest.verifyAllSubtypeRelationships(SemTypeTest.java:184)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:568)
	at org.testng.internal.invokers.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:139)
	at org.testng.internal.invokers.TestInvoker.invokeMethod(TestInvoker.java:677)
	at org.testng.internal.invokers.TestInvoker.invokeTestMethod(TestInvoker.java:221)
	at org.testng.internal.invokers.MethodRunner.runInSequence(MethodRunner.java:50)
	at org.testng.internal.invokers.TestInvoker$MethodInvocationAgent.invoke(TestInvoker.java:962)
	at org.testng.internal.invokers.TestInvoker.invokeTestMethods(TestInvoker.java:194)
	at org.testng.internal.invokers.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:148)
	at org.testng.internal.invokers.TestMethodWorker.run(TestMethodWorker.java:128)
	at java.base/java.util.ArrayList.forEach(ArrayList.java:1511)
	at org.testng.TestRunner.privateRun(TestRunner.java:806)
	at org.testng.TestRunner.run(TestRunner.java:601)
	at org.testng.SuiteRunner.runTest(SuiteRunner.java:433)
	at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:427)
	at org.testng.SuiteRunner.privateRun(SuiteRunner.java:387)
	at org.testng.SuiteRunner.run(SuiteRunner.java:330)
	at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52)
	at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:95)
	at org.testng.TestNG.runSuitesSequentially(TestNG.java:1256)
	at org.testng.TestNG.runSuitesLocally(TestNG.java:1176)
	at org.testng.TestNG.runSuites(TestNG.java:1099)
	at org.testng.TestNG.run(TestNG.java:1067)
	at org.gradle.api.internal.tasks.testing.testng.TestNGTestClassProcessor.runTests(TestNGTestClassProcessor.java:145)
	at org.gradle.api.internal.tasks.testing.testng.TestNGTestClassProcessor.stop(TestNGTestClassProcessor.java:92)
	at org.gradle.api.internal.tasks.testing.SuiteTestClassProcessor.stop(SuiteTestClassProcessor.java:62)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:568)
	at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:36)
	at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
	at org.gradle.internal.dispatch.ContextClassLoaderDispatch.dispatch(ContextClassLoaderDispatch.java:33)
	at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:94)
	at jdk.proxy2/jdk.proxy2.$Proxy5.stop(Unknown Source)
	at org.gradle.api.internal.tasks.testing.worker.TestWorker$3.run(TestWorker.java:193)
	at org.gradle.api.internal.tasks.testing.worker.TestWorker.executeAndMaintainThreadName(TestWorker.java:129)
	at org.gradle.api.internal.tasks.testing.worker.TestWorker.execute(TestWorker.java:100)
	at org.gradle.api.internal.tasks.testing.worker.TestWorker.execute(TestWorker.java:60)
	at org.gradle.process.internal.worker.child.ActionExecutionWorker.execute(ActionExecutionWorker.java:56)
	at org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.call(SystemApplicationClassLoaderWorker.java:113)
	at org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.call(SystemApplicationClassLoaderWorker.java:65)
	at worker.org.gradle.process.internal.worker.GradleWorkerMain.run(GradleWorkerMain.java:69)
	at worker.org.gradle.process.internal.worker.GradleWorkerMain.main(GradleWorkerMain.java:74)

lochana-chathura avatar Apr 30 '24 06:04 lochana-chathura

The above CCE was due to a porting mistake. It is resolved now. Encountered another issue when enabling data/error1.bal test case. It is not related to the error port. Created a separate issue #42662.

lochana-chathura avatar Apr 30 '24 08:04 lochana-chathura

Closing with #42663

lochana-chathura avatar May 08 '24 04:05 lochana-chathura