View Issue Details

IDProjectCategoryView StatusLast Update
0019683phpList 3 applicationAll Otherpublic15-01-19 20:49
Reportersamtuke 
PrioritynormalSeverityminorReproducibilityhave not tried
Status newResolutionopen 
PlatformLinuxOSFedoraOS Version26
Product Version 
Target Versionnext minorFixed in Version 
Summary0019683: investigate duplicate subscriber attribute value prevention / validation options
DescriptionCurrently it is possible to import subscribers which have values of particular subscriber attributes which are identical to existing subscribers. This can result in e.g. two subscribers with identical foreign key values. Where those attributes are used by external systems eg via an API this can cause serious problems.

Investigate whether a validation mechanism already exists during import for duplicate detection and assess the work required to add such validation.

Ultimately validation could take the form of a field on the attribute configuration page which disallows duplicates and enforces this every time attribute values are changed.
TagsNo tags attached.

Activities

xheni

15-01-19 15:02

administrator   ~0061709

Last edited: 15-01-19 15:03

View 2 revisions

This could have been prevented if foreignkey was a unique index on user table.
--
A validation mechanism for duplicate detection should be used on other pages too that should be identified, eg : on edit subscriber page I can change the foreignkey to an existing one because there is no validation.

samtuke

15-01-19 15:46

administrator   ~0061712

@xheni Re: index that's true. It's good not rely on MySQL for enforcing policies however as it limits options for error handling.

I agree that a function should be added which checks for duplicates each time these records are created or updated.

michiel

15-01-19 20:49

manager   ~0061725

In the backend you can do this, but the frontend enforces it.

Adding a unique to the foreignkey may be an option, but we'd need to test that thoroughly..