Skip to main content

One SIS Integration Enrollment Record Failure in a Snapshot Flat-File Causes Rest of Records To Fail

One SIS Integration enrollment record failure in a Snapshot Flat-File Causes Rest of Records To Fail.

Description

When enrolling users via SIS flatfile Integrations, some enrollments are not processing and are throwing errors.

The issue occurs when enrolling users into a new DSK that does not exist yet and the first record in the feed that references that DSK errors out (say for an invalid user batch_uid). Then, all subsequent enrollments in the feed are processed through that integration that are to get associated to that "new" DSK error out with a caused by: Caused by: org.postgresql.util.PSQLException: ERROR: insert or update on table "course_users" violates foreign key constraint "course_users_fk3" Detail: Key (data_src_pk1)=(54) is not present in table "data_source"

Steps to Replicate

  1. Log into Blackboard Learn as an administrator

  2. Navigate to System Admin > Data Integration > Student Information System Integrations

  3. Upload a Course Membership Feed file that has several records at least that reference a new dsk that was not created yet. The key here is to have the first record in the feed that references the new DSK to have an error in it that it cannot process like a bad user batch_uid

  4. Submit the feed file for processing

Observed Behavior:
The defective record does not process as expected and all other records that have that DSK error out as the SIS system seems to expect that DSK to be in the database now and since it is not it errors all subsequent records.

Expected Behavior:
Only the record with the bad batch_UID is not processed and then the next record that references the new DSK will process associated to that DSK and all subsequent records that need to be associated to that DSK are created and associated.

Resolution / Workaround

Create the DSK manually then the feed will process as expected.

Target Release

SaaS Fixed (4001.0.0)

Did this answer your question?