THIS IS A TEST INSTANCE. ALL YOUR CHANGES WILL BE LOST!!!!
...
- MessageAndOffset is limited in change to just using up one attribute bit for tombstone marker
- Ability to set headers from a client side using a common interface
- Message Headers are kept to client side only implementation
The disadvantage of this option
- Change to the message object
- Client users need to know in advance if message will use headers or not (as in will use the wrapper)
- Headers are more for the platform needs, enforcing a wrapper makes this not invisible to end user code where only platforms need to add,consume headers via interceptors
- Cannot make use of the headers server side side whilst only client side implementation
- e.g. Server Side Plugins/Interceptors Interceptors see A Case for Kafka Headers
- If made server aware, then is better to integrate into the core message properly this is one reason for discounting this over the proposed solution.
- No versioning server side allowing older clients / other language clients to co-exist
- Upgrade compatibility issue - new topics needed to be created
- This is more prevalent for consumers
- Point solution for handling compaction server side
The amount of change needed both client and server side is similar in size to proposed solution in KIP-82 but has more above drawbacks.
...