You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@mesos.apache.org by "Ilya (Jira)" <ji...@apache.org> on 2021/03/25 21:39:00 UTC
[jira] [Created] (MESOS-10216) Replicated log key encoding
Ilya created MESOS-10216:
----------------------------
Summary: Replicated log key encoding
Key: MESOS-10216
URL: https://issues.apache.org/jira/browse/MESOS-10216
Project: Mesos
Issue Type: Bug
Components: replicated log
Affects Versions: 1.11.0
Reporter: Ilya
LevelDB keys used by {{LevelDBStorage}} are {{uint64_t}} log positions encoded as strings and padded with zeroes up to a certain fixed size. The {{encode()}} function is incorrect because it uses the {{%d}} formatter that expects an {{int}}. It also limits the key size to 10 digits which is OK for {{UINT32_MAX}} but isn't enough for {{UINT64_MAX}}.
Because of this the available key range is reduced, and key overflow can result in replica's {{METADATA}} record (position 0) being overwritten, which in turn may cause data loss.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)