Page MenuHomeSoftware Heritage

Make the RPC client raise a specific exception class on 503
ClosedPublic

Authored by vlorentz on Aug 9 2022, 11:15 AM.

Details

Summary

This will be used to make the storage retry proxy retry harder
when the storage server raises errors like psycopg2.OperationalError;
which last longer than we want the proxy to retry for typical
exceptions.

Depends on D8219 and D8220.

Event Timeline

Build is green

Patch application report for D8221 (id=29656)

Could not rebase; Attempt merge onto 2d1cd6af71...

Updating 2d1cd6a..e06de3a
Fast-forward
 swh/core/api/__init__.py              | 59 +++++++++++++---------------
 swh/core/api/tests/test_rpc_client.py | 37 ++++++++----------
 swh/core/api/tests/test_rpc_server.py | 72 ++++++++++++++++++++++++++++++++++-
 3 files changed, 114 insertions(+), 54 deletions(-)
Changes applied before test
commit e06de3a63b20a685e3acbd26e02ef8353da17fa2
Author: Valentin Lorentz <vlorentz@softwareheritage.org>
Date:   Tue Aug 9 11:15:05 2022 +0200

    Make the RPC client raise a specific exception class on 503
    
    This will be used to make the storage retry proxy retry harder
    when the storage server raises errors like psycopg2.OperationalError;
    which last longer than we want the proxy to retry for typical
    exceptions.

commit c75ab14ccdc007fa465e421b6aa4290243da96b9
Author: Valentin Lorentz <vlorentz@softwareheritage.org>
Date:   Tue Aug 9 11:12:34 2022 +0200

    Add tests for RPC server's exception handling

commit e6497914d42b1f1e36e2850f53e8b9a04443cbe8
Author: Valentin Lorentz <vlorentz@softwareheritage.org>
Date:   Tue Aug 9 10:48:22 2022 +0200

    Remove support for deprecated exception format
    
    It was removed from all RPC servers years ago.

See https://jenkins.softwareheritage.org/job/DCORE/job/tests-on-diff/464/ for more details.

Build is green

Patch application report for D8221 (id=29660)

Could not rebase; Attempt merge onto 2d1cd6af71...

Updating 2d1cd6a..293bd56
Fast-forward
 swh/core/api/__init__.py              | 59 +++++++++++++---------------
 swh/core/api/tests/test_rpc_client.py | 37 ++++++++----------
 swh/core/api/tests/test_rpc_server.py | 74 ++++++++++++++++++++++++++++++++++-
 3 files changed, 115 insertions(+), 55 deletions(-)
Changes applied before test
commit 293bd5650c67b53e922b3a994ec368607f9c8574
Author: Valentin Lorentz <vlorentz@softwareheritage.org>
Date:   Tue Aug 9 11:15:05 2022 +0200

    Make the RPC client raise a specific exception class on 503
    
    This will be used to make the storage retry proxy retry harder
    when the storage server raises errors like psycopg2.OperationalError;
    which last longer than we want the proxy to retry for typical
    exceptions.

commit 9848432cd77adec649e397c16e76ff8e5865699d
Author: Valentin Lorentz <vlorentz@softwareheritage.org>
Date:   Tue Aug 9 11:12:34 2022 +0200

    Add tests for RPC server's exception handling

commit e6497914d42b1f1e36e2850f53e8b9a04443cbe8
Author: Valentin Lorentz <vlorentz@softwareheritage.org>
Date:   Tue Aug 9 10:48:22 2022 +0200

    Remove support for deprecated exception format
    
    It was removed from all RPC servers years ago.

See https://jenkins.softwareheritage.org/job/DCORE/job/tests-on-diff/466/ for more details.

Build is green

Patch application report for D8221 (id=29663)

Could not rebase; Attempt merge onto 2d1cd6af71...

Updating 2d1cd6a..a0e61ab
Fast-forward
 swh/core/api/__init__.py              | 59 +++++++++++++---------------
 swh/core/api/tests/test_rpc_client.py | 37 ++++++++----------
 swh/core/api/tests/test_rpc_server.py | 74 ++++++++++++++++++++++++++++++++++-
 3 files changed, 115 insertions(+), 55 deletions(-)
Changes applied before test
commit a0e61ab86973f5df3054bd7b343daf59a03415d0
Author: Valentin Lorentz <vlorentz@softwareheritage.org>
Date:   Tue Aug 9 11:15:05 2022 +0200

    Make the RPC client raise a specific exception class on 503
    
    This will be used to make the storage retry proxy retry harder
    when the storage server raises errors like psycopg2.OperationalError;
    which last longer than we want the proxy to retry for typical
    exceptions.

commit 9848432cd77adec649e397c16e76ff8e5865699d
Author: Valentin Lorentz <vlorentz@softwareheritage.org>
Date:   Tue Aug 9 11:12:34 2022 +0200

    Add tests for RPC server's exception handling

commit e6497914d42b1f1e36e2850f53e8b9a04443cbe8
Author: Valentin Lorentz <vlorentz@softwareheritage.org>
Date:   Tue Aug 9 10:48:22 2022 +0200

    Remove support for deprecated exception format
    
    It was removed from all RPC servers years ago.

See https://jenkins.softwareheritage.org/job/DCORE/job/tests-on-diff/467/ for more details.

olasd added a subscriber: olasd.

LGTM, thanks!

This revision is now accepted and ready to land.Aug 16 2022, 11:13 AM