From 5652dc4f1e525e029a165ed8b7bd6bca2533aceb Mon Sep 17 00:00:00 2001 From: Rodrigo Zhou Date: Wed, 25 Jan 2023 17:18:50 -0800 Subject: [PATCH] Fix time fields of rows from GetClusterMembers (#3840) --- .../sql/sqlplugin/mysql/cluster_metadata.go | 5 +++++ .../sql/sqlplugin/postgresql/cluster_metadata.go | 12 +++++------- .../sql/sqlplugin/sqlite/cluster_metadata.go | 5 +++++ 3 files changed, 15 insertions(+), 7 deletions(-) diff --git a/common/persistence/sql/sqlplugin/mysql/cluster_metadata.go b/common/persistence/sql/sqlplugin/mysql/cluster_metadata.go index d633c0209e9..0b10e5ceb05 100644 --- a/common/persistence/sql/sqlplugin/mysql/cluster_metadata.go +++ b/common/persistence/sql/sqlplugin/mysql/cluster_metadata.go @@ -251,6 +251,11 @@ func (mdb *db) GetClusterMembers( ); err != nil { return nil, err } + for i := range rows { + rows[i].SessionStart = mdb.converter.FromMySQLDateTime(rows[i].SessionStart) + rows[i].LastHeartbeat = mdb.converter.FromMySQLDateTime(rows[i].LastHeartbeat) + rows[i].RecordExpiry = mdb.converter.FromMySQLDateTime(rows[i].RecordExpiry) + } return rows, nil } diff --git a/common/persistence/sql/sqlplugin/postgresql/cluster_metadata.go b/common/persistence/sql/sqlplugin/postgresql/cluster_metadata.go index a0cc849cfe8..3f5e75f8c33 100644 --- a/common/persistence/sql/sqlplugin/postgresql/cluster_metadata.go +++ b/common/persistence/sql/sqlplugin/postgresql/cluster_metadata.go @@ -260,17 +260,15 @@ func (pdb *db) GetClusterMembers( err := pdb.conn.SelectContext(ctx, &rows, compiledQryString, operands...) - if err != nil { return nil, err } - - convertedRows := make([]sqlplugin.ClusterMembershipRow, 0, len(rows)) - for _, r := range rows { - r.SessionStart = r.SessionStart.UTC() - convertedRows = append(convertedRows, r) + for i := range rows { + rows[i].SessionStart = pdb.converter.FromPostgreSQLDateTime(rows[i].SessionStart) + rows[i].LastHeartbeat = pdb.converter.FromPostgreSQLDateTime(rows[i].LastHeartbeat) + rows[i].RecordExpiry = pdb.converter.FromPostgreSQLDateTime(rows[i].RecordExpiry) } - return convertedRows, err + return rows, nil } func (pdb *db) PruneClusterMembership( diff --git a/common/persistence/sql/sqlplugin/sqlite/cluster_metadata.go b/common/persistence/sql/sqlplugin/sqlite/cluster_metadata.go index c9e012cac80..41f4a4cff54 100644 --- a/common/persistence/sql/sqlplugin/sqlite/cluster_metadata.go +++ b/common/persistence/sql/sqlplugin/sqlite/cluster_metadata.go @@ -251,6 +251,11 @@ func (mdb *db) GetClusterMembers( ); err != nil { return nil, err } + for i := range rows { + rows[i].SessionStart = mdb.converter.FromSQLiteDateTime(rows[i].SessionStart) + rows[i].LastHeartbeat = mdb.converter.FromSQLiteDateTime(rows[i].LastHeartbeat) + rows[i].RecordExpiry = mdb.converter.FromSQLiteDateTime(rows[i].RecordExpiry) + } return rows, nil }