-
Notifications
You must be signed in to change notification settings - Fork 23
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
GRPC_CALL_OK crash #133
Comments
Note: I tested with Gazebo and didn't get the crash. I tried starting SITL before and after starting the app and it worked in both cases. We just have to fix this for the actual drone. |
@douglaswsilva Just wanted to confirm, but when you pulled the latest version of the example app you are manually updating it to 0.5.0 from 0.4.1, right? I'm changing the Cartfile to That said, I tried the current version of the example app (with 0.4.1) and it wasn't establishing a connection with my ESP8266 WiFi Module, but QGC was able to. update: Not able to get it to connect with 0.5.0 either. |
@unipheas: Are you getting a crash, or is it just not connecting? Does the backend output anything at all (at least the version number and a few log lines)? |
@douglaswsilva: I'm trying to reproduce, and also testing with latest mavsdk_server 0.18.0. |
It's not crashing, just not connecting. Here is the log
|
@unipheas: I believe they don't, they are still on Swift 4. But I'm now wondering if that could be related somehow (e.g. grpc-swift 0.8.1 has issues with the newer version of grpc we use on the server side. Remember we had issues with grpc-swift 0.8.2 already?). |
@JonasVautherin I do remember. |
@douglaswsilva can you run the example app through Xcode while your phone is plugged in and tell us what the response is in the console? If it's crashing it should be producing some sort of error. |
@unipheas Yeah, here it is:
|
This is my current
Let me know if you need anything else. :) |
Note: they are building from the |
I could reproduce on Pixhawk 4 and on an old H520, and not on SITL, as @douglaswsilva observed. I reproduced running the Swift example app, both on the iOS simulator and on an iPad. I could not reproduce in a (somewhat simpler) example in Python (running a mission while printing all the position, ground_speed_ned and gps_info messages), which suggests it may not come from Because I don't remember changing anything in the Swift code, I would guess it may come from the new version of grpc-swift (from 0.9 on). Maybe something changed and we should handle the streams a bit differently 🤔. First thing that comes to my mind is this change that I needed when moving to Swift 5. I don't believe it is the cause because I think @douglaswsilva was experiencing this bug before I started working on that branch. @douglaswsilva or @byuarus: could you comment on that change (here), just to make sure it is not obviously wrong? In the meantime I'll try to downgrade grpc-swift and see where I go. |
You know what? I just ran another test:
And I reproduced it there! It took a few missions, but it did crash:
|
Well, I'm actually not sure if it is the same issue. It sounds like this assertion shows some kind of race condition. It crashes super quickly when running Not sure why, because you don't have this crash on the production version, do you @douglaswsilva? |
Ok I think that's a race in Working on a fix! |
Tested with:
Reproduce:
Crash message:
I noticed that the crash will happen after subscribing to some telemetry observables. I'd receive some results, for instance position would return location for a few seconds and then crash after a while.
I saw crashes in
observePosition()
,observeGroundSpeed()
,observeGPS()
, but suspect it can happen in any place we have some observable callback, specially in telemetry.Crash Stack:
The text was updated successfully, but these errors were encountered: