Skip to content
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

if you try to do SAS in response to a KS req within a few seconds it takes ~30s for the SAS req to propagate #8376

Closed
ara4n opened this issue Feb 2, 2019 · 9 comments

Comments

@ara4n
Copy link
Member

ara4n commented Feb 2, 2019

it looks like you have to wait for the next /sync to return to receive the toDevice messages. however, if you wait 5-10s before responding to the KS req it's all fiiiiiiine

@ara4n
Copy link
Member Author

ara4n commented Feb 7, 2019

(or if you do something on the receiving client to trigger it to /sync (e.g. send a typing notif or a presence req) then the req arrives instantly.

@turt2live
Copy link
Member

I wonder how much of this is a Synapse issue...

@turt2live turt2live self-assigned this Jun 21, 2019
@turt2live
Copy link
Member

@ara4n I can't reproduce this. Are you still seeing it?

(and have we eliminated matrix.org just being slow?)

@turt2live
Copy link
Member

Presuming this is because of matrix.org being slow as it hasn't been complained about recently.

@ara4n
Copy link
Member Author

ara4n commented Mar 8, 2021

I just caught this red handed (and have hit it intermittently on a fairly regular basis). The ready message got delayed somewhere for 14 seconds.

The device that sent it was:

03:29:10.110 rageshake.js?16c9:65 PUT /sendToDevice/m.key.verification.ready/m1615174150110.0 {@matthewtest7:matrix.org: Array(1)}@matthewtest7:matrix.org: ["LGFPVHDGHM"]__proto__: Object
03:29:10.180 rageshake.js?16c9:65 Verification request 5gzwBW7HDa7gIaerMgERdg48qOI5Ccam: m.key.verification.ready event with id:undefined, content:{"methods":["m.sas.v1","m.qr_code.show.v1","m.reciprocate.v1"],"transaction_id":"5gzwBW7HDa7gIaerMgERdg48qOI5Ccam","from_device":"LFHMXZJBXB"} deviceId:LGFPVHDGHM, sender:@matthewtest7:matrix.org, isSentByUs:true, isLiveEvent:true, isRemoteEcho:true, phase:2=>3, observeOnly:false=>false

The device that received it was:

03:29:24.147 rageshake.js?16c9:65 received to_device m.key.verification.ready from: @matthewtest7:matrix.org id: undefined
03:29:24.151 rageshake.js?16c9:65 Verification request 5gzwBW7HDa7gIaerMgERdg48qOI5Ccam: m.key.verification.ready event with id:undefined, content:{"methods":["m.sas.v1","m.qr_code.show.v1","m.reciprocate.v1"],"transaction_id":"5gzwBW7HDa7gIaerMgERdg48qOI5Ccam","from_device":"LFHMXZJBXB"} deviceId:LFHMXZJBXB, sender:@matthewtest7:matrix.org, isSentByUs:false, isLiveEvent:true, isRemoteEcho:false, phase:2=>3, observeOnly:false=>false

Need to spelunk in synapse's logs for that particular request to see where the delay came from.

@ara4n ara4n reopened this Mar 8, 2021
@ara4n
Copy link
Member Author

ara4n commented Mar 8, 2021

Spelunking in synapse, we see:

2021-03-08 03:29:10,184 - synapse.access.http.8134 - 329 - INFO - PUT-5209281 - 92.233.2.138 - 8134 - {@matthewtest7:matrix.org} Processed request: 0.008sec/-0.000sec (0.004sec, 0.000sec) (0.001sec/0.003sec/3) 2B 200
 "PUT /_matrix/client/r0/sendToDevice/m.key.verification.ready/m1615174150110.0 HTTP/1.1" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.192 Safari/537.36" [0
 dbevts]
2021-03-08 03:29:10,187 - synapse.replication.tcp.resource - 189 - INFO - replication_notifier-3065984 - Streaming: to_device -> 223870325

in the encryption worker... and then:

2021-03-08 03:29:03,104 - synapse.access.http.8086 - 329 - INFO - GET-10063351 - 92.233.2.138 - 8086 - {@matthewtest7:matrix.org} Processed request: 7.000sec/-0.000sec (0.004sec, 0.000sec) (0.001sec/0.004sec/2) 691B 200 "GET /_matrix/client/r0/sync?filter=4&timeout=30000&since=s1862136738_757284961_10407083_771873329_645114725_2124766_223870309_798409877_177132 HTTP/1.1" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.192 Safari/537.36" [0 dbevts]
2021-03-08 03:29:24,026 - synapse.access.http.8086 - 329 - INFO - GET-10063893 - 92.233.2.138 - 8086 - {@matthewtest7:matrix.org} Processed request: 0.603sec/-0.000sec (0.008sec, 0.000sec) (0.031sec/0.042sec/2) 663B 200 "GET /_matrix/client/r0/sync?filter=4&timeout=30000&since=s1862136868_757284961_10407259_771873413_645114828_2124766_223870318_798409879_177132 HTTP/1.1" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.192 Safari/537.36" [0 dbevts]
2021-03-08 03:29:33,176 - synapse.access.http.8086 - 329 - INFO - GET-10063508 - 92.233.2.138 - 8086 - {@matthewtest7:matrix.org} Processed request: 30.003sec/-0.000sec (0.004sec, 0.002sec) (0.003sec/0.005sec/4) 439B 200 "GET /_matrix/client/r0/sync?filter=4&timeout=30000&since=s1862136868_757284961_10407259_771873413_645114828_2124766_223870318_798409879_177132 HTTP/1.1" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.192 Safari/537.36" [0 dbevts]
2021-03-08 03:29:54,223 - synapse.access.http.8086 - 329 - INFO - GET-10063896 - 92.233.2.138 - 8086 - {@matthewtest7:matrix.org} Processed request: 30.003sec/-0.000sec (0.003sec, 0.001sec) (0.002sec/0.004sec/3) 439B 200 "GET /_matrix/client/r0/sync?filter=4&timeout=30000&since=s1862137249_757284961_10407814_771873627_645115137_2124766_223870344_798409884_177132 HTTP/1.1" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.192 Safari/537.36" [0 dbevts]

...in the sync worker. So it looks like synapse only decided to wake up the sync worker after 14s, which seems dubiously long.
There are no gaps in the logs indicating a GC on either worker.

@ara4n
Copy link
Member Author

ara4n commented Mar 8, 2021

(meanwhile synapse as a whole is pretty quiet right now).

@callahad do we have jaeger available to chase this down? random toDevice delays of up to 30s have been occurring since we landed SAS at FOSDEM 2019...

@ara4n
Copy link
Member Author

ara4n commented Mar 8, 2021

and repro'd it again just now:

22:16:27.143 rageshake.js?16c9:65 PUT /sendToDevice/m.key.verification.cancel/m1615241787143.4 {@matthewtest7:matrix.org: Array(1)}

and on the other client:

22:16:41.319 webpack-internal:///1319:68 received to_device m.key.verification.cancel from: @matthewtest7:matrix.org id: undefined

