zuston commented on code in PR #445:
URL: https://github.com/apache/incubator-uniffle/pull/445#discussion_r1055978114
##########
server/src/main/java/org/apache/uniffle/server/buffer/ShuffleBufferManager.java:
##########
@@ -431,20 +436,28 @@ private Map<String, Set<Integer>> pickFlushedShuffle() {
long expectedFlushSize = highWaterMark - lowWaterMark;
long pickedFlushSize = 0L;
int printIndex = 0;
+ int printIgnoreIndex = 0;
int printMax = 10;
for (Map.Entry<String, AtomicLong> entry : sizeList) {
long size = entry.getValue().get();
- pickedFlushSize += size;
String appIdShuffleIdKey = entry.getKey();
- addPickedShuffle(appIdShuffleIdKey, pickedShuffle);
- // print detail picked info
- if (printIndex < printMax) {
- LOG.info("Pick application_shuffleId[{}] with {} bytes",
appIdShuffleIdKey, size);
- printIndex++;
- }
- if (pickedFlushSize > expectedFlushSize) {
- LOG.info("Finish flush pick with {} bytes", pickedFlushSize);
- break;
+ if (size > this.shuffleFlushThreshold) {
Review Comment:
> How to expand the cluster? more shuffle servers? There would be limited
number of shuffle server and you cannot scale to many shuffle servers for one
application.
Yes. More shuffle-servers could distribute small IO pressure from discrete
usage of memory, especially if too much partitions are in one shuffle-server.
> This configurations is specially tailed for HDD only shuffle servers. I
think it's necessary to reduce small I/Os to HDDs as much as possible.
If having this feature, possibly the small partition memory could be not
flushed to persistent storage, and then all client will be back pressured.
> do you mean event_size_threshold_level1?
Yes
--
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]