rob05c opened a new pull request #4493: Change ORT/atstccfg to generate all 
files at once, massive performance improvement
URL: https://github.com/apache/trafficcontrol/pull/4493
 
 
   Changes ORT/atstccfg to generate all files at once. ORT calls `atstccfg` 
once, and it returns `multipart/mixed` text of all files. ORT then parses the 
multipart into its variables, and processes all files as normal.
   
   This reduces an ORT run for a large CDN from about 8 minutes to about 20 
seconds. Fixing https://github.com/apache/trafficcontrol/issues/4473 brings it 
down to about 10 seconds.
   
   This also:
   - includes fixes to a number of ORT slugs I found. 
   - eliminates atstccfg caching, because it's no longer necessary, as atstccfg 
is only called once for the config file data, and in turn only calls Traffic 
Ops once for those API endpoints.
   - adds data arguments to atstccfg for non-config data got and put by ORT, 
and changes ORT to never directly call TO, but to go through atstccfg for all 
TO data.
   - Makes atstccfg build the non-API packages and chkconfig endpoints from API 
data, so it's not necessary to create new API endpoints for those. Now, the 
only non-API endpoint used by ORT/atstccfg is `/update`, whose behavior cannot 
be replicated with existing API endpoints.
   - adds a missing client function for an API endpoint needed, 
`GetServerUpdateStatus`.
   
   These changes should be transparent to ORT users. ORT itself doesn't change 
(except to remove the now-unused cache-related flags).
   
   Includes tests for new atstccfg funcs and the client func it adds. Changes 
are also covered by exitsing config tests.
   Includes documentation for preexisting ORT behavior. Though it doesn't 
actually change the interface.
   No changelog, no interface change.
   
   - [x] This PR is not related to any other Issue
   
   ## Which Traffic Control components are affected by this PR?
   - Traffic Ops ORT
   
   ## What is the best way to verify this PR?
   Run tests.
   Run ORT, verify it still generates configs properly as before.
   
   ## If this is a bug fix, what versions of Traffic Control are affected?
   Not a bug fix.
   
   ## The following criteria are ALL met by this PR
   - [x] This PR includes tests OR I have explained why tests are unnecessary
   - [x] This PR includes documentation OR I have explained why documentation 
is unnecessary
   - [x] This PR includes an update to CHANGELOG.md OR such an update is not 
necessary
   - [x] This PR includes any and all required license headers
   - [x] This PR ensures that database migration sequence is correct OR this PR 
does not include a database migration
   - [x] This PR **DOES NOT FIX A SERIOUS SECURITY VULNERABILITY** (see [the 
Apache Software Foundation's security 
guidelines](https://www.apache.org/security/) for details)
   
   ## Additional Information

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
[email protected]


With regards,
Apache Git Services

Reply via email to