Dear synapse, why did you take 14.176 seconds to send me the to-device message? (and is it coincidence that it's almost precisely the same 14s delay as i saw yesterday?)

@turt2live turt2live removed their assignment May 13, 2021
su-ex added a commit to SchildiChat/element-web that referenced this issue May 10, 2022
* Made the location map change the cursor to a pointer so it looks like it's clickable (https ([\element-hq#8451](matrix-org/matrix-react-sdk#8451)). Fixes element-hq#21991. Contributed by @Odyssey346.
* Implement improved spacing for the thread list and timeline ([\element-hq#8337](matrix-org/matrix-react-sdk#8337)). Fixes element-hq#21759. Contributed by @luixxiul.
* LLS: expose way to enable live sharing labs flag from location dialog ([\element-hq#8416](matrix-org/matrix-react-sdk#8416)).
* Fix source text boxes in View Source modal should have full width ([\element-hq#8425](matrix-org/matrix-react-sdk#8425)). Fixes element-hq#21938. Contributed by @EECvision.
* Read Receipts: never show +1, if it’s just 4, show all of them ([\element-hq#8428](matrix-org/matrix-react-sdk#8428)). Fixes element-hq#21935.
* Add opt-in analytics to onboarding tasks ([\element-hq#8409](matrix-org/matrix-react-sdk#8409)). Fixes element-hq#21705.
* Allow user to control if they are signed out of all devices when changing password ([\element-hq#8259](matrix-org/matrix-react-sdk#8259)). Fixes element-hq#2671.
* Implement new Read Receipt design ([\element-hq#8389](matrix-org/matrix-react-sdk#8389)). Fixes element-hq#20574.
* Stick connected video rooms to the top of the room list ([\element-hq#8353](matrix-org/matrix-react-sdk#8353)).
* LLS: fix jumpy maximised map ([\element-hq#8387](matrix-org/matrix-react-sdk#8387)).
* Persist audio and video mute state in video rooms ([\element-hq#8376](matrix-org/matrix-react-sdk#8376)).
* Forcefully disconnect from video rooms on logout and tab close ([\element-hq#8375](matrix-org/matrix-react-sdk#8375)).
* Add local echo of connected devices in video rooms ([\element-hq#8368](matrix-org/matrix-react-sdk#8368)).
* Improve text of account deactivation dialog ([\element-hq#8371](matrix-org/matrix-react-sdk#8371)). Fixes element-hq#17421.
* Live location sharing: own live beacon status on maximised view ([\element-hq#8374](matrix-org/matrix-react-sdk#8374)).
* Show a lobby screen in video rooms ([\element-hq#8287](matrix-org/matrix-react-sdk#8287)).
* Settings toggle to disable Composer Markdown ([\element-hq#8358](matrix-org/matrix-react-sdk#8358)). Fixes element-hq#20321.
* Cache localStorage objects for SettingsStore ([\element-hq#8366](matrix-org/matrix-react-sdk#8366)).
* Bring `View Source` back from behind developer mode ([\element-hq#8369](matrix-org/matrix-react-sdk#8369)). Fixes element-hq#21771.
* Fix Jitsi Meet getting wedged at startup in some cases ([\element-hq#21995](element-hq#21995)).
* Fix camera getting muted when disconnecting from a video room ([\element-hq#21958](element-hq#21958)).
* Fix race conditions around threads ([\element-hq#8448](matrix-org/matrix-react-sdk#8448)). Fixes element-hq#21627.
* Fix reading of cached room device setting values ([\element-hq#8495](matrix-org/matrix-react-sdk#8495)).
* Fix issue with dispatch happening mid-dispatch due to js-sdk emit ([\element-hq#8473](matrix-org/matrix-react-sdk#8473)). Fixes element-hq#22019.
* Match MSC behaviour for threads when disabled (thread-aware mode) ([\element-hq#8476](matrix-org/matrix-react-sdk#8476)). Fixes element-hq#22033.
* Specify position of DisambiguatedProfile inside a thread on bubble message layout ([\element-hq#8452](matrix-org/matrix-react-sdk#8452)). Fixes element-hq#21998. Contributed by @luixxiul.
* Location sharing: do not trackuserlocation in location picker ([\element-hq#8466](matrix-org/matrix-react-sdk#8466)). Fixes element-hq#22013.
* fix text and map indent in thread view ([\element-hq#8462](matrix-org/matrix-react-sdk#8462)). Fixes element-hq#21997.
* Live location sharing: don't group beacon info with room creation summary ([\element-hq#8468](matrix-org/matrix-react-sdk#8468)).
* Don't linkify code blocks ([\element-hq#7859](matrix-org/matrix-react-sdk#7859)). Fixes element-hq#9613.
* read receipts: improve tooltips to show names of users ([\element-hq#8438](matrix-org/matrix-react-sdk#8438)). Fixes element-hq#21940.
* Fix poll overflowing a reply tile on bubble message layout ([\element-hq#8459](matrix-org/matrix-react-sdk#8459)). Fixes element-hq#22005. Contributed by @luixxiul.
* Fix text link buttons on UserInfo panel ([\element-hq#8247](matrix-org/matrix-react-sdk#8247)). Fixes element-hq#21702. Contributed by @luixxiul.
* Clear local storage settings handler cache on logout ([\element-hq#8454](matrix-org/matrix-react-sdk#8454)). Fixes element-hq#21994.
* Fix jump to bottom button being always displayed in non-overflowing timelines ([\element-hq#8460](matrix-org/matrix-react-sdk#8460)). Fixes element-hq#22003.
* fix timeline search with empty text box should do nothing ([\element-hq#8262](matrix-org/matrix-react-sdk#8262)). Fixes element-hq#21714. Contributed by @EECvision.
* Fixes "space panel kebab menu is rendered out of view on sub spaces"  ([\element-hq#8350](matrix-org/matrix-react-sdk#8350)). Contributed by @yaya-usman.
* Add margin to the location map inside ThreadView ([\element-hq#8442](matrix-org/matrix-react-sdk#8442)). Fixes element-hq#21982. Contributed by @luixxiul.
* Patch: "Reloading the registration page should warn about data loss" ([\element-hq#8377](matrix-org/matrix-react-sdk#8377)). Contributed by @yaya-usman.
* Live location sharing: fix safari timestamps pt 2 ([\element-hq#8443](matrix-org/matrix-react-sdk#8443)).
* Fix issue with thread notification state ignoring initial events ([\element-hq#8417](matrix-org/matrix-react-sdk#8417)). Fixes element-hq#21927.
* Fix event text overflow on bubble message layout ([\element-hq#8391](matrix-org/matrix-react-sdk#8391)). Fixes element-hq#21882. Contributed by @luixxiul.
* Disable the message action bar when hovering over the 1px border between threads on the list ([\element-hq#8429](matrix-org/matrix-react-sdk#8429)). Fixes element-hq#21955. Contributed by @luixxiul.
* correctly align read receipts to state events in bubble layout ([\element-hq#8419](matrix-org/matrix-react-sdk#8419)). Fixes element-hq#21899.
* Fix issue with underfilled timelines when barren of content ([\element-hq#8432](matrix-org/matrix-react-sdk#8432)). Fixes element-hq#21930.
* Fix baseline misalignment of thread panel summary by deduplication ([\element-hq#8413](matrix-org/matrix-react-sdk#8413)).
* Fix editing of non-html replies ([\element-hq#8418](matrix-org/matrix-react-sdk#8418)). Fixes element-hq#21928.
* Read Receipts "Fall from the Sky" ([\element-hq#8414](matrix-org/matrix-react-sdk#8414)). Fixes element-hq#21888.
* Make read receipts handle nullable roomMembers correctly ([\element-hq#8410](matrix-org/matrix-react-sdk#8410)). Fixes element-hq#21896.
* Don't form continuations on either side of a thread root ([\element-hq#8408](matrix-org/matrix-react-sdk#8408)). Fixes element-hq#20908.
* Fix centering issue with sticker placeholder ([\element-hq#8404](matrix-org/matrix-react-sdk#8404)). Fixes element-hq#18014 and element-hq#6449.
* Disable download option on <video/> , preferring dedicated download button ([\element-hq#8403](matrix-org/matrix-react-sdk#8403)). Fixes element-hq#21902.
* Fix infinite loop when pinning/unpinning persistent widgets ([\element-hq#8396](matrix-org/matrix-react-sdk#8396)). Fixes element-hq#21864.
* Tweak ReadReceiptGroup to better handle disambiguation ([\element-hq#8402](matrix-org/matrix-react-sdk#8402)). Fixes element-hq#21897.
* stop the bottom edge of buttons getting clipped in devtools ([\element-hq#8400](matrix-org/matrix-react-sdk#8400)).
* Fix issue with threads timelines with few events cropping events ([\element-hq#8392](matrix-org/matrix-react-sdk#8392)). Fixes element-hq#20594.
* Changed font-weight to 400 to support light weight font ([\element-hq#8345](matrix-org/matrix-react-sdk#8345)). Fixes element-hq#21171. Contributed by @goelesha.
* Fix issue with thread panel not updating when it loads on first render ([\element-hq#8382](matrix-org/matrix-react-sdk#8382)). Fixes element-hq#21737.
* fix: "Mention highlight and cursor hover highlight has different corner radius" ([\element-hq#8384](matrix-org/matrix-react-sdk#8384)). Contributed by @yaya-usman.
* Fix regression around haveRendererForEvent for hidden events ([\element-hq#8379](matrix-org/matrix-react-sdk#8379)). Fixes element-hq#21862 and element-hq#21725.
* Fix regression around the room list treeview keyboard a11y ([\element-hq#8385](matrix-org/matrix-react-sdk#8385)). Fixes element-hq#21436.
* Remove float property to let the margin between events appear on bubble message layout ([\element-hq#8373](matrix-org/matrix-react-sdk#8373)). Fixes element-hq#21861. Contributed by @luixxiul.
* Fix race in Registration between server change and flows fetch ([\element-hq#8359](matrix-org/matrix-react-sdk#8359)). Fixes element-hq#21800.
* fix rainbow breaks compound emojis ([\element-hq#8245](matrix-org/matrix-react-sdk#8245)). Fixes element-hq#21371. Contributed by @EECvision.
* Fix RightPanelStore handling first room on app launch wrong ([\element-hq#8370](matrix-org/matrix-react-sdk#8370)). Fixes element-hq#21741.
* Fix UnknownBody error message unalignment ([\element-hq#8346](matrix-org/matrix-react-sdk#8346)). Fixes element-hq#21828. Contributed by @luixxiul.
* Use -webkit-line-clamp for the room header topic overflow ([\element-hq#8367](matrix-org/matrix-react-sdk#8367)). Fixes element-hq#21852. Contributed by @luixxiul.
* Fix issue with ServerInfo crashing the modal ([\element-hq#8364](matrix-org/matrix-react-sdk#8364)).
* Fixes around threads beta in degraded mode ([\element-hq#8319](matrix-org/matrix-react-sdk#8319)). Fixes element-hq#21762.
@ara4n
Copy link
Member Author

ara4n commented Jul 13, 2022

i believe this was fixed by matrix-org/synapse#10124

@ara4n ara4n closed this as completed Jul 13, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants