Re: Archivelog mysteries

  • From: "Alberto Dell'Era" <alberto.dellera@xxxxxxxxx>
  • To: wbfergus@xxxxxxxxx
  • Date: Mon, 19 Mar 2007 21:45:26 +0100

Are those chars or bytes ?

The "Application Developer's Guide - Large Objects" says
http://download-east.oracle.com/docs/cd/B19306_01/appdev.102/b14249/adlob_tables.htm#sthref155

"Storing Varying-Width Character Data in LOBs

Varying-width character data in CLOB and NCLOB datatypes is stored in
an internal format that is compatible with UCS2 Unicode character set
format"

From http://en.wikipedia.org/wiki/UCS-2:
"UCS2 ... is a fixed-length encoding that always encodes characters
into a single 16-bit value. "

So, maybe one char is being always stored as two bytes ?
If yes, the redo logs will be twice as big (approx) as their count
in chars ... even if conceptually they could converted back to
varying-length before
being stored in the redo (but you can check that of course).

On 3/19/07, Bill Ferguson <wbfergus@xxxxxxxxx> wrote:
Okay, the procedure finally finished and I've had a chance to compile some
numbers.

Here's the breakout of my clob field lengths in 4k increments:
< 4000 - 7996
< 8000 - 173445
<12000 - 85245
<16000 - 25608
<20000 - 9192
<24000 - 2886
>28000 - 598

Just using notepad to look at a couple of the old archive logs, I see the
xml that's getting inserted into my field. But, it also looks like the
archive logs are chopping it  into 4000 character chunks (though I haven't
counted), as there's several non-printable characters interspersed in the
XML at what look like set intervals.

--
-- Bill Ferguson


--
Alberto Dell'Era
"dulce bellum inexpertis"
--
//www.freelists.org/webpage/oracle-l


Other related posts: