RE: Outsourcing's dirty secret

2003-11-02 Thread Pettinato
This is totally inappropriate. You should be banned from the list. The
reality is that companies only look at the bottom line and not the long term
effects of hiring anyone who can spell Oracle right on thier resume.

Frank

-Original Message-
hrishy
Sent: Saturday, November 01, 2003 6:19 AM
To: Multiple recipients of list ORACLE-L


Hi All

DBA's all here hmm...well if i were the CFO i would
have been lookin for the fast=true parameter if i were
bald i would have been looking for a pill or a cream
that would give me hairs overnight..the time of
instant nirvana has come :-)..software bpo call
centeres they are all same..today the jobs are being
moved to india becaz the CEO's see that they are able
to save 10$ on paper. or maybe just becoz your
competitor is doin so..capital always moves in serach
of labour thats the bottom line ..:-) i read argentina
programmers are cheaper then indians well
hehehe..hehee ...:-)..argentians woman are they more
beautifulthe author in my opinion has provided a
skewewed version of outsourcing ..the real competition
for india will come from ETHOPIA i beelive ..provided
the ethopians start learning english...:-) and will
start working for food :-)

as for us we americans we can come out with a dirty
trick like not sharing information on fear of getting
sacked with indian programmers :-)

regards
Hrishy




 --- Loughmiller, Greg
[EMAIL PROTECTED] wrote:  not only
salries, but job opportunities as well:-)

 greg

 -Original Message-
 Sent: Thursday, October 30, 2003 3:39 PM
 To: Multiple recipients of list ORACLE-L


 But sure as hell does drive salaries down over here.

 On 10/30/2003 03:04:24 PM, [EMAIL PROTECTED]
 wrote:
  The perception of outsourcing has been that you
 can send your work
  offshore,
  and get it done cheaper, with higher quality.
 
  I think that this article helps to dispel that as
 a myth.  It may or may
  not be
  less expensive, it may or may not be better.
 
  Jared
 
 
 
 
 
  Jamadagni, Rajendra
 [EMAIL PROTECTED]
  Sent by: [EMAIL PROTECTED]
   10/30/2003 09:49 AM
   Please respond to ORACLE-L
 
 
  To: Multiple recipients of list
 ORACLE-L
 [EMAIL PROTECTED]
  cc:
  Subject:RE: Outsourcing's dirty
 secret
 
 
  What is also unfortunate that the company X which
 outsourced its project
  to India, didn't do its job right ... If you just
 want the cheapest Rolex,

  you can't complain about its quality later on. I
 am not saying this
  couldn't have happened, whatever happened is
 unfortunate, but I am just
  saying that the company didn't understand CYA
 sufficiently, it is just a
  blame game now.
 
  C'mon ... I think that article is one side of the
 coin.
  Raj
 


 
  Rajendra dot Jamadagni at nospamespn dot com
  All Views expressed in this email are strictly
 personal.
  QOTD: Any clod can have facts, having an opinion
 is an art !
 
 
  -Original Message-
  Sent: Thursday, October 30, 2003 11:59 AM
  To: Multiple recipients of list ORACLE-L
 
 
  List - If a manager seems to be contemplating
 outsourcing, you might want
  to
  post this. Unless you work for an outsourcer. ;-)
 
 

http://techupdate.zdnet.com/techupdate/stories/main/Hidden_Costs_of_IT_Outso
 urcing.html
 
  Dennis Williams
  DBA
  Lifetouch, Inc.
  [EMAIL PROTECTED]
  --
 
 
 


 **
  This e-mail message is confidential, intended only
 for the named
  recipient(s) above and may contain information
 that is privileged,
  attorney work product or exempt from disclosure
 under applicable law. If
  you have received this message in error, or are
 not the named
  recipient(s), please immediately notify corporate
 MIS at (860) 766-2000
  and delete this e-mail message from your computer,
 Thank you.
 


 **5
  --
  Please see the official ORACLE-L FAQ:
 http://www.orafaq.net
  --
  Author: Jamadagni, Rajendra
INET: [EMAIL PROTECTED]
 
  Fat City Network Services-- 858-538-5051
 http://www.fatcity.com
  San Diego, California-- Mailing list and
 web hosting services
 

-
  To REMOVE yourself from this mailing list, send an
 E-Mail message
  to: [EMAIL PROTECTED] (note EXACT spelling of
 'ListGuru') and in
  the message BODY, include a line containing: UNSUB
 ORACLE-L
  (or the name of mailing list you want to be
 removed from).  You may
  also send the HELP command for other information
 (like subscribing).
 
 
 

 Mladen Gogala
 Oracle DBA



 Note:
 This message is for the named person's use only.  It
 may contain
 confidential, proprietary or legally privileged
 information.  No
 confidentiality or privilege is waived or lost by
 any mistransmission.  If
 you receive this message in error, 

RE: Outsourcing's dirty secret

2003-11-02 Thread Newhouse Eric A AFMC/ITON
You the man!!!  who has the right to an opinion ?

-Original Message-
Sent: Sunday, November 02, 2003 10:09 AM
To: Multiple recipients of list ORACLE-L


This is totally inappropriate. You should be banned from the list. The
reality is that companies only look at the bottom line and not the long term
effects of hiring anyone who can spell Oracle right on thier resume.

Frank

-Original Message-
hrishy
Sent: Saturday, November 01, 2003 6:19 AM
To: Multiple recipients of list ORACLE-L


Hi All

DBA's all here hmm...well if i were the CFO i would
have been lookin for the fast=true parameter if i were
bald i would have been looking for a pill or a cream
that would give me hairs overnight..the time of
instant nirvana has come :-)..software bpo call
centeres they are all same..today the jobs are being
moved to india becaz the CEO's see that they are able
to save 10$ on paper. or maybe just becoz your
competitor is doin so..capital always moves in serach
of labour thats the bottom line ..:-) i read argentina
programmers are cheaper then indians well
hehehe..hehee ...:-)..argentians woman are they more
beautifulthe author in my opinion has provided a
skewewed version of outsourcing ..the real competition
for india will come from ETHOPIA i beelive ..provided
the ethopians start learning english...:-) and will
start working for food :-)

as for us we americans we can come out with a dirty
trick like not sharing information on fear of getting
sacked with indian programmers :-)

regards
Hrishy




 --- Loughmiller, Greg
