Details

    • Type: Bug
    • Status: Resolved (View Workflow)
    • Priority: Major
    • Resolution: Done
    • Affects Version/s: 3.2.0.Final
    • Fix Version/s: 3.2.1.Final
    • Component/s: ErraiBus, ErraiJPA
    • Labels:
      None
    • Environment:

      Errai 3.2.0.Final
      Cordova 5
      IOS/iPad
      WIFI+Celluar

    • Steps to Reproduce:
      Hide

      1. Make the coldSync() success callback call another coldSync so that you are continuously sycing, to increase your chances that you are actually syncing when the network fails.
      2. Run the app
      3. On a IOS device goto Setting->WIFI and disable the active connection. (You need to make sure you kill the network when its actually in the middle of a sync, your odds are pretty high when its continuously sycing, but I've had a few cases where I killed it right in b/w 2 syncs and it will seem like everything is fine.).
      4. Verify a connection to the server is re-established.
      5. Verify that the ErrorCallback was not invoked, and ClientSyncManager.isSyncInProgress() still returns "true", and no more sync operation's are occurring.

      Show
      1. Make the coldSync() success callback call another coldSync so that you are continuously sycing, to increase your chances that you are actually syncing when the network fails. 2. Run the app 3. On a IOS device goto Setting->WIFI and disable the active connection. (You need to make sure you kill the network when its actually in the middle of a sync, your odds are pretty high when its continuously sycing, but I've had a few cases where I killed it right in b/w 2 syncs and it will seem like everything is fine.). 4. Verify a connection to the server is re-established. 5. Verify that the ErrorCallback was not invoked, and ClientSyncManager.isSyncInProgress() still returns "true", and no more sync operation's are occurring.

      Description

      If a network failure occurs during a coldSync, the active sync never completes, nor reports an error via the ErrorCallback, and the isSyncInProgress() on ClientSyncManager remains "true" which prevents any future sync's from occurring without reloading the application.

      Other RPC calls can be made successfully after the connection is re-established but the isSyncInProgress() is "stuck", and never allows any future calls.

      I would expect that the coldSync() errorCallback should be called when the network failure occurs to set syncInProgress to false, and notify the caller, but this does not seem to happen for some reason.

        Gliffy Diagrams

          Attachments

            Activity

              People

              • Assignee:
                mbarkley Max Barkley
                Reporter:
                lmetzger Lorin Metzger
              • Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: