Hi Alex,

What is the version of java that you are using? I mean to try to replicate
the issue :).

Best regards,
Bertty

On Wed 13. Oct 2021 at 09:47, Alexander Alten <[email protected]> wrote:

> [INFO] Running org.apache.wayang.spark.operators.SparkReduceByOperatorTest
> [ERROR] Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed:
> 0.008 s <<< FAILURE! - in
> org.apache.wayang.spark.operators.SparkReduceByOperatorTest
> [ERROR]
> org.apache.wayang.spark.operators.SparkReduceByOperatorTest.testExecution
> Time elapsed: 0.007 s  <<< ERROR!
> java.lang.IllegalArgumentException: Unsupported class file major version 55
>         at
> org.apache.wayang.spark.operators.SparkReduceByOperatorTest.testExecution(SparkReduceByOperatorTest.java:76)
>
> Spark 3.0 supports jdk11 [1], switching to jdk8 [2] the build works.
>
> Sqlite:
> [INFO] wayang-api-scala-java_2.11 ......................... FAILURE [
> 14.715 s]
>
> org.apache.wayang.core.api.exception.WayangException: Could not connect to
> database
> (jdbc:sqlite:/var/folders/n6/fcn2c03j2552rwhk0y1qjq640000gn/T/wayang-sqlite38143519054959497171db)
> as null with driver org.sqlite.JDBC.
>
> ls -la
> /var/folders/n6/fcn2c03j2552rwhk0y1qjq640000gn/T/wayang-sqlite38143519054959497171db
>
> ls:
> /var/folders/n6/fcn2c03j2552rwhk0y1qjq640000gn/T/wayang-sqlite38143519054959497171db:
> No such file or directory
>
> But there are other sqlite databases:
> wayang-java, wayang-spark
>
> Cheers,
>  —Alex
>
> ---
>
> 1:
> https://stackoverflow.com/questions/53583199/spark-error-unsupported-class-file-major-version
> 2:
> https://www.azul.com/downloads/?version=java-8-lts&os=macos&architecture=arm-64-bit&package=jdk
>
> > On 12. Oct 2021, at 14:36, Bertty Contreras <[email protected]> wrote:
> >
> > Hi Alex and Gabor,
> >
> > answer bellow :F
> >
> > "Can you please provide the download link?"
> >
> >> The code is on the main branch in the repository just do
> >> git clone https://github.com/apache/incubator-wayang.git
> >
> >
> > "it's in the main branch, right?"
> >
> >> yes the main branch
> >
> >
> > "What does this setup mean for Java versions?"
> >
> >> I think I need to write again that, In the case of java 8 you can use
> >> both(scala 2.11 and 2.12) but in the case of java 11 is possible to use
> >> just scala 2.12, because scala 2.11 its not supported by java 11
> >
> >
> > "I'm a bit worried that it might also happen in the future that some of
> our
> > backend systems won't support very new or very old Java versions."
> >
> >> I made this change to try to support that case. I want to isolate the
> code
> >> to enable different versions of scala compile in armony. In the case of
> >> Java it is "easier" because after 8 almost all of the code is
> compatible,
> >> you need to be adding some classes or you can wrap some classes in the
> case
> >> of some functionality that is not supported.
> >
> > About scala, it's more complex because most of the versions are not
> >> retrocompatibles but we can do some tricks to do it, that is the idea of
> >> this folder.
> >
> >
> > Best regards,
> >
> >
> > On Tue, Oct 12, 2021 at 2:21 PM Gábor Gévay <[email protected]> wrote:
> >
> >> Hi Bertty,
> >>
> >> I'm doing the build now (it's in the main branch, right?), but one
> >> quick question: What does this setup mean for Java versions? I used to
> >> build -Pscala-11 with Java 8, but -Pscala-12 with Java 11. Do I
> >> understand correctly, that after this change we have to use the same
> >> Java version for both Scala 2.11 and 2.12? Currently, Emma runs only
> >> on Java 8. I might be able to make it work on Java 11, so this is not
> >> a big problem hopefully. But I'm a bit worried that it might also
> >> happen in the future that some of our backend systems won't support
> >> very new or very old Java versions.
> >>
> >> Best,
> >> Gábor
> >>
> >>
> >>
> >>
> >> Bertty Contreras <[email protected]> ezt írta (időpont: 2021. okt.
> >> 12., K, 14:09):
> >>>
> >>> Hi Folks,
> >>>
> >>>
> >>> I had been working on issues release; one of them was the profile at
> the
> >>> moment of generating the artefacts. So I did some tests, and it looks
> ok,
> >>> but I want you to compile the code with the following commands.
> >>>
> >>>
> >>> mvn clean install
> >>>
> >>>
> >>> before running this command, be sure to delete the folder
> >>> ~/.m2/repository/org/apache/wayang
> >>>
> >>>
> >>> after the execution you will found the following folder in the path
> >>>
> >>> ~/.m2/repository/org/apache/wayang
> >>>
> >>>
> >>> wayang
> >>>
> >>> wayang-api
> >>>
> >>> wayang-api-python
> >>>
> >>> wayang-api-scala-java
> >>>
> >>> wayang-api-scala-java_2.11
> >>>
> >>> wayang-api-scala-java_2.12
> >>>
> >>> wayang-basic
> >>>
> >>> wayang-benchmark
> >>>
> >>> wayang-benchmark_2.11
> >>>
> >>> wayang-benchmark_2.12
> >>>
> >>> wayang-commons
> >>>
> >>> wayang-core
> >>>
> >>> wayang-flink
> >>>
> >>> wayang-flink_2.11
> >>>
> >>> wayang-flink_2.12
> >>>
> >>> wayang-giraph
> >>>
> >>> wayang-graphchi_2.11
> >>>
> >>> wayang-iejoin
> >>>
> >>> wayang-iejoin_2.11
> >>>
> >>> wayang-iejoin_2.12
> >>>
> >>> wayang-java
> >>>
> >>> wayang-jdbc-template
> >>>
> >>> wayang-platforms
> >>>
> >>> wayang-plugins
> >>>
> >>> wayang-postgres
> >>>
> >>> wayang-profiler
> >>>
> >>> wayang-profiler_2.11
> >>>
> >>> wayang-profiler_2.12
> >>>
> >>> wayang-resources
> >>>
> >>> wayang-spark
> >>>
> >>> wayang-spark_2.11
> >>>
> >>> wayang-spark_2.12
> >>>
> >>> wayang-sqlite3
> >>>
> >>> wayang-tests-integration
> >>>
> >>> wayang-tests-integration_2.11
> >>>
> >>> wayang-tests-integration_2.12
> >>>
> >>> wayang-utils-profile-db
> >>>
> >>>
> >>> Currently, you do not need to set any profile because the profile
> depends
> >>> on the folder's content. So it is possible because I create "empty"
> >>> artefacts that help with the generation of code for scala 2.11 and
> scala
> >>> 2.12 simultaneously.
> >>>
> >>>
> >>> you will found some folders with the following structure
> >>>
> >>>
> >>> module-name/
> >>> ├─ pom.xml
> >>> ├─ code/
> >>> │  ├─ main/
> >>> │  │  ├─ java/
> >>> │  │  ├─ resources/
> >>> │  │  ├─ scala/
> >>> │  ├─ test/
> >>> │  │  ├─ java/
> >>> │  │  ├─ resources/
> >>> │  │  ├─ scala/
> >>> ├─ module-name_${scala_version}/
> >>> │  ├─ src/
> >>> │  │  ├─ main/
> >>> │  │  │  ├─ java/ -> ./../../../code/main/java
> >>> │  │  │  ├─ java_${scala_version}/
> >>> │  │  │  ├─ scala/ -> ./../../../code/main/scala
> >>> │  │  │  ├─ scala_${scala_version}/
> >>> │  │  │  ├─ resources/ -> ./../../../code/main/resources
> >>> │  │  │  ├─ resources_${scala_version}/
> >>> │  │  ├─ test/
> >>> │  │  │  ├─ java/ -> ./../../../code/test/java
> >>> │  │  │  ├─ java_${scala_version}/
> >>> │  │  │  ├─ scala/ -> ./../../../code/test/scala
> >>> │  │  │  ├─ scala_${scala_version}/
> >>> │  │  │  ├─ resources/ -> ./../../../code/test/resources
> >>> │  │  │  ├─ resources_${scala_version}/
> >>> │  ├─ pom.xml
> >>>
> >>>
> >>> This structure allows you to have several versions of scala compiling
> at
> >>> the same time without generating errors. Have in consideration that
> most
> >> of
> >>> the code will be shared by different versions; because of it, you have
> a
> >>> link(->) to the folder "code" (exist a script for it). The "code"
> Folder
> >> is
> >>> the current code that is running for the versions.
> >>>
> >>>
> >>> The benefit of these changes are:
> >>>
> >>>   - Solve the non-compilation of Jenkins issue.
> >>>   - The release issue, non-generation of artefacts for scala 2.11
> >>>   - It provides better support to the different versions that we are
> >>>   currently supporting and allows adding new versions with minimum
> >> effort.
> >>>   - Avoid maintaining several branches of the same code with minor
> >> changes.
> >>>
> >>>
> >>> Before I add the documentation, I want you to compile, review the code
> >> and
> >>> let me know your thoughts about it.
> >>>
> >>>
> >>> To simulate a release in your computer, you can try the following
> >> command.
> >>>
> >>>
> >>> mvn clean install -Papache-release
> >>>
> >>>
> >>> This command take time, please be patient :D
> >>>
> >>>
> >>> By the way all this change are already in the master
> >>>
> >>>
> >>> I will be waiting for your feedback.
> >>>
> >>>
> >>> Best regards,
> >>>
> >>> Bertty
> >>
>
>

Reply via email to