Hi guys, wanted to get some feedback from you, so:
*The goal:* Add records consistency check for default values on startup(core records and plugin records(TSMgmt*Create) Details: Working around some record consistency check issues <https://github.com/apache/trafficserver/issues/11649> this week I found that we do not perform this check against the default values specified during registration <https://github.com/apache/trafficserver/blob/6774984a3f71f7473092d1af7ba99a004e8890d9/src/records/RecordsConfig.cc#L39> (4th parameter) of a record(either core or throughout the TS API). What’s the consistency check? This is supposed to be used to validate the value you set on a record, so if the check(regex) does not match the value then you get an error and the value is not set. This is quite clear when you try to set a new record value using traffic_ctl: $ traffic_ctl config set proxy.config.accept_threads 99999999 Server Error found: [9] Error during execution - [2000] Validity check failed. [2004] So, I want to add a record consistency check on startup for default records values set on (RecordsConfig.cc <https://github.com/apache/trafficserver/blob/6774984a3f71f7473092d1af7ba99a004e8890d9/src/records/RecordsConfig.cc#L39> and the TSMgmt*Create API) to avoid possible bugs. As I said this is already done for values we read from the records.yaml and values set through traffic_ctl but not for the default value specified in the record registration code(RecordsConfig.cc and TS API) Looking for feedback on: Is it OK to add this check for default values( ATS startup )? If so: - (A) Should we fatal(ATS will not start) - (B) Do not register the record and print an error message This may break some instances with plugins which registers new records with wrong value/regex in it. Is important to note that currently if you register a new record and configure the check to be performed but you do not specify a regex, then ATS will fail <https://github.com/apache/trafficserver/blob/6774984a3f71f7473092d1af7ba99a004e8890d9/src/records/RecordsConfigUtils.cc#L58-L60>(fatal). I think something similar can be done. Looking forward to hearing from you. Thanks Damian. Yahoo