lizhimins commented on issue #10658:
URL: https://github.com/apache/rocketmq/issues/10658#issuecomment-5113892277

   补充一点关于持久化层的背景:`PopConsumerStore` 底层使用 RocksDB,其 WAL(Write-Ahead 
Log)机制保证了批量写入的原子性——`writeRecords` 和 `deleteRecords` 在一次 batch write 
中要么全部成功、要么全部失败,不存在"部分记录持久化、部分丢失"的中间状态。因此修复方向应在 per-record 的 revive 
阶段做错误隔离(catch 异常后将失败记录加入 failureList 重试调度),让批次整体流程能继续推进到持久化阶段。
   
   One additional note on the persistence layer: `PopConsumerStore` is backed 
by RocksDB, whose WAL (Write-Ahead Log) guarantees atomicity for batch writes — 
`writeRecords` and `deleteRecords` within a single batch either all succeed or 
all fail; there is no intermediate state where some records are persisted and 
others are lost. The fix should focus on error isolation at the per-record 
revive stage (catch the exception, add the failed record to failureList for 
retry scheduling), so the batch flow can proceed to the persistence stage as a 
whole.


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