[PR #5152] [CLOSED] Clarify tcpMux heartbeat suppression in config references #5150

Closed
opened 2026-05-05 14:55:40 -06:00 by gitea-mirror · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/fatedier/frp/pull/5152
Author: @Copilot
Created: 2/3/2026
Status: Closed

Base: devHead: copilot/research-issue-5150


📝 Commits (3)

  • d823f7e Initial plan
  • 1bbbbaa docs: clarify heartbeat vs tcpMux keepalive
  • bc63791 docs: align heartbeat defaults note

📊 Changes

4 files changed (+11 additions, -3 deletions)

View changed files

📝 conf/frpc_full_example.toml (+4 -2)
📝 conf/frps_full_example.toml (+3 -1)
📝 pkg/config/v1/client.go (+2 -0)
📝 pkg/config/v1/server.go (+2 -0)

📄 Description

WHY

Heartbeat tuning was unclear because tcpMux (default) disables application heartbeats, causing confusion about why heartbeatTimeout changes do not extend disconnect tolerance. This update documents that behavior and scopes heartbeat defaults to the tcpMux-disabled path.

  • Docs: tcpMux vs heartbeat
    • Explicitly state that tcpMux disables heartbeats and liveness is driven by tcpMux keepalive.
  • Defaults clarity
    • Tie heartbeat default values to the tcpMux-disabled configuration path in example configs and struct docs.
# If tcpMux is enabled (default), heartbeat is disabled and tcp mux keepalive
# interval controls the liveness detection instead.
# When tcpMux is disabled, the defaults are heartbeatInterval = 30 and heartbeatTimeout = 90.
# transport.heartbeatInterval = 30
# transport.heartbeatTimeout = 90

💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/fatedier/frp/pull/5152 **Author:** [@Copilot](https://github.com/apps/copilot-swe-agent) **Created:** 2/3/2026 **Status:** ❌ Closed **Base:** `dev` ← **Head:** `copilot/research-issue-5150` --- ### 📝 Commits (3) - [`d823f7e`](https://github.com/fatedier/frp/commit/d823f7e98b38920d8296852c36e5ca4e725c5598) Initial plan - [`1bbbbaa`](https://github.com/fatedier/frp/commit/1bbbbaac85a89d7e29b4d57d506635a785dcfb18) docs: clarify heartbeat vs tcpMux keepalive - [`bc63791`](https://github.com/fatedier/frp/commit/bc637912d62982006a71c158d2428041661ad031) docs: align heartbeat defaults note ### 📊 Changes **4 files changed** (+11 additions, -3 deletions) <details> <summary>View changed files</summary> 📝 `conf/frpc_full_example.toml` (+4 -2) 📝 `conf/frps_full_example.toml` (+3 -1) 📝 `pkg/config/v1/client.go` (+2 -0) 📝 `pkg/config/v1/server.go` (+2 -0) </details> ### 📄 Description ### WHY Heartbeat tuning was unclear because tcpMux (default) disables application heartbeats, causing confusion about why heartbeatTimeout changes do not extend disconnect tolerance. This update documents that behavior and scopes heartbeat defaults to the tcpMux-disabled path. - **Docs: tcpMux vs heartbeat** - Explicitly state that tcpMux disables heartbeats and liveness is driven by tcpMux keepalive. - **Defaults clarity** - Tie heartbeat default values to the tcpMux-disabled configuration path in example configs and struct docs. ```toml # If tcpMux is enabled (default), heartbeat is disabled and tcp mux keepalive # interval controls the liveness detection instead. # When tcpMux is disabled, the defaults are heartbeatInterval = 30 and heartbeatTimeout = 90. # transport.heartbeatInterval = 30 # transport.heartbeatTimeout = 90 ``` <!-- START COPILOT CODING AGENT TIPS --> --- 💬 We'd love your input! Share your thoughts on Copilot coding agent in our [2 minute survey](https://gh.io/copilot-coding-agent-survey). --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
gitea-mirror 2026-05-05 14:55:40 -06:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: github-starred/frp#5150
No description provided.