xintongsong commented on a change in pull request #10146: 
[FLINK-14188][runtime] TaskExecutor derive and register with default slot 
resource profile
URL: https://github.com/apache/flink/pull/10146#discussion_r354086571
 
 

 ##########
 File path: 
flink-runtime/src/main/java/org/apache/flink/runtime/clusterframework/TaskExecutorResourceUtils.java
 ##########
 @@ -526,7 +545,8 @@ private static CPUResource getCpuCores(final Configuration 
config) {
                        }
                        return new CPUResource(cpuCores);
                } else {
-                       return new 
CPUResource(config.getInteger(TaskManagerOptions.NUM_TASK_SLOTS));
+                       final BigDecimal defaultSlotFraction =  
getDefaultSlotFraction(config);
+                       return new 
CPUResource(BigDecimal.valueOf(1.0).divide(defaultSlotFraction, 16, 
RoundingMode.DOWN).doubleValue());
 
 Review comment:
   True, we should avoid the back and forth conversions.
   
   And for `CPUResource`, I guess what you mean is to avoid having public 
constructors and factory methods at the same time? We need a private 
constructor anyway if we want to use factory methods.
   
   And I'm not sure whether we need to describe the value type in the name of 
factory methods. We can simply have factory methods with different argument 
type, like `create(BigDecimal)` and `create(double)`. So the factory of double 
type stays the same name as the overridden methods in its super class. 

----------------------------------------------------------------
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.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

Reply via email to