Photon 1.69 sometimes doesn't send ACK's on iOS

Options
Hi,

We have recently updated from photon 1.56 to 1.69 and have problems with disconnects - DisconnectByServerTimeout.
Have somebody registered bug when photon disconnects when scene is loading ? I suppose that in some special cases thread sending ACK's is not started properly. I've got two devices with same build of game. On one device when I set isMessageQueueRunning to false or put somewhere main thread blocking code, like long while loop (10 seconds) device get disconnected around in 7 seconds. Second device is just fine when trying this approach. I didn't find any exceptions in log of devices. Unity version used is 5.2.5

Comments

  • Tobias
    Options
    You can use PhotonNetwork.LoadLevel to let PUN handle settings the message queue.
    Are the 2 devices different? Maybe one has a different os version. Maybe one handles background threads better?
  • wawro1
    Options
    Tobias said:

    You can use PhotonNetwork.LoadLevel

    We are using this method, but I wanted to be sure that device will disconnect even when the main thread is not blocked by doing something ...
    Unfortunately both devices were using the same iOS 9.3.2. We didn't see this problem with 1.56. It looks like some strange race condition. On the same device next launch was OK and device didn't get disconnected.

    I'm going to revert photon and test this with 1.56 version (and Unity 5.2.5), since we were updating unity from 5.2.4 to 5.2.5 at similar time as updating Photon.

  • Tobias
    Options
    Keep us updated.
    At the moment, I don't see how we can effectively help, though.
  • wawro1
    Options
    I think I found the problem in our case.

    It is timerToStopConnectionInBackground in PhotonHandler. We are using some plugins in our game, and one of them somehow consume OnApplicationPause(bool pause), when pause is false. We are hacking this with having Update loop and remembering that device was minimized. So basically this timer will not get reseted in our case. My advice is at least add some debug logs when timer is above the limits and photon will stop sending ACK's.

  • Tobias
    Options
    Good you could find the issue.
    You might be right about the info logs. We usually try to keep logging minimal, as it is rather slow, but we should probably refine our logging options (so it shows when you select level "info" or something).