Sync timeout error - Failed with status code 0

edited April 18, 2021
Since Saturday the 17th of April it takes really long to sync and I will get a Request timed out error whenever I try to sync with the native Zotero client on Mac OS. I have one group I share with a colleague, but they didn't change anything after the 15th. Additionally the Web Library works fine. I already looked this kind of behaviour up, but unfortunately nothing worked. Is this a known bug?

Things I tried:

  • Log out and log in again

  • Reinstalling Zotero

  • Set DNS to 1.1.1.1 and 8.8.8.8

  • Tried an older version: 5.0.96.1 - same issue

  • Set proxy setting in config editor to 0 (network.proxy.type = 0) - I never had a proxy configured

Environment

Zotero version: 5.0.96.2
OS: Mac OS 11.2.3 (Big Sur)
WebDav: Not set up
Data Directory Location: /Users/****/Documents/University/Research/Zotero

Log

(3)(+0002980): Notifier.trigger('start', 'sync', []) called [observers: 3]

(3)(+0000038): Unregistering full-text content processor idle observer

(3)(+0000000): Stopping full-text content processor

(4)(+0000004): Beginning DB transaction Z7qeTqyt

(4)(+0000006): Committed DB transaction Z7qeTqyt

(4)(+0000001): Beginning DB transaction ZivZ5aQw

(4)(+0000001): CREATE TEMPORARY TABLE tagDelete AS SELECT tagID FROM tags WHERE tagID NOT IN (SELECT tagID FROM itemTags)

(4)(+0000001): CREATE INDEX tagDelete_tagID ON tagDelete(tagID)

(4)(+0000001): SELECT tagID AS id, name FROM tagDelete JOIN tags USING (tagID)

(4)(+0000001): DROP TABLE tagDelete

(4)(+0000006): Committed DB transaction ZivZ5aQw

(4)(+0000001): Beginning DB transaction efcnVMQb

(4)(+0000002): Committed DB transaction efcnVMQb

(3)(+0000001): Purged data tables in 21 ms

(3)(+0000002): [ConcurrentCaller] Running function (0/4 running, 0 queued)

(3)(+0000000): HTTP GET https://api.zotero.org/keys/current

(3)(+0000359): HTTP GET https://api.zotero.org/keys/current succeeded with 200

(3)(+0000001): [ConcurrentCaller] Done with function (0/4 running, 0 queued)

(3)(+0000002): { "userID": 7789661 "username": "leoyn" "access": { "user": { "library": true "files": true "notes": true "write": true } "groups": { "all": { "library": true "write": true } } } }

(4)(+0000001): Beginning DB transaction PnMmlNpG

(3)(+0000001): [ConcurrentCaller] All tasks are done

(4)(+0000001): Committed DB transaction PnMmlNpG

(3)(+0000001): [ConcurrentCaller] Running function (0/4 running, 0 queued)

(3)(+0000001): HTTP GET https://api.zotero.org/users/7789661/groups?format=versions

(3)(+0030005): [ConcurrentCaller] Error in function (0/4, 0 in queue)

(1)(+0000001): Error: Request timed out Error: Request timed out Zotero.HTTP</this.TimeoutException@chrome://zotero/content/xpcom/http.js:91:18 Zotero.HTTP</this._requestInternal/xmlhttp.ontimeout@chrome://zotero/content/xpcom/http.js:395:23 From previous event: runFunc@resource://zotero/concurrentCaller.js:224:22 ConcurrentCaller.prototype._processNext@resource://zotero/concurrentCaller.js:265:3 ConcurrentCaller.prototype.start@resource://zotero/concurrentCaller.js:156:12 serial/<@chrome://zotero/content/xpcom/utilities_internal.js:2032:14 oncommand@chrome://zotero/content/standalone/standalone.xul:1:94

(1)(+0000001): Error: Request timed out Error: Request timed out Zotero.HTTP</this.TimeoutException@chrome://zotero/content/xpcom/http.js:91:18 Zotero.HTTP</this._requestInternal/xmlhttp.ontimeout@chrome://zotero/content/xpcom/http.js:395:23 From previous event: runFunc@resource://zotero/concurrentCaller.js:224:22 ConcurrentCaller.prototype._processNext@resource://zotero/concurrentCaller.js:265:3 ConcurrentCaller.prototype.start@resource://zotero/concurrentCaller.js:156:12 serial/<@chrome://zotero/content/xpcom/utilities_internal.js:2032:14 oncommand@chrome://zotero/content/standalone/standalone.xul:1:94

