errose28 commented on PR #7983:
URL: https://github.com/apache/ozone/pull/7983#issuecomment-2691532273
I don't think we should add this configuration
- Optionally splitting any operation across directories or even disks
introduces more corner cases related to permissions, filesystem atomicity,
cleanup, out of space in the new location, etc.
- The config applies globally for the whole datanode, but is only really
intended to be used on full volumes.
- Volume reserved space is supposed to fix this issue. We have some issues
there currently but resolving those is the proper fix for this case as well.
- There's no sensible default value. The datanode process will likely not
have permission to write to arbitrary directories, especially not at root like
`/metadata/db`.
- This means the config would always require operator intervention to
engage once the issue is detected.
Worth noting that RocksDB doesn't support (at least through JNI) sending the
SST files to an output stream so that we could send it directly to the tar
being streamed over the network without extra disk space, which is unfortunate.
@swamirishi had another proposal to manually iterate the keys and write those
as a byte stream "file" directly into the tar stream. Container metadata will
not be that large and this process could be done entirely in memory without
extra disk space. It would be a desirable property that container replication
does not consume extra disk space on the source.
--
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]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]