-
Notifications
You must be signed in to change notification settings - Fork 205
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
[DPP-621][Self-service error codes] Adopt error codes in ApiVersionService #11302
Merged
Merged
Changes from 1 commit
Commits
Show all changes
5 commits
Select commit
Hold shift + click to select a range
7306cb2
[DPP-621][Self-service error codes] Adopt error codes in ApiVersionSe…
pbatko-da 0cfa827
unused import
pbatko-da 2c61147
Merge branch 'main' into pbatko/error-codes/dpp-621-version-service
pbatko-da cb966eb
Merge branch 'main' into pbatko/error-codes/dpp-621-version-service
pbatko-da 178b5ec
MZ review
pbatko-da File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
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
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
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
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
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
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.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@tudor-da FYI: Created a
Reject
to model a generic case for which we don't have or don't care about having a more specific error.Question: The explanation for enclosing
InternalError
states that:Is the "interpreter" mention accurate for the use case in
ApiVersionService
that this PR is adopting?There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No, interpreter has a very narrow meaning of a Daml interpreter
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Up until now almost all
InternalErrors
we have covered were stemming from the Interpreter, so this explanation was correct.Version service and likely other services will encounter errors that don't have anything to do with the interpreter.
In fact something like this has happened for the package service, where a separate category
PackageServiceError.InternalError
has been introduced. I'd suggest we do the same for Version Service.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for explaining this!
So I'm creating a new error group dedicated to the version service:
VersionServiceError
(LedgerApiErrors.VersionServiceError.InternalError.Reject
)fyi @tudor-da
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'd prefer a generic error grouping for this internal error, since a specialized grouping for this doesn't bring anything to the client via GRPC (errors with status
INTERNAL
don't propagate any detailed information to clients because they are considered security sensitive) or in the docs (it doesn't provide any entropy - the client already knows this error originated in ApiVersionService). On the other hand, participant operators can inspect the logged error and derive what's wrong - the specialized grouping doesn't help much here as well.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'd propose creating a generic
LedgerApi.InternalError.Error
and pass the reason to it.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
But I am fine to merge this as is. I'll add the note about it in the cleanup task.