New install not starting up

After running from command line on windows I have the same problem with the already existing data directory

Could you please post here what is exactly printed when starting the jar file as described above. Thanks!

When you use v1.2.5 it starts up without any error?

When running with OpenJDK 13 x64

error: Application data directory ‘C:\Users\xxx\AppData\Roaming\Bisq’ could not be created.

JRE 8 32-bit seems to be not compatible as returns wrong class version error.

1.25 Still working fine

Yes, with 1.2.5 everything worked fine for me. No config file or parameter have been changed on my part.

Looking at the code of bisq.common.config.Config @245

I assume the default config file path at ~/.local/share/Bisq/bisq.properties stored in the var defaultConfigFile should be read.

However the variable defaultConfigFile is never read again and then at line 630 it tries to create the parent directory what will throw the new ConfigException(ex, "Application data directory '%s' could not be created", path);

However I didn’t compiled and debug the code. I just skimmed over it…

Does this directory exist for you already? If yes, do you have a bisq.properties file in there? If yes, could you please post the content of it here? Thanks!

Just saw that the directory exists for you already.

I’ve just created an GitHub issue to track this problem: https://github.com/bisq-network/bisq/issues/3998

Could users affected by the appDataDir creation issue please post their operating system details? Windows / Linux distro / version, etc. Thanks.

“Ubuntu 18.04.4 LTS”. If you need further details let me know.

I have been unable to reproduce this error. Here are the steps I took:

  1. Install a fresh Ubuntu 18.04.4 LTS VM via VirtualBox
  2. Download and install the Bisq v1.2.5 .deb from https://github.com/bisq-network/bisq/releases/tag/v1.2.5
  3. Run Bisq successfully with no command line options
  4. Notice that the app starts up without error
  5. Inspect ~/.local/share/Bisq and notice that everything is in place as it should be
  6. Click the link within the running Bisq application to download and verify the v1.2.7 release
  7. Close Bisq v1.2.5, install and run the newly-downloaded v1.2.7 .deb.
  8. Notice that the app starts up without error
  9. Inspect the ~/.local/share/Bisq directory and the contents of the bisq.log file within and notice that everything is as it should be.

Since I cannot reproduce this myself, what’s needed now is to get more information about the reason for the failure to create the (already existing) ~/.local/share/Bisq directory. I’ve just published a patch that will ensure a stack trace is printed to the console in the case of this kind of directory creation failure. @tieck and/or @DrFredPhD, could one of you build and run from source using the following commands and report the stack trace back here?

First you will need to have JDK 10, 11 or 12 installed locally. Use JDK 10 if you don’t have anything installed already. You can get it from https://jdk.java.net/. When complete, check your java version at the command line and you should see the following:

$ java -version
openjdk version "10.0.2" 2018-07-17
OpenJDK Runtime Environment 18.3 (build 10.0.2+13)
OpenJDK 64-Bit Server VM 18.3 (build 10.0.2+13, mixed mode)

Next, you need to build and run Bisq with my patch applied. Here’s how to do it if you have git installed. If you don’t, see the alternative instructions that follow:

git clone --depth=50 --branch=debug-appdir-creation https://github.com/cbeams/bisq
cd bisq
./gradlew :desktop:run

If you do not have git installed, you can download the source as a zip file, unzip it and run the ./gradlew :desktop:run command within the bisq directory it unzips into:

  1. Download and unzip https://github.com/cbeams/bisq/archive/debug-appdir-creation.zip
  2. cd bisq
  3. ./gradlew :desktop:run

Note that on Windows, you will need to run gradlew.bat :desktop:run instead of ./gradlew :desktop:run

You should end up with an error that begins with the following lines:

> Task :desktop:run FAILED
fault: An unexpected error occurred. Please file a report at https://bisq.network/issues
...

Please copy and paste your entire error message.

Note that I am going to cross-post this comment to the GitHub issue tracking this bug at https://github.com/bisq-network/bisq/issues/3998. Please feel free to respond there if you have a GitHub login. Otherwise, I will make sure any relevant information posted here ends up there as well.

It seems that the new version does not handle symbolic links in the path of the Bisq application directory the same way anymore.

I could reproduce the behavior in first moving away the application directory and then creating a symbolic link at its place:

$ mkdir ~/tmp
$ mv ~/.local/share/Bisq/ ~/tmp
$ ln -s ~/tmp/Bisq/ ~/.local/share/Bisq
$ ./gradlew :desktop:run

> Task :desktop:run FAILED
fault: An unexpected error occurred. Please file a report at https://bisq.network/issues
java.io.UncheckedIOException: Application data directory '/home/xxx/.local/share/Bisq' could not be created
at bisq.common.config.Config.mkAppDataDir(Config.java:805)
at bisq.common.config.Config.<init>(Config.java:644)
at bisq.core.app.BisqExecutable.execute(BisqExecutable.java:76)
at bisq.desktop.app.BisqAppMain.main(BisqAppMain.java:57)
Caused by: java.nio.file.FileAlreadyExistsException: /home/xxx/.local/share/Bisq
at java.base/sun.nio.fs.UnixException.translateToIOException(UnixException.java:94)
at java.base/sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:111)
at java.base/sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:116)
at java.base/sun.nio.fs.UnixFileSystemProvider.createDirectory(UnixFileSystemProvider.java:385)
at java.base/java.nio.file.Files.createDirectory(Files.java:689)
at java.base/java.nio.file.Files.createAndCheckIsDirectory(Files.java:796)
at java.base/java.nio.file.Files.createDirectories(Files.java:742)
at bisq.common.config.Config.mkAppDataDir(Config.java:803)
... 3 more

I’ve now heard from both @tieck and @DrFredPhD that they were using symlinks in their appDataDir paths. I’ve just submitted a fix that avoids the reported failure in these cases. See https://github.com/bisq-network/bisq/pull/4002. Feel free to build and run from source once that fix is merged, or wait for v1.2.8. Thanks for the reports and prompt responses!

I can confirm that the fix works as intended.

I wasn’t aware of this behavior of the Files.createDirectory method: ignoring if target exists and is a directory, but failing if it is a symbolic link.

The code looks nice and it also has a test for the fix :slight_smile: Certaintly not the messy code usually found in large coporations… :wink:

Thanks for the kind words, @tieck! Indeed the Files.createDirectory behavior was a surprise here.

Hi, I just wanted to say as OP: Thanks to all for working on this issue; most of the tech stuff is way beyond me… I’m also happy to see that I wasn’t just an isolated case of the noobs. Cheers!