(3)(+0000002): Done syncing

(3)(+0000001): Notifier.trigger('finish', 'sync', []) called [observers: 3]

(4)(+0000001): SELECT libraryID AS id FROM feeds WHERE refreshInterval IS NOT NULL AND ( lastCheck IS NULL OR (julianday(lastCheck, 'utc') + (refreshInterval/1440.0) - julianday('now', 'utc')) <= 0 )

(3)(+0000001): [ConcurrentCaller] All tasks are done

(1)(+0000000): HTTP GET https://api.zotero.org/users/7789661/groups?format=versions failed with status code 0

(2)(+0000000): Channel status was 2152398850

(3)(+0000011): Running update for feeds:

(3)(+0000001): All feed updates done

(3)(+0000000): Scheduling next feed update

(4)(+0000000): SELECT ( CASE WHEN lastCheck IS NULL THEN 0 ELSE strftime('%s', lastCheck) + refreshInterval * 60 - strftime('%s', 'now') END ) AS nextCheck FROM feeds WHERE refreshInterval IS NOT NULL ORDER BY nextCheck ASC LIMIT 1

(3)(+0000008): No feeds with auto-update



I think it has to do with this log message: HTTP GET https://api.zotero.org/users/7789661/groups?format=versions failed with status code 0
Maybe status code 0 is the same as time out?


My related GitHub Issue: https://github.com/zotero/zotero/issues/2042
  • You should try restarting your computer, not just logging out and in.

    There've been a few reports of this over the past few weeks, all on Big Sur, and it's not at all clear what's causing it, but some people have fixed it just by restarting. The requests on the server end are being returned immediately, so there's no delay there, and nothing changed in Zotero (as evidenced by the fact that it still happens for you with 5.0.96.1, which wasn't doing it for you before), so this seems to be something related to macOS. But there've only been a few reports of it, so it's not a general problem.

    If this is a laptop and you can try syncing from a different network, you should try that. If you're running any third-party security software, try disabling it.
    /Users/****/Documents/University/Research/Zotero
    Unrelated, but just to note, we don't recommend storing the data directory within Documents. That's either being synced via iCloud, which will corrupt your database, or could be by accident if you decide to turn on iCloud syncing in the future.
  • Thanks for your fast reply. I tried restarting, but the issue still persists. With logging in and out I meant that i disconnected my account from the client and logged in again.

    I don't have any security software or firewall installed nor activated.

    Wow, the issue seems to come from my wired network card. When I try to connect via Wi-Fi it works perfectly fine. I wonder why everything except the syncing works when connect via Ethernet. Thank you for your help.

    Okay thanks for the tip. Shouldn't be a problem when I don't use iCloud, should it?
  • Wow, the issue seems to come from my wired network card. When I try to connect via Wi-Fi it works perfectly fine.
    Does the problem actually come back when you switch back to Ethernet?
    Shouldn't be a problem when I don't use iCloud, should it?
    If you're positive you're never going to enable iCloud syncing of Desktop and Documents, it's OK.
  • Yes, when Ethernet is disabled and I am connected via Wi-Fi it works. Seems odd to me since I was able to login via the client when I was connected via Ethernet.
  • That wasn't my question. I asked if the problem comes back when you switch back to Ethernet.
  • edited April 18, 2021
    When I disable Wi-Fi and Ethernet is enabled the sync error comes up again: Request timed out
  • That's very weird. I'm afraid I don't have much to suggest, so you might need to do some further debugging on your end.
  • Do you know how I can get the ssl keys so that I can intercept the traffic between the zotero client and the API Backend? I tried using SSLKEYLOGFILE environment var, but it does not create the file.
  • You would need to use something like mitmproxy and configure Zotero to accept its custom CA.
  • Mitm proxy did show that the client never received a response. Nonetheless, I was able to send the same request via curl and get a response back.
    I just noticed that it works when I am connected to my university's VPN. Therefore, I thinks it this is an issue of Mac OS itself.

    Notice: When connected to the VPN my internet is not routed through the VPN. The VPN connection is only being used to access services from the internal network. Default gateway is still my router.
Sign In or Register to comment.