@@ -166,7 +166,6 @@ type ServerMonitor struct {
166
166
Datadir string `json:"datadir"`
167
167
SlapOSDatadir string `json:"slaposDatadir"`
168
168
PostgressDB string `json:"postgressDB"`
169
- CrcTable * crc64.Table `json:"-"`
170
169
TLSConfigUsed string `json:"tlsConfigUsed"` //used to track TLS config during key rotation
171
170
SSTPort string `json:"sstPort"` //used to send data to dbjobs
172
171
Agent string `json:"agent"` //used to provision service in orchestrator
@@ -229,10 +228,9 @@ func (cluster *Cluster) newServerMonitor(url string, user string, pass string, c
229
228
}
230
229
url = server .Name + server .Domain + ":3306"
231
230
}
232
- server .CrcTable = crc64 .MakeTable (crc64 .ECMA )
233
231
var sid uint64
234
232
//will be overide in Refresh with show variables server_id, used for provisionning configurator for server_id
235
- sid , err = strconv .ParseUint (strconv .FormatUint (crc64 .Checksum ([]byte (server .Name + server .Port ), server .CrcTable ), 10 ), 10 , 64 )
233
+ sid , err = strconv .ParseUint (strconv .FormatUint (crc64 .Checksum ([]byte (server .Name + server .Port ), server .GetCluster (). GetCrcTable () ), 10 ), 10 , 64 )
236
234
server .ServerID = sid
237
235
server .Id = fmt .Sprintf ("%s%d" , "db" , sid )
238
236
@@ -629,11 +627,12 @@ func (server *ServerMonitor) Refresh() error {
629
627
}
630
628
631
629
} else {
632
- server .GTIDBinlogPos = gtid .NewMySQLList (server .Variables ["GTID_EXECUTED" ])
630
+ server .GTIDBinlogPos = gtid .NewMySQLList (server .Variables ["GTID_EXECUTED" ], server . GetCluster (). GetCrcTable () )
633
631
server .GTIDExecuted = server .Variables ["GTID_EXECUTED" ]
634
- server .CurrentGtid = gtid . NewMySQLList ( server .Variables [ "GTID_EXECUTED" ])
632
+ server .CurrentGtid = server .GTIDBinlogPos
635
633
server .SlaveGtid = gtid .NewList (server .Variables ["GTID_SLAVE_POS" ])
636
- server .HashUUID = crc64 .Checksum ([]byte (strings .ToUpper (server .Variables ["SERVER_UUID" ])), server .CrcTable )
634
+ server .HashUUID = crc64 .Checksum ([]byte (strings .ToUpper (server .Variables ["SERVER_UUID" ])), server .GetCluster ().GetCrcTable ())
635
+ // fmt.Fprintf(os.Stdout, "gniac2 "+strings.ToUpper(server.Variables["SERVER_UUID"])+" "+strconv.FormatUint(server.HashUUID, 10))
637
636
}
638
637
639
638
var sid uint64
@@ -769,7 +768,7 @@ func (server *ServerMonitor) Refresh() error {
769
768
if server .DBVersion .IsPPostgreSQL () {
770
769
//PostgresQL as no server_id concept mimic via internal server id for topology detection
771
770
var sid uint64
772
- sid , err = strconv .ParseUint (strconv .FormatUint (crc64 .Checksum ([]byte (server .SlaveStatus .MasterHost .String + server .SlaveStatus .MasterPort .String ), server .ClusterGroup .crcTable ), 10 ), 10 , 64 )
771
+ sid , err = strconv .ParseUint (strconv .FormatUint (crc64 .Checksum ([]byte (server .SlaveStatus .MasterHost .String + server .SlaveStatus .MasterPort .String ), server .ClusterGroup .GetCrcTable () ), 10 ), 10 , 64 )
773
772
if err != nil {
774
773
server .ClusterGroup .LogPrintf (LvlWarn , "PG Could not assign server_id s" , err )
775
774
}
0 commit comments