Registry uniqueness constraint not functioning in specific scenarios

  • Updated

What happened?

For entities registered on or before 12/21/23 duplicate entities registered after this date may not have been correctly identified as duplicate entities in specific scenarios. Benchling updated the way uniqueness is calculated, and when certain conditions related to an entity schema's uniqueness constraint were met Benchling could inaccurately calculate uniqueness. For example if one of the criteria for the uniqueness constraint includes a link field whose value is set to NULL. This leads to a potential for duplicate entity registration. 


What does this mean for you?

If your organization was identified as impacted by this issue, then uniqueness constraints for impacted Registry schemas needs to be recalculated. Until uniqueness constraints have been completed Benchling may not identify duplicate entities that users attempt to register. Not every entity with an outdated uniqueness calculation will have a duplicate entity registered and Benchling can help you identify duplicates after the fix has been applied.


What happens next?

Benchling has identified a workaround and backfill resolution. Please see steps below and contact if you have any questions or would like to consult on which option is best for your organization:

1. Your organization can remove the uniqueness constraint on identified impacted schemas, refresh the page, and then add it back. This will wipe out and force a total re-compute for all the schema’s entities, and then re-run registry validation.

I. This should be done outside of working hours when no users are registering new 

entities to minimize the chance of duplicates being registered while no uniqueness 

constraint is present.

II.  Any duplicate entities flagged would then be your organization’s responsibility to manually merge. Benchling can assist in identifying duplicates for review. Please let Benchling know ahead of time if you wish to proceed with this option.
III. This workaround also has a side effect of removing any Registry validation overrides on an affected schema. Please reach out to Benchling to talk through how to mitigate the impact if this is a concern for your organization.

2. (Benchling’s Recommended Approach) Work with Benchling to clear out and backfill uniqueness constraint calculations. Benchling would re-compute the uniqueness constraints for impacted schemas without needing to change the UI and then allow the weekly registry validation check to surface any duplicates. Duplicates will not be detected until the backfill has been completed and registry validation has finished.
I. This option does not impact Registry validation overrides.


We apologize for the inconvenience. You can also proactively reach out to and mention “Registry uniqueness constraint not functioning in specific scenarios” to get a list of impacted entities and discuss remediation options. 


Why am I suddenly seeing an uptick in entities failing registry validation for constraint violations?

After implementing the resolution described above to recompute uniqueness constraints any duplicates already registered will not be un-registered and instead be listed as failing registry validation. There are 2 easy ways to see this:

  1. From Registry settings > Entity Schemas > [Select an impacted schema] > Validation Failures > select those with a “Constraint Violation” 
  2. From the global search > add filter > Validation Status : Failed > add filter (again) > Failure Reason : Constraint violation > add filter (again) > Created : From 12/22/23 to [date of backfill]



From the pre-built search you can evaluate and archive or merge the duplicate entities in bulk. Follow this article for steps on how to merge entities, note you will have to bulk unregister and re-register to force the merge workflow


How many duplicate entities does my organization have for impacted schemas?

While Benchling is able to provide a list of entities and schemas impacted by the mis-calculated uniqueness constraint, Benchling is unable to predict how many duplicates will result. Not every  identified entity will be impacted since a duplicate must also have been registered during the time the issue was present on your Benchling tenant.


Was this article helpful?

Have more questions? Submit a request