RockteMQ-AI commented on issue #10968:
URL: https://github.com/apache/rocketmq/issues/10968#issuecomment-5435612606

   **Issue Evaluation**
   
   Category: `type/enhancement` | Status: **Evaluated**
   
   **Feasibility:** feasible
   **Scope:** `EndTransactionProcessor#endMessageTransaction` (broker module)
   **Compatibility:** no wire format change — the delivered message still 
encodes `propertiesString` after `clearProperty`
   
   This is a valid optimization. The current code performs a full encode→decode 
round-trip solely to deep-copy the properties map, which is wasteful. Replacing 
it with `MessageAccessor.deepCopyProperties()` (or an equivalent direct map 
copy) eliminates two unnecessary traversals and intermediate string allocations 
per transaction commit/rollback.
   
   The behavioral analysis is correct: at this call site, `msgExt` comes from 
the store layer where the properties parser never produces null/empty values, 
so the silent filtering behavior of the codec round-trip is unreachable. The 
final encode after `clearProperty` remains unchanged, preserving the wire 
format.
   
   **Recommendation:** proceed — clean, low-risk optimization with measurable 
allocation reduction on the transaction hot path.
   
   ---
   *Automated evaluation by github-manager-bot*


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