Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

syncthingtray_0.10.8 compilation error #63

Closed
gwpl opened this issue Apr 15, 2020 · 8 comments
Closed

syncthingtray_0.10.8 compilation error #63

gwpl opened this issue Apr 15, 2020 · 8 comments

Comments

@gwpl
Copy link

gwpl commented Apr 15, 2020

syncthingtray_0.10.8-1-AUR_makepkg_compilation_error.txt

critical part from full log in attachement:

$ pacaur -S syncthingtray
(...)
2: !!!FAILURES!!!
2: Test Results:
2: Run:  1   Failures: 1   Errors: 0
2: 
2: 
2: 1) test: ApplicationTests::test (F) line: 146 /home/gw/.cache/pacaur/syncthingtray/src/syncthingtray-0.10.8/cli/tests/application.cpp
2: forced failure
2: - Line    Status                        (idle|scanning) could not be found in output.
2: 
2: 
2: Tests failed
2/2 Test #2: syncthingctl_run_tests ...........***Failed    2.53 sec

0% tests passed, 2 tests failed out of 2

Total Test time (real) =   6.10 sec

The following tests FAILED:
          1 - syncthingconnector_run_tests (Failed)
          2 - syncthingctl_run_tests (Failed)
Errors while running CTest
make[3]: *** [connector/CMakeFiles/check.dir/build.make:77: connector/CMakeFiles/check] Error 8
make[2]: *** [CMakeFiles/Makefile2:632: connector/CMakeFiles/check.dir/all] Error 2
make[1]: *** [CMakeFiles/Makefile2:639: connector/CMakeFiles/check.dir/rule] Error 2
make: *** [Makefile:325: check] Error 2
==> ERROR: A failure occurred in check().
    Aborting...
:: failed to build syncthingtray package(s)

full log attached

@gwpl
Copy link
Author

gwpl commented Apr 15, 2020

Also commented under AUR package : https://aur.archlinux.org/packages/syncthingtray/#comment-739579

@Martchus
Copy link
Owner

Martchus commented Apr 15, 2020

These tests sometimes fail on very slow/unresponsive systems but this case looks different.

The CLI test expects that the status of one of the directories is either "idle" or "scanning" but in your case it is "out of sync". That's odd because in this test setup the test instance of Syncthing should never connect to any other device and therefore not be able to "find out" that changes are needed.

The test for the library fails in the same way so this is apparently a reproducible problem in your case.

You could simply ignore the test failures. They are likely due to the test setup and show no real problems.

If you'd like to investigate the problem you can configure your AUR helper not to clean up the /home/gw/.cache/pacaur/syncthingtray directory. As shown in the logs the testsuite launches Syncthing via syncthing -gui-address=http://localhost:56261 -gui-apikey=syncthingtestinstance -home=/home/gw/.cache/pacaur/syncthingtray/src/syncthingtray-0.10.8/connector/testworkingdir/testconfig -no-browser -verbose. You could launch it manually in the same way and try to find out why Syncthing thinks one of the directories is out-of-sync.

@Martchus
Copy link
Owner

Martchus commented Apr 15, 2020

I also find it odd that it tries to migrate the database multiple times to the current schema version. That looks like it would pick up some old database from a previous test run.


EDIT: Seems like that this is even the case when the build is done within a pristine VM, e.g. on OBS:

[  164s] 1: [BJ4IY] 09:32:00 VERBOSE: Starting up (/home/abuild/rpmbuild/BUILD/syncthingtray-1586880930.8971f29/build/connector/testworkingdir/testconfig)
[  164s] 1: [BJ4IY] 09:32:00 INFO: Hashing performance is 141.94 MB/s
[  164s] 1: [BJ4IY] 09:32:00 INFO: Migrating database to schema version 1...
[  164s] 1: [BJ4IY] 09:32:00 INFO: Migrating database to schema version 2...
[  164s] 1: [BJ4IY] 09:32:00 INFO: Migrating database to schema version 3...
[  164s] 1: [BJ4IY] 09:32:00 INFO: Migrating database to schema version 5...
[  164s] 1: [BJ4IY] 09:32:00 INFO: Migrating database to schema version 6...
[  164s] 1: [BJ4IY] 09:32:00 INFO: Migrating database to schema version 7...
[  164s] 1: [BJ4IY] 09:32:00 INFO: Migrating database to schema version 9...
[  164s] 1: [BJ4IY] 09:32:00 INFO: Compacting database after migration...
[  164s] 1: [BJ4IY] 09:32:00 INFO: Checking db due to upgrade - this may take a while...

So that's not causing the problem.

@gwpl
Copy link
Author

gwpl commented Apr 15, 2020

I removed syncthingtray directory from ~/.cache/pacaur/ and still fails to build.

Could you provide what change should be applied to make it work?
Or better , collaborate with owner of package https://aur.archlinux.org/packages/syncthingtray/#comment-739579 to make it building :).

@Martchus
Copy link
Owner

I am the owner of the AUR package. This is not a general packaging issue because the package builds on my machine just fine. That also means I can not reproduce the problem myself and therefore need more information from your side. I have already suggested how one could investigate the issue further. Without knowing why this Syncthing directory is "out of sync" I can not simply provide a fix to make it work. But as I said, Syncthing Tray is likely working anyways and just the test can not be setup correctly in your case. (See the pinned AUR comment for disabling tests.)

@imsodin
Copy link

imsodin commented Apr 16, 2020

I have no clue what the test does, but in the log in the OP the following line comes up

1: [D2RSF] 13:58:54 WARNING: Error on folder test1: insufficient space on disk for database (/home/gw/.cache/pacaur/syncthingtray/src/syncthingtray-0.10.8/connector/testworkingdir/testconfig/index-v0.14.0.db): 0.6 % < 1 %

and I'd expect that's the problem.

@Martchus
Copy link
Owner

Ah, I've missed that. Thanks for pointing it out. That seems to be the culprit, indeed.

By the way, the test is actually quite simple. It just starts Syncthing with a test configuration. There's no database at this point (so Syncthing has to initialize a new one) and it is not expected to actually connect to any of the devs in the config. I just test whether my library is able to connect, get the status, trigger some actions and that's it.

@Martchus
Copy link
Owner

Martchus commented May 1, 2020

I assume we can figure that this is not a general problem of my integration tests or even Syncthing.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants