bryancall commented on issue #9969:
URL: https://github.com/apache/trafficserver/issues/9969#issuecomment-4828019738

   The signal 6 crash here (Fatal: MIME.cc:622: failed assertion `slot_num == 
slot_index`, reached through mime_hdr_field_detach and 
merge_response_header_with_cached_header during a cache revalidation of an 
object whose origin sends duplicate headers) was a known bug in the 
cached-header merge path. In Traffic Server 9.2.0 that merge loop deleted MIME 
header fields by pointer while it was still iterating over them, which 
corrupted the field slot indexing and tripped the sanity-check assertion that 
aborts the process. The reproduction you described, repeatedly revalidating a 
short-lived m3u8 playlist whose Nginx origin returns duplicate response 
headers, matches that path exactly.
   
   This was fixed by https://github.com/apache/trafficserver/pull/9527, which 
rewrote the loop to delete fields by name instead of by pointer. The fix first 
shipped upstream in the 10.0.0 release (per the pull request milestone), and it 
was also backported to the 9.2.x line and shipped in 9.2.1. Your reports were 
on 9.2.0, which predates the fix.
   
   I am closing this as fixed. If you can still reproduce a crash on 9.2.1 or 
later, or on the current 10.x line, please open a new issue with the version 
and a fresh crash log and we will take another look.


-- 
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]

Reply via email to