OrientDB to H2 - nexus-db-migrator-3.73.0-03.jar has unsigned entries

I am attempting to migrate an OrientDB database for OSS 3.70.3-01 on RHEL8 to H2 in preparation for upgrading to OSS 3.73.x. I’ve run the following command as described in upgrade documentation:

java -Xmx16G -Xms16G -XX:+UseG1GC -XX:MaxDirectMemorySize=28672M -jar nexus-db-migrator-*.jar --migration_type=h2

…and “java” in this case is Java™ SE Runtime Environment (build 1.8.0_131-b11). The attempt failed:

Caused by: java.util.jar.JarException: file:/var/tmp/nexus-db-backups/nexus-db-migrator-3.73.0-03.jar has unsigned entries - application.properties

I tried jdk-11.0.2 instead. This produced a different error:

Caused by: com.sonatype.nexus.db.migrator.exception.MigratorJobParametersInvalidException: Wrong migration type ‘h2’. List of available migration types: [h2_to_postgres, postgres_to_h2]

Does anyone have any experience with resolving this issue?

Best,
George

This problem occurs when Oracle Java is used. Try using OpenJDK instead.

Rich

Thank Rich for that helpful advice. Switching to OpenJDK 8 did resolve the first issue that I reported - and the other one (“Wrong migration type”, experienced when I tried using JDK 11) was due to human error - using a nexus-db-migrator-3.73* migrator when I should have been using nexus-db-migrator-3.70*.

The migration is done, and now I’m looking for a suitable Java 17. I tried openjdk v.17.0.12, but it’s trying to talk TLS 1.0 to our LDAP service, which requires a higher TLS version. This is something I recognize from running OSS 3.70* / Java 8 – the Oracle Java works while the OpenJDK Java encounters this problem. I’d be happy to make OpenJDK 17 work if I can figure that out - otherwise I’ll looks for an Oracle Java version.

Again the advice is really appreciated - I would still be stuck without it!

George

I misread the error message… openjdk 17 works fine.

The issue was that our (legacy) LDAP service was using TLS 1.0 and Java 17 refuses to do that (of course), not the other way around. We have an alternate LDAP service that uses TLS 2.0, so this was quickly resolved – I’m following up so that nobody reading this is misled by my mistake.

-George

To migrate from OrientDB you need to use the older version of the migrator: 3.70.x Downloads (for OrientDB)

Hi Matthew,

Thanks for your reply. Yes, that’s what I realized yesterday – I didn’t read carefully enough and used the wrong migrator script. I’m all set now but I appreciate the message!

Best,
George