Github user GJL commented on a diff in the pull request:

    https://github.com/apache/flink/pull/5215#discussion_r159230885
  
    --- Diff: 
flink-yarn/src/main/java/org/apache/flink/yarn/cli/FlinkYarnSessionCli.java ---
    @@ -743,6 +690,142 @@ private void logAndSysout(String message) {
                System.out.println(message);
        }
     
    +   public static void main(final String[] args) throws Exception {
    +           final FlinkYarnSessionCli cli = new FlinkYarnSessionCli("", 
""); // no prefix for the YARN session
    +
    +           final String configurationDirectory = 
CliFrontend.getConfigurationDirectoryFromEnv();
    +
    +           final Configuration flinkConfiguration = 
GlobalConfiguration.loadConfiguration();
    +           SecurityUtils.install(new 
SecurityConfiguration(flinkConfiguration));
    +           int retCode = 
SecurityUtils.getInstalledContext().runSecured(new Callable<Integer>() {
    +                   @Override
    +                   public Integer call() {
    +                           return cli.run(args, flinkConfiguration, 
configurationDirectory);
    +                   }
    +           });
    +           System.exit(retCode);
    +   }
    +
    +   private static void runInteractiveCli(
    +           YarnClusterClient clusterClient,
    +           YarnApplicationStatusMonitor yarnApplicationStatusMonitor,
    +           boolean readConsoleInput) {
    +           try (BufferedReader in = new BufferedReader(new 
InputStreamReader(System.in))) {
    +                   boolean continueRepl = true;
    +                   int numTaskmanagers = 0;
    +                   long unknownStatusSince = System.currentTimeMillis();
    --- End diff --
    
    nit: `System.nanoTime()` should be preferred to measure elapsed time 
because it does not depend on wall clock, i.e., it is not affected by the user 
changing the system's time: https://stackoverflow.com/a/351571
    However, if you use `nanoTime()`, the trick in line `729` with negative 
`unknownStatusSince` won't work.


---

Reply via email to