-
Notifications
You must be signed in to change notification settings - Fork 467
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
Client hangs after connecting to server on FreeBSD #1971
Comments
Looks like client hangs because it wait for another thread to join... Can you post backtraces for all threads of client? |
|
Interesting, I've just built version 1.2.0 (already in the ports) and it apparently works fine with campaign and single scenarios as well. Later I'll try to find the commit which might have fixed it. @Alexander-Wilms, assuming you're on FreeBSD and was building locally, could you update the ports tree, install the game from |
|
Did not see any issue like this on Arch Linux. Will try today. |
Tried to rebuild vcmi 1.3 with boost 1.72 and 1.79, first one failed due to preprocessing errors, second failed on a linkage stage. Same happened with vcmi 1.2. For boost 1.81.0-3 and vcmi 1.3 behavior is just similar, client hangs on a screen above producing no message for user like(can't connect to vcmiserver, found error with connection or some kinda). |
I have the same error as @Alexander-Wilms. Also when trying to start a Campaign, the Connection popup appears for a second then disappears and I'm back on the Campaigns screen. Tried both vcmi (1.2.0-1) and vcmi-git (1.3 a.k.a. 1.2.0.213.gdf291463d-1) on AUR (Arch-Linux, in my case Manjaro), after having installed fuzzylogic-git and qt6-tools.
|
likely same as flathub/eu.vcmi.VCMI#122 |
Flatpak and FreeBSD bugs might be different. FreeBSD - can you check whether vcmiserver crashes on start? Client should print This just a guess and I doubt that things would be that easy, but you can try adding
immediately at the start of Flatpak - can you try to find server crash backtrace?
|
Like I said earlier, I no longer observe this bug since updating to version 1.2.0 (I yet need to find out which commit had fixed it since v1.1.1). But for the record: the server did not crash when this bug was occurring, otherwise I wouldn't be able to attach gdb(1) to it. |
For this to happen:
Not sure if this is normal / expected or issue comes from invalid environment. |
Interesting that this only happens for vcmiserver, vcmiclient runs the same code fine. Probably related to child processes - somehow 'vcmiserver' process created by 'vcmiclient' have not passed down its environment variables |
I think I can confirm that this is the cause on my end. Installed game through AUR vcmi-git (1.2.0.306.g1fde8b588-1) and experienced this issue, meanwhile manually building it in a local (not read only) folder from the develop branch (1.3.0.1fde8b588bbb12efc2a979fe4506a91753caca38) causes it to run properly. (not sure why the version mismatch, both seem to point at the same commit?)
|
btw @Alexander-Wilms I encourage you to join VCMI slack or VCMI discord if you are interested in more cooperated long term contribution |
@Alexander-Wilms Not entirely sure how flatpak works but it is somewhat similar to how vcmiserver starts. Which is something like |
Same behaviour on my Arch Linux installation. |
RE: @gapys-krzysztof @Arseniusz |
For me compiling from sources also works. So looks like at least on Arch Linux problen in Aur packages. |
Can confirm it is still occurs with 1.2.0/1.2.1 version of AUR package, though it wasn't a thing on 1.1.1 and lower versions. |
So, I've ran through several tests, using Good -- e4f4eb3 Run it as: git clone https://github.com/vcmi/vcmi && cd vcmi
git bisect start
git bisect good e4f4eb3c1b7f8411d2e0f5b05aff5de6b5335fc5
git bisect bad 64ddd75cdc363a185d4cc9be464fb45923427955 Then clone makepkg --printsrcinfo > .SRCINFO
makepkg -si P.S. |
Considering that "AUR package is broken but manual build works"
|
For tests I cloned vcmi-git package, the only change was to set the desired commit from |
Yes I am. Exatly same instructions as in PKGBUILD
And then |
btw |
Thanks for research. Will try to investigate that commit. To confirm, this is the error message that you get after bad commit? |
I wanted to test on arch as well (Endeavor OS), but facing that FL doesn't want to build when running
|
@kambala-decapitator try installing fuzzylite-git if fuzzylite doesn't builds for you |
thanks! it helped, that warning wasn't treated as an error. |
This might be the reason: potential nullptr to reference conversion (undefined behavior in c++) What compiler and c++ library is used by Arch right now? Probably newer than one we use right now... Can somebody try applying this patch and check if it has any effect? |
yeah, same assert on my side |
@IvanSavenko can confirm this patch fixes issue on arch linux as well |
Great. Will create PR with that patch today & probably backport it to 1.2 |
This issue is about the bug reported earlier, to make it easier to track here on GitHub.
It happens with version 1.1.1 and apparently independent of the Boost version (originally reported for boost-libs 1.72.0, seeing it now with boost-libs 1.81.0).
Backtraces from gdb(1) attached to both processes while it hangs:
Building and running the server on Ubuntu 20.04 and running the client on FreeBSD as
vcmiclient -i -d
allows it to connect and it does not hang, but nothing happens when I'm trying to start a new campaign game. The server sees the connection though:What I am missing to start the campaign with separate client and server instances?
The text was updated successfully, but these errors were encountered: