oracle/oci-python-sdk

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

bhagwatvyas opened this issue · 1 comments

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.

This issue has been fixed in version 2.43.0