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

    https://github.com/apache/spark/pull/7250#discussion_r34237335
  
    --- Diff: 
streaming/src/main/scala/org/apache/spark/streaming/StreamingContext.scala ---
    @@ -674,6 +676,8 @@ class StreamingContext private[streaming] (
               logWarning("StreamingContext has already been stopped")
             case ACTIVE =>
               scheduler.stop(stopGracefully)
    +          // De-registering Streaming Metrics of the StreamingContext
    +          env.metricsSystem.removeSource(streamingSource)
    --- End diff --
    
    I think it is OK for normal case, but what if an exception is met after 
metrics is successfully registered, but before changing the state into 
`ACTIVE`, according to the code, it will try the exception and change state 
into `STOPPED`, so at that situation, if we call stop(), we will never 
de-register the metrics  source according to the current implementation.


---
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