diff --git a/docs/api-references/docs.md b/docs/api-references/docs.md index 695853e4637..7af0fa4c264 100644 --- a/docs/api-references/docs.md +++ b/docs/api-references/docs.md @@ -16153,6 +16153,16 @@ string

Node hosting pod of this TiDB member.

+ + +message
+ +string + + + + +

TiDBServiceSpec

diff --git a/manifests/crd.yaml b/manifests/crd.yaml index d9962e0c384..6ec36c00461 100644 --- a/manifests/crd.yaml +++ b/manifests/crd.yaml @@ -33604,12 +33604,15 @@ spec: format: date-time nullable: true type: string + message: + type: string name: type: string node: type: string required: - health + - message - name type: object type: object diff --git a/manifests/crd/v1/pingcap.com_tidbclusters.yaml b/manifests/crd/v1/pingcap.com_tidbclusters.yaml index d1258fc32d9..f85d64534e0 100644 --- a/manifests/crd/v1/pingcap.com_tidbclusters.yaml +++ b/manifests/crd/v1/pingcap.com_tidbclusters.yaml @@ -20349,12 +20349,15 @@ spec: format: date-time nullable: true type: string + message: + type: string name: type: string node: type: string required: - health + - message - name type: object type: object diff --git a/manifests/crd/v1beta1/pingcap.com_tidbclusters.yaml b/manifests/crd/v1beta1/pingcap.com_tidbclusters.yaml index f73148298d0..7cb6f529a9f 100644 --- a/manifests/crd/v1beta1/pingcap.com_tidbclusters.yaml +++ b/manifests/crd/v1beta1/pingcap.com_tidbclusters.yaml @@ -20319,12 +20319,15 @@ spec: format: date-time nullable: true type: string + message: + type: string name: type: string node: type: string required: - health + - message - name type: object type: object diff --git a/manifests/crd_v1beta1.yaml b/manifests/crd_v1beta1.yaml index 539abaab91a..5aef3199ea4 100644 --- a/manifests/crd_v1beta1.yaml +++ b/manifests/crd_v1beta1.yaml @@ -33569,12 +33569,15 @@ spec: format: date-time nullable: true type: string + message: + type: string name: type: string node: type: string required: - health + - message - name type: object type: object diff --git a/pkg/apis/pingcap/v1alpha1/types.go b/pkg/apis/pingcap/v1alpha1/types.go index 87a76807447..32a0b96cfd8 100644 --- a/pkg/apis/pingcap/v1alpha1/types.go +++ b/pkg/apis/pingcap/v1alpha1/types.go @@ -1346,6 +1346,7 @@ type TiDBMember struct { LastTransitionTime metav1.Time `json:"lastTransitionTime,omitempty"` // Node hosting pod of this TiDB member. NodeName string `json:"node,omitempty"` + Message string `json:"message"` } // TiDBFailureMember is the tidb failure member information diff --git a/pkg/manager/member/tidb_member_manager.go b/pkg/manager/member/tidb_member_manager.go index 71136bf50d5..d51ad8010fb 100644 --- a/pkg/manager/member/tidb_member_manager.go +++ b/pkg/manager/member/tidb_member_manager.go @@ -1049,14 +1049,14 @@ func (m *tidbMemberManager) syncTidbClusterStatus(tc *v1alpha1.TidbCluster, set for id := range helper.GetPodOrdinals(tc.Status.TiDB.StatefulSet.Replicas, set) { name := fmt.Sprintf("%s-%d", controller.TiDBMemberName(tc.GetName()), id) health, err := m.deps.TiDBControl.GetHealth(tc, int32(id)) - if err != nil { - return err - } - newTidbMember := v1alpha1.TiDBMember{ Name: name, Health: health, } + if err != nil { + klog.V(4).Infof("tidb cluster %s/%s sync status get health error:%v", tc.GetNamespace(), tc.GetName(), err) + newTidbMember.Message = err.Error() + } oldTidbMember, exist := tc.Status.TiDB.Members[name] newTidbMember.LastTransitionTime = metav1.Now()