oracle / oracle/oci-python-sdk

Performance regression in versions 2.38.4 to 2.42.0 for some services (fixed in version 2.43.0)

Open
#367 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

SDK
Dominant language
Python
Stars
474
Forks
321
Avg merge
23m
Merged PRs (30d)
4

Description

In OCI Python SDK versions 2.38.4 to 2.42.0, you may encounter performance regressions when using the SDK with some OCI services. This issue has been fixed in version 2.43.0.

The regression surfaces itself as a 3-second increase in latency in SDK operations made to some OCI services. This issue has been confirmed to impact the OCI Streaming service, and likely impacts the following services:

  • Email Delivery
  • Health Checks
  • NoSQL Database Cloud
  • Registry
  • Generic Artifacts
  • Web Application Acceleration and Security

This list is not comprehensive – it is possible you may encounter the issue against other OCI services as well. The issue has been confirmed to NOT affect the OCI Object Storage and Functions services.

If you are experiencing this issue there are some workarounds you can do:

  • Recommended: Disable support for the OCI Python SDK's Expect: 100-Continue feature by adding the following environment variable OCI_PYSDK_USING_EXPECT_HEADER toFALSE. For example, in Bash, export OCI_PYSDK_USING_EXPECT_HEADER=FALSE
  • Or, use OCI Python SDK version 2.38.3 or earlier
  • Or, use the OCI Python SDK's raw request signer to make requests to OCI services for any requests where you are experiencing performance degradation. An example on how to use the raw request signer is here

If you have any questions, please feel free to comment on this GitHub issue and we will be happy to help.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

The issue reports a regression in OCI Python SDK versions 2.38.4–2.42.0 and states that it was fixed in 2.43.0; no implementation file or test is identified. Start by reviewing the linked raw request signer example at examples/raw_request.py and confirm whether any follow-up work is requested, since the documented workarounds and fix are already provided.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
api
Issue type
Bug
Difficulty
1/5
Estimated time
Under an hour
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
10/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.