filer may have trouble to re-connect
clientId is used twice: one for local metadata subscription, one for combined metadata subscription.
This commit is contained in:
@@ -90,6 +90,9 @@ func (fs *FilerServer) SubscribeLocalMetadata(req *filer_pb.SubscribeMetadataReq
|
|||||||
|
|
||||||
peerAddress := findClientAddress(stream.Context(), 0)
|
peerAddress := findClientAddress(stream.Context(), 0)
|
||||||
|
|
||||||
|
// use negative client id to differentiate from addClient()/deleteClient() used in SubscribeMetadata()
|
||||||
|
req.ClientId = -req.ClientId
|
||||||
|
|
||||||
alreadyKnown, clientName := fs.addClient(req.ClientName, peerAddress, req.ClientId)
|
alreadyKnown, clientName := fs.addClient(req.ClientName, peerAddress, req.ClientId)
|
||||||
if alreadyKnown {
|
if alreadyKnown {
|
||||||
return fmt.Errorf("duplicated local subscription detected for client %s id %d", clientName, req.ClientId)
|
return fmt.Errorf("duplicated local subscription detected for client %s id %d", clientName, req.ClientId)
|
||||||
|
|||||||
Reference in New Issue
Block a user