Hi all,
In a connector, the foreign key option is added in an existing column. An element is running a version of the connector prior to the addition of the foreign key. When the connector version of the element is changed to a version that has the foreign key option, it logs the following error message after element restart. All versions prior to the addition of the foreign key work the same way without the error message and all versions after the addition of the foreign key generate the error message after element restart.
2026/06/23 12:11:19.174|SLProtocol - 15432 - X20 MI EXT MoE|13980|CProtocol::InitFunc|CRU|0|InitializeCommands
2026/06/23 12:11:19.174|SLProtocol - 15432 - X20 MI EXT MoE|13980|CProtocol::InitFunc|CRU|0|InitializeResponses
2026/06/23 12:11:19.174|SLProtocol - 15432 - X20 MI EXT MoE|13980|CProtocol::InitFunc|CRU|0|InitializePairs
2026/06/23 12:11:19.174|SLProtocol - 15432 - X20 MI EXT MoE|13980|CProtocol::InitFunc|CRU|0|InitializeGroups
2026/06/23 12:11:19.175|SLProtocol - 15432 - X20 MI EXT MoE|13980|CProtocol::InitFunc|CRU|0|InitializeTimers
2026/06/23 12:11:19.175|SLProtocol - 15432 - X20 MI EXT MoE|13980|CProtocol::InitFunc|CRU|0|InitializeTriggers
2026/06/23 12:11:19.176|SLProtocol - 15432 - X20 MI EXT MoE|13980|CProtocol::InitFunc|CRU|0|InitializeActions
2026/06/23 12:11:19.177|SLProtocol - 15432 - X20 MI EXT MoE|13980|CProtocol::InitFunc|CRU|0|InitializeQActions
2026/06/23 12:11:19.361|SLProtocol - 15432 - X20 MI EXT MoE|13980|CProtocol::InitFunc|CRU|0|Cleaning QAction Instances
2026/06/23 12:11:19.361|SLProtocol - 15432 - X20 MI EXT MoE|13980|CProtocol::InitFunc|CRU|0|InitializeSessions
2026/06/23 12:11:19.362|SLProtocol - 15432 - X20 MI EXT MoE|13980|CProtocol::InitFunc|CRU|0|SetupParameters 4018(#) * 800(b) = 3214400
2026/06/23 12:11:19.962|SLProtocol - 15432 – Test Element|13980|ArrayParameter::ReadCellData|ERR|-1|Table [1400/InputServices] Data not loaded, could not find primary key. Detected invalid data in DB for column pid: 1409, chIndex: 3a71542a-a740-416e-96bc-13383ed5c5ec.c79da70e-82db-44b0-89e2-9366465e9dc9 and chValue: 33613731353432612D613734302D343136652D393662632D313333383365643563356563.
2026/06/23 12:11:19.962|SLProtocol - 15432 - Test Element|13980|ArrayParameter::ReadCellData|ERR|-1|Table [1400/InputServices] Data not loaded, could not find primary key. Detected invalid data in DB for column pid: 1409, chIndex: 3aedf3bd-552c-4284-81f5-bd820889b767.224139dd-5a8f-476d-bf59-25ee3408c82c and chValue: 33616564663362642D353532632D343238342D383166352D626438323038383962373637.
2026/06/23 12:11:19.962|SLProtocol - 15432 – Test Element|13980|ArrayParameter::ReadCellData|ERR|-1|Table [1400/InputServices] Data not loaded, could not find primary key. Detected invalid data in DB for column pid: 1409, chIndex: 3bf46e34-63ec-499c-a43e-6d8b7c666419.9e92894c-a8b9-48ec-8668-6690c73b839e and chValue: 33626634366533342D363365632D343939632D613433652D366438623763363636343139.
2026/06/23 12:11:19.962|SLProtocol - 15432 – Test Element|13980|ArrayParameter::ReadCellData|ERR|-1|Table [1400/InputServices] Data not loaded, could not find primary key. Detected invalid data in DB for column pid: 1409, chIndex: 3d7a7d39-69bb-4ff5-b4ff-4c6c16620fb6.b5da815d-276a-49f1-9c7f-e974bdca98bf and chValue: 33643761376433392D363962622D346666352D623466662D346336633136363230666236.
Column PID 1409 is the foreign key to another table.

Checking the data in the affected table, I can’t find the primary keys mentioned in the chIndex in both cases (when the element is running a previous version without foreign key or with a foreign key).
Is this expected behavior or what could be the cause for this error message?
Hi Fenta,
The reason for this error is indeed because there is no row with a primary key that matches the chIndex. So the system does not know what to do with this cell and will throw the error to let you know there is orphaned data in the database.
Usually this is harmless for the workings of the element, but it is still an unintended situation to end up in. So it is logged for debugging purposes (missing data, data buildup in the database, etc.). The reason this does not occur on other versions is most likely because those versions do not have PID1409. If the column does not exist in the protocol, its data is not read out, so the detection of orphaned data does not happen.
How this data got orphaned is anyones guess. A delete may not have properly trickled through, or given you switched versions, the row may have been deleted on a version that did not contain PID 1409 and thus had no idea it had to delete the value for it.
To resolve this there are 2 ways depending on the capabilities of the element/system
1. Clean out the orphaned data directly in the database. This usually means launching a delete from elementdata where dataminerid = <elementdmaid> and eid = <elementid> and pid = <pidOfOrphanedData> and chindex = <chIndexFromLog>; This query will differ depending on the underlying database.
2. Temporarily create a row with the missing chIndex as primaryKey and restart the element, the data should then be linked to said row and a delete can be attempted again.
Hi Fenta,
Apologies I did indeed misread what got added. The root cause remains the same however, the lack of rows with a primary key equal to the chIndex is what causes this error to trigger.
Adding or removing the foreignKey option should not impact this. Did by any chance the protocol switch between unicode and non-unicode? This is know to break or lose connections.
After a big of digging we found https://collaboration.dataminer.services/releasenotes/43929 which deals with this edge case by recreating the missing key, which should solve the problem you are observing.
Hi Brent,
Thank you for the answer. As shown in the screen shot above, PID 1409 exists in both versions. The only difference is that the foreignkey option is added in the new/latest version.