Skip to content
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

Return the composite error of PUT operation #813

Merged
merged 2 commits into from
Sep 10, 2021

Conversation

cthulhu-rider
Copy link
Contributor

Closes #778.

…eration

In previous implementation Object service's handler returned const error in
case of failure (full or partial) of PUT operation. This did not even allow
us to roughly guess what the reason is. Not as a complete solution, but to
alleviate some cases where all nodes in a container return the same error,
it is suggested to return the error of the last server that responded.

Return latest server error from placement loop of `iteratePlacement` method
of `distributedTarget` type.

Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
@cthulhu-rider cthulhu-rider added the neofs-storage Storage node application issues label Sep 8, 2021
@cthulhu-rider cthulhu-rider self-assigned this Sep 8, 2021
@codecov
Copy link

codecov bot commented Sep 8, 2021

Codecov Report

Merging #813 (9c3d524) into master (7405155) will decrease coverage by 0.47%.
The diff coverage is 9.78%.

❗ Current head 9c3d524 differs from pull request most recent head 00fd947. Consider uploading reports for the commit 00fd947 to get more accurate results
Impacted file tree graph

@@            Coverage Diff             @@
##           master     #813      +/-   ##
==========================================
- Coverage   40.17%   39.69%   -0.48%     
==========================================
  Files         225      230       +5     
  Lines       11048    11228     +180     
==========================================
+ Hits         4438     4457      +19     
- Misses       6256     6416     +160     
- Partials      354      355       +1     
Impacted Files Coverage Δ
pkg/innerring/processors/governance/processor.go 0.00% <0.00%> (ø)
pkg/innerring/processors/netmap/processor.go 0.00% <0.00%> (ø)
pkg/morph/event/container/delete_notary.go 0.00% <0.00%> (ø)
pkg/morph/event/container/eacl.go 70.96% <0.00%> (-5.70%) ⬇️
pkg/morph/event/container/eacl_notary.go 0.00% <0.00%> (ø)
pkg/morph/event/container/put_notary.go 0.00% <0.00%> (ø)
pkg/morph/event/container/delete.go 54.16% <50.00%> (-6.71%) ⬇️
pkg/services/object/acl/acl.go 2.76% <100.00%> (+0.74%) ⬆️
pkg/services/object/acl/eacl/validator.go 13.69% <100.00%> (ø)
... and 6 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 7405155...00fd947. Read the comment docs.

…ompletePut

Make `errIncompletePut` to be a structure which wraps single client error.
Wrap error of the last client into `errIncompletePut` during placement
execution.

Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
@alexvanin alexvanin merged commit 61b4baf into nspcc-dev:master Sep 10, 2021
@cthulhu-rider cthulhu-rider deleted the 778-object-put-multierr branch September 30, 2022 13:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
neofs-storage Storage node application issues
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Expand incomplete object put error
2 participants