public Mono<Void> updateMemberInfo(
            @NotNull String id,
            @Nullable String zone,
            @Nullable String name,
            @Nullable Boolean isSeed,
            @Nullable Boolean isLeaderEligible,
            @Nullable Boolean isActive,
            @Nullable Integer priority) {
        Member member = allKnownMembers.get(id);
        if (member == null) {
            return ResponseExceptionPublisherPool.noContent();
        }
        Filter filter = Filter.newBuilder(2)
                .eq(Member.ID_CLUSTER_ID, getLocalMember().getClusterId())
                .eq(Member.ID_NODE_ID, id);
        Update update = Update.newBuilder(6)
                .setIfNotNull(Member.Fields.zone, zone)
                .setIfNotNull(Member.Fields.name, name)
                .setIfNotNull(Member.Fields.isSeed, isSeed)
                .setIfNotNull(Member.Fields.isLeaderEligible, isLeaderEligible)
                .setIfNotNull(Member.STATUS_IS_ACTIVE, isActive)
                .setIfNotNull(Member.Fields.priority, priority);
        // Note that we just need to update the member info in the config server
        // and the listener to the change stream will do remaining jobs.
        return sharedConfigService.upsert(filter, update, member);
    }
@return null if the local node isn't active
turms-server-common/src/main/java/im/turms/server/common/infra/cluster/service/discovery/DiscoveryService.java