# \[BUG-13226\]System.tag.configure error

**URL:** <https://forum.inductiveautomation.com/t/bug-13226-system-tag-configure-error/23463>\
**Category:** Ignition Early Access\
**Created:** [March 19, 2019, 8:44pm UTC](https://forum.inductiveautomation.com/t/bug-13226-system-tag-configure-error/23463 "2019-03-19T20:44:04Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![cwaddoups](https://avatars.discourse-cdn.com/v4/letter/c/43a26b/32.png) [@cwaddoups](https://forum.inductiveautomation.com/u/cwaddoups)\
**Post date:** [March 19, 2019, 8:44pm UTC](https://forum.inductiveautomation.com/t/bug-13226-system-tag-configure-error/23463/1 "2019-03-19T20:44:04Z")

</div>

I was using system.tag.configure to alter some existing UDT tags to a different type based on a dataset that represented the tag folder and tag quantity. Most of the tags were created with no issue, however there were somewhere between 2-5 in each group of about 45 tags that were unable to be created and had a quality in the returned status list of Error\_Exception. The error for one of the tag edits from the logs and the script are both pasted below. This is using b2019031502. Once I deleted the offending tags and ran the script with the tags nonexistent the tags were created fine.

Script:

```auto
pcsDataset = system.tag.readBlocking(['[NC21-SITE]Configuration/Device Quantities/PCS/Inverters'])[0].value
rowCount = pcsDataset.getRowCount()
for row in range(rowCount):
	pcsNum = pcsDataset.getValueAt(row,'PCS')
	invQty = pcsDataset.getValueAt(row,'Inverter Quantity')
	print 'PCS =',pcsNum
	print 'Inverter Quantity -',invQty
	basePath = '[NC21-SITE]PCSs/PCS '+str(pcsNum)+'/Inverters'
	tagList = []
	for invNum in range(1,invQty+1):
		deviceName = 'PCS '+str(pcsNum)+' Smart Logger'
		offset = ((invNum - 1) * 25) + 51000
		parameters = {'InverterID':invNum,
					'Offset':offset,
					'DeviceName':deviceName,
					'UnitId':'1'}
		tagName = 'Inverter '+str(invNum)
		tagType = 'UdtInstance'
		typeID = 'Inverters/INV SMRT LOG V2'
		tagDict = {'name':tagName,
					'accessRights':'Read_Write',
					'tagType':tagType,
					'typeID':typeID,
					'parameters':parameters}
		tagList.append(tagDict)
	smartLoggerDeviceName = 'PCS '+str(pcsNum)+' Smart Logger'
	totalInverters = invQty
	smartLoggerUnitID = '1'
	smartLoggerParameters = {'DeviceName':smartLoggerDeviceName,
							'TotalInverters':totalInverters,
							'UnitId':smartLoggerUnitID}
	smartLoggerTagDict = {'name':'Smart Logger',
						'tagType':'UdtInstance',
						'typeId':'Smart Logger/SMRT LOG V2',
						'accessRights':'Read_Write',
						'parameters':smartLoggerParameters}
	tagList.append(smartLoggerTagDict)
	print basePath
	print len(tagList)
	system.tag.configure(basePath,tagList)

```

Error from gateway logs:

```auto
provider	19Mar2019 14:35:02
	Error processing edit for tag path '[NC21-SITE]PCSs/PCS 8/Inverters/Inverter 7': Error_Exception

provider	19Mar2019 14:35:02
	Error encountered processing tag edit

java.util.ConcurrentModificationException: null
at java.base/java.util.HashMap$HashIterator.nextNode(Unknown Source)
at java.base/java.util.HashMap$ValueIterator.next(Unknown Source)
at com.inductiveautomation.ignition.gateway.tags.subscriptions.ProviderSubscriptionManagerImpl$SubscriptionNode.registerSourceNode(ProviderSubscriptionManagerImpl.java:457)
at com.inductiveautomation.ignition.gateway.tags.subscriptions.ProviderSubscriptionManagerImpl.register(ProviderSubscriptionManagerImpl.java:169)
at com.inductiveautomation.ignition.gateway.tags.runtime.nodes.BasicTagDefinition.applyPropertyChangesToTag(BasicTagDefinition.java:652)
at com.inductiveautomation.ignition.gateway.tags.runtime.nodes.FolderNode.applyPropertyChangesToTag(FolderNode.java:303)
at com.inductiveautomation.ignition.gateway.tags.runtime.nodes.complex.AbstractComplexTagNode.applyPropertyChangesToTag(AbstractComplexTagNode.java:121)
at com.inductiveautomation.ignition.gateway.tags.runtime.nodes.complex.AbstractComplexTagDefinitionNode.applyPropertyChangesToTag(AbstractComplexTagDefinitionNode.java:119)
at com.inductiveautomation.ignition.gateway.tags.runtime.nodes.complex.AbstractTopLevelUdtTag.applyPropertyChangesToTag(AbstractTopLevelUdtTag.java:284)
at com.inductiveautomation.ignition.gateway.tags.runtime.nodes.complex.UdtInstanceNode.applyPropertyChangesToTag(UdtInstanceNode.java:68)
at com.inductiveautomation.ignition.gateway.tags.runtime.nodes.BasicTagDefinition.managePropertyChanges(BasicTagDefinition.java:622)
at com.inductiveautomation.ignition.gateway.tags.runtime.nodes.BasicTagDefinition.startPropModel(BasicTagDefinition.java:401)
at com.inductiveautomation.ignition.gateway.tags.runtime.nodes.BasicTagDefinition.activate(BasicTagDefinition.java:738)
at com.inductiveautomation.ignition.gateway.tags.runtime.nodes.BasicTagDefinition.onValidityChanged(BasicTagDefinition.java:697)
at com.inductiveautomation.ignition.gateway.tags.runtime.nodes.BasicTagDefinition.refreshValidity(BasicTagDefinition.java:447)
at com.inductiveautomation.ignition.gateway.tags.runtime.nodes.BasicTagDefinition.setInheritedConfiguration(BasicTagDefinition.java:466)
at com.inductiveautomation.ignition.gateway.tags.runtime.nodes.complex.TypesFolder$AbstractTypeNode.onValidityChanged(TypesFolder.java:446)
at com.inductiveautomation.ignition.gateway.tags.runtime.nodes.complex.TypesFolder$AbstractTypeNode.setValidityState(TypesFolder.java:430)
at com.inductiveautomation.ignition.gateway.tags.runtime.nodes.complex.TypesFolder$AbstractTypeNode.refreshValidity(TypesFolder.java:358)
at com.inductiveautomation.ignition.gateway.tags.runtime.nodes.complex.TypesFolder$AbstractTypeNode.setSuperType(TypesFolder.java:297)
at com.inductiveautomation.ignition.gateway.tags.runtime.nodes.complex.TypesFolder$AbstractTypeNode.notifyParentTypeChanged(TypesFolder.java:275)
at com.inductiveautomation.ignition.gateway.tags.runtime.nodes.complex.AbstractComplexTagDefinitionNode.applyPropertyChangesToTag(AbstractComplexTagDefinitionNode.java:121)
at com.inductiveautomation.ignition.gateway.tags.runtime.nodes.complex.AbstractTopLevelUdtTag.applyPropertyChangesToTag(AbstractTopLevelUdtTag.java:284)
at com.inductiveautomation.ignition.gateway.tags.runtime.nodes.complex.UdtInstanceNode.applyPropertyChangesToTag(UdtInstanceNode.java:68)
at com.inductiveautomation.ignition.gateway.tags.runtime.nodes.BasicTagDefinition.managePropertyChanges(BasicTagDefinition.java:622)
at com.inductiveautomation.ignition.gateway.tags.runtime.nodes.BasicTagDefinition.lambda$new$0(BasicTagDefinition.java:92)
at com.inductiveautomation.ignition.gateway.tags.runtime.nodes.TagPropertyModel.dispatchPropertiesChanged(TagPropertyModel.java:81)
at com.inductiveautomation.ignition.gateway.tags.runtime.nodes.TagPropertyModel.onPropertiesChanged(TagPropertyModel.java:42)
at com.inductiveautomation.ignition.gateway.tags.runtime.nodes.BasicTagDefinition.configureTag(BasicTagDefinition.java:533)
at com.inductiveautomation.ignition.gateway.tags.runtime.TagEvaluationManagerImpl.processNewTag(TagEvaluationManagerImpl.java:391)
at com.inductiveautomation.ignition.gateway.tags.runtime.TagEvaluationManagerImpl.processEditInternal(TagEvaluationManagerImpl.java:282)
at com.inductiveautomation.ignition.gateway.tags.runtime.TagEvaluationManagerImpl.processEdit(TagEvaluationManagerImpl.java:236)
at com.inductiveautomation.ignition.gateway.tags.TagProviderImpl.saveTagConfigInternal(TagProviderImpl.java:574)
at com.inductiveautomation.ignition.gateway.tags.TagProviderImpl.lambda$saveTagConfigsAsync$9(TagProviderImpl.java:534)
at com.inductiveautomation.ignition.gateway.tags.TagProviderImpl.lambda$exec$2(TagProviderImpl.java:315)
at java.base/java.util.concurrent.CompletableFuture$AsyncSupply.run(Unknown Source)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.base/java.lang.Thread.run(Unknown Source)

```

---

<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:** [March 20, 2019, 11:07pm UTC](https://forum.inductiveautomation.com/t/bug-13226-system-tag-configure-error/23463/2 "2019-03-20T23:07:22Z")

</div>

Thanks for reporting this. I think we’ve tracked it down, probably won’t get merged in tonight, but hopefully by tomorrow night.

---

<div class="post-metadata">

**Author:** ![KGrindstaff](https://avatars.discourse-cdn.com/v4/letter/k/9dc877/32.png) [@KGrindstaff](https://forum.inductiveautomation.com/u/KGrindstaff)\
**Post date:** [March 27, 2019, 12:54am UTC](https://forum.inductiveautomation.com/t/bug-13226-system-tag-configure-error/23463/3 "2019-03-27T00:54:14Z")

</div>

Any word on if this has been fixed yet?

---

<div class="post-metadata">

**Author:** ![awalker](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/awalker/32/6874_2.png) [@awalker](https://forum.inductiveautomation.com/u/awalker)\
**Post date:** [April 1, 2019, 3:36pm UTC](https://forum.inductiveautomation.com/t/bug-13226-system-tag-configure-error/23463/4 "2019-04-01T15:36:51Z")

</div>

This issue was fixed in the build that was uploaded today (4/1). Please let us know if you continue to see this behavior after upgrading.
