public boolean updModifyInfo(long dataVerId, int topicNameId,
            int newMaxMsgSizeMB, EnableStatus enableTopicAuth) {
        boolean changed = false;
        // check and set brokerPort info
        if (dataVerId != TBaseConstants.META_VALUE_UNDEFINED
                && this.getDataVerId() != dataVerId) {
            changed = true;
            this.setDataVersionId(dataVerId);
        }
        // check and set topicNameId info
        if (topicNameId != TBaseConstants.META_VALUE_UNDEFINED
                && this.topicNameId != topicNameId) {
            changed = true;
            this.topicNameId = topicNameId;
        }
        // check and set modified field
        if (newMaxMsgSizeMB != TBaseConstants.META_VALUE_UNDEFINED) {
            changed = fillMaxMsgSizeInMB(newMaxMsgSizeMB);
        }
        // check and set authCtrlStatus info
        if (enableTopicAuth != null
                && enableTopicAuth != EnableStatus.STATUS_UNDEFINE
                && this.authCtrlStatus != enableTopicAuth) {
            setAuthCtrlStatus(enableTopicAuth);
            changed = true;
        }
        if (changed) {
            updSerialId();
        }
        return changed;
    }
update subclass field values

@param dataVerId         new data version id
@param topicNameId       new topicName Id
@param newMaxMsgSizeMB   new max message size
@param enableTopicAuth   new topicAuth enable status
@return  whether changed
inlong-tubemq/tubemq-server/src/main/java/org/apache/inlong/tubemq/server/master/metamanage/metastore/dao/entity/TopicCtrlEntity.java