ocket8888 opened a new issue #6378:
URL: https://github.com/apache/trafficcontrol/issues/6378
## This Bug Report affects these Traffic Control components:
- Traffic Ops
## Current behavior:
The API does not require a latitude and longitude when creating a Cache
Group. Omitting those properties (or setting them to `null` explicitly) in the
POST request to create a Cache Group does _not_ result in an underlying
"coordinate" being created for the Cache Group. A further PUT request to
change, e.g. the Name of the Cache Group will cause a segmentation fault as
Traffic Ops tries to dereference the null ID of the coordinate associated with
the Cache Group during the update process. The request then fails even if
otherwise well-formed, with a 500 Internal Server Error response.
## Expected behavior:
If coordinates are to be required in requests, then omitting them (or
setting them to `null`) in requests should return a client error code and an
appropriate alert. If coordinates are _not_ intended to be required, then the
handler for PUT requests should not assume they exist and appropriately handle
the case that they don't.
## Steps to reproduce:
1. `topost -k cachegroups '{"name": "test", "shortName": "test", "typeId":
23` (replace `23` with the ID of any Type that has a `useInTable` value of
`cachegroup`)
2. `toput -k cachegroups/10 '{"name": "test", "shortName": "test", "typeId":
23}'` (replace `10` with the ID of the Cache Group created in step 1. and
replace `23` with the ID of any Type that has a `useInTable` value of
`cachegroup`)
Note that changing anything is unnecessary to encounter the bug.
It's unclear (to me) if this is a regression or not.
--
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.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]