make feature flag update deal with constraint race condition
make feature flag update deal with constraint race condition

test plan: regression test "Set feature flag" API endpoint

fixes CNVS-20596

Change-Id: Icaa1b89dc987c4289e17f9220d3eb14c62522314
Reviewed-on: https://gerrit.instructure.com/54599
Tested-by: Jenkins
Reviewed-by: Cody Cutrer <c4fe2b1d90ef8f2548c8aeabfa633434316f0305@instructure.com>
QA-Review: Jahnavi Yetukuri <ed2b2672ccc2e59e56c0615df7f01b579202e014@instructure.com>
Product-Review: Jeremy Stanley <b3f594e10a9edcf5413cf1190121d45078c62290@instructure.com>

utkarshx/canvas-lms,eCNAP/CANVAS,snehakachroo1/LSI_replica,matematikk-mooc/canvas-lms,venturehive/canvas-lms,antoniuslin/canvas-lms,grahamb/canvas-lms,snehakachroo1/LSI_replica,tgroshon/canvas-lms,SwinburneOnline/canvas-lms,HotChalk/canvas-lms,leftplusrightllc/canvas-lms,jay3126/canvas-lms,efrj/canvas-lms,efrj/canvas-lms,utkarshx/canvas-lms,HotChalk/canvas-lms,jay3126/canvas-lms,skmezanul/canvas-lms,instructure/canvas-lms,juoni/canvas-lms,whalejasmine/canvas-lms,antoniuslin/canvas-lms,matematikk-mooc/canvas-lms,whalejasmine/canvas-lms,juoni/canvas-lms,fronteerio/canvas-lms,leftplusrightllc/canvas-lms,sdeleon28/canvas-lms,redconfetti/canvas-lms,Jyaasa/canvas-lms,redconfetti/canvas-lms,sfu/canvas-lms,HotChalk/canvas-lms,wrdsb/canvas-lms,antoniuslin/canvas-lms,whalejasmine/canvas-lms,matematikk-mooc/canvas-lms,instructure/canvas-lms,Rvor/canvas-lms,snehakachroo1/LSI_replica,greyhwndz/canvas-lms,grahamb/canvas-lms,leftplusrightllc/canvas-lms,SwinburneOnline/canvas-lms,jay3126/canvas-lms,skmezanul/canvas-lms,SwinburneOnline/canvas-lms,ShreniiNepal/shrenii_lmp,redconfetti/canvas-lms,shidao-fm/canvas-lms,HotChalk/canvas-lms,instructure/canvas-lms,narigone/canvas,roxolan/canvas-lms,venturehive/canvas-lms,skmezanul/canvas-lms,AndranikMarkosyan/lms,instructure/canvas-lms,djbender/canvas-lms,utkarshx/canvas-lms,greyhwndz/canvas-lms,leftplusrightllc/canvas-lms,eCNAP/CANVAS,AndranikMarkosyan/lms,greyhwndz/canvas-lms,instructure/canvas-lms,tgroshon/canvas-lms,ShreniiNepal/shrenii_lmp,Rvor/canvas-lms,roxolan/canvas-lms,sdeleon28/canvas-lms,AndranikMarkosyan/lms,wrdsb/canvas-lms,narigone/canvas,efrj/canvas-lms,juoni/canvas-lms,whalejasmine/canvas-lms,sdeleon28/canvas-lms,dgynn/canvas-lms,fronteerio/canvas-lms,sfu/canvas-lms,SwinburneOnline/canvas-lms,grahamb/canvas-lms,venturehive/canvas-lms,roxolan/canvas-lms,Jyaasa/canvas-lms,djbender/canvas-lms,AndranikMarkosyan/lms,redconfetti/canvas-lms,tgroshon/canvas-lms,Rvor/canvas-lms,utkarshx/canvas-lms,sfu/canvas-lms,dgynn/canvas-lms,instructure/canvas-lms,wrdsb/canvas-lms,shidao-fm/canvas-lms,instructure/canvas-lms,kyroskoh/canvas-lms,eCNAP/CANVAS,sfu/canvas-lms,ShreniiNepal/shrenii_lmp,sdeleon28/canvas-lms,Jyaasa/canvas-lms,eCNAP/CANVAS,efrj/canvas-lms,Rvor/canvas-lms,grahamb/canvas-lms,sfu/canvas-lms,dgynn/canvas-lms,matematikk-mooc/canvas-lms,kyroskoh/canvas-lms,jay3126/canvas-lms,djbender/canvas-lms,narigone/canvas,sfu/canvas-lms,grahamb/canvas-lms,Jyaasa/canvas-lms,greyhwndz/canvas-lms,narigone/canvas,kyroskoh/canvas-lms,venturehive/canvas-lms,antoniuslin/canvas-lms,juoni/canvas-lms,ShreniiNepal/shrenii_lmp,sfu/canvas-lms,shidao-fm/canvas-lms,snehakachroo1/LSI_replica,shidao-fm/canvas-lms,fronteerio/canvas-lms,wrdsb/canvas-lms,fronteerio/canvas-lms,kyroskoh/canvas-lms,skmezanul/canvas-lms,dgynn/canvas-lms,tgroshon/canvas-lms,djbender/canvas-lms,roxolan/canvas-lms