Actions
Issue #1270
closedGofer needs to gracefully deal with malformed messages
Start date:
Due date:
Estimated time:
Severity:
3. High
Version:
2.6.3
Platform Release:
2.6.5
OS:
Triaged:
Yes
Groomed:
No
Sprint Candidate:
No
Tags:
Pulp 2
Sprint:
Quarter:
Description
Gofer needs to gracefully deal with malformed messages. Somehow messages are being queued to pulp.task with a body=None.
Currently this causes a traceback.
Sep 18 10:00:00 satelliteprd01 pulp: gofer.messaging.adapter.model:ERROR: (734-0 8192) 'NoneType' object has no attribute 'version'
Sep 18 10:00:00 satelliteprd01 pulp: gofer.messaging.adapter.model:ERROR: (734-0 8192) Traceback (most recent call last):
Sep 18 10:00:00 satelliteprd01 pulp: gofer.messaging.adapter.model:ERROR: (734-0 8192) File "/usr/lib/python2.7/site-packages/gofer/messaging/adapter/model.py" , line 39, in _fn
Sep 18 10:00:00 satelliteprd01 pulp: gofer.messaging.adapter.model:ERROR: (734-0 8192) return fn(*args, **keywords)
Sep 18 10:00:00 satelliteprd01 pulp: gofer.messaging.adapter.model:ERROR: (734-0 8192) File "/usr/lib/python2.7/site-packages/gofer/messaging/adapter/model.py" , line 652, in next
Sep 18 10:00:00 satelliteprd01 pulp: gofer.messaging.adapter.model:ERROR: (734-0 8192) validate(document)
Sep 18 10:00:00 satelliteprd01 pulp: gofer.messaging.adapter.model:ERROR: (734-0 8192) File "/usr/lib/python2.7/site-packages/gofer/messaging/model.py", line 8 9, in validate
Sep 18 10:00:00 satelliteprd01 pulp: gofer.messaging.adapter.model:ERROR: (734-0 8192) if document.version != VERSION:
Sep 18 10:00:00 satelliteprd01 pulp: gofer.messaging.adapter.model:ERROR: (734-0 8192) AttributeError: 'NoneType' object has no attribute 'version'
Sep 18 10:00:00 satelliteprd01 pulp: gofer.messaging.consumer:ERROR: (734-08192) pulp.task
Sep 18 10:00:00 satelliteprd01 pulp: gofer.messaging.consumer:ERROR: (734-08192) Traceback (most recent call last):
Sep 18 10:00:00 satelliteprd01 pulp: gofer.messaging.consumer:ERROR: (734-08192) File "/usr/lib/python2.7/site-packages/gofer/messaging/consumer.py", line 88, in _read
Sep 18 10:00:00 satelliteprd01 pulp: gofer.messaging.consumer:ERROR: (734-08192) message, document = self._reader.next(10)
Sep 18 10:00:00 satelliteprd01 pulp: gofer.messaging.consumer:ERROR: (734-08192) File "/usr/lib/python2.7/site-packages/gofer/messaging/adapter/model.py", lin e 44, in _fn
Sep 18 10:00:00 satelliteprd01 pulp: gofer.messaging.consumer:ERROR: (734-08192) raise ModelError(*e.args)
Sep 18 10:00:00 satelliteprd01 pulp: gofer.messaging.consumer:ERROR: (734-08192) ModelError: 'NoneType' object has no attribute 'version'
The exception is treated as a connection error and gofer goes into connection repair. The malformed message is never dequeued/acknowledged which blocks subsequent messages from being processed.
This needs to be fixed in gofer upstream.
Added by jortel@redhat.com over 8 years ago
Added by jortel@redhat.com over 8 years ago
Revision a31c5d6d | View on GitHub
ref #1270 - handling of malformed messages fixed in gofer 2.6.5.
Updated by jortel@redhat.com over 8 years ago
- Status changed from ASSIGNED to POST
Updated by jortel@redhat.com over 8 years ago
- Status changed from POST to MODIFIED
- Platform Release set to 2.6.5
- Triaged changed from No to Yes
Updated by dkliban@redhat.com over 8 years ago
- Status changed from MODIFIED to 5
Updated by dkliban@redhat.com over 8 years ago
- Status changed from 5 to CLOSED - CURRENTRELEASE
Actions
ref #1270 - handling of malformed messages fixed in gofer 2.6.5.