My Oracle Support Banner

DBMS_LOB.COPY Returns A Wrong Result After Applying Fix For Bug 31319225 (Doc ID 2727386.1)

Last updated on JULY 20, 2024

Applies to:

Oracle Database - Enterprise Edition - Version 19.6.0.0.0 and later
Information in this document applies to any platform.

Symptoms

After applying the fix for Bug 31319225, using dbms_lob.copy returns a wrong result

The following test case illustrates the wrong result that is returned

DECLARE
  v_dest BLOB := UTL_RAW.cast_to_raw ('12345');
BEGIN
  DBMS_LOB.COPY (dest_lob => v_dest,
  src_lob => v_dest,
  amount => DBMS_LOB.LOBMAXSIZE,
  dest_offset => 2,
  src_offset => 1);
  dbms_output.put_line('content:'||utl_raw.cast_to_varchar2(v_dest));
END;
/

In 12.2 the test case output is:

Length: 6
123345

In 19c without apply patch, test case will hang

In 19c with Patch 31319225: "DBMS_LOB.COPY SPINS ON 19C WHEN USING SAME DEST_LOB AND SRC_LOB LOCATOR" applied the test case show us this:

Length: 8
12334555



Changes

 Applied fix for bug 31319225: "DBMS_LOB.COPY SPINS ON 19C WHEN USING SAME DEST_LOB AND SRC_LOB LOCATOR

Cause

To view full details, sign in with your My Oracle Support account.

Don't have a My Oracle Support account? Click to get started!


In this Document
Symptoms
Changes
Cause
Solution
References


My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.