THIS IS A TEST INSTANCE. ALL YOUR CHANGES WILL BE LOST!!!!
...
- Enhance log compaction to support more than just offset comparison, so the insertion order isn't always dictating which records to keep (in effect, allowing for a form of OCC);
- The current behavior should remain as the default in order to minimize impact on already existing clients and avoid any migration efforts;
- Add new Kafka configuration "log.cleaner.compaction.strategy" to toggle the compaction strategy to this approach;
- Add new Topic configuration "compaction.strategy" representing the same as above;
- The default value of these configurations should be "offset", which toggles to represents the current previous behavior;
- Specifically changing this to anything other than "offset" will cause the record headers to be scanned for a key matching this value. If this header is found, and its value is cast-able to "long", then this value will be used to determine which record to keep, in a 'keep-highest' approach;
...