c-api should not log ERROR tracebacks for 400/409 cases
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Cinder |
Fix Released
|
Medium
|
Ivan Kolodyazhny | ||
taskflow |
Invalid
|
Undecided
|
Unassigned |
Bug Description
Look at any CI run we have an c-api has a bunch of error traces for 400/409 conditions:
e.g.:
2016-08-16 15:22:48.532 25816 ERROR cinder.volume.api Traceback (most recent call last):
2016-08-16 15:22:48.532 25816 ERROR cinder.volume.api File "/usr/local/
2016-08-16 15:22:48.532 25816 ERROR cinder.volume.api result = task.execute(
2016-08-16 15:22:48.532 25816 ERROR cinder.volume.api File "/opt/stack/
2016-08-16 15:22:48.532 25816 ERROR cinder.volume.api size=size)
2016-08-16 15:22:48.532 25816 ERROR cinder.volume.api File "/opt/stack/
2016-08-16 15:22:48.532 25816 ERROR cinder.volume.api quota=quotas[over])
2016-08-16 15:22:48.532 25816 ERROR cinder.volume.api VolumeSizeExcee
2016-08-16 15:22:48.532 25816 ERROR cinder.volume.api
2016-08-16 15:22:50.309 25816 ERROR cinder.volume.api Traceback (most recent call last):
2016-08-16 15:22:50.309 25816 ERROR cinder.volume.api File "/usr/local/
2016-08-16 15:22:50.309 25816 ERROR cinder.volume.api result = task.execute(
2016-08-16 15:22:50.309 25816 ERROR cinder.volume.api File "/opt/stack/
2016-08-16 15:22:50.309 25816 ERROR cinder.volume.api size=size)
2016-08-16 15:22:50.309 25816 ERROR cinder.volume.api File "/opt/stack/
2016-08-16 15:22:50.309 25816 ERROR cinder.volume.api name=over)
2016-08-16 15:22:50.309 25816 ERROR cinder.volume.api VolumeLimitExce
2016-08-16 15:22:50.309 25816 ERROR cinder.volume.api
2016-08-16 15:40:24.897 25817 ERROR cinder.volume.api Traceback (most recent call last):
2016-08-16 15:40:24.897 25817 ERROR cinder.volume.api File "/usr/local/
2016-08-16 15:40:24.897 25817 ERROR cinder.volume.api result = task.execute(
2016-08-16 15:40:24.897 25817 ERROR cinder.volume.api File "/opt/stack/
2016-08-16 15:40:24.897 25817 ERROR cinder.volume.api size = self._extract_
2016-08-16 15:40:24.897 25817 ERROR cinder.volume.api File "/opt/stack/
2016-08-16 15:40:24.897 25817 ERROR cinder.volume.api func(size)
2016-08-16 15:40:24.897 25817 ERROR cinder.volume.api File "/opt/stack/
2016-08-16 15:40:24.897 25817 ERROR cinder.volume.api raise exception.
2016-08-16 15:40:24.897 25817 ERROR cinder.volume.api InvalidInput: Invalid input received: Volume size '1'GB cannot be smaller than the snapshot size 2GB. They must be >= original snapshot size.
2016-08-16 15:40:24.897 25817 ERROR cinder.volume.api
These shouldn't be logged as errors or tracing, they are user operations that are wrong, hence the 400 or 409 response. Tracing an ERROR should mean something went totally wrong and an operator should be paged.
Changed in cinder: | |
status: | New → Confirmed |
importance: | Undecided → Medium |
Changed in cinder: | |
assignee: | nobody → Ivan Kolodyazhny (e0ne) |
Looks like these are coming from tasks in cinder run via taskflow, and there isn't a way (that we're aware of) to specify expected exceptions so that taskflow doesn't log them as exceptions.