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

    https://github.com/apache/spark/pull/7943#discussion_r36311643
  
    --- Diff: 
network/shuffle/src/main/java/org/apache/spark/network/shuffle/ExternalShuffleBlockResolver.java
 ---
    @@ -252,4 +269,30 @@ public String toString() {
             .toString();
         }
       }
    +
    +  /**
    +   * write out the set of registered executors to a file so we can reload 
them on restart.
    +   * You must have a lock on executors when calling this
    +   */
    +  private void saveRegisteredExecutors() throws IOException {
    +    if (registeredExecutorFile != null) {
    +      Options options = new Options();
    +      options.createIfMissing(true);
    +      JniDBFactory factory = new JniDBFactory();
    +      DB db = null;
    +      try {
    +        db = factory.open(registeredExecutorFile, options);
    +        ByteArrayOutputStream bytes = new ByteArrayOutputStream();
    +        ObjectOutputStream out = new ObjectOutputStream(bytes);
    +        out.writeObject(executors);
    +        out.close();
    +        db.put("registeredExecutors".getBytes(Charsets.UTF_8), 
bytes.toByteArray());
    --- End diff --
    
    might be nice to make a constant (private static final String) for 
"registeredExecutors".
    Although it seems a bit odd we are throwing it all under one and not per 
application entry.  Wouldn't it be easier to add/remove if we do it per 
application?


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---

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

Reply via email to