[ 
https://issues.apache.org/jira/browse/GOBBLIN-1084?focusedWorklogId=404075&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-404075
 ]

ASF GitHub Bot logged work on GOBBLIN-1084:
-------------------------------------------

                Author: ASF GitHub Bot
            Created on: 16/Mar/20 16:40
            Start Date: 16/Mar/20 16:40
    Worklog Time Spent: 10m 
      Work Description: sv2000 commented on pull request #2924: [GOBBLIN-1084] 
Refresh flowgraph when templates are modified
URL: https://github.com/apache/incubator-gobblin/pull/2924#discussion_r393159757
 
 

 ##########
 File path: 
gobblin-service/src/main/java/org/apache/gobblin/service/modules/core/GitFlowGraphMonitor.java
 ##########
 @@ -128,11 +131,15 @@ public boolean shouldPollGit() {
    */
   @Override
   void processGitConfigChanges() throws GitAPIException, IOException {
-    if (flowTemplateCatalog.isPresent() && (flowTemplateCatalog.get() 
instanceof ObservingFSFlowEdgeTemplateCatalog)) {
-      ObservingFSFlowEdgeTemplateCatalog catalog = 
(ObservingFSFlowEdgeTemplateCatalog) flowTemplateCatalog.get();
-      if (catalog.isShouldRefreshFlowGraph()) {
-        this.gitRepo.initRepository();
-        catalog.setShouldRefreshFlowGraph(false);
+    if (lock.tryLock()) {
 
 Review comment:
   So here is the race condition I was thinking of: 
   1. FlowCatalog has been refreshed so shouldRefreshFlowGraph is marked true. 
   2. GitMonitoringService calls processGitConfigChanges() and at some point 
before this method is done, FlowCatalog observes another refresh and sets 
shouldRefreshFlowGraph flag to true. 
   3. This flag is reset by GitMonitoringService to false at the end of 
processGitConfigChanges(). 
   
   So the GitMonitoringService can miss the 2nd catalog refresh and fail to add 
edges. LMK, if this is still not clear.
 
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


Issue Time Tracking
-------------------

    Worklog Id:     (was: 404075)
    Time Spent: 1h 40m  (was: 1.5h)

> Refresh flowgraph when templates are modified
> ---------------------------------------------
>
>                 Key: GOBBLIN-1084
>                 URL: https://issues.apache.org/jira/browse/GOBBLIN-1084
>             Project: Apache Gobblin
>          Issue Type: Improvement
>            Reporter: Jack Moseley
>            Priority: Major
>          Time Spent: 1h 40m
>  Remaining Estimate: 0h
>




--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to