[ 
https://issues.apache.org/jira/browse/HDDS-12834?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18108649#comment-18108649
 ] 

Ivan Andika edited comment on HDDS-12834 at 8/27/26 5:57 AM:
-------------------------------------------------------------

Please be careful when doing anything related to RocksDB, be careful not to 
introduce issues like HDDS-15990. RocksDB is the least understood component of 
Ozone community.

Ideally all RocksDB related logic need to stay in RocksDB, Ozone does not need 
to come up with a new solution like a background service to compensate. You can 
start by doing tuning some RocksDB configuration.

If anyone still want to go ahead on improving RocksDB compaction, I expect a 
deep design doc that consider precedence in other production systems using 
RocksDB.. The design need to also prove why the logic cannot be done in RocksDB 
instead. I also want to see precedence in other production systems (e.g TiKV / 
FoundationDB, etc) on why it's a good idea to do it, if so it's better to 
imitate their implementation than invent our own. The designer need to be 
RocksDB subject matter expert and understand RocksDB inside out since you are 
dealing with RocksDB internals (it is not enough to say that compaction causes 
CPU overhead and that is bad). Unable to do this and I will -1 the design by 
default.

Also I want to see a reproducible testing setup and results for this.

So the default is that we should not implement anything related to compaction 
(CompactionService arguably is not necessary).

The burden of proof of anything related to RocksDB must be high since I want to 
dissuade anyone to actually doing this. 


was (Author: JIRAUSER298977):
Please be careful when doing anything related to RocksDB, be careful not to 
introduce issues like HDDS-15990. RocksDB is the least understood component of 
Ozone community.

Ideally all RocksDB related logic need to stay in RocksDB, Ozone does not need 
to come up with a new solution like a background service to compensate. You can 
start by doing tuning some RocksDB configuration.

If we still want to go ahead on improving RocksDB compaction, I want to see a 
deep design doc that consider precedence in other production systems using 
RocksDB. Please do not come up with your own solution without checking other 
production systems (e.g TiKV / FoundationDB, etc). The design need to also 
prove why the logic cannot be done in RocksDB instead. The designer need to be 
RocksDB subject matter expert and understand RocksDB inside out since you are 
dealing with RocksDB internals (it is not enough to say that compaction causes 
CPU overhead and that is bad). Unable to do this and I will -1 the design by 
default.

So the default is that we should not implement anything related to compaction. 
So CompactionService arguably is not necessary.

> Improve performance of auto-compaction of tables by the background service.
> ---------------------------------------------------------------------------
>
>                 Key: HDDS-12834
>                 URL: https://issues.apache.org/jira/browse/HDDS-12834
>             Project: Apache Ozone
>          Issue Type: Bug
>            Reporter: Tejaskriya Madhan
>            Priority: Major
>
> HDDS-12819 aims to introduce a background service that bottommost-compacts a 
> set of column families. This process can be optimized if it is aware of the 
> CPU utilization of the service that that point in time. 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to