Github user danny0405 commented on a diff in the pull request: https://github.com/apache/storm/pull/2812#discussion_r212787423 --- Diff: storm-server/src/main/java/org/apache/storm/localizer/LocallyCachedTopologyBlob.java --- @@ -125,6 +129,12 @@ public long getRemoteVersion(ClientBlobStore store) throws KeyNotFoundException, @Override public long fetchUnzipToTemp(ClientBlobStore store) throws IOException, KeyNotFoundException, AuthorizationException { + synchronized (LocallyCachedTopologyBlob.class) { + if (!Files.exists(topologyBasicBlobsRootDir)) { --- End diff -- An class lock may be not sufficient if we have multiple blob instance on one host( or multi supervisors cause one supervisor will have a blob instance), and there will be a write conflictï¼ a host scope file lock would be better.
---