# I have managed to create an unkillable SFC Chart

**URL:** <https://forum.inductiveautomation.com/t/i-have-managed-to-create-an-unkillable-sfc-chart/9896>\
**Category:** Ignition\
**Created:** [April 9, 2015, 4:02pm UTC](https://forum.inductiveautomation.com/t/i-have-managed-to-create-an-unkillable-sfc-chart/9896 "2015-04-09T16:02:50Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![BillS](https://avatars.discourse-cdn.com/v4/letter/b/9fc348/32.png) [@BillS](https://forum.inductiveautomation.com/u/BillS)\
**Post date:** [April 9, 2015, 4:02pm UTC](https://forum.inductiveautomation.com/t/i-have-managed-to-create-an-unkillable-sfc-chart/9896/1 "2015-04-09T16:02:50Z")

</div>

The following SFC Chart will not cancel or pause if it is started without a parent chart. Chart XMLs do NOT copy if you include the Begin Chart element, but the rest can be copied and pasted into a chart – My poor man’s way of source control… I do something similar for the python scripts – WHAT A PAIN.

This is not a critical problem to me, since I’ve added additional checks to the chart to validate that a parent exists, which seems to have made things better. But, I thought I’d report this to you, since it brought down the whole Ignition server! I couldn’t set or clear tags or anything. The only way to recover was to stop the Ignition server, wait 3 - 10 minutes for the java process to actually stop, then restart the server!

[code]\<?xml version="1.0" ?\>  
  
Chart Name: ZoneWatchDogLoop

This chart will monitor the status of the Zone PLC, and the  
ZoneProcessing chart.  
It will set flags indicating if the master ZoneProcessing chart is still  
running or not, which the other charts will utilize to indicate if they  
should stop or not.  
  
def onStart(chart, step):  
“”"  
This will run when the step starts, before any  
other action.

```
Arguments:
	chart: A reference to the chart's scope.
	step: A reference to this step's scope.
"""
shared.WWD_MOM_Chart.GlobalProcessing.setWaitTime(chart, step, 5)</start-script>
</step>
<step id="914ba3a5-1600-41df-87e9-e06171a1d760" location="5 3" name="defineGlobals" factory-id="action-step">
	<start-script>def onStart(chart, step):
"""
This will run when the step starts, before any
other action.

Arguments:
	chart: A reference to the chart's scope.
	step: A reference to this step's scope.
"""
shared.WWD_MOM_Chart.ZoneProcessing.defineGlobals(chart, step)</start-script>
</step>
<step id="0addb8f6-f13a-4c5c-b6eb-a5d1496303ea" location="3 9" name="stopZone" factory-id="action-step">
	<start-script>def onStart(chart, step):
"""
This will run when the step starts, before any
other action.

Arguments:
	chart: A reference to the chart's scope.
	step: A reference to this step's scope.
"""
shared.WWD_MOM_Chart.ZoneProcessing.stopZone(chart, step)
</start-script>
</step>
<step id="3f760089-1267-47f1-835b-46b2ca1326f3" location="1 11" name="__end2" factory-id="end-step">	</step>
<step id="5795aa3f-31e4-4372-9f59-a0618b9c59aa" location="7 9" name="setWaitTime" factory-id="action-step">
	<start-script>def onStart(chart, step):
"""
This will run when the step starts, before any
other action.

Arguments:
	chart: A reference to the chart's scope.
	step: A reference to this step's scope.
"""
shared.WWD_MOM_Chart.GlobalProcessing.setWaitTime(chart, step, 10)
</start-script>
</step>
<step id="e44a536c-f15c-4de2-8bf6-676de67f878c" location="9 9" name="setHeartBeat" factory-id="action-step">
	<start-script>def onStart(chart, step):
"""
This will run when the step starts, before any
other action.

Arguments:
	chart: A reference to the chart's scope.
	step: A reference to this step's scope.
"""
shared.WWD_MOM_Chart.ZoneProcessing.setHeartBeat(chart, step)
</start-script>
</step>
<step id="5967f7db-d6d7-4a33-9d45-2d5c35563e98" location="9 11" name="setZoneAlive" factory-id="action-step">
	<start-script>def onStart(chart, step):
"""
This will run when the step starts, before any
other action.

Arguments:
	chart: A reference to the chart's scope.
	step: A reference to this step's scope.
"""
shared.WWD_MOM_Chart.ZoneProcessing.setZoneIsAlive(chart, step)
</start-script>
</step>
<step id="11edfe06-658e-41ae-aa5f-273b2d52fa02" location="8 12" name="setZoneDead" factory-id="action-step">
	<start-script>def onStart(chart, step):
"""
This will run when the step starts, before any
other action.

Arguments:
	chart: A reference to the chart's scope.
	step: A reference to this step's scope.
"""
shared.WWD_MOM_Chart.ZoneProcessing.setZoneIsDead(chart, step)
</start-script>
</step>
<step id="01a4667f-ffc6-44c3-8641-ef2301514682" location="9 16" name="checkParent" factory-id="action-step">
	<start-script>def onStart(chart, step):
"""
This will run when the step starts, before any
other action.

Arguments:
	chart: A reference to the chart's scope.
	step: A reference to this step's scope.
"""
shared.WWD_MOM_Chart.ZoneProcessing.checkParent(chart, step)</start-script>
</step>
<transition id="bec2e4e2-30ea-48c6-93cf-b46066fc2519" location="3 3">{runningTime} &gt; {waitTime}</transition>
<transition id="36961367-47ef-40d9-ae82-c11d34f613ea" location="1 7">tag({zoneLeadin}+'Flags/ZoneRunning') = 0</transition>
<transition id="a9532c0b-ad22-4793-b316-d320a5330acc" location="3 7">{parentRunning} = 0</transition>
<transition id="93532497-df06-473e-81a5-ad963c6d3d4c" location="5 7">{runningTime} &gt; {nextParentCheck}</transition>
<transition id="6b167311-03c5-489e-99dc-2eb322d0bfbd" location="7 7">tag({zoneLeadin}+'ZoneHeartBeat/HeartBeat') = 1 </transition>
<transition id="07e6083b-c466-4da0-a66b-2bb72f914c69" location="9 7">tag({zoneLeadin}+'ZoneHeartBeat/HeartBeat') = 0</transition>
<transition id="016aa6b5-b3aa-4a21-bc9e-7914e0c1efd4" location="7 11">tag({zoneLeadin}+'ZoneHeartBeat/HeartBeat') = 0</transition>
<transition id="e428a41f-3d0a-4e0b-8b22-a3935885920d" location="8 11">{runningTime} &gt; {waitTime}</transition>
<transition id="60da044e-7e08-468b-95ec-f201080b7e51" location="9 14">{runningTime} &gt; {nextParentCheck}</transition>
<transition id="3e6ff1dd-2258-4c0a-b789-7f06dd5d5111" location="10 14"> {runningTime} &lt; {nextParentCheck}</transition>
<jump id="c960aced-082f-476b-b0b4-11a3a094b129" location="3 11">L</jump>
<jump id="419f3c9b-397a-4d69-a808-e98fd90f9335" location="5 11">P</jump>
<jump id="7fe5707d-431f-46e8-8519-6b074f24bfa1" location="7 14">Z</jump>
<jump id="aca7bdd6-f2e9-40a7-b331-fa3d3fb60e13" location="8 14">P</jump>
<jump id="bd1b2c5a-9d5d-4e75-a979-bbbc56117e5f" location="9 18">L</jump>
<jump id="0b0d4814-cc8e-43e8-b1db-333d5485504e" location="10 18">L</jump>
<anchor id="a2b2156e-fcb4-40ee-b666-2fff1b3cd8cb" location="3 1">L</anchor>
<anchor id="fffdc8a6-41c2-4c94-a064-c55f57dd4798" location="8 7">Z</anchor>
<anchor id="6e75cd31-5513-4165-87c2-e5782ed49535" location="10 7">P</anchor>
<link id="f4b9969f-82e8-4dd3-b781-19966d4aa05e" location="3 4"><up/><down/><right/></link>
<link id="3a94c443-d5d8-45b8-a14a-05f8ace414cf" location="5 1"><up/><down/></link>
<link id="473b4df7-1ad5-4c00-8041-453fc8788e02" location="5 2"><up/><left/><down/></link>
<link id="5ecba7ec-9478-42ce-bbe1-ffe7e9386dd3" location="4 4"><left/><right/></link>
<link id="a6f24317-82a9-4c3e-bac9-4faafc6c6162" location="1 6"><left/><down/><right/></link>
<link id="85e156ae-0028-4360-85ef-d9ee07e1ded9" location="2 6"><left/><right/></link>
<link id="0cfc8c4e-f60f-4d20-98b7-ddb7adcdb14a" location="5 4"><up/><left/><down/></link>
<link id="84aeb295-7c48-4fca-979e-8f84f2573c80" location="3 6"><left/><down/><right/></link>
<link id="869ccf12-f6ad-46fe-8930-c9d2514a7676" location="5 5"><up/><down/></link>
<link id="15bc0f62-a4b5-4dc4-aac5-faae7425cc8b" location="4 6"><left/><right/></link>
<link id="a069d49a-85c6-4713-a60d-77a1689c1f4d" location="5 6"><up/><left/><down/><right/></link>
<link id="5229dcec-4424-45cf-85f8-8528caafd205" location="1 8"><up/><down/></link>
<link id="2d695e1c-ad6b-4204-8e21-b64735342979" location="6 6"><left/><right/></link>
<link id="a300c359-2909-47db-969c-057af914c7e4" location="3 8"><up/><down/></link>
<link id="7fe92b56-dae6-4392-9bf0-fc2ed28f0dba" location="1 9"><up/><down/></link>
<link id="39bad639-0266-450f-9b41-aa00bbb44c1c" location="7 6"><left/><down/><right/></link>
<link id="d66d0775-dc4b-4344-8234-b4c69baaa266" location="5 8"><up/><down/></link>
<link id="2d1a3f4d-e679-419b-be10-fee2e03ac8fd" location="8 6"><left/><down/><right/></link>
<link id="74855cc4-13c2-47a0-8f35-db98ed7d7265" location="1 10"><up/><down/></link>
<link id="7311f954-d4ef-4316-b721-ca4b5cd0a73c" location="5 9"><up/><down/></link>
<link id="9c78e05f-31b5-4455-ba99-1465fe357d12" location="3 10"><up/><down/></link>
<link id="37dd7628-25dc-4474-9bdc-b954f4c7b8c2" location="7 8"><up/><down/></link>
<link id="c7c881dc-b871-4b3a-8aea-31dbc4a675fe" location="9 6"><left/><down/><right/></link>
<link id="e4f0eda0-a6f4-4a30-bc3c-1190fff79458" location="5 10"><up/><down/></link>
<link id="a0a20233-e8f7-40a0-a6cf-838c1f16ccf2" location="8 8"><up/><down/><right/></link>
<link id="5c63e09d-b832-4d59-ad43-a7802fd30994" location="9 8"><up/><left/><down/></link>
<link id="39dd278b-4428-4174-999a-9ff3ef2e18de" location="7 10"><up/><down/><right/></link>
<link id="351483a6-46f3-4c2b-bedb-8afd4964d8c2" location="8 10"><left/><down/><right/></link>
<link id="836969f3-efc6-4e8e-8e1b-a065b31d7635" location="10 8"><up/><down/></link>
<link id="9f0255da-2f94-43d2-93e8-fb40aae83e57" location="10 9"><up/><down/></link>
<link id="717c66e0-6fb8-47dd-8eb5-a2f577e5283c" location="9 10"><up/><down/></link>
<link id="7725fdaa-3cac-4fb9-82ba-344e0998a07d" location="7 12"><up/><down/></link>
<link id="b4debe7d-db8c-47f4-ac19-a8dba078a05f" location="10 10"><up/><down/></link>
<link id="f84cdb3d-dc14-4ba7-bb2d-a095eed47b57" location="7 13"><up/><down/></link>
<link id="d067ece0-0d82-4599-9114-96f1398be005" location="10 11"><up/><down/></link>
<link id="b8b4f07a-6634-4710-8416-1f3966cc96e7" location="9 12"><up/><down/><right/></link>
<link id="8a9287aa-0a88-48ab-89ef-a7f3f81dbda2" location="8 13"><up/><down/></link>
<link id="51683b2d-9e35-410c-8c40-bf9de6c90836" location="10 12"><up/><left/><down/></link>
<link id="209fde15-642b-458b-a4b2-8972132952b9" location="9 13"><up/><down/><right/></link>
<link id="4bfcb830-77ed-4a10-b803-e8fbee75dccb" location="10 13"><left/><down/><right/></link>
<link id="f284ab97-3fc7-4e33-a48b-e01413a9f425" location="9 15"><up/><down/></link>
<link id="489bdcb5-9c78-41d6-8a97-f090ba4b8f11" location="10 15"><up/><down/></link>
<link id="40b38267-52b2-4341-8771-b41e064ba45d" location="10 16"><up/><down/></link>
<link id="75f46323-054d-4ea2-b0db-4ce02f51b7fd" location="9 17"><up/><down/></link>
<link id="5f10a70d-9261-45d7-80c5-54e35dfb2e58" location="10 17"><up/><down/></link>

```

[/code]

[code]import shared.WWD\_MOM\_Chart.GlobalProcessing as GlobalProcessing  
import shared.WWD\_MOM.GlobalDefines as GlobalDefines

libName = “WWD\_MOM\_Chart”  
srcName = “ZoneProcessing”

def defineGlobals(chart, step):  
“”"  
This will collect the carriers to be removed from the system from WISE

```
Arguments:
	chart: A reference to the chart's scope.
	step: A reference to this step's scope.
	
"""
methodName = "defineGlobals"

logger = system.util.logger(GlobalDefines.LOGGER_LEADIN+"."+chart.zoneId+"."+libName+"."+srcName)

logger.debug("%s: Start" % methodName)

logger.trace("%s: initializing globalSettings" % (methodName))

# This method has a side effect of setting the chart.globalSettings if Ignition can deal with that
# As of Ignition 7.7.1 it cannot handle having a python class as a member of the chart scope.
# As of Ignition 7.7.2 it can handle having a python class as a member of the chart scope.
globalSettings = GlobalProcessing.defineGlobalSettings(chart, step)

logger.trace("%s: done initializing globalSettings" % (methodName))
tagLeadin = globalSettings.getZoneLeadin()
chart.zoneLeadin = globalSettings.getZoneLeadin()

chart.parentRunning = True
chart.haveParent = True
chart.nextParentCheck = 0
chart.haveParent = True
if chart.parent == None:
	chart.haveParent = False
chart.parentRunTime = 0
chart.parentLoopCnt = 0

location = system.tag.write(tagLeadin+'Flags/ZoneRunning', 1)

logger.info("Chart Running")

logger.debug("%s: Finish" % methodName)

```

def stopZone(chart, step):  
“”"  
This will collect the carriers to be removed from the system from WISE

```
Arguments:
	chart: A reference to the chart's scope.
	step: A reference to this step's scope.
	
"""
globalSettings = GlobalProcessing.retrieveGlobalSettings(chart, step)
methodName = "stopZone"
logger = globalSettings.getLogger(lib=libName, src=srcName)

logger.debug("%s: Start" % methodName)
tagLeadin = globalSettings.getZoneLeadin()

location = system.tag.write(tagLeadin+'Flags/ZoneRunning', 0)

logger.debug("%s: Finish" % methodName)

```

def startZone(chart, step):  
“”"  
This will collect the carriers to be removed from the system from WISE

```
Arguments:
	chart: A reference to the chart's scope.
	step: A reference to this step's scope.
	
"""
globalSettings = GlobalProcessing.retrieveGlobalSettings(chart, step)
methodName = "startZone"
logger = globalSettings.getLogger(lib=libName, src=srcName)

logger.debug("%s: Start" % methodName)
tagLeadin = globalSettings.getZoneLeadin()

location = system.tag.write(tagLeadin+'Flags/ZoneRunning', 1)

logger.debug("%s: Finish" % methodName)

```

def setZoneIsAlive(chart, step):  
“”"  
This will collect the carriers to be removed from the system from WISE

```
Arguments:
	chart: A reference to the chart's scope.
	step: A reference to this step's scope.
	
"""
globalSettings = GlobalProcessing.retrieveGlobalSettings(chart, step)
methodName = "setZoneIsAlive"
logger = globalSettings.getLogger(lib=libName, src=srcName)

logger.debug("%s: Start" % methodName)
tagLeadin = globalSettings.getZoneLeadin()

location = system.tag.write(tagLeadin+'Flags/ZoneAlive', 1)

logger.debug("%s: Finish" % methodName)

```

def setZoneIsDead(chart, step):  
“”"  
This will collect the carriers to be removed from the system from WISE

```
Arguments:
	chart: A reference to the chart's scope.
	step: A reference to this step's scope.
	
"""
globalSettings = GlobalProcessing.retrieveGlobalSettings(chart, step)
methodName = "setZoneIsDead"
logger = globalSettings.getLogger(lib=libName, src=srcName)

logger.debug("%s: Start" % methodName)
tagLeadin = globalSettings.getZoneLeadin()

location = system.tag.write(tagLeadin+'Flags/ZoneAlive', 0)

logger.debug("%s: Finish" % methodName)

```

def setHeartBeat(chart, step):  
“”"  
This will collect the carriers to be removed from the system from WISE

```
Arguments:
	chart: A reference to the chart's scope.
	step: A reference to this step's scope.
	
"""
globalSettings = GlobalProcessing.retrieveGlobalSettings(chart, step)
methodName = "setHeartBeat"
logger = globalSettings.getLogger(lib=libName, src=srcName)

logger.debug("%s: Start" % methodName)
tagLeadin = globalSettings.getZoneLeadin()

location = system.tag.write(tagLeadin+'ZoneHeartBeat/Heartbeat', 1)

logger.debug("%s: Finish" % methodName)

```

def checkParent(chart, step):  
“”"  
This will collect the carriers to be removed from the system from WISE

```
Arguments:
	chart: A reference to the chart's scope.
	step: A reference to this step's scope.

"""
globalSettings = GlobalProcessing.retrieveGlobalSettings(chart, step)
methodName = "checkParent"
logger = globalSettings.getLogger(lib=libName, src=srcName)

logger.debug("%s: Start" % methodName)

logger.trace("%s: Chart Information: Id %s, RunTime %d, HaveParent = %s" % (methodName, chart.instanceId, chart.runningTime, str(chart.haveParent)))
if chart.haveParent:
	chart.parentRunning = True
	if (chart.parent != None):
		parent = chart.parent
		logger.trace("%s: Parent Information: Id %s, RunTime %d, Chart.parentRunTime %d" % (methodName, parent.instanceId, parent.runningTime, chart.parentRunTime))
		if parent.runningTime != chart.parentRunTime:
			chart.parentRunTime = parent.runningTime
			chart.parentLoopCnt = 0
		else:
			if chart.parentLoopCnt > 0:
				logger.trace("%s: Parent Not running anymore!")
				chart.parentRunning = False
			else:
				chart.parentLoopCnt += 1

chart.nextParentCheck = chart.runningTime + 15

logger.debug("%s: Finish" % methodName)

```

[/code]

`INFO | jvm 1 | 2015/04/09 10:03:02 | TRACE [ExecutionQueue] [10:03:02,667]: [chart:662df546-b302-4873-bcb3-3c8b99fe1be9] Enqueue job '417249406': state[ElementStateEnum:Deactivating]->action[DeactivateFinished]
INFO | jvm 1 | 2015/04/09 10:03:02 | TRACE [ExecutionQueue] [10:03:02,667]: [chart:662df546-b302-4873-bcb3-3c8b99fe1be9] Dequeue job '1570832218'
INFO | jvm 1 | 2015/04/09 10:03:02 | DEBUG [ZoneProcessing] [10:03:02,739]: defineGlobals: Start
INFO | jvm 1 | 2015/04/09 10:03:02 | TRACE [ZoneProcessing] [10:03:02,739]: defineGlobals: initializing globalSettings
INFO | jvm 1 | 2015/04/09 10:03:02 | TRACE [GlobalProcessing] [10:03:02,751]: defineGlobals: Setting Zone
INFO | jvm 1 | 2015/04/09 10:03:02 | TRACE [ZoneProcessing] [10:03:02,772]: defineGlobals: done initializing globalSettings
INFO | jvm 1 | 2015/04/09 10:03:02 | INFO [ZoneProcessing] [10:03:02,774]: Chart Running
INFO | jvm 1 | 2015/04/09 10:03:02 | DEBUG [ZoneProcessing] [10:03:02,775]: defineGlobals: Finish
INFO | jvm 1 | 2015/04/09 10:03:02 | DEBUG [ActionTimerScriptManager] [10:03:02,775]: Timer script manager 'defineGlobals' started.
INFO | jvm 1 | 2015/04/09 10:03:02 | DEBUG [StateContext] [10:03:02,776]: [step:914ba3a5-1600-41df-87e9-e06171a1d760] S(ElementActivating) x E(ActivateFinished) => S(ElementActive)
INFO | jvm 1 | 2015/04/09 10:03:02 | TRACE [ExecutionQueue] [10:03:02,776]: [chart:662df546-b302-4873-bcb3-3c8b99fe1be9] Enqueue job '73770518': state[ElementStateEnum:Activating]->action[ActivateFinished]
INFO | jvm 1 | 2015/04/09 10:03:02 | TRACE [ExpressionTransition] [10:03:02,776]: ExpressionTransition[id=36961367-47ef-40d9-ae82-c11d34f613ea,expression=tag({zoneLeadin}+'Flags/ZoneRunning') = 0] setListener() not null
INFO | jvm 1 | 2015/04/09 10:03:02 | TRACE [ExpressionTransition] [10:03:02,776]: ExpressionTransition[id=a9532c0b-ad22-4793-b316-d320a5330acc,expression={parentRunning} = 0] setListener() not null
INFO | jvm 1 | 2015/04/09 10:03:02 | TRACE [ExpressionTransition] [10:03:02,776]: ExpressionTransition[id=93532497-df06-473e-81a5-ad963c6d3d4c,expression={runningTime} > {nextParentCheck}] setListener() not null
INFO | jvm 1 | 2015/04/09 10:03:02 | TRACE [ExpressionTransition] [10:03:02,777]: ExpressionTransition[id=6b167311-03c5-489e-99dc-2eb322d0bfbd,expression=tag({zoneLeadin}+'ZoneHeartBeat/HeartBeat') = 1] setListener() not null
INFO | jvm 1 | 2015/04/09 10:03:02 | TRACE [ExpressionTransition] [10:03:02,777]: ExpressionTransition[id=07e6083b-c466-4da0-a66b-2bb72f914c69,expression=tag({zoneLeadin}+'ZoneHeartBeat/HeartBeat') = 0] setListener() not null
INFO | jvm 1 | 2015/04/09 10:03:02 | TRACE [ExecutionQueue] [10:03:02,777]: [chart:662df546-b302-4873-bcb3-3c8b99fe1be9] LOCKED
INFO | jvm 1 | 2015/04/09 10:03:02 | DEBUG [StateContext] [10:03:02,777]: [transition:36961367-47ef-40d9-ae82-c11d34f613ea] S(ElementInactive) x E(ActivateRequested) => S(ElementActivating)
INFO | jvm 1 | 2015/04/09 10:03:02 | TRACE [ExecutionQueue] [10:03:02,777]: [chart:662df546-b302-4873-bcb3-3c8b99fe1be9] Enqueue job '418850059': state[ElementStateEnum]->action[ActivateRequested]
INFO | jvm 1 | 2015/04/09 10:03:02 | DEBUG [StateContext] [10:03:02,777]: [transition:a9532c0b-ad22-4793-b316-d320a5330acc] S(ElementInactive) x E(ActivateRequested) => S(ElementActivating)
INFO | jvm 1 | 2015/04/09 10:03:02 | TRACE [ExecutionQueue] [10:03:02,777]: [chart:662df546-b302-4873-bcb3-3c8b99fe1be9] Enqueue job '789588537': state[ElementStateEnum]->action[ActivateRequested]
INFO | jvm 1 | 2015/04/09 10:03:02 | DEBUG [StateContext] [10:03:02,777]: [transition:93532497-df06-473e-81a5-ad963c6d3d4c] S(ElementInactive) x E(ActivateRequested) => S(ElementActivating)
INFO | jvm 1 | 2015/04/09 10:03:02 | TRACE [ExecutionQueue] [10:03:02,778]: [chart:662df546-b302-4873-bcb3-3c8b99fe1be9] Enqueue job '1406478387': state[ElementStateEnum]->action[ActivateRequested]
INFO | jvm 1 | 2015/04/09 10:03:02 | DEBUG [StateContext] [10:03:02,778]: [transition:6b167311-03c5-489e-99dc-2eb322d0bfbd] S(ElementInactive) x E(ActivateRequested) => S(ElementActivating)
INFO | jvm 1 | 2015/04/09 10:03:02 | TRACE [ExecutionQueue] [10:03:02,778]: [chart:662df546-b302-4873-bcb3-3c8b99fe1be9] Enqueue job '890763432': state[ElementStateEnum]->action[ActivateRequested]
INFO | jvm 1 | 2015/04/09 10:03:02 | DEBUG [StateContext] [10:03:02,778]: [transition:07e6083b-c466-4da0-a66b-2bb72f914c69] S(ElementInactive) x E(ActivateRequested) => S(ElementActivating)
INFO | jvm 1 | 2015/04/09 10:03:02 | TRACE [ExecutionQueue] [10:03:02,778]: [chart:662df546-b302-4873-bcb3-3c8b99fe1be9] Enqueue job '342449276': state[ElementStateEnum]->action[ActivateRequested]
INFO | jvm 1 | 2015/04/09 10:03:02 | TRACE [ExecutionQueue] [10:03:02,778]: [chart:662df546-b302-4873-bcb3-3c8b99fe1be9] UNLOCKED
INFO | jvm 1 | 2015/04/09 10:03:02 | TRACE [ExecutionQueue] [10:03:02,778]: [chart:662df546-b302-4873-bcb3-3c8b99fe1be9] Dequeue job '1291714800'
INFO | jvm 1 | 2015/04/09 10:03:02 | TRACE [ExecutionQueue] [10:03:02,778]: [chart:662df546-b302-4873-bcb3-3c8b99fe1be9] Dequeue job '1049598408'
INFO | jvm 1 | 2015/04/09 10:03:02 | TRACE [ExecutionQueue] [10:03:02,779]: [chart:662df546-b302-4873-bcb3-3c8b99fe1be9] Dequeue job '417249406'
INFO | jvm 1 | 2015/04/09 10:03:02 | TRACE [ExecutionQueue] [10:03:02,779]: [chart:662df546-b302-4873-bcb3-3c8b99fe1be9] Dequeue job '73770518'
INFO | jvm 1 | 2015/04/09 10:03:02 | TRACE [ExecutionQueue] [10:03:02,779]: [chart:662df546-b302-4873-bcb3-3c8b99fe1be9] Dequeue job '418850059'
INFO | jvm 1 | 2015/04/09 10:03:02 | TRACE [TransitionContainer] [10:03:02,779]: [transition:36961367-47ef-40d9-ae82-c11d34f613ea] onActivateRequested. Current state: Activating
INFO | jvm 1 | 2015/04/09 10:03:02 | DEBUG [ExpressionTransition] [10:03:02,780]: ExpressionTransition[id=36961367-47ef-40d9-ae82-c11d34f613ea,expression=tag({zoneLeadin}+'Flags/ZoneRunning') = 0] value=[false, Stale, Thu Apr 09 10:03:02 CDT 2015], transition=false
INFO | jvm 1 | 2015/04/09 10:03:02 | DEBUG [StateContext] [10:03:02,781]: [transition:36961367-47ef-40d9-ae82-c11d34f613ea] S(ElementActivating) x E(ActivateFinished) => S(ElementActive)
INFO | jvm 1 | 2015/04/09 10:03:02 | TRACE [ExecutionQueue] [10:03:02,781]: [chart:662df546-b302-4873-bcb3-3c8b99fe1be9] Enqueue job '787343463': state[ElementStateEnum:Activating]->action[ActivateFinished]
INFO | jvm 1 | 2015/04/09 10:03:02 | DEBUG [ExpressionTransition] [10:03:02,781]: ExpressionTransition[id=36961367-47ef-40d9-ae82-c11d34f613ea,expression=tag({zoneLeadin}+'Flags/ZoneRunning') = 0] value=[false, Good, Thu Apr 09 10:03:02 CDT 2015], transition=false
INFO | jvm 1 | 2015/04/09 10:03:02 | TRACE [ExecutionQueue] [10:03:02,782]: [chart:662df546-b302-4873-bcb3-3c8b99fe1be9] Dequeue job '789588537'
INFO | jvm 1 | 2015/04/09 10:03:02 | TRACE [TransitionContainer] [10:03:02,782]: [transition:a9532c0b-ad22-4793-b316-d320a5330acc] onActivateRequested. Current state: Activating
INFO | jvm 1 | 2015/04/09 10:03:02 | DEBUG [ExpressionTransition] [10:03:02,783]: ExpressionTransition[id=a9532c0b-ad22-4793-b316-d320a5330acc,expression={parentRunning} = 0] value=[false, Good, Thu Apr 09 10:03:02 CDT 2015], transition=false
INFO | jvm 1 | 2015/04/09 10:03:02 | DEBUG [StateContext] [10:03:02,783]: [transition:a9532c0b-ad22-4793-b316-d320a5330acc] S(ElementActivating) x E(ActivateFinished) => S(ElementActive)
INFO | jvm 1 | 2015/04/09 10:03:02 | TRACE [ExecutionQueue] [10:03:02,783]: [chart:662df546-b302-4873-bcb3-3c8b99fe1be9] Enqueue job '981921066': state[ElementStateEnum:Activating]->action[ActivateFinished]
INFO | jvm 1 | 2015/04/09 10:03:02 | TRACE [ExecutionQueue] [10:03:02,783]: [chart:662df546-b302-4873-bcb3-3c8b99fe1be9] Dequeue job '1406478387'
INFO | jvm 1 | 2015/04/09 10:03:02 | TRACE [TransitionContainer] [10:03:02,784]: [transition:93532497-df06-473e-81a5-ad963c6d3d4c] onActivateRequested. Current state: Activating
INFO | jvm 1 | 2015/04/09 10:03:02 | DEBUG [ExpressionTransition] [10:03:02,784]: ExpressionTransition[id=93532497-df06-473e-81a5-ad963c6d3d4c,expression={runningTime} > 
`

—SNIP----  
Following ExpressionTransition logs continue until JVM is stopped.  
Note Pause and Cancel do nothing!

`INFO | jvm 1 | 2015/04/09 10:04:23 | DEBUG [ExpressionTransition] [10:04:23,604]: ExpressionTransition[id=93532497-df06-473e-81a5-ad963c6d3d4c,expression={runningTime} > {nextParentCheck}] value=[true, Good, Thu Apr 09 10:04:23 CDT 2015], transition=true
INFO | jvm 1 | 2015/04/09 10:04:24 | DEBUG [ExpressionTransition] [10:04:24,604]: ExpressionTransition[id=93532497-df06-473e-81a5-ad963c6d3d4c,expression={runningTime} > {nextParentCheck}] value=[true, Good, Thu Apr 09 10:04:24 CDT 2015], transition=true
INFO | jvm 1 | 2015/04/09 10:04:25 | DEBUG [ExpressionTransition] [10:04:25,604]: ExpressionTransition[id=93532497-df06-473e-81a5-ad963c6d3d4c,expression={runningTime} > {nextParentCheck}] value=[true, Good, Thu Apr 09 10:04:25 CDT 2015], transition=true
INFO | jvm 1 | 2015/04/09 10:04:26 | DEBUG [ExpressionTransition] [10:04:26,604]: ExpressionTransition[id=93532497-df06-473e-81a5-ad963c6d3d4c,expression={runningTime} > {nextParentCheck}] value=[true, Good, Thu Apr 09 10:04:26 CDT 2015], transition=true
INFO | jvm 1 | 2015/04/09 10:04:27 | DEBUG [ExpressionTransition] [10:04:27,604]: ExpressionTransition[id=93532497-df06-473e-81a5-ad963c6d3d4c,expression={runningTime} > {nextParentCheck}] value=[true, Good, Thu Apr 09 10:04:27 CDT 2015], transition=true
INFO | jvm 1 | 2015/04/09 10:04:28 | DEBUG [ChartManager] [10:04:28,538]: Chart paused. Path: 'WWD_MOM/ZoneWatchDogLoop', instance id: '662df546-b302-4873-bcb3-3c8b99fe1be9'
INFO | jvm 1 | 2015/04/09 10:04:28 | DEBUG [StateContext] [10:04:28,541]: [chart:662df546-b302-4873-bcb3-3c8b99fe1be9] S(ChartRunning) x E(PauseRequested) => S(ChartPausing)
INFO | jvm 1 | 2015/04/09 10:04:28 | DEBUG [ExpressionTransition] [10:04:28,604]: ExpressionTransition[id=93532497-df06-473e-81a5-ad963c6d3d4c,expression={runningTime} > {nextParentCheck}] value=[true, Good, Thu Apr 09 10:04:28 CDT 2015], transition=true
INFO | jvm 1 | 2015/04/09 10:04:29 | DEBUG [ExpressionTransition] [10:04:29,604]: ExpressionTransition[id=93532497-df06-473e-81a5-ad963c6d3d4c,expression={runningTime} > {nextParentCheck}] value=[true, Good, Thu Apr 09 10:04:29 CDT 2015], transition=true
INFO | jvm 1 | 2015/04/09 10:04:30 | DEBUG [ExpressionTransition] [10:04:30,604]: ExpressionTransition[id=93532497-df06-473e-81a5-ad963c6d3d4c,expression={runningTime} > {nextParentCheck}] value=[true, Good, Thu Apr 09 10:04:30 CDT 2015], transition=true
INFO | jvm 1 | 2015/04/09 10:04:31 | DEBUG [ExpressionTransition] [10:04:31,604]: ExpressionTransition[id=93532497-df06-473e-81a5-ad963c6d3d4c,expression={runningTime} > {nextParentCheck}] value=[true, Good, Thu Apr 09 10:04:31 CDT 2015], transition=true
INFO | jvm 1 | 2015/04/09 10:04:32 | DEBUG [ChartManager] [10:04:32,514]: Chart canceled. Path: 'WWD_MOM/ZoneWatchDogLoop', instance id: '662df546-b302-4873-bcb3-3c8b99fe1be9'
INFO | jvm 1 | 2015/04/09 10:04:32 | DEBUG [ExpressionTransition] [10:04:32,604]: ExpressionTransition[id=93532497-df06-473e-81a5-ad963c6d3d4c,expression={runningTime} > {nextParentCheck}] value=[true, Good, Thu Apr 09 10:04:32 CDT 2015], transition=true
INFO | jvm 1 | 2015/04/09 10:04:33 | DEBUG [ExpressionTransition] [10:04:33,604]: ExpressionTransition[id=93532497-df06-473e-81a5-ad963c6d3d4c,expression={runningTime} > {nextParentCheck}] value=[true, Good, Thu Apr 09 10:04:33 CDT 2015], transition=true
INFO | jvm 1 | 2015/04/09 10:04:34 | DEBUG [ExpressionTransition] [10:04:34,604]: ExpressionTransition[id=93532497-df06-473e-81a5-ad963c6d3d4c,expression={runningTime} > {nextParentCheck}] value=[true, Good, Thu Apr 09 10:04:34 CDT 2015], transition=true
INFO | jvm 1 | 2015/04/09 10:04:35 | DEBUG [ExpressionTransition] [10:04:35,604]: ExpressionTransition[id=93532497-df06-473e-81a5-ad963c6d3d4c,expression={runningTime} > {nextParentCheck}] value=[true, Good, Thu Apr 09 10:04:35 CDT 2015], transition=true
INFO | jvm 1 | 2015/04/09 10:04:36 | DEBUG [ExpressionTransition] [10:04:36,604]: ExpressionTransition[id=93532497-df06-473e-81a5-ad963c6d3d4c,expression={runningTime} > {nextParentCheck}] value=[true, Good, Thu Apr 09 10:04:36 CDT 2015], transition=true
INFO | jvm 1 | 2015/04/09 10:04:37 | DEBUG [ExpressionTransition] [10:04:37,603]: ExpressionTransition[id=93532497-df06-473e-81a5-ad963c6d3d4c,expression={runningTime} > {nextParentCheck}] value=[true, Good, Thu Apr 09 10:04:37 CDT 2015], transition=true
INFO | jvm 1 | 2015/04/09 10:04:38 | DEBUG [ExpressionTransition] [10:04:38,604]: ExpressionTransition[id=93532497-df06-473e-81a5-ad963c6d3d4c,expression={runningTime} > {nextParentCheck}] value=[true, Good, Thu Apr 09 10:04:38 CDT 2015], transition=true
INFO | jvm 1 | 2015/04/09 10:04:39 | DEBUG [ExpressionTransition] [10:04:39,604]: ExpressionTransition[id=93532497-df06-473e-81a5-ad963c6d3d4c,expression={runningTime} > {nextParentCheck}] value=[true, Good, Thu Apr 09 10:04:39 CDT 2015], transition=true
INFO | jvm 1 | 2015/04/09 10:04:40 | DEBUG [ExpressionTransition] [10:04:40,604]: ExpressionTransition[id=93532497-df06-473e-81a5-ad963c6d3d4c,expression={runningTime} > {nextParentCheck}] value=[true, Good, Thu Apr 09 10:04:40 CDT 2015], transition=true
INFO | jvm 1 | 2015/04/09 10:04:41 | DEBUG [ExpressionTransition] [10:04:41,604]: ExpressionTransition[id=93532497-df06-473e-81a5-ad963c6d3d4c,expression={runningTime} > {nextParentCheck}] value=[true, Good, Thu Apr 09 10:04:41 CDT 2015], transition=true
INFO | jvm 1 | 2015/04/09 10:04:42 | DEBUG [ExpressionTransition] [10:04:42,604]: ExpressionTransition[id=93532497-df06-473e-81a5-ad963c6d3d4c,expression={runningTime} > {nextParentCheck}] value=[true, Good, Thu Apr 09 10:04:42 CDT 2015], transition=true
`

---

<div class="post-metadata">

**Author:** ![Colby.Clegg](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/colby.clegg/32/3282_2.png) [@Colby.Clegg](https://forum.inductiveautomation.com/u/Colby.Clegg)\
**Post date:** [April 13, 2015, 5:46pm UTC](https://forum.inductiveautomation.com/t/i-have-managed-to-create-an-unkillable-sfc-chart/9896/2 "2015-04-13T17:46:43Z")

</div>

Hi Bill,

Just wanted to let you know that I received the logs you sent to support, and will be looking into this today. Hopefully we can track it down soon!

Regards,

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [September 4, 2020, 8:14pm UTC](https://forum.inductiveautomation.com/t/i-have-managed-to-create-an-unkillable-sfc-chart/9896/4 "2020-09-04T20:14:16Z")

</div>

Maybe you should contact IA’s actual support site or contact them via email. This forum is not official support.

---

<div class="post-metadata">

**Author:** ![dkhayes117](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/dkhayes117/32/68344_2.png) [@dkhayes117](https://forum.inductiveautomation.com/u/dkhayes117)\
**Post date:** [September 4, 2020, 9:24pm UTC](https://forum.inductiveautomation.com/t/i-have-managed-to-create-an-unkillable-sfc-chart/9896/5 "2020-09-04T21:24:29Z")

</div>

since 2015??? 😱

---

<div class="post-metadata">

**Author:** ![Paullys50](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/paullys50/32/3324_2.png) [@Paullys50](https://forum.inductiveautomation.com/u/Paullys50)\
**Post date:** [September 5, 2020, 2:32pm UTC](https://forum.inductiveautomation.com/t/i-have-managed-to-create-an-unkillable-sfc-chart/9896/6 "2020-09-05T14:32:51Z")

</div>

> [@pturmel](#):
>
> This forum is not official support.

Undoubtedly support will provide links to the forum for a "solution". haha 😉

---

<div class="post-metadata">

**Author:** ![kgamble](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/kgamble/32/8019_2.png) [@kgamble](https://forum.inductiveautomation.com/u/kgamble)\
**Post date:** [September 5, 2020, 3:59pm UTC](https://forum.inductiveautomation.com/t/i-have-managed-to-create-an-unkillable-sfc-chart/9896/7 "2020-09-05T15:59:58Z")

</div>

> [@Paullys50](#):
>
> Undoubtedly support will provide links to the forum for a “solution”. haha

As someone who has called support so many times they are in my favorites on my phone, I second this message hahaha

---

<div class="post-metadata">

**Author:** ![BillS](https://avatars.discourse-cdn.com/v4/letter/b/9fc348/32.png) [@BillS](https://forum.inductiveautomation.com/u/BillS)\
**Post date:** [September 5, 2020, 10:23pm UTC](https://forum.inductiveautomation.com/t/i-have-managed-to-create-an-unkillable-sfc-chart/9896/8 "2020-09-05T22:23:08Z")

</div>

I did not write the message on 9/4/2020, those are NOT my words! (Yes I’ve changed my password!)  
Interesting thing about that message, is that the forum indicates that this is the first post for BillS. That is weird since I have posted questions and rarely suggestions on these forums quite a bit.

Any and ALL issues I had with SFC on that project were promptly and successfully resolved by IA in a timely manner back in 2015!

In fact most issues that I’ve reported to IA have been resolved quickly, their support staff are some of the best I’ve dealt with. Not all issues though, just most…

Yes Mr. Turmel I know that the forums are NOT official support and I do not treat it/them as such!  
I treat the forums as a resource to suggest resolutions to problems I may have that other people may have posted. You and others including some actual IA staff have been very helpful and supportive within the context of the forums, but I do not expect to have my questions answered in a certain time frame.

Thank you  
Bill S.

---

<div class="post-metadata">

**Author:** ![Kevin.Herron](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/kevin.herron/32/7259_2.png) [@Kevin.Herron](https://forum.inductiveautomation.com/u/Kevin.Herron)\
**Post date:** [September 6, 2020, 12:02am UTC](https://forum.inductiveautomation.com/t/i-have-managed-to-create-an-unkillable-sfc-chart/9896/9 "2020-09-06T00:02:02Z")

</div>

As far as I can tell this is a spammer technique I haven’t seen yet. Unrelated email address but he then used the same display name and hijacked your old question. I’ve deleted and blocked the IP… hopefully I didn’t misdiagnose this.

Thanks for your email to support and followup here @BillS.
