Should I file a bug report: opaque error messages with no suggested resolution

Upon upgrading Syncthing Android to version 1.5.0, I see the following in the browser UI of my Windows computer (also running Syncthing 1.5.0; and my Linux laptops cannot sync the affected Android folder either).

 dynamic
quic://141.98.252.232:22000
Handshake did not complete in time (13:56:45)
tcp://[2a03:1b20:7:f011::a02e]:22000
A socket operation was attempted to an unreachable network. (13:56:33)
quic://141.98.252.232:29881
context deadline exceeded (13:56:45)
quic://141.98.252.232:29883
Handshake did not complete in time (13:56:45)
quic://[2a03:1b20:7:f011::a02e]:22000
A socket operation was attempted to an unreachable network. (13:56:35)
relay://185.86.148.197:22067
relay://91.121.50.14:52419
tcp://141.98.252.232:22000
No connection could be made because the target machine actively refused it. (13:56:35)
tcp://192.168.1.121:22000
quic://192.168.1.121:22000
No compatible QUIC version found. We support [QUIC WG draft-27], server offered [0x7a2a1a3a 0xff000018] (13:56:17)
quic://141.98.252.232:29978
tcp://[fe80::62be:b5ff:fe6c:1855%25Ethernet%202]:22000
quic://[fe80::62be:b5ff:fe6c:1855%25Ethernet%202]:22000
No compatible QUIC version found. We support [QUIC WG draft-27], ser

These messages are unintelligible to the layperson and such a person has little idea what to do to solve the problem. Here are things I have tried myself to no avail.

  • I have restarted Syncthing, on both the Android device and the other devices.

  • Ideleted (from all or at least most of my devices, including the Android device and the Windows device) the files that seemed to have hung in their syncing.

Actually, after doing those things, and unsharing and resharing folders and disabling my VPN, eventually Syncthing made some progress. Or rather it changes its error message. For now I see this:

no connected device has the required version of this file

Once again, Syncthing gives me no indication of what I can do about the problem. Well, the UI does say this: ā€™ The following items could not be synchronized. They are retried automatically and will be synced when the error is resolved.ā€™ Yet, I donā€™t think the problem will ever get resolved on its own.

Regarding the connection errors: Syncthing just displays whatever error occurs on the connection. Apart from registering every possible error and translating it (read: not feasible at all) thereā€™s no way to make them comprehensible. The usual solution by most programs would be to just not display this information. Weā€™d rather give the information on the chance someone can get something useful out of it.
The one that sticks out to me is

Looks like a firewall is rejecting the connection.

That means one of the disconnected device has data you need, i.e. nothing will get resolved until that device is connected. Resolution: Wait or take steps to make currently disconnected devices connect (e.g. bring them online).
Sincere question: How is that message unclear in that respect, or better, what would you suggest to improve it?

1 Like

Thanks for the response.

No, Syncthing could (1) report problems in a more comprehensible way and (2) in some cases make suggestions for resolution. For, I have filed bug reports in the past that have led to 1 and 2. Moreover, your own post suggests that where the log says that there was an actively refused connection, the UI could tell the user that there might be a firewall problem. True, it might be impractical to do 1 and 2 with every possible error. Yet, it can be done - and, as I say, has been done - for some errors.

Perhaps I am being dim, but I am unsure which machine is refusing a connection. The machine from which I take the log, i.e. the Windows machine? Or the other machine that is (principally) at issue, namely, the Android device?

As to ā€˜Resolution: Wait or take steps to make currently disconnected devices connect (e.g. bring them online)ā€™: that was not the actual message I received. It is your gloss of this log item: ā€˜The following items could not be synchronized. They are retried automatically and will be synced when the error is resolved.ā€™ Or perhaps it is your gloss of this log item: ā€˜no connected device has the required version of this fileā€™. Anyhow: all of those strings are clear enough yet none of them is of any help if all the affected machines are online already. And - as perhaps I failed to make clear - all of my affected machines are online already.

I have managed to solve the problem or at least the immediate problem. I did so in the same manner in which I have solved similar problems before. To wit: I deleted all affected files from all relevant devices and removed and then recreated the relevant Syncthing ā€˜folderā€™ from each affected device.

Many things are possible but not practical. Recognizing textual error messages from all platforms in all the worlds languages is one of those things. That we can understand them as a human and make a recommendation in a forum post is something different.

1 Like

Syncthing has done as I proposed, on another front, i.e. with another error message, already. I said that in my previous post. Perhaps you think that in so doing Syncthing embarked upon a Sisyphean task that it should abandon.

One error message I saw in the log - or rather, I think, in a pop-up - advised me to search the relevant documentation and to search the forum. It seems to me that at the least Syncthing could - ideally in a pop-up - do that in the case of a greater number of errors.

[Edited.]

You donā€™t seem to want to understand. Nobody is saying anything about absolute impossibilities:

Bringing up a random other error that is more descriptive doesnā€™t help your case (I assume itā€™s the folder marker thingy). Thatā€™s an error produced in our code, that we know when it occurs and that does not change. Thatā€™s an entirely different thing.

And just in case youā€™re not convinced: You are herein invited to add parsing of network errors and maintain that forever if you want to (Iā€™d need some kind of assurance on the ā€œmaintain foreverā€ though). What I am saying is this is a heinous task, that I wouldnā€™t want to put on anyone, not me or anyone else (by extension, Iā€™d be more happy if you contributed to Syncthing in another way).

And by the way: ā€œCheck your firewallā€ is an advice I would have given even without any of these error messages - itā€™s the number one reason for network problems.

Also, computers are not friendly to people who donā€™t understand them.

And it seems nobody tries to make them easy to understand, because operating systems still to this day return error messages that make it hard for layman to understand.

You still get access violation 0xdeadbeef errors when applications crash.

If you want to fight the fight for better error message, you should fight it against operating system vendors as we just pass on what we were given by the operating system.

Error messages that we produce (not pass on as we received) we try to make friendly, but the case you are talking about, itā€™s not our error message.

3 Likes

On a practical point, I encountered critical problems with version 1.5 of the Syncthing Android app.

The only solution I found was to find and and install an APK of version 1.4.2 and then resist the temptation to update.

There are threads detailing the problems with version 1.5 and highlighting that 1.4.2 is the most recent version with out problems. Itā€™s a few months ago since I was looking at this and I canā€™t now remember the details. But version 1.4.2 has been working very satisfactorily on multiple Android devices for a few months now.

I hope this helps!

Thanks. I will downgrade if I have to.

All this is rather disheartening. For, recently, when I was running 1.5 on my computers and 1.4 on my 'phone, I filed a bug report in which I was told that it was asking for trouble to run different versions on different devices. So I upgraded - or, as it turns out, ā€˜upgradedā€™ - the Android version of Syncthing.

This is my third time of trying to use Syncthing: I abandoned it twice before, because each time it had too many problems.

I guess this is user experiences vs recommendations.

We always recommend to run the latest version, yet users might feel they have had better results with older versions.

What are your problems currently - still no connection? Have you checked firewalls?

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.