[EMAIL PROTECTED] wrote:  not only
salries, but job opportunities as well:-)

 greg

 -Original Message-
 Sent: Thursday, October 30, 2003 3:39 PM
 To: Multiple recipients of list ORACLE-L


 But sure as hell does drive salaries down over here.

 On 10/30/2003 03:04:24 PM, [EMAIL PROTECTED]
 wrote:
  The perception of outsourcing has been that you
 can send your work
  offshore,
  and get it done cheaper, with higher quality.
 
  I think that this article helps to dispel that as
 a myth.  It may or may
  not be
  less expensive, it may or may not be better.
 
  Jared
 
 
 
 
 
  Jamadagni, Rajendra
 [EMAIL PROTECTED]
  Sent by: [EMAIL PROTECTED]
   10/30/2003 09:49 AM
   Please respond to ORACLE-L
 
 
  To: Multiple recipients of list
 ORACLE-L
 [EMAIL PROTECTED]
  cc:
  Subject:RE: Outsourcing's dirty
 secret
 
 
  What is also unfortunate that the company X which
 outsourced its project
  to India, didn't do its job right ... If you just
 want the cheapest Rolex,

  you can't complain about its quality later on. I
 am not saying this
  couldn't have happened, whatever happened is
 unfortunate, but I am just
  saying that the company didn't understand CYA
 sufficiently, it is just a
  blame game now.
 
  C'mon ... I think that article is one side of the
 coin.
  Raj
 


 
  Rajendra dot Jamadagni at nospamespn dot com
  All Views expressed in this email are strictly
 personal.
  QOTD: Any clod can have facts, having an opinion
 is an art !
 
 
  -Original Message-
  Sent: Thursday, October 30, 2003 11:59 AM
  To: Multiple recipients of list ORACLE-L
 
 
  List - If a manager seems to be contemplating
 outsourcing, you might want
  to
  post this. Unless you work for an outsourcer. ;-)
 
 

http://techupdate.zdnet.com/techupdate/stories/main/Hidden_Costs_of_IT_Outso
 urcing.html
 
  Dennis Williams
  DBA
  Lifetouch, Inc.
  [EMAIL PROTECTED]
  --
 
 
 


 **
  This e-mail message is confidential, intended only
 for the named
  recipient(s) above and may contain information
 that is privileged,
  attorney work product or exempt from disclosure
 under applicable law. If
  you have received this message in error, or are
 not the named
  recipient(s), please immediately notify corporate
 MIS at (860) 766-2000
  and delete this e-mail message from your computer,
 Thank you.
 


 **5
  --
  Please see the official ORACLE-L FAQ:
 http://www.orafaq.net
  --
  Author: Jamadagni, Rajendra
INET: [EMAIL PROTECTED]
 
  Fat City Network Services-- 858-538-5051
 http://www.fatcity.com
  San Diego, California-- Mailing list and
 web hosting services
 

-
  To REMOVE yourself from this mailing list, send an
 E-Mail message
  to: [EMAIL PROTECTED] (note EXACT spelling of
 'ListGuru') and in
  the message BODY, include a line containing: UNSUB
 ORACLE-L
  (or the name of mailing list you want to be
 removed from).  You may
  also send the HELP command for other information
 (like subscribing).
 
 
 

 Mladen Gogala
 Oracle DBA



 Note:
 This message is for the named person's use only.  It
 may contain
 confidential, 

RE: Outsourcing's dirty secret

2003-11-02 Thread hrishy
Hi Frank

why do you think i should be banned...:-)..everybody
is entitled to his opinion...

say i go on a consulting assignement to a company that
hosts por sites should i reccommend him Oracle10g or
mysql..Mysql right..but being a oracle DBA and to save
my job i can always recommend oracel 10g..nothing
wrong..

:-)



regards
Hrishy


 --- Pettinato [EMAIL PROTECTED] wrote:  This is
totally inappropriate. You should be banned
 from the list. The
 reality is that companies only look at the bottom
 line and not the long term
 effects of hiring anyone who can spell Oracle right
 on thier resume.
 
 Frank
 
 -Original Message-
 hrishy
 Sent: Saturday, November 01, 2003 6:19 AM
 To: Multiple recipients of list ORACLE-L
 
 
 Hi All
 
 DBA's all here hmm...well if i were the CFO i would
 have been lookin for the fast=true parameter if i
 were
 bald i would have been looking for a pill or a cream
 that would give me hairs overnight..the time of
 instant nirvana has come :-)..software bpo call
 centeres they are all same..today the jobs are being
 moved to india becaz the CEO's see that they are
 able
 to save 10$ on paper. or maybe just becoz your
 competitor is doin so..capital always moves in
 serach
 of labour thats the bottom line ..:-) i read
 argentina
 programmers are cheaper then indians well
 hehehe..hehee ...:-)..argentians woman are they more
 beautifulthe author in my opinion has provided a
 skewewed version of outsourcing ..the real
 competition
 for india will come from ETHOPIA i beelive
 ..provided
 the ethopians start learning english...:-) and will
 start working for food :-)
 
 as for us we americans we can come out with a dirty
 trick like not sharing information on fear of
 getting
 sacked with indian programmers :-)
 
 regards
 Hrishy
 
 
 
 
  --- Loughmiller, Greg
 [EMAIL PROTECTED] wrote:  not only
 salries, but job opportunities as well:-)
 
  greg
 
  -Original Message-
  Sent: Thursday, October 30, 2003 3:39 PM
  To: Multiple recipients of list ORACLE-L
 
 
  But sure as hell does drive salaries down over
 here.
 
  On 10/30/2003 03:04:24 PM, [EMAIL PROTECTED]
  wrote:
   The perception of outsourcing has been that you
  can send your work
   offshore,
   and get it done cheaper, with higher quality.
  
   I think that this article helps to dispel that
 as
  a myth.  It may or may
   not be
   less expensive, it may or may not be better.
  
   Jared
  
  
  
  
  
   Jamadagni, Rajendra
  [EMAIL PROTECTED]
   Sent by: [EMAIL PROTECTED]
10/30/2003 09:49 AM
Please respond to ORACLE-L
  
  
   To: Multiple recipients of list
  ORACLE-L
  [EMAIL PROTECTED]
   cc:
   Subject:RE: Outsourcing's dirty
  secret
  
  
   What is also unfortunate that the company X
 which
  outsourced its project
   to India, didn't do its job right ... If you
 just
  want the cheapest Rolex,
 
   you can't complain about its quality later on. I
  am not saying this
   couldn't have happened, whatever happened is
  unfortunate, but I am just
   saying that the company didn't understand CYA
  sufficiently, it is just a
   blame game now.
  
   C'mon ... I think that article is one side of
 the
  coin.
   Raj
  
 


  
   Rajendra dot Jamadagni at nospamespn dot com
   All Views expressed in this email are strictly
  personal.
   QOTD: Any clod can have facts, having an opinion
  is an art !
  
  
   -Original Message-
   Sent: Thursday, October 30, 2003 11:59 AM
   To: Multiple recipients of list ORACLE-L
  
  
   List - If a manager seems to be contemplating
  outsourcing, you might want
   to
   post this. Unless you work for an outsourcer.
 ;-)
  
  
 

http://techupdate.zdnet.com/techupdate/stories/main/Hidden_Costs_of_IT_Outso
  urcing.html
  
   Dennis Williams
   DBA
   Lifetouch, Inc.
   [EMAIL PROTECTED]
   --
  
  
  
 


  **
   This e-mail message is confidential, intended
 only
  for the named
   recipient(s) above and may contain information
  that is privileged,
   attorney work product or exempt from disclosure
  under applicable law. If
   you have received this message in error, or are
  not the named
   recipient(s), please immediately notify
 corporate
  MIS at (860) 766-2000
   and delete this e-mail message from your
 computer,
  Thank you.
  
 


  **5
   --
   Please see the official ORACLE-L FAQ:
  http://www.orafaq.net
   --
   Author: Jamadagni, Rajendra
 INET: [EMAIL PROTECTED]
  
   Fat City Network Services-- 858-538-5051
  http://www.fatcity.com
   San Diego, California-- Mailing list and
  web hosting services
  
 

-
   To REMOVE yourself from this mailing list, send
 an
  E-Mail 

Re: Performance Issue w/ Blob Data

2003-11-02 Thread Tanel Poder
Hi!

Maybe it's a delayed commit cleanout issue, due massive deletes, so during
your first select most of your buffers involved in delete have to be cleaned
out (thus becoming dirty and generating extra redo).

Tanel.

- Original Message - 
To: Multiple recipients of list ORACLE-L [EMAIL PROTECTED]
Sent: Friday, October 31, 2003 4:49 PM


 Good Morning,

 I have a database (8.1.7.3 on Sun Solaris 8) that has
 a mixture of tables and indexes in the same
 tablespace. Poor initial setup, but that is starting
 to be addressed. One of the tables has a BLOB data
 type and the LOBSEGMENT is stored in the same
 tablespace as the tables and indexes. The size of the
 tablespace is about 45G. The table with the BLOB had
 about 3 million rows in it before we started to purge
 old data out. After we were done purging I wanted to
 see how many rows were left. I did what I though was a
 harmless SELECT COUNT(*) on the table, and I had to
 kill it after 3 hours without anything getting
 returned. Before the purge, it would return in 10-15
 minutes. In addition, our client base slowed to a
 crawl. But not because my query was running away.
 Memory, cpu and i/o on the server were very low. It
 was almost like only a few sessions at a time were
 getting to the server. My query maxed out at about 3%
 of the cpu.

 Using performance monitor didn't show any massive
 usage from the database side either. It was almost
 like the query was just chugging away under the radar,
 but preventing others from doing barely any work. As
 soon as I killed this query, the system went back to
 normal.

 We have been experiencing intermittent slowness for
 awhile during normal processing, but have never been
 able to find the silver bullet reason that was
 dragging everyone down. I am wondering if I have
 stumbled onto something here. It could be that
 whatever slowed my query is having the same affect
 anytime a client is doing anything with the table with
 the BLOB data type. Could anyone tell me why this
 SELECT could have taken so long and had such an effect
 on the clients?

 Thanks in advance for any assistance

 Larry



 =


 __
 Do you Yahoo!?
 Exclusive Video Premiere - Britney Spears
 http://launch.yahoo.com/promos/britneyspears/
 -- 
 Please see the official ORACLE-L FAQ: http://www.orafaq.net
 -- 
 Author: Larry Hahn
   INET: [EMAIL PROTECTED]

 Fat City Network Services-- 858-538-5051 http://www.fatcity.com
 San Diego, California-- Mailing list and web hosting services
 -
 To REMOVE yourself from this mailing list, send an E-Mail message
 to: [EMAIL PROTECTED] (note EXACT spelling of 'ListGuru') and in
 the message BODY, include a line containing: UNSUB ORACLE-L
 (or the name of mailing list you want to be removed from).  You may
 also send the HELP command for other information (like subscribing).



-- 
Please see the official ORACLE-L FAQ: http://www.orafaq.net
-- 
Author: Tanel Poder
  INET: [EMAIL PROTECTED]

Fat City Network Services-- 858-538-5051 http://www.fatcity.com
San Diego, California-- Mailing list and web hosting services
-
To REMOVE yourself from this mailing list, send an E-Mail message
to: [EMAIL PROTECTED] (note EXACT spelling of 'ListGuru') and in
the message BODY, include a line containing: UNSUB ORACLE-L
(or the name of mailing list you want to be removed from).  You may
also send the HELP command for other information (like subscribing).


Re: char(1) VS varchar2(1)

2003-11-02 Thread Tanel Poder
Hi!

Just for the record, every column in a table has a length byte (or three,
depending on column size). This works so even in clusters, where rows are
split vertically, but column structures remain the same.

Tanel.

- Original Message - 
To: Multiple recipients of list ORACLE-L [EMAIL PROTECTED]
Sent: Friday, October 31, 2003 7:04 PM


 I have believed for a while that a varchar2(1) would have included a
'length byte', making it more wasteful of storage than a char(1) but in fact
the two are strictly identical storage-wise :

 SQL create table t(c1 char(1),
   2 c2 varchar2(1));

 Table created.

 SQL insert into t values('A', 'B');

 1 row created.

 SQL select vsize(c1), dump(c1), vsize(c2), dump(c2)
   2  from T;

  VSIZE(C1)
 --
 DUMP(C1)
 --
--
  VSIZE(C2)
 --
 DUMP(C2)
 --
--
  1
 Typ=96 Len=1: 65
  1
 Typ=1 Len=1: 66


 SQL

 That said, for the sake of logic I still prefer using CHAR instead of
VARCHAR when the length doesn't vary at all - call it autodocumentation.
VARCHAR2(1) columns - especially when NOT NULL - are unlikely to vary much
in length.

 SF

 - --- Original Message --- -
 From: Stephane Paquette
 [EMAIL PROTECTED]
 To: Multiple recipients of list ORACLE-L
 [EMAIL PROTECTED]
 Sent: Fri, 31 Oct 2003 08:04:27
 
 Hi,
 
 Some people here are telling me that using char(1)
 is better than
 varchar2(1) for a field code.
 I do not see why.
 
 I never used char as it may cause problems when
 doing some comparisons.
 
 Any reasons ?
 
 
 Stephane Paquette
 Administrateur de bases de donnees
 Database Administrator
 Standard Life
 www.standardlife.ca
 Tel. (514) 499-7999 7470 and (514) 925-7187
 [EMAIL PROTECTED]
 mailto:[EMAIL PROTECTED]
 
 -- 
 Please see the official ORACLE-L FAQ: http://www.orafaq.net
 -- 
 Author: Stephane Faroult
   INET: [EMAIL PROTECTED]

 Fat City Network Services-- 858-538-5051 http://www.fatcity.com
 San Diego, California-- Mailing list and web hosting services
 -
 To REMOVE yourself from this mailing list, send an E-Mail message
 to: [EMAIL PROTECTED] (note EXACT spelling of 'ListGuru') and in
 the message BODY, include a line containing: UNSUB ORACLE-L
 (or the name of mailing list you want to be removed from).  You may
 also send the HELP command for other information (like subscribing).



-- 
Please see the official ORACLE-L FAQ: http://www.orafaq.net
-- 
Author: Tanel Poder
  INET: [EMAIL PROTECTED]

Fat City Network Services-- 858-538-5051 http://www.fatcity.com
San Diego, California-- Mailing list and web hosting services
-
To REMOVE yourself from this mailing list, send an E-Mail message
to: [EMAIL PROTECTED] (note EXACT spelling of 'ListGuru') and in
the message BODY, include a line containing: UNSUB ORACLE-L
(or the name of mailing list you want to be removed from).  You may
also send the HELP command for other information (like subscribing).


Re: memory usage by dbw very high

2003-11-02 Thread Tanel Poder
Thanks Mladen, that was a good tip about linux kernel enhancement, however
OP still uses 2.4.9 as stated in original post.

I just wanted to know whether OP actually sees excessive paging or just
memory being full, the latter one, as you know, isn't really a problem.

Tanel.

- Original Message - 
To: Multiple recipients of list ORACLE-L [EMAIL PROTECTED]
Sent: Saturday, November 01, 2003 5:39 PM


 The whole thing comes as a consequence of using buffered I/O. New linux
 kernels (2.4.18 and later) have new memory management, which allows
 the kernel to grab more memory for buffers in periods of intense I./O
 activity. If you have a very active database on ReiserFS or Ext3, Linux is
 going to try to help you out by allocating more memory for the file system
 buffers, even by stealing pages from the active processes, which will, in
 turn. start paging. The only possible response is to eliminate the
buffered I/
 O and switch to non-buffered I/O. That is not so hard to do.

 On 2003.11.01 09:44, Tanel Poder wrote:
  Just for clarification, do you actually see swapping when starting a new
  process or you just guess linux would swap because you don't see free
  memory in top output?
 
  Tanel.
 
- Original Message -
From: Sai Selvaganesan
To: Multiple recipients of list ORACLE-L
Sent: Saturday, November 01, 2003 1:34 AM
Subject: RE: memory usage by dbw very high
 
 
rich
the ipcs output shows 1.1 gb. so nearly 2 gb(total ram size is 3.08)
is
  used by non shared memory size.
i went thru all the processes and found dbwr using the max %mem. what
  could
  be the reason?
sai
 
Jesse, Rich [EMAIL PROTECTED] wrote:
  If I'm not mistaken, this figure includes the size of the shared
memory
  segment from the SGA. Take the output of the oracle line of
ipcs -a
  (hopefully you'll only have one!) and subtract it from the process
size
  to
  get a better idea of the non-shared memory size of the process.
 
  Rich
 
  Rich Jesse System/Database Administrator
  [EMAIL PROTECTED] Quad/Tech Inc, Sussex, WI USA
 
 
  -Original Message-
  Sent: Friday, October 31, 2003 3:49 PM
  To: Multiple recipients of list ORACLE-L
 
 
  hi
 
  i have a system that has no active users at this point of time. the
  memory
  used by the dbw process is very high leading to a lot of swapping
when
  any
  process starts.
  here are the spces
  version:9.2.0.4
  os:Linux 2.4.9-e.24smp
  o/p from top:
  1:44pm up 29 days, 23:55, 4 users, load average: 1.73, 1.68, 1.35
  132 proces! ses: 131 sleeping, 1 running, 0 zombie, 0 stopped
  CPU0 states: 24.4% user, 2.2% system, 0.0% nice, 72.2% idle
  CPU1 states: 0.5% user, 0.5% system, 0.0% nice, 98.0% idle
  CPU2 states: 0.0% user, 0.1% system, 0.0% nice, 99.4% idle
  CPU3 states: 0.3% user, 0.4% system, 0.0% nice, 98.3% idle
  Mem: 3089964K av, 3083380K used, 6584K free, 846848K shrd, 193448K
  buff
  Swap: 2048152K av, 1652K used, 2046500K free 1852468K
  cached
  sga size:
  Total System Global Area 1084823632 bytes
  Fixed Size 452688 bytes
  Variable Size 335544320 bytes
  Database Buffers 738197504 bytes
  Redo Buffers 10629120 bytes
  pga aggregate size:700M
  and ps o/p of dbw process
  USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
  oracle 4062 0.0 16.4 1131260 508168 ? S 10:16 0:06
  ora_dbw0_revenue
 
  please advise. what is really going on.
 
  thanks
  sai
  --
  Please see the official ORACLE-L FAQ: http://www.orafaq.net
  --
  Author: Jesse, Rich
  INET: [EMAIL PROTECTED]
 
  Fat City Network Services -- 858-538-5051 http://www.fatcity.com
  San Diego, California -- Mailing list and web hosting services

  -
  To REMOVE yourself from this mailing list, send an E-Mail message
  to: [EMAIL PROTECTED] (note EXACT spelling of 'ListGuru') and in
  the message BODY, include a line containing: UNSUB ORACLE-L
  (or the name of mailing list you want to be removed from). You may
  also send the HELP command for other information (like subscribing).

 -- 
 Mladen Gogala
 Oracle DBA
 -- 
 Please see the official ORACLE-L FAQ: http://www.orafaq.net
 -- 
 Author: Mladen Gogala
   INET: [EMAIL PROTECTED]

 Fat City Network Services-- 858-538-5051 http://www.fatcity.com
 San Diego, California-- Mailing list and web hosting services
 -
 To REMOVE yourself from this mailing list, send an E-Mail message
 to: [EMAIL PROTECTED] (note EXACT spelling of 'ListGuru') and in
 the message BODY, include a line containing: UNSUB ORACLE-L
 (or the name of mailing list you want to be removed from).  You may
 also send the HELP command for other information (like subscribing).



-- 

Re: I wanna know how Oracle uses file organization in their DB

2003-11-02 Thread Tanel Poder
Hi!

If I recall correctly, a simple B-tree leafs didn't have pointers to last
and next leaf in them, whilst B+tree and B*-tree did...

Tanel.

- Original Message - 
To: Multiple recipients of list ORACLE-L [EMAIL PROTECTED]
Sent: Friday, October 31, 2003 6:44 PM


 A B-tree is not a binary tree. A binary tree node has 0, 1, or 2
 children. A B-tree is a multiway tree in which a node can have
 arbitrarily many children.

 Oracle implements a thing that's similar to a B*-tree. A B*-tree is
 structurally indistinguishable from a B-tree. They differ only in
 properties of the insertion and deletion methods used to manipulate
 them. For complete information, see Knuth's The Art of Computer
 Programming, Volume III: Sorting and Searching, pp473-480.


 Cary Millsap
 Hotsos Enterprises, Ltd.
 http://www.hotsos.com

 Upcoming events:
 - Performance Diagnosis 101: 10/28 Phoenix, 11/19 Sydney
 - SQL Optimization 101: 12/8-12 Dallas
 - Hotsos Symposium 2004: March 7-10 Dallas
 - Visit www.hotsos.com for schedule details...


 -Original Message-
 Sinardy Xing
 Sent: Thursday, October 30, 2003 10:39 PM
 To: Multiple recipients of list ORACLE-L

 Hi Thai,

 B-tree is short for binary tree, Indexing method make use of Binary
 search function to fast retrieve your records, therefore require sorted
 records.
 B+ tree (I don't know this one, never heard)

 Go to www.Oracle.com download the document for free.

 Reading order:
 1. Concept
 2. SQLPlus
 3. DB Admin
 4. Backup and Recovery
 5. Network

 After you finish all of these you have basic skill, you can be an Oracle
 DBA.


 Good luck.

 Sinardy



 -Original Message-
 Sent: 31 October 2003 11:49
 To: Multiple recipients of list ORACLE-L


 Hello all,

 I am looking for documents saying how Oracle uses file organizations
 like B-tree, B+ tree, heap file, index file . in their database.

 If you know where I can get those documentations, could you let me know?

 Thank you.

 Thai

 -- 
 Please see the official ORACLE-L FAQ: http://www.orafaq.net
 -- 
 Author: Thai.Dang-Vu-1
   INET: [EMAIL PROTECTED]

 Fat City Network Services-- 858-538-5051 http://www.fatcity.com
 San Diego, California-- Mailing list and web hosting services
 -
 To REMOVE yourself from this mailing list, send an E-Mail message
 to: [EMAIL PROTECTED] (note EXACT spelling of 'ListGuru') and in
 the message BODY, include a line containing: UNSUB ORACLE-L
 (or the name of mailing list you want to be removed from).  You may
 also send the HELP command for other information (like subscribing).
 -- 
 Please see the official ORACLE-L FAQ: http://www.orafaq.net
 -- 
 Author: Sinardy Xing
   INET: [EMAIL PROTECTED]

 Fat City Network Services-- 858-538-5051 http://www.fatcity.com
 San Diego, California-- Mailing list and web hosting services
 -
 To REMOVE yourself from this mailing list, send an E-Mail message
 to: [EMAIL PROTECTED] (note EXACT spelling of 'ListGuru') and in
 the message BODY, include a line containing: UNSUB ORACLE-L
 (or the name of mailing list you want to be removed from).  You may
 also send the HELP command for other information (like subscribing).

 -- 
 Please see the official ORACLE-L FAQ: http://www.orafaq.net
 -- 
 Author: Cary Millsap
   INET: [EMAIL PROTECTED]

 Fat City Network Services-- 858-538-5051 http://www.fatcity.com
 San Diego, California-- Mailing list and web hosting services
 -
 To REMOVE yourself from this mailing list, send an E-Mail message
 to: [EMAIL PROTECTED] (note EXACT spelling of 'ListGuru') and in
 the message BODY, include a line containing: UNSUB ORACLE-L
 (or the name of mailing list you want to be removed from).  You may
 also send the HELP command for other information (like subscribing).



-- 
Please see the official ORACLE-L FAQ: http://www.orafaq.net
-- 
Author: Tanel Poder
  INET: [EMAIL PROTECTED]

Fat City Network Services-- 858-538-5051 http://www.fatcity.com
San Diego, California-- Mailing list and web hosting services
-
To REMOVE yourself from this mailing list, send an E-Mail message
to: [EMAIL PROTECTED] (note EXACT spelling of 'ListGuru') and in
the message BODY, include a line containing: UNSUB ORACLE-L
(or the name of mailing list you want to be removed from).  You may
also send the HELP command for other information (like subscribing).


Re: Table partitioning Oracle 9.2

2003-11-02 Thread Tanel Poder
Hi!

No, data blocks below partitions high-high water mark can never be used for
another segment.
Unformatted blocks above (high)-high water mark can be used for another
segment only when you trim the extent(s) using alter table deallocate unused
(but this feature is useful only if you have lots of unformatted space in
your segment for some reason).

So, if your business allow this table to be offline for a while, I'd
recommend the following approach after you've archived your old data (some
features here require 9i and syntax is written from memory, might have small
errors in it):

1) archive your unneeded data
2) create table temp as select * from your_partitioned_tab partition P_1
where condition to filter out old unneeded data;  (you can use nologging 
parallel here if you want)
3) alter table your_partitioned_tab truncate partition P_1 drop storage
update global indexes; (can use parallel here as well)
  - this will truncate your old partition and release any extents above it's
minextents)
4) alter table your_partitioned_tab exchange partition P_1 with table TEMP
excluding indexes without validation; (just exchanges the TEMP table's
segment storing only the required 5% of data with old, now truncated
segment).
5) drop table TEMP; (the 5% of required data was moved back to
your_partitioned_tab in step 4.
6) rebuild any local indexes on P_1 partition.
7) analyze partition P_1 and it's local indexes, possibly global indexes on
your table as well (btw, you can use compute statistics option for
gathering basic statistice when rebuilding indexes...)

You can use nologging in evey operation mentioned above (with the exception
of update global indexes in step 3). Of course in case of nologging
operations, your backup strategy has to be aware of them.

So, instead of generating lots of redo and undo+redo due huge deletes and
index maintenance you just take this small amount of rows you need, insert
them into a new segment using direct path and nologging (very little undo
and redo), and then just exchange the segments between your old and new
tables.

Cheers,
Tanel.

- Original Message - 
To: Multiple recipients of list ORACLE-L [EMAIL PROTECTED]
Sent: Friday, October 31, 2003 10:24 AM


 --=_MAILER_ATTACH_BOUNDARY1_2003103151337181540383426
 Content-Type: text/plain; charset=us-ascii




 RDBMS Version: 9.2.0.1.0
 Operating System and Version: Solaris 8
 Error Number (if applicable):
 Product (i.e. SQL*Loader, Import, etc.): Partitioned Table
 Product Version: 9.2.0.1.0

 Table partitioning

 Hi,

 I've a query reg. space usage in context of partitioned tables.

 I've a table with 12 partitions P_1 ... P_12. Until now data
 got populated in P_1 upto P_6 and future data will come in P_7 etc.
 If i delete some huge amount of data from P_1 (after archiving it)
 will that freed space be used by future inserts (which happens in
subsequent partitions like P_7 etc).
 Unfortunately, we can't delete all data in partition. We have to keep some
data which account say 5% of total data. ie, we're deleting 95% of data from
a partition. So, will this freed blocks be put to free list and used by
future inserts?
 Data is partitioned by date. So, my query is whether Oracle will put
future data (which belongs to partition P_7 etc.) in space earlier used by
P_1.

 Any help from members is appreciated.

 Thanks,
 Vikas

 Get Your Private, Free E-mail from Indiatimes at
http://email.indiatimes.com
 Buy The Best In BOOKS at http://www.bestsellers.indiatimes.com
 Bid for Air Tickets on Air Sahara Flights. For Best Deals, log on to
http://airsahara.indiatimes.com and Bid Now !

 --=_MAILER_ATTACH_BOUNDARY1_2003103151337181540383426
 Content-Type: text/html; charset=us-ascii

 PSTRONG/STRONGnbsp;/P
 PSTRONGRDBMS Version/STRONG: 9.2.0.1.0BRBOperating System and
Version/B: Solaris 8BRBError Number (if applicable)/B:
BRBProduct (i.e. SQL*Loader, Import, etc.)/B: Partitioned
TableBRBProduct Version/B: 9.2.0.1.0BRBRTable
partitioningBRBRHi, BRBRI've a query reg. space usage in context of
partitioned tables. BRBRI've a table with 12 partitions P_1 ... P_12.
Until now data BRgot populated in P_1 upto P_6 and future data will come
in P_7 etc. BRIf i delete some huge amount of data from P_1 (after
archiving it) BRwill that freed space be used by future inserts (which
happens in subsequent partitions like P_7 etc). BRUnfortunately, we can't
delete all data in partition. We have to keep some data which account say 5%
of total data. ie, we're deleting 95% of data from a partition. So, will
this freed blocks be put to free list and used by future inserts? BRData
is partitioned by date. So, my query is whether Oracle will put fu!
 tu!
 re data (which belongs to partition P_7 etc.) in space earlier used by
P_1.BRBRAny help from members is appreciated. BRBRThanks, BRVikas
BR/P
 hrfont face=Arial size=2bGet Your Private, Free E-mail from
Indiatimes at  /fonta href=http://email.indiatimes.com;font
face=Arial 

BR Benchmarks

2003-11-02 Thread Murali Vallath

Does anyone have any benchmark numbers for a BR operationof a 3TB Oracle database? I understand this depends on several environmental conditions. If anyone of you has had a need to do a restore of 3-4TB Oracle database and would not mind sharing some of your thoughts that would be wonderful.

Thanks,

Murali Vallath
Murali Vallath 
"We must be the change we wish to see in the world." Mahatma Gandhi.
Do you Yahoo!?
Exclusive Video Premiere - Britney Spears

Re: BR Benchmarks

2003-11-02 Thread Joe Testa
I know when i'd worked on that size, we use the concept of multiple 
mirrors of the data and broke the mirror, and used that as the backup(it 
went to tape also but we never had to recover from tape) :)

joe

Murali Vallath wrote:

Does anyone have any benchmark numbers for a BR operation of a  3TB  
Oracle database?  I understand this depends on several environmental 
conditions.  If anyone of you has had a need to do a restore of 3-4TB 
Oracle database and would not mind sharing some of your thoughts that 
would be wonderful.
 
Thanks,
 
Murali Vallath
 

Murali Vallath

*We must be the change we wish to see in the world.  Mahatma Gandhi.*


Do you Yahoo!?
Exclusive Video Premiere - Britney Spears 
http://launch.yahoo.com/video/?1093432fs=1redirectURL=http://launch.yahoo.com/promos/britneyspears/ 


--
Please see the official ORACLE-L FAQ: http://www.orafaq.net
--
Author: Joe Testa
 INET: [EMAIL PROTECTED]
Fat City Network Services-- 858-538-5051 http://www.fatcity.com
San Diego, California-- Mailing list and web hosting services
-
To REMOVE yourself from this mailing list, send an E-Mail message
to: [EMAIL PROTECTED] (note EXACT spelling of 'ListGuru') and in
the message BODY, include a line containing: UNSUB ORACLE-L
(or the name of mailing list you want to be removed from).  You may
also send the HELP command for other information (like subscribing).


RE: Outsourcing's dirty secret

2003-11-02 Thread Jared Still
Ok, please take this offline or to an OT list.

Thanks,

Jared ( the list owner )

On Sun, 2003-11-02 at 07:44, hrishy wrote:
 Hi Frank
 
 why do you think i should be banned...:-)..everybody
 is entitled to his opinion...
 
 say i go on a consulting assignement to a company that
 hosts por sites should i reccommend him Oracle10g or
 mysql..Mysql right..but being a oracle DBA and to save
 my job i can always recommend oracel 10g..nothing
 wrong..
 
 :-)
 
 
 
 regards
 Hrishy
 
 
  --- Pettinato [EMAIL PROTECTED] wrote:  This is
 totally inappropriate. You should be banned
  from the list. The
  reality is that companies only look at the bottom
  line and not the long term
  effects of hiring anyone who can spell Oracle right
  on thier resume.
  
  Frank
  
  -Original Message-
  hrishy
  Sent: Saturday, November 01, 2003 6:19 AM
  To: Multiple recipients of list ORACLE-L
  
  
  Hi All
  
  DBA's all here hmm...well if i were the CFO i would
  have been lookin for the fast=true parameter if i
  were
  bald i would have been looking for a pill or a cream
  that would give me hairs overnight..the time of
  instant nirvana has come :-)..software bpo call
  centeres they are all same..today the jobs are being
  moved to india becaz the CEO's see that they are
  able
  to save 10$ on paper. or maybe just becoz your
  competitor is doin so..capital always moves in
  serach
  of labour thats the bottom line ..:-) i read
  argentina
  programmers are cheaper then indians well
  hehehe..hehee ...:-)..argentians woman are they more
  beautifulthe author in my opinion has provided a
  skewewed version of outsourcing ..the real
  competition
  for india will come from ETHOPIA i beelive
  ..provided
  the ethopians start learning english...:-) and will
  start working for food :-)
  
  as for us we americans we can come out with a dirty
  trick like not sharing information on fear of
  getting
  sacked with indian programmers :-)
  
  regards
  Hrishy
  
  
  
  
   --- Loughmiller, Greg
  [EMAIL PROTECTED] wrote:  not only
  salries, but job opportunities as well:-)
  
   greg
  
   -Original Message-
   Sent: Thursday, October 30, 2003 3:39 PM
   To: Multiple recipients of list ORACLE-L
  
  
   But sure as hell does drive salaries down over
  here.
  
   On 10/30/2003 03:04:24 PM, [EMAIL PROTECTED]
   wrote:
The perception of outsourcing has been that you
   can send your work
offshore,
and get it done cheaper, with higher quality.
   
I think that this article helps to dispel that
  as
   a myth.  It may or may
not be
less expensive, it may or may not be better.
   
Jared
   
   
   
   
   
Jamadagni, Rajendra
   [EMAIL PROTECTED]
Sent by: [EMAIL PROTECTED]
 10/30/2003 09:49 AM
 Please respond to ORACLE-L
   
   
To: Multiple recipients of list
   ORACLE-L
   [EMAIL PROTECTED]
cc:
Subject:RE: Outsourcing's dirty
   secret
   
   
What is also unfortunate that the company X
  which
   outsourced its project
to India, didn't do its job right ... If you
  just
   want the cheapest Rolex,
  
you can't complain about its quality later on. I
   am not saying this
couldn't have happened, whatever happened is
   unfortunate, but I am just
saying that the company didn't understand CYA
   sufficiently, it is just a
blame game now.
   
C'mon ... I think that article is one side of
  the
   coin.
Raj
   
  
 
 
   
Rajendra dot Jamadagni at nospamespn dot com
All Views expressed in this email are strictly
   personal.
QOTD: Any clod can have facts, having an opinion
   is an art !
   
   
-Original Message-
Sent: Thursday, October 30, 2003 11:59 AM
To: Multiple recipients of list ORACLE-L
   
   
List - If a manager seems to be contemplating
   outsourcing, you might want
to
post this. Unless you work for an outsourcer.
  ;-)
   
   
  
 
 http://techupdate.zdnet.com/techupdate/stories/main/Hidden_Costs_of_IT_Outso
   urcing.html
   
Dennis Williams
DBA
Lifetouch, Inc.
[EMAIL PROTECTED]
--
   
   
   
  
 
 
   **
This e-mail message is confidential, intended
  only
   for the named
recipient(s) above and may contain information
   that is privileged,
attorney work product or exempt from disclosure
   under applicable law. If
you have received this message in error, or are
   not the named
recipient(s), please immediately notify
  corporate
   MIS at (860) 766-2000
and delete this e-mail message from your
  computer,
   Thank you.
   
  
 
 
   **5
--
Please see the official ORACLE-L FAQ:
   http://www.orafaq.net
--
Author: Jamadagni, 

Re: I wanna know how Oracle uses file organization in their DB

2003-11-02 Thread Vladimir Begun
There is quite some important difference between theoretical definition of the B*/+
trees and their implementation, in particular underflow and overflow could be
implemented not as defined -- a trade off, as usually -- however those two operations
are major ones in the index data management. Knuth's book does not reflect such nuances
as concurrent operations against {B, B+, B*}-trees in particular, at least in the
chapter of the book Cary mentioned. I think, some more information can be found on acm.
Thai, I do not think that such documents are openly available -- never read those :),
but, definitely, knowledge of some basic principles would help -- so start from the
Knuth's books.
regards,
--
Vladimir Begun
The statements and opinions expressed here are my own and
do not necessarily represent those of Oracle Corporation.
Tanel Poder wrote:
Hi!

If I recall correctly, a simple B-tree leafs didn't have pointers to last
and next leaf in them, whilst B+tree and B*-tree did...
Tanel.

- Original Message - 
To: Multiple recipients of list ORACLE-L [EMAIL PROTECTED]
Sent: Friday, October 31, 2003 6:44 PM



A B-tree is not a binary tree. A binary tree node has 0, 1, or 2
children. A B-tree is a multiway tree in which a node can have
arbitrarily many children.
Oracle implements a thing that's similar to a B*-tree. A B*-tree is
structurally indistinguishable from a B-tree. They differ only in
properties of the insertion and deletion methods used to manipulate
them. For complete information, see Knuth's The Art of Computer
Programming, Volume III: Sorting and Searching, pp473-480.
Cary Millsap
Hotsos Enterprises, Ltd.
http://www.hotsos.com

-Original Message-
Sinardy Xing
Sent: Thursday, October 30, 2003 10:39 PM
To: Multiple recipients of list ORACLE-L
Hi Thai,

B-tree is short for binary tree, Indexing method make use of Binary
search function to fast retrieve your records, therefore require sorted
records.
B+ tree (I don't know this one, never heard)
Go to www.Oracle.com download the document for free.

Reading order:
1. Concept
2. SQLPlus
3. DB Admin
4. Backup and Recovery
5. Network
After you finish all of these you have basic skill, you can be an Oracle
DBA.
Good luck.

Sinardy

-Original Message-
Sent: 31 October 2003 11:49
To: Multiple recipients of list ORACLE-L
Hello all,

I am looking for documents saying how Oracle uses file organizations
like B-tree, B+ tree, heap file, index file . in their database.
If you know where I can get those documentations, could you let me know?

Thank you.

Thai


--
Please see the official ORACLE-L FAQ: http://www.orafaq.net
--
Author: Vladimir Begun
 INET: [EMAIL PROTECTED]
Fat City Network Services-- 858-538-5051 http://www.fatcity.com
San Diego, California-- Mailing list and web hosting services
-
To REMOVE yourself from this mailing list, send an E-Mail message
to: [EMAIL PROTECTED] (note EXACT spelling of 'ListGuru') and in
the message BODY, include a line containing: UNSUB ORACLE-L
(or the name of mailing list you want to be removed from).  You may
also send the HELP command for other information (like subscribing).


Re: char(1) VS varchar2(1)

2003-11-02 Thread Tim Gorman
Trailing columns with NULL values do not occupy any space, not even a length
byte.

Non-trailing columns with NULL values have a constant value of 0xFF (255) in
the length byte consuming just the one byte.

Column values with a length of 0-254 bytes have one length byte, and values
with a length greater than 254 bytes have 3 bytes, where the first byte is
the constant 0xFE (254) and the remaining 2 bytes actually have the length.

For example:

=
SQL create table xyz
  2  (
  3 c1 number,
  4 c2 number,
  5 c3 number,
  6 c4 number,
  7 c5 number
  8  ) tablespace tools;

Table created.

SQL insert into xyz values (1, null, 1, null, 99);

1 row created.

SQL insert into xyz values (2, null, 2, null, 99);
1 row created.

SQL select dump(c1) c1, dump(c2) c2, dump(c3) c3,
  2  dump(c4) c4, dump(c5) c5 from xyz;

C1  C2C3  C4C5
--- - --- -
-
Typ=2 Len=2: 193,2  NULL  Typ=2 Len=2: 193,2  NULL  Typ=2 Len=4:
195,100,100,100
Typ=2 Len=2: 193,3  NULL  Typ=2 Len=2: 193,3  NULL  Typ=2 Len=4:
195,100,100,100

SQL select file_id,block_id,blocks from dba_extents where
 2   segment_name='XYZ';

   FILE_ID   BLOCK_ID BLOCKS
-- -- --
 2   5857  8

SQL commit;

Commit complete.

SQL alter system checkpoint;

System altered.

=

OK, the checkpoint made sure that everything was flushed to the datafile.
Now, we can look at things using the UNIX od command:

$ dd if=/u01/oradata/PRD/tools_02.dbf bs=8192 skip=5858 count=1 | \
= od -x

000 0602008016e2002f5a390104
020 08090100217b002f5a03
040 90e4000203000008002f
060 048b01000040056416000002
100 
120 00010002
140 00161f801f6a1f6a00021f90
160 1f80
200 
*
0017720 2c010502
0017740 c103ff02c103ff04c36464642c010502
0017760 c102ff02c102ff04c36464645a390601
002

OK, now remember that data rows fill from the end of the block, working
backwards, not from the beginning.

So, at the end of the block, we see the 4-byte block tailer (5a39 0601).
Just before that, we see the first row:

2c 01 05 02 c1 02 ff 02 c1 02 ff 04 c3 64 64 64
   +++--++--+--+
row hdr  c1   c2 c3   c4 c5

Then, just prior to that, we see the second row:


2c 01 05 02 c1 03 ff 02 c1 03 ff 04 c3 64 64 64
   +++--++--+--+
row hdr  c1   c2 c3   c4 c5

The third byte (0x05) of each row indicates that five columns comprise the
row.

The numbers are represented in 100s-complement which is a form of base-100
arithmetic.  For column C1, the first byte (hex 0x02) is the length byte.
The next byte (hex 0xC1 or decimal 193) is both the sign and the exponent,
while the next byte (hex 02 again) is the mantissa or significant digits in
100s-complement.  To avoid a value of 0x0, they add one to the value, so the
value of 1 is represented as 0x02.

So in the first row, the value of 1 in column C1 is shown by the three
bytes 0x02c102.  The null value in column C2 is shown by the one byte 0xff.
The value of 1 in column C3 is shown by the three bytes 0x02c102.  The
null value in column C4 is shown by the one byte 0xff.  The value of
99 in column C5 is shown by the five bytes 0x04c3646464.

-Tim


on 11/2/03 4:44 PM, Tanel Poder at [EMAIL PROTECTED] wrote:

 Hi!
 
 Just for the record, every column in a table has a length byte (or three,
 depending on column size). This works so even in clusters, where rows are
 split vertically, but column structures remain the same.
 
 Tanel.
 
 - Original Message -
 To: Multiple recipients of list ORACLE-L [EMAIL PROTECTED]
 Sent: Friday, October 31, 2003 7:04 PM
 
 
 I have believed for a while that a varchar2(1) would have included a
 'length byte', making it more wasteful of storage than a char(1) but in fact
 the two are strictly identical storage-wise :
 
 SQL create table t(c1 char(1),
   2 c2 varchar2(1));
 
 Table created.
 
 SQL insert into t values('A', 'B');
 
 1 row created.
 
 SQL select vsize(c1), dump(c1), vsize(c2), dump(c2)
   2  from T;
 
  VSIZE(C1)
 --
 DUMP(C1)
 --
 --
  VSIZE(C2)
 --
 DUMP(C2)
 

RE: Re: char(1) VS varchar2(1)

2003-11-02 Thread Rajesh Dayal
Extremely precious info. 
Thanks a lot for sharing this !!!

Rajesh Dayal
Senior Oracle DBA (OCP 8,8i,9i)
International Information Technology Company LLC


 -Original Message-
Sent:   Monday, November 03, 2003 7:14 AM
To: Multiple recipients of list ORACLE-L
Subject:Fwd: Re: char(1) VS varchar2(1)

Trailing columns with NULL values do not occupy any space, not even a length
byte.

Non-trailing columns with NULL values have a constant value of 0xFF (255) in
the length byte consuming just the one byte.

Column values with a length of 0-254 bytes have one length byte, and values
with a length greater than 254 bytes have 3 bytes, where the first byte is
the constant 0xFE (254) and the remaining 2 bytes actually have the length.

For example:

=
SQL create table xyz
  2  (
  3 c1 number,
  4 c2 number,
  5 c3 number,
  6 c4 number,
  7 c5 number
  8  ) tablespace tools;

Table created.

SQL insert into xyz values (1, null, 1, null, 99);

1 row created.

SQL insert into xyz values (2, null, 2, null, 99);
1 row created.

SQL select dump(c1) c1, dump(c2) c2, dump(c3) c3,
  2  dump(c4) c4, dump(c5) c5 from xyz;

C1  C2C3  C4C5
--- - --- -
-
Typ=2 Len=2: 193,2  NULL  Typ=2 Len=2: 193,2  NULL  Typ=2 Len=4:
195,100,100,100
Typ=2 Len=2: 193,3  NULL  Typ=2 Len=2: 193,3  NULL  Typ=2 Len=4:
195,100,100,100

SQL select file_id,block_id,blocks from dba_extents where
 2   segment_name='XYZ';

   FILE_ID   BLOCK_ID BLOCKS
-- -- --
 2   5857  8

SQL commit;

Commit complete.

SQL alter system checkpoint;

System altered.

=

OK, the checkpoint made sure that everything was flushed to the datafile.
Now, we can look at things using the UNIX od command:

$ dd if=/u01/oradata/PRD/tools_02.dbf bs=8192 skip=5858 count=1 | \
= od -x

000 0602008016e2002f5a390104
020 08090100217b002f5a03
040 90e4000203000008002f
060 048b01000040056416000002
100 
120 00010002
140 00161f801f6a1f6a00021f90
160 1f80
200 
*
0017720 2c010502
0017740 c103ff02c103ff04c36464642c010502
0017760 c102ff02c102ff04c36464645a390601
002

OK, now remember that data rows fill from the end of the block, working
backwards, not from the beginning.

So, at the end of the block, we see the 4-byte block tailer (5a39 0601).
Just before that, we see the first row:

2c 01 05 02 c1 02 ff 02 c1 02 ff 04 c3 64 64 64
   +++--++--+--+
row hdr  c1   c2 c3   c4 c5

Then, just prior to that, we see the second row:


2c 01 05 02 c1 03 ff 02 c1 03 ff 04 c3 64 64 64
   +++--++--+--+
row hdr  c1   c2 c3   c4 c5

The third byte (0x05) of each row indicates that five columns comprise the
row.

The numbers are represented in 100s-complement which is a form of base-100
arithmetic.  For column C1, the first byte (hex 0x02) is the length byte.
The next byte (hex 0xC1 or decimal 193) is both the sign and the exponent,
while the next byte (hex 02 again) is the mantissa or significant digits in
100s-complement.  To avoid a value of 0x0, they add one to the value, so the
value of 1 is represented as 0x02.

So in the first row, the value of 1 in column C1 is shown by the three
bytes 0x02c102.  The null value in column C2 is shown by the one byte 0xff.
The value of 1 in column C3 is shown by the three bytes 0x02c102.  The
null value in column C4 is shown by the one byte 0xff.  The value of
99 in column C5 is shown by the five bytes 0x04c3646464.

-Tim


on 11/2/03 4:44 PM, Tanel Poder at [EMAIL PROTECTED] wrote:

 Hi!
 
 Just for the record, every column in a table has a length byte (or three,
 depending on column size). This works so even in clusters, where rows are
 split vertically, but column structures remain the same.
 
 Tanel.
 
 - Original Message -
 To: Multiple recipients of list ORACLE-L [EMAIL PROTECTED]
 Sent: Friday, October 31, 2003 7:04 PM
 
 
 I have believed for a while that a varchar2(1) would have included a
 'length byte', making it more wasteful of storage than a char(1) but in fact
 the two are strictly identical storage-wise :
 
 SQL create table t(c1 char(1),
   2