Skip to content
Open
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
47 commits
Select commit Hold shift + click to select a range
28e936b
Added FT S-1019.23 to try to recreate the Deadlock issue, no luck so …
patelila Nov 10, 2025
db9e310
Added FT S-1019.23 to try to recreate the Deadlock issue, no luck so …
patelila Nov 10, 2025
7bc899f
Added FT S-1019.23 to try to recreate the Deadlock issue, no luck so …
patelila Nov 10, 2025
267e71f
Added FT S-1019.23 to try to recreate the Deadlock issue, no luck so …
patelila Nov 12, 2025
59ae667
child to parent link
patelila Nov 13, 2025
d555037
Merge branch 'master' into CCD-6921_CIVIL_ERROR_deadlock_detected
patelila Nov 14, 2025
f8b31dd
Merge branch 'master' into CCD-6921_CIVIL_ERROR_deadlock_detected
patelila Nov 17, 2025
0ca2bf2
Started all over after a re-think. Created cases needed for linking.
patelila Nov 17, 2025
55134de
update case links for the case just created to link cases
patelila Nov 18, 2025
f4aec3f
update case links for the case just created to link cases
patelila Nov 19, 2025
985071d
modified F-1019-VerifyMultipleCaseLinksUsingStandardLinkFieldOneWay
patelila Nov 19, 2025
3825e9c
fix error 'error CaseLinks[1763576676511136] contains a bad value: Ca…
patelila Nov 20, 2025
b99755a
@S-1019.24 extension of @S-1019.23
patelila Nov 20, 2025
83fa277
cleaning up as getting very confusing
patelila Nov 21, 2025
e95e4a5
FT-1019.25 to link cases to each other instead of creating a new case…
patelila Nov 24, 2025
c7e608a
Merge branch 'master' into CCD-6921_CIVIL_ERROR_deadlock_detected
patelila Nov 25, 2025
0eebe14
Merge branch 'master' into CCD-6921_CIVIL_ERROR_deadlock_detected
patelila Nov 25, 2025
2f722fc
Merge branch 'master' into CCD-6921_CIVIL_ERROR_deadlock_detected
patelila Nov 26, 2025
6f4dc9e
Changes to versions so that DataStoreBeftaRunner.java standalone can …
patelila Dec 1, 2025
4507684
Back to basics
patelila Dec 1, 2025
e4ac976
Merge branch 'master' into CCD-6921_CIVIL_ERROR_deadlock_detected
patelila Dec 2, 2025
aef06de
S-1019.25 to link to each other to recreate Deadlock sitution.
patelila Dec 3, 2025
9dc575c
fix get token
patelila Dec 3, 2025
45b5f47
create deadlock
patelila Dec 8, 2025
e21a322
Merge branch 'master' into CCD-6921_CIVIL_ERROR_deadlock_detected
patelila Dec 8, 2025
740e768
Modification so that this class runs successfully and can be run to d…
patelila Dec 8, 2025
d79c916
fix checkStyle indentation error
patelila Dec 8, 2025
19f25b0
Unit test to produce deadlock
patelila Dec 8, 2025
2b40cbb
Unit test to produce deadlock
patelila Dec 8, 2025
90660bc
delete CaseLinkServiceConcurrencyIT
patelila Dec 8, 2025
bcd6b14
To get rid of warning : COMPAT locale provider will be removed in a f…
patelila Dec 9, 2025
2cb00dd
Merge branch 'master' into CCD-6921_CIVIL_ERROR_deadlock_detected
patelila Dec 9, 2025
6d6b228
Merge remote-tracking branch 'origin/CCD-6921_CIVIL_ERROR_deadlock_de…
patelila Dec 9, 2025
b78a137
FT changes to avoid getting 'java.lang.IllegalArgumentException: para…
patelila Dec 9, 2025
9d12daf
Test to shouldSurfaceDeadlockAgainstExternalDb and Fix to shouldAvoid…
patelila Dec 9, 2025
8b3ab9f
sonar gate error fix
patelila Dec 9, 2025
4822cd4
checkstyle error fix
patelila Dec 9, 2025
ae9130b
checkstyle error fix
patelila Dec 9, 2025
5e7bb14
Changes so in pipeline it does not fail, just outputs message when DB…
patelila Dec 10, 2025
e04702a
Cleaning up FT's
patelila Dec 10, 2025
d3fdb79
Cleaning up FT's
patelila Dec 10, 2025
f1ed0fa
change as per review comment.
patelila Dec 11, 2025
5b2cd30
Merge branch 'master' into CCD-6921_CIVIL_ERROR_deadlock_detected
patelila Dec 11, 2025
54aaed9
change as per review comment.
patelila Dec 11, 2025
cb82a67
Merge remote-tracking branch 'origin/CCD-6921_CIVIL_ERROR_deadlock_de…
patelila Dec 11, 2025
c492164
change as per review comment.
patelila Dec 11, 2025
9e723f3
added a unit test to test lock issue
patelila Dec 11, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Started all over after a re-think. Created cases needed for linking.
  • Loading branch information
