Skip to content

Commit

Permalink
Merge pull request #22738 from bharathv/fix_set_value_assert
Browse files Browse the repository at this point in the history
[backport][24.1.x] producer/request_state: make set_value() idempotent
  • Loading branch information
mmaslankaprv committed Aug 6, 2024
2 parents a39076d + a2f2f07 commit a5ccb14
Showing 1 changed file with 4 additions and 6 deletions.
10 changes: 4 additions & 6 deletions src/v/cluster/producer_state.cc
Original file line number Diff line number Diff line change
Expand Up @@ -32,12 +32,10 @@ result_promise_t::future_type request::result() const {
}

void request::set_value(request_result_t::value_type value) {
vassert(
_state <= request_state::in_progress && !_result.available(),
"unexpected request state during result set: {}",
*this);
_result.set_value(value);
_state = request_state::completed;
if (_state != request_state::completed) {
_result.set_value(value);
_state = request_state::completed;
}
}

void request::set_error(request_result_t::error_type error) {
Expand Down

0 comments on commit a5ccb14

Please sign in to comment.