Description:
An error message is shown when uploading a feed file twice to a data integration (SIS) This issue is affecting "User/Course Node Association" integrations.
Steps to Repeat:
- Log in to Blackboard Learn as an Administrator
- Go to System Administrator page > Integrations > Data Integration > Data Sources
- Click on Create
- Provide a name for the Data Source and click on Submit
- Navigate back to the Data Integration page, then, select Student Information System Integrations
- Create a Snapshot Flat File integration (You can find more details on how to create a Data Integration Here)
- Go to System Administrator page > Communities > Institutional Hierarchy
- Click on Create Node
- Provide a name for the node, then, click on Submit
- Select the node created in the previous step from the list of nodes available
- Click on Create Node (This step will create a child node)
- Go to System Administrator page > Courses > Courses > Create Course > New (Alternatively, you can use an existing course)
- Go to System Administrator page > Integrations > Data Integration > Student Information System Integrations
- Locate the integration created in step # 6
- Click on the "Chevron" button, then, select Upload feed file
- Upload a feed file (TXT/CSV). The file must contain the following fields:
external_user_key|external_node_key|external_association_key|data_source_key<user>|<node>|<association>|<data source>
-
You can use an existing user account in the external_user_key field, or create a new one; the data_source_key field must contain the Data Source created in step # 3- You can find more details on the user association integration fields here
- Select User Association from the Data Type drop-down list
- Select Store in the Operation Type field
- Click on Submit
- Repeat steps 14 to 19 using the same data feed file (Same information as in the first upload)
- An error message like the one below will be shown in the integration logs when the file is uploaded a second time:
Jan 19, 2022 02:56:22 AM - User Association [create/update, adis_z_Znode2]
Persist Operation Failed for object type blackboard.platform.flatFileUserAssociationSISObjectType.
blackboard.platform.dataintegration.operationdefinition.OperationHandlerException: CoursePersistOperation failed.
at blackboard.platform.dataintegration.operationdefinition.institutionalhierarchy.UserAssociationPersistOperationHandler.handleOperation(UserAssociationPersistOperationHandler.java:75)
at blackboard.platform.dataintegration.operationdefinition.institutionalhierarchy.UserAssociationPersistOperation.execute(UserAssociationPersistOperation.java:69)
at blackboard.platform.dataintegration.operationdefinition.BaseOperation.execute(BaseOperation.java:53)
at blackboard.platform.dataintegration.operationdefinition.impl.OperationManagerImpl.processOperation(OperationManagerImpl.java:99)
at blackboard.platform.dataintegration.operationdefinition.impl.OperationManagerImpl.executeOperation(OperationManagerImpl.java:43)
at blackboard.platform.dataintegration.operationdefinition.impl.OperationManagerImpl.executeOperation(OperationManagerImpl.java:34)
at blackboard.platform.dataintegration.mapping.impl.DataIntegrationObjectMappingManagerImpl.persistSISObject(DataIntegrationObjectMappingManagerImpl.java:237)
[...]
Caused by: java.lang.IllegalStateException: The Data Source BatchUid is not set.
at blackboard.platform.dataintegration.operationdefinition.institutionalhierarchy.AssociationPersistOperationHandler.setDataSourceId(AssociationPersistOperationHandler.java:25)
at blackboard.platform.dataintegration.operationdefinition.institutionalhierarchy.UserAssociationPersistOperationHandler.handleOperation(UserAssociationPersistOperationHandler.java:47)
... 34 more
The Data Source BatchUid is not set.
adis_z,Znode2,adis_z_Znode2,ZDSK
Skipping attribute: replacementDataSourceBatchUid. SKIP_ATTRIBUTE returned from mapping script.
Field mapping successful.
Expected Behavior:
No error messages should be shown after uploading the feed file a second time
Observed Behavior:
An error message is shown after uploading the feed file a second time