generated from hmcts/spring-boot-template
-
Notifications
You must be signed in to change notification settings - Fork 2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
DMP-4653 Fixing courtroom name unique constraint violation #2536
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
davet1985
force-pushed
the
DMP-4653
branch
6 times, most recently
from
February 5, 2025 10:17
573384e
to
dcadd9c
Compare
hmcts-jenkins-cnp
bot
added
ns:darts-modernisation
prd:darts
rel:darts-api-pr-2536
labels
Feb 5, 2025
davet1985
requested review from
jackmaloney,
hemantasharma1129,
cakeben,
willwatters,
adulkoan-hmcts and
giribachu
and removed request for
a team
February 5, 2025 11:07
src/main/java/uk/gov/hmcts/darts/common/service/RetrieveCoreObjectService.java
Show resolved
Hide resolved
src/main/java/uk/gov/hmcts/darts/common/service/RetrieveCoreObjectService.java
Outdated
Show resolved
Hide resolved
karen-hedges
approved these changes
Feb 5, 2025
chrisbellingham-hmcts
approved these changes
Feb 5, 2025
- plus hearing, case and judge constraint violations - increasing the attempts made by the Retryable annotation, up to 10 attempts retying every 50ms, spending a total of 500ms before failing - most of these are used by requests via the SOAP service and if a failure did happen it would be retried by the external system - creating a new transaction so that the retried method has the latest data, before it was stuck with a stable view when retrying and never doing anything - adding javadoc for all methods in `RetrieveCoreObjectService` to help explain how they are used - deprecating some methods as they are only used in tests - removing the Retryable annotation from some methods because it's not necessary
- removing `Transactional` from test class - using hibernate sessions
Ben-Edwards-cgi
approved these changes
Feb 5, 2025
hemantasharma1129
approved these changes
Feb 5, 2025
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
JIRA link (if applicable)
https://tools.hmcts.net/jira/browse/DMP-4653
Change description
Primarily fixing courtroom name unique constraint violations.
RetrieveCoreObjectService
to help explain how they are usedThe impact of this change, specifically the new transactions, is that it's possible that courtrooms, cases, hearings and judges could be persisted in the database when the whole request fails. I don't see this as an issue, since it's likely the request would be retried and the likelihood of this happening and the request failing is tiny, therefore any data persisted would be minimal.
These items are central to many of the requests DARTS receives and need to persisted quickly to allow other transactions to be aware of them.
Does this PR introduce a breaking change? (check one with "x")