rob05c commented on pull request #5179: URL: https://github.com/apache/trafficcontrol/pull/5179#issuecomment-782218111
It is not contrived, and it is not misuse by the client. Caching is something we have frequently done in the past. ORT has done it, the Monitor has done it. We just implemented IMS and IUS in TO (which does _not_ solve this problem either). TO can only serve so many requests per second, and even if it can network and data is slow. It's perfectly reasonable for a client to get data, and expect to be able to modify that data and push it back. It's also reasonable to be able to upgrade TO in-place, without breaking ongoing CDN traffic and operational scripts. Minor versioning in many cases, including this one, makes accidental errors impossible. Yes, the client could willfully ignore the error, like deserializing an older version to a newer struct and then posting that back. That would be misuse. And you're right, we can't prevent intentional bad behavior. But requesting data and posting it back is not misuse, and versioning prevents accidental and unknowable errors. It's not possible to prevent willful bad behavior, but it is possible to prevent accidental mistakes, and make it possible to detect and prevent them. ---------------------------------------------------------------- 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]
