Skip to content

Conversation

sfilangio01
Copy link

Introduces a new utility function, executeOperationWithRetriesAndTimeout, which encapsulates retry and timeout logic for SATP step message processing. This update aims to enhance reliability by handling transient failures and timeouts effectively.

Additionally, two new error types are introduced in satp-errors.ts:

  1. GatewayRetryOperationError: Thrown when retries are exhausted without success.
  2. InvalidStageError: Thrown when an invalid stage is encountered during the SATP process.

Resolves #3744.

Pull Request Requirements

  • [ X] Rebased onto upstream/main branch and squashed into single commit to help maintainers review it more efficient and to avoid spaghetti git commit graphs that obfuscate which commit did exactly what change, when and, why.
  • [X ] Have git sign off at the end of commit message to avoid being marked red. You can add -s flag when using git commit command. You may refer to this link for more information.
  • [ X] Follow the Commit Linting specification. You may refer to this link for more information.

Character Limit

  • [X ] Pull Request Title and Commit Subject must not exceed 72 characters (including spaces and special characters).
  • [ X] Commit Message per line must not exceed 80 characters (including spaces and special characters).

A Must Read for Beginners
For rebasing and squashing, here's a must read guide for beginners.

@LordKubaya
Copy link
Contributor

Could you resolve DCO errors, your commit is not signed.
Set up GPG keys and use git commit -s.

Be careful with the CI errors.

Copy link
Contributor

@LordKubaya LordKubaya left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please do not change how the transfer is executed, errors are not throwing, be careful when we are starting in the middle of a transfer(recovering) because there can be messages already received or created in the session... That code was already done and it should not be deleted.

@sfilangio01
Copy link
Author

sfilangio01 commented Mar 11, 2025

First of all, thank you for all of your feedbacks and for your review.

Regarding your comments:
1)

Could you resolve DCO errors, your commit is not signed. Set up GPG keys and use git commit -s.

Be careful with the CI errors.

Yes, I already set up the key and signed my first commit, but then there was the problem with the conflicts and that's why we talked yesterday. When I did the commit with you I think forgot to add the signature again

Please do not change how the transfer is executed, errors are not throwing, be careful when we are starting in the middle of
a transfer(recovering) because there can be messages already received or created in the session...That code was already done and it should not be deleted.

As i said before, the errors are indeed thrown (but inside the executeOperationWithRetriesAndTimeout instead of the previous position). I don't know if this was not clear or maybe the code is not super clean, but I also added in the documentation of the code the way it was functioning. If you think it will be better, i can revert to the previous stage and instead of throwing the error in the auxiliary function i can throw it like it was in the previous code.

Thank you again!

Copy link
Contributor

@petermetz petermetz left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@sfilangio01 It looks like there might be a file with special characters in its name added to the diff. Unless there is a very specific purpose and need for it, I'd like to ask that you remove the :monitor: file.

image

petermetz
petermetz previously approved these changes May 20, 2025
@RafaelAPB
Copy link
Contributor

@sfilangio01 could you please rebase your branch with the latest satp-dev, and re-test? We would like to incorporate your changes soon

@RafaelAPB
Copy link
Contributor

cc @LordKubaya @AndreAugusto11

@RafaelAPB RafaelAPB dismissed petermetz’s stale review May 23, 2025 13:03

The merge-base changed after approval.

@RafaelAPB RafaelAPB force-pushed the satp-dev branch 3 times, most recently from 1c1d902 to 4bcb5e1 Compare May 23, 2025 13:52
@sfilangio01 sfilangio01 force-pushed the fork_name branch 2 times, most recently from f579139 to 840d034 Compare June 22, 2025 16:02
@RafaelAPB RafaelAPB force-pushed the satp-stg branch 2 times, most recently from 59c561e to 65e385e Compare July 17, 2025 16:20
@RafaelAPB
Copy link
Contributor

Thank you for your contribution. @sfilangio01 please update the MR, rebasing it as per your availability. Please note that we will close stale MRs to cleanup in a close future.

@sfilangio01 sfilangio01 requested a review from LordKubaya August 12, 2025 07:59
@AndreAugusto11 AndreAugusto11 changed the title feat(satp): Implement timeout and retry logic for SATP step messages feat(satp): adding feature and test for maxretries and maxtimeout Aug 18, 2025
AndreAugusto11
AndreAugusto11 previously approved these changes Aug 18, 2025
Copy link
Contributor

@AndreAugusto11 AndreAugusto11 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

@RafaelAPB RafaelAPB dismissed AndreAugusto11’s stale review August 20, 2025 15:35

The merge-base changed after approval.

@RafaelAPB RafaelAPB force-pushed the satp-stg branch 8 times, most recently from 5d94456 to 6e2ba18 Compare August 25, 2025 20:26
@sfilangio01 sfilangio01 reopened this Aug 26, 2025
@RafaelAPB RafaelAPB force-pushed the satp-stg branch 2 times, most recently from 6617318 to 83f9482 Compare August 27, 2025 13:31
Signed-off-by: sfilangio01 <filangerivincenzo01@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants