loop-uh
a4b44264bd
Pace proxy connects architecturally instead of hammering the endpoint
...
The 17:42 log shows a proxy that works stably from Android failing 166
of 301 new desktop connects: the desktop client kills proxied connect
attempts after kMinConnectedTimeout (1s), reconnects, and bursts new
FakeTLS handshakes 150ms apart from every reconnecting session - the
exact pattern that gets an endpoint throttled.
Three coordinated changes:
- SessionPrivate::armWaitForConnectedTimer() floors the wait at the
connections' own fullConnectTimeout() when a proxy is configured, so
an attempt gets its whole budget (TCP with SYN retransmits + FakeTLS
handshake) before being destroyed. Direct connections keep the short
first wait.
- ResolvingConnection gives the last remaining route a patient 8s
timeout (kOnlyRouteAttemptTimeout) instead of the 4s racing timeout:
with no alternative route to race, killing the only attempt early
gains nothing and costs a handshake. fullConnectTimeout() reflects
the new budget.
- The open scheduler adds failure-driven adaptive spacing per endpoint,
independent of the stealth connection pattern: each connect timeout
doubles the gap between new opens (500ms..6s), each success halves
it back toward zero. EndpointHealth feeds it from reportFailure()/
reportSuccess(), so all sessions collectively approach a throttling
proxy gently instead of stampeding it.
2026-07-06 18:42:45 +03:00
..
_other
Self-hosted auto-updates via GitHub releases
2026-07-05 13:25:13 +03:00
api
Added animated icons to copy-to-clipboard toasts.
2026-06-26 15:22:28 +03:00
boxes
Harden MTProxy compatibility flow
2026-07-05 22:43:21 +03:00
calls
Get rid of new Q_OS_LINUX
2026-06-30 09:08:05 +04:00
chat_helpers
Merge remote-tracking branch 'upstream/dev' into dev
2026-07-05 21:47:12 +03:00
codegen /scheme
core
fix
2026-07-06 13:56:58 +03:00
countries
[poll-create] Renamed FT entry to Fragment.
2026-05-05 10:45:46 +04:00
data
Merge remote-tracking branch 'upstream/dev' into dev
2026-07-05 21:47:12 +03:00
dialogs
Merge remote-tracking branch 'upstream/dev' into dev
2026-07-05 21:47:12 +03:00
editor
Fix possible clamp contract violation.
2026-07-04 16:46:46 +04:00
export
Fix escaping in HTML export of keyboards.
2026-07-02 17:48:45 +04:00
ffmpeg
Wire experimental FFmpeg threading options into decoder policy
2026-07-05 23:18:26 +03:00
history
Merge remote-tracking branch 'upstream/dev' into dev
2026-07-05 21:47:12 +03:00
info
Merge remote-tracking branch 'upstream/dev' into dev
2026-07-05 21:47:12 +03:00
inline_bots
Merge remote-tracking branch 'upstream/dev' into dev
2026-07-05 21:47:12 +03:00
intro
Fixed back from new account intro focusing wrong window.
2026-06-22 11:51:49 +03:00
iv
Fix build with GCC.
2026-07-03 07:00:35 +04:00
lang
Added billions suffix to shortened counters.
2026-06-24 08:35:06 +03:00
layout
Moved out highlight scroll logic from sections to single place.
2026-03-30 11:01:56 +03:00
main
Defer stories restore; add CI mtime normalization
2026-07-01 19:52:01 +03:00
media
Merge remote-tracking branch 'upstream/dev' into dev
2026-07-05 21:47:12 +03:00
menu
Mark premium actions better.
2026-07-02 17:49:08 +04:00
mtproto
Pace proxy connects architecturally instead of hammering the endpoint
2026-07-06 18:42:45 +03:00
overview
Added support of zoom in shared media for photos.
2026-06-26 15:22:28 +03:00
passport
Check passport encrypted data size.
2026-06-11 22:01:58 +04:00
payments
Improve styles of webapp external shell, fullscreen.
2026-05-19 12:49:07 +04:00
platform
Merge remote-tracking branch 'upstream/dev' into dev
2026-07-05 21:47:12 +03:00
poll
[poll-create] Extracted poll answer link box helper into shared module.
2026-06-09 14:28:12 +04:00
profile
Removed 114 unused style entries.
2026-05-04 11:32:33 +07:00
settings
Merge remote-tracking branch 'upstream/dev' into dev
2026-07-05 21:47:12 +03:00
statistics
Fixed long chart filter labels in statistics.
2026-05-05 10:45:43 +04:00
storage
Merge remote-tracking branch 'upstream/dev' into dev
2026-07-05 21:47:12 +03:00
support
Support server-provided limits for rich messages.
2026-06-09 14:28:11 +04:00
tde2e
tests
Pace proxy connects architecturally instead of hammering the endpoint
2026-07-06 18:42:45 +03:00
ui
Merge remote-tracking branch 'upstream/dev' into dev
2026-07-05 21:47:12 +03:00
window
Harden MTProxy compatibility flow
2026-07-05 22:43:21 +03:00
apiwrap.cpp
Restore the rich draft via cloud draft on send fail
2026-07-02 17:49:08 +04:00
apiwrap.h
Send previewed rich drafts from compose
2026-07-02 17:49:01 +04:00
config.h
Self-hosted auto-updates via GitHub releases
2026-07-05 13:25:13 +03:00
logs.cpp
logs
2026-07-04 23:27:12 +03:00
logs.h
Add mtproxy logs and proxy statuses; CI->Release
2026-06-28 15:36:15 +03:00
main.cpp
mainwidget.cpp
Made discussion group open in same non-primary window as its channel.
2026-06-24 09:04:54 +03:00
mainwidget.h
Fix tg:// links handling on cold start.
2026-05-05 10:45:43 +04:00
mainwindow.cpp
Fixed back from new account intro focusing wrong window.
2026-06-22 11:51:49 +03:00
mainwindow.h
Fixed back from new account intro focusing wrong window.
2026-06-22 11:51:49 +03:00
settings.cpp
[ai] Add -testagent for silent crashes.
2026-07-02 17:49:02 +04:00
settings.h
[ai] Add -testagent for silent crashes.
2026-07-02 17:49:02 +04:00
stdafx.h
Avoid full Telegram target rebuild on version change
2026-06-15 17:05:51 +04:00
tray.cpp
Added accounts list to tray menu on macOS.
2026-02-28 19:07:08 +04:00
tray.h
tray_accounts_menu.cpp
Added passcode lock check to Dock and Tray account menus.
2026-05-22 09:53:43 +03:00
tray_accounts_menu.h
Added accounts list to tray menu on macOS.
2026-02-28 19:07:08 +04:00
tray_accounts_menu_dummy.cpp
Added accounts list to tray menu on macOS.
2026-02-28 19:07:08 +04:00