whisperfish/presage

Failed contact sync after linking

Schmiddiii opened this issue · 3 comments

It seems like (since yesterday or something like that), contact syncing does not work anymore after linking:

Log
[2023-08-27T13:52:11Z INFO  presage::manager] generating qrcode from provisioning link: CENSORED
[2023-08-27T13:52:11Z TRACE flare::backend::manager] Manager wants to show QR code, emitting signal
[2023-08-27T13:52:11Z TRACE flare::gui::window::imp] Opening link window for url CENSORED
[2023-08-27T13:52:11Z TRACE flare::gui::link_window] Initializing link window
[2023-08-27T13:52:11Z TRACE flare::gui::link_window::imp] Constructed LinkWindow
[2023-08-27T13:52:15Z INFO  presage::manager] successfully registered device aci=CENSORED pni=CENSORED
[2023-08-27T13:52:15Z TRACE presage::manager] registering pre keys
[2023-08-27T13:52:15Z TRACE presage_store_sled] getting identity_key_pair
[2023-08-27T13:52:18Z TRACE presage::manager] registered pre keys
[2023-08-27T13:52:18Z TRACE presage::manager] setting account attributes
[2023-08-27T13:52:18Z TRACE presage::manager] done setting account attributes
[2023-08-27T13:52:19Z TRACE presage::manager] requesting contacts sync
[2023-08-27T13:52:20Z TRACE presage_store_sled] get_sub_device_sessions CENSORED.
[2023-08-27T13:52:20Z TRACE presage_store_sled] loading session CENSORED.1 / exists=false
[2023-08-27T13:52:20Z TRACE presage_store_sled] loading session CENSORED.1 / exists=false
[2023-08-27T13:52:20Z WARN  presage_store_sled] trusting new identity ProtocolAddress { name: "CENSORED", device_id: DeviceId(1) }
[2023-08-27T13:52:20Z TRACE presage_store_sled] loading session CENSORED.1 / exists=false
[2023-08-27T13:52:20Z TRACE presage_store_sled] getting identity_key_pair
[2023-08-27T13:52:20Z TRACE presage_store_sled] saving identity
[2023-08-27T13:52:20Z TRACE presage_store_sled] storing session CENSORED.1
[2023-08-27T13:52:20Z WARN  presage_store_sled] trusting new identity ProtocolAddress { name: "CENSORED", device_id: DeviceId(2) }
[2023-08-27T13:52:20Z TRACE presage_store_sled] loading session CENSORED.2 / exists=false
[2023-08-27T13:52:20Z TRACE presage_store_sled] getting identity_key_pair
[2023-08-27T13:52:20Z TRACE presage_store_sled] saving identity
[2023-08-27T13:52:20Z TRACE presage_store_sled] storing session CENSORED.2
[2023-08-27T13:52:21Z WARN  presage_store_sled] trusting new identity ProtocolAddress { name: "CENSORED", device_id: DeviceId(3) }
[2023-08-27T13:52:21Z TRACE presage_store_sled] loading session CENSORED.3 / exists=false
[2023-08-27T13:52:21Z TRACE presage_store_sled] getting identity_key_pair
[2023-08-27T13:52:21Z TRACE presage_store_sled] saving identity
[2023-08-27T13:52:21Z TRACE presage_store_sled] storing session CENSORED.3
[2023-08-27T13:52:21Z TRACE presage_store_sled] get_sub_device_sessions CENSORED.
[2023-08-27T13:52:21Z TRACE presage_store_sled] loading session CENSORED.1 / exists=true
[2023-08-27T13:52:21Z TRACE presage_store_sled] loading session CENSORED.1 / exists=true
[2023-08-27T13:52:21Z TRACE presage_store_sled] loading session CENSORED.1 / exists=true
[2023-08-27T13:52:21Z TRACE presage_store_sled] loading session CENSORED.1 / exists=true
[2023-08-27T13:52:21Z TRACE presage_store_sled] loading session CENSORED.1 / exists=true
[2023-08-27T13:52:21Z TRACE presage_store_sled] loading session CENSORED.1 / exists=true
[2023-08-27T13:52:21Z TRACE presage_store_sled] saving identity
[2023-08-27T13:52:21Z TRACE presage_store_sled] storing session CENSORED.1
[2023-08-27T13:52:21Z TRACE presage_store_sled] loading session CENSORED.2 / exists=true
[2023-08-27T13:52:21Z TRACE presage_store_sled] loading session CENSORED.2 / exists=true
[2023-08-27T13:52:21Z TRACE presage_store_sled] loading session CENSORED.2 / exists=true
[2023-08-27T13:52:21Z TRACE presage_store_sled] loading session CENSORED.2 / exists=true
[2023-08-27T13:52:21Z TRACE presage_store_sled] loading session CENSORED.2 / exists=true
[2023-08-27T13:52:21Z TRACE presage_store_sled] loading session CENSORED.2 / exists=true
[2023-08-27T13:52:21Z TRACE presage_store_sled] saving identity
[2023-08-27T13:52:21Z TRACE presage_store_sled] storing session CENSORED.2
[2023-08-27T13:52:21Z TRACE presage_store_sled] loading session CENSORED.3 / exists=true
[2023-08-27T13:52:21Z TRACE presage_store_sled] loading session CENSORED.3 / exists=true
[2023-08-27T13:52:21Z TRACE presage_store_sled] loading session CENSORED.3 / exists=true
[2023-08-27T13:52:21Z TRACE presage_store_sled] loading session CENSORED.3 / exists=true
[2023-08-27T13:52:21Z TRACE presage_store_sled] loading session CENSORED.3 / exists=true
[2023-08-27T13:52:21Z TRACE presage_store_sled] loading session CENSORED.3 / exists=true
[2023-08-27T13:52:21Z TRACE presage_store_sled] saving identity
[2023-08-27T13:52:21Z TRACE presage_store_sled] storing session CENSORED.3
[2023-08-27T13:52:21Z TRACE presage_store_sled] get_sub_device_sessions CENSORED.
[2023-08-27T13:52:21Z DEBUG presage::manager] skipping saving sync message without interesting fields
[2023-08-27T13:52:21Z INFO  presage::manager] waiting for contacts sync for up to 60 seconds
[2023-08-27T13:53:21Z WARN  presage::manager] failed to synchronize contacts: timeout: deadline has elapsed

It seems to only happen after linking. When restarting presage from the linked state, manually requesting contacts synchronization (using sync_contacts, not request_contacts_sync), and then restarting presage again, the contacts were synced correctly.

Edit: This seems to be wrong, the workaround did not work for someone else. Currently trying to increase the timeout.

gferon commented

This seems to work fine again. EDIT: the timeout also needs to be relaxed.

This still is not fixed. It was tested by me and one other person, for both of us, it did not work.