patelila committed Nov 17, 2025
commit 0ca2bf2ff5d8725fd98dbdcdb50b0cb503466c9c

This file was deleted.

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -288,17 +288,29 @@ Feature: F-1019: Submit Case Creation Handle Case Links

@S-1019.23
Scenario: Simulate concurrent updates to linked cases
//And case A is linked to case B
//And case B is linked to case A
//When both cases are updated at the same time
//Then a deadlock may occur
Given a user with [an active profile in CCD]
And a successful call [to create parent and child case] as in [F-1019_CreateChildParentCasesCaseworker]
//And case A is linked to case B
//And case B is linked to case A
//When both cases are updated at the same time
//Then a deadlock may occur
Given a user with [an active profile in CCD]
# Create cases needed for linking
And a successful call [to create a case] as in [F-1019_CreateCasePreRequisiteCaseworkerBase]

# Create cases needed for linking
And a successful call [to create a case with a different case_type] as in [F-1019_CreateThirdCaseDifferentCaseTypePreRequisiteCaseworkerBase]

# Create case linking one way
And a successful call [create case to case link] as in [F-1019_Create_Case_Link]

#Create case linking the other way
#And a successful call [create case to case link] as in [F-1019_Create_Case_Link_To_Case_Link]

When a request is prepared with appropriate values
And the request [contains the standard CaseLinks field with Case Reference values]
And it is submitted to call the [Submit case creation as Case worker (V2)] operation of [CCD Data Store]
#And it is submitted to call the [Submit case creation as Case worker (V2)] operation of [CCD Data Store]
And it is submitted to call the [submit event for an existing case (V2)] operation of [CCD data store],
Then a positive response is received
And the response has all other details as expected
And a successful call [to verify that the Case Links have been created in the CASE_LINK table with correct values] as in [F-1019-VerifyMultipleCaseLinksUsingStandardLinkFieldA]
And a successful call [create link from Child to Parent] as in [F-1019_Create_Child_Link_To_Parent]
And a successful call [to verify that the Case Links have been created in the CASE_LINK table with correct values] as in [F-1019-VerifyMultipleCaseLinksUsingStandardLinkFieldB]
And a successful call [to verify that the Case Links have been created in the CASE_LINK table with correct values] as in [F-1019-VerifyMultipleCaseLinksUsingStandardLinkField]


