[ https://issues.apache.org/jira/browse/STORM-876?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15012053#comment-15012053 ]
ASF GitHub Bot commented on STORM-876: -------------------------------------- Github user d2r commented on a diff in the pull request: https://github.com/apache/storm/pull/845#discussion_r45264704 --- Diff: storm-core/src/clj/backtype/storm/daemon/supervisor.clj --- @@ -811,6 +993,21 @@ :else (-> value sub-fn (clojure.string/split #"\s+"))))) +(defn create-blobstore-links + "Create symlinks in worker launch directory for all blobs" + [conf storm-id port worker-id] + (let [stormroot (supervisor-stormdist-root conf storm-id) + storm-conf (read-supervisor-storm-conf conf storm-id) + workerroot (worker-root conf worker-id) + blobstore-map (storm-conf TOPOLOGY-BLOBSTORE-MAP) + blob-file-names (get-blob-file-names blobstore-map) + resource-file-names (cons RESOURCES-SUBDIR blob-file-names)] + (log-message "Creating symlinks for worker-id: " worker-id " storm-id: " + storm-id " for files(" (count resource-file-names) "): " (pr-str resource-file-names)) + (create-symlink! workerroot stormroot RESOURCES-SUBDIR) + (doseq [file-name blob-file-names] + (create-symlink! workerroot stormroot file-name file-name)))) --- End diff -- `port` parameter not used? > Dist Cache: Basic Functionality > ------------------------------- > > Key: STORM-876 > URL: https://issues.apache.org/jira/browse/STORM-876 > Project: Apache Storm > Issue Type: Improvement > Components: storm-core > Reporter: Robert Joseph Evans > Assignee: Robert Joseph Evans > Attachments: DISTCACHE.md, DistributedCacheDesignDocument.pdf > > > Basic functionality for the Dist Cache feature. > As part of this a new API should be added to support uploading and > downloading dist cache items. storm-core.ser, storm-conf.ser and storm.jar > should be written into the blob store instead of residing locally. We need a > default implementation of the blob store that does essentially what nimbus > currently does and does not need anything extra. But having an HDFS backend > too would be great for scalability and HA. > The supervisor should provide a way to download and manage these blobs and > provide a working directory for the worker process with symlinks to the > blobs. It should also allow the blobs to be updated and switch the symlink > atomically to point to the new blob once it is downloaded. > All of this is already done by code internal to Yahoo! we are in the process > of getting it ready to push back to open source shortly. -- This message was sent by Atlassian JIRA (v6.3.4#6332)