Error starting navigator

hello, i have a problem with the navigator.

I have one DAR that should be tested in the Sandbox environment. I started the sandbox with the following command:

java -jar daml-sdk.jar sandbox myDar-0.0.1.dar --ledgerid=myLedgerId --sql-backend-jdbcurl "jdbc:postgresql://localhost/postgres?user=postgres&password=mypassword"

The sandbox is started and looks good:

15:48:36.608 [pool-1-thread-3] INFO  c.d.p.apiserver.LedgerApiServer - **Listening on localhost:6865 over plain text.**

15:48:36.609 [pool-1-thread-4] INFO  c.d.p.apiserver.StandaloneApiServer - Initialized API server version 1.3.0 with ledger-id = myLedgerId, port = 6865, dar file = List(myDar-0.0.1.dar)

now i start the navigator with the command:

java -jar daml-sdk.jar navigator server --config-file ui-backend.conf

the content of the ui-backend.conf looks like this:

users {
            ccc { party = "ccc" }
            ppp { party = "ppp" }
            iii { party = "iii" }
            coo { party = "coo" }
            fff { party = "fff" }
            admin { party = "admin" }
            ooo { party = "ooo" }
        }

starting the navigator i get the following exception:

17:15:53.716 [main] INFO  com.daml.navigator.config.Config$ - Loading Navigator config file from ui-backend.conf
17:15:54.930 [main] ERROR user-facing-logs - Configuration file could not be parsed: ThrowableFailure(java.sql.SQLException: Error opening connection,Some(ConfigValueLocation(file:/tmp/my_project/ui-backend.conf,4)),users.iii.party), ThrowableFailure(java.sql.SQLException: Error opening connection,Some(ConfigValueLocation(file:/tmp/my_project/ui-backend.conf,3)),users.ppp.party), ThrowableFailure(java.sql.SQLException: Error opening connection,Some(ConfigValueLocation(file:/tmp/my_project/ui-backend.conf,5)),users.coo.party), ThrowableFailure(java.sql.SQLException: Error opening connection,Some(ConfigValueLocation(file:/tmp/my_project/ui-backend.conf,7)),users.admin.party), ThrowableFailure(java.sql.SQLException: Error opening connection,Some(ConfigValueLocation(file:/tmp/my_project/ui-backend.conf,6)),users.fff.party), ThrowableFailure(java.sql.SQLException: Error opening connection,Some(ConfigValueLocation(file:/tmp/my_project/ui-backend.conf,8)),users.ooo.party), ThrowableFailure(java.sql.SQLException: Error opening connection,Some(ConfigValueLocation(file:/tmp/my_project/ui-backend.conf,2)),users.ccc.party)
Exception in thread "main" java.lang.RuntimeException: ThrowableFailure(java.sql.SQLException: Error opening connection,Some(ConfigValueLocation(file:/tmp/my_project/ui-backend.conf,4)),users.iii.party), ThrowableFailure(java.sql.SQLException: Error opening connection,Some(ConfigValueLocation(file:/tmp/my_project/ui-backend.conf,3)),users.ppp.party), ThrowableFailure(java.sql.SQLException: Error opening connection,Some(ConfigValueLocation(file:/tmp/my_project/ui-backend.conf,5)),users.coo.party), ThrowableFailure(java.sql.SQLException: Error opening connection,Some(ConfigValueLocation(file:/tmp/my_project/ui-backend.conf,7)),users.admin.party), ThrowableFailure(java.sql.SQLException: Error opening connection,Some(ConfigValueLocation(file:/tmp/my_project/ui-backend.conf,6)),users.fff.party), ThrowableFailure(java.sql.SQLException: Error opening connection,Some(ConfigValueLocation(file:/tmp/my_project/ui-backend.conf,8)),users.ooo.party), ThrowableFailure(java.sql.SQLException: Error opening connection,Some(ConfigValueLocation(file:/tmp/my_project/ui-backend.conf,2)),users.ccc.party)
        at scala.sys.package$.error(package.scala:30)
        at com.daml.navigator.UIBackend.run(UIBackend.scala:309)
        at com.daml.navigator.UIBackend.$anonfun$main$1(UIBackend.scala:282)
        at com.daml.navigator.UIBackend.$anonfun$main$1$adapted(UIBackend.scala:282)
        at com.daml.navigator.UIBackend$$Lambda$128/00000000B899FB80.apply(Unknown Source)
        at scala.Option.foreach(Option.scala:407)
        at com.daml.navigator.UIBackend.main(UIBackend.scala:282)
        at com.daml.sdk.SdkMain$.main(SdkMain.scala:28)
        at com.daml.sdk.SdkMain.main(SdkMain.scala)

Environment-Details:

  • PostgreSQL 12.1
  • Java 1.8.0_251 (JRE 1.8.0 Linux s390x-64-Bit)
  • Daml SDK 1.3.0

thanks in advance for the help!

1 Like

Hi Arton!

I could not reproduce the error locally, but I think I know what is happening: it looks like you are running Linux on IBM Z, and Navigator currently does not work on that system.


Technical details:

The Navigator error “Configuration file could not be parsed” happens before Navigator tries to connect to the ledger. It should therefore have nothing to do with your sandbox setup.

As part of the config parsing, Navigator creates a SQLite in-memory database for each party listed in the config. We use the sqlite-jdbc library for SQLite, which includes native SQLite binaries for all major operating systems. Unfortunately, it looks like Linux on IBM Z is not included.

I’ll open an issue for fixing this, but I can’t comment on the priority of the fix.

2 Likes

Hi Robert,

thx a lot for the Information.

Greetings, Arton

1 Like

Welcome @arton.berisha btw in the forum!

1 Like