Original file line number Diff line number Diff line change
@@ -1,22 +1,24 @@
{
"_guid_": "F-1019_Create_Child_Link_To_Parent",
"_extends_": "F-1019_Test_Data_Base_Case_type_V2",
"_guid_": "F-1019_Create_Case_Link",
"_extends_": "F-1019_Test_Data_Base_V2",

"title": "Standard CaseLinks field should generate caseLink records with StandardLink set to true when Submit Case Creation Event is invoked on v2_external#/case-controller/createCaseUsingPOST",

"prerequisites" : [{
"Token_Creation": "S-1019_GetCreateToken_DifferentCaseType"
"Token_Creation": "S-1019_GetCreateToken"
}],

"specs": [
"an active profile in CCD",
"create link from Child to Parent"
"create case to case link",
"contains the standard CaseLinks field with Case Reference values",
"As a prerequisite"
],

"request": {
"body": {
"data": {
"_extends_": "F-1019-CaseDataWithStandardCaseLinksB"
"_extends_": "F-1019-CaseDataCaseLinks"
},
"event": {
"id": "createCaseCaseLinks",
Expand All @@ -32,10 +34,10 @@
"expectedResponse": {
"body" : {
"data" : {
"_extends_": "F-1019-CaseDataWithStandardCaseLinksB"
"_extends_": "F-1019-CaseDataCaseLinks"
},
"data_classification" : {
"_extends_": "F-1019-ClassificationsForCaseDataWithStandardCaseLinksB"
"_extends_": "F-1019-ClassificationsForCaseDataWithStandardCaseLinksC"
}
}
}
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
{
"_guid_": "F-1019_Create_Case_Link_To_Case_Link",
"_extends_": "F-1019_Test_Data_Base_V2",

"title": "Standard CaseLinks field should generate caseLink records with StandardLink set to true when Submit Case Creation Event is invoked on v2_external#/case-controller/createCaseUsingPOST",

"prerequisites" : [{
"Token_Creation": "S-1019_GetCreateToken"
}],

"specs": [
"an active profile in CCD",
"create case to case link",
"contains the standard CaseLinks field with Case Reference values",
"As a prerequisite"
],

"request": {
"pathVariables": {
"cid": "${[scenarioContext][childContexts][F-1019_Create_Case_Link][testData][actualResponse][body][id]}"
},
"body": {
"data": {
"_extends_": "F-1019-CaseDataCaseLinkToCaseLink"
},
"event": {
"id": "createCaseCaseLinks",
"summary": "",
"description": ""
},
"security_classification": "PUBLIC",
"event_token" : "${[scenarioContext][childContexts][Token_Creation][testData][actualResponse][body][token]}",
"ignore_warning": true
}
},

"expectedResponse": {
"body" : {
"data" : {
"_extends_": "F-1019-CaseDataCaseLinkToCaseLink"
},
"data_classification" : {
"_extends_": "F-1019-ClassificationsForCaseDataWithStandardCaseLinksC"
}
}
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
{
"_guid_": "F-1019_Update_Case_Link_To_Case_Link",

"productName": "CCD Data Store",
"operationName": "submit event for an existing case (V2)",

"method": "POST",
"uri": "/cases/{cid}/events",

"user": {
"_extends_": "Common_User_For_Request"
},

"request": {
"headers": {
"_extends_": "Common_Request_Headers",
"Content-Type": "application/vnd.uk.gov.hmcts.ccd-data-store-api.create-event.v2+json",
"experimental": true
},
"pathVariables": {
"cid": "${[scenarioContext][childContexts][F-1019_Create_Case_Link][testData][actualResponse][body][id]}"
},
"body": {
"data": {
"_extends_": "F-1019-CaseDataCaseLinkToCaseLink"
},
"event": {
"id": "createCaseCaseLinks",
"summary": "",
"description": ""
},
"security_classification": "PUBLIC",
"event_token" : "${[scenarioContext][childContexts][Token_Creation][testData][actualResponse][body][token]}",
"ignore_warning": true
}
},

"expectedResponse": {
"body" : {
"data" : {
"_extends_": "F-1019-CaseDataCaseLinkToCaseLink"
},
"data_classification" : {
"_extends_": "F-1019-ClassificationsForCaseDataWithStandardCaseLinksC"
}
}
},

"expectedResponse": {
"headers": {
"_extends_": "Common_Response_Headers",
"Content-Length": "[[ANYTHING_PRESENT]]"
}
}
}
Original file line number Diff line number Diff line change
@@ -1,42 +1,13 @@
{
"_guid_": "S-1019.23",
"_extends_": "F-1019_Test_Data_Base_V2",
"_extends_": "F-1019_Update_Case_Link_To_Case_Link",

"title": "Standard CaseLinks field should generate caseLink records with StandardLink set to true when Submit Case Creation Event is invoked on v2_external#/case-controller/createCaseUsingPOST",

"prerequisites" : [{
"Token_Creation": "S-1019_GetCreateToken"
}],

"specs": [
"an active profile in CCD",
"contains the standard CaseLinks field with Case Reference values"
],

"request": {
"body": {
"data": {
"_extends_": "F-1019-CaseDataWithStandardCaseLinksA"
},
"event": {
"id": "createCaseCaseLinks",
"summary": "",
"description": ""
},
"security_classification": "PUBLIC",
"event_token" : "${[scenarioContext][childContexts][Token_Creation][testData][actualResponse][body][token]}",
"ignore_warning": true
}
},

"expectedResponse": {
"body" : {
"data" : {
"_extends_": "F-1019-CaseDataWithStandardCaseLinksA"
},
"data_classification" : {
"_extends_": "F-1019-ClassificationsForCaseDataWithStandardCaseLinksA"
}
}
}
"create case to case link",
"contains the standard CaseLinks field with Case Reference values",
"As a prerequisite"
]
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
{
"_guid_": "F-1019-CaseDataCaseLinkToCaseLink",

"CaseLinkField": {
"CaseReference": "${[scenarioContext][childContexts][F-1019_Create_Case_Link][testData][actualResponse][body][id]}"
},
"caseLinks": [
{
"id": "d7e67a81-0000-CaseLinkedViaStandardCaseLinksFieldChild",
"value": {
"CaseReference": "${}${[scenarioContext][childContexts][F-1019_CreateCasePreRequisiteCaseworkerBase][testData][actualResponse][body][id]}"
}
},
{
"id": "d7e67a81-0000-CaseLinkedViaStandardCaseLinksField",
"value": {
"CaseReference": "${}${[scenarioContext][childContexts][F-1019_CreateThirdCaseDifferentCaseTypePreRequisiteCaseworkerBase][testData][actualResponse][body][id]}"
}
}
]
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
{
"_guid_": "F-1019-CaseDataCaseLinks",

"CaseLinkField": {
"CaseReference": "${[scenarioContext][parentContext][childContexts][testData][actualResponse][body][id]}"

},
"caseLinks": [
{
"id": "d7e67a81-0000-CaseLinkedViaStandardCaseLinksFieldChild",
"value": {
"CaseReference": "${}${[scenarioContext][parentContext][childContexts][F-1019_CreateCasePreRequisiteCaseworkerBase][testData][actualResponse][body][id]}"
}
},
{
"id": "d7e67a81-0000-CaseLinkedViaStandardCaseLinksField",
"value": {
"CaseReference": "${}${[scenarioContext][parentContext][childContexts][F-1019_CreateThirdCaseDifferentCaseTypePreRequisiteCaseworkerBase][testData][actualResponse][body][id]}"
}
}
]
}
Loading