Closed andrewvc closed 4 years ago
Updated to reflect @tsg 's idea to make a best effort to recover old data in the cases where possible.
Linking https://github.com/elastic/logstash/pull/9538 in here, which implements the immediate solution of bumping the PQ major and attempting to migrate old queues via a dry run.
We have, unfortunately, seen some reports of PQ issues in the field. This meta issue is here to track our approach to dealing with these. We previously were tracking this here: https://github.com/elastic/logstash/pull/9322 , but that's just around one issue, we should be more comprehensive.
TL;DR
If users are using a version
< 6.3.0
they should drain their queue before upgrading, then upgrade to 6.3.0+ ONLY.Our only reasonable fix is to:
Serialization Bug History
@timestamp
would be serialized as strings. Upgrading to 6.1.0+ will not fix previously serialized data, but will serialize new Events correctly.BigDecimal
,BigInteger
,Timestamp
,Boolean
and potentially other values. These queues must be drained prior to upgrading.File/IO Consistency Issues
mysnc
not being called / finishing during an OOM. A partial msync can cause this.Tasks