Oracle FAQ Your Portal to the Oracle Knowledge Grid

Home -> Community -> Mailing Lists -> Oracle-L -> RE: ORA 28604 - table is too fragmented

RE: ORA 28604 - table is too fragmented

From: Jacques Kilchoer <>
Date: Fri, 18 May 2007 17:52:36 -0700
Message-ID: <>

This is pure guesswork on my part, but if you want to minimize the number of records per block, could you do it be re-creating the table with a high PCTFREE?

-----Message d'origine-----

De : [] De la part de Envoyé : vendredi, 18. mai 2007 14:43
À :
Objet : RE: ORA 28604 - table is too fragmented

I did a little bit more testing and here is what I have now:

I don't know whether there is a way to fix both of these two issues - bitmap index build and exchange.

thank you

Gene Gurevich

             "Bobak, Mark"                                                 
   >                                                To 
             Sent by:                  < 
             oracle-l-bounce_at_f         >, <>         
             05/18/2007 12:33          RE: ORA 28604 - table is too        
             PM                        fragmented                          
             Please respond to                                             


Not tested, and I'm not sure there's a quick, easy test case for this one, but, after moving data out of the problem table, you may try this:

1.)  Figure how many rows per block you want.
2.)  Insert that number of rows into the table.  insert into problem_table select * from temp_table where rownum <= number_of_desired_rows_per_block;
3.)  Verify that all those rows are in the same block.
4.)  alter table problem_table minimize records_per_block;  --This sets the Hakan factor, a limit on the max. number of rows/block the table will ever have.
5.)  delete from problem_table;  --don't truncate, that will reset the Hakan factor.
6.)  insert into problem_table select * from temp_table;


Mark J. Bobak
Senior Oracle Architect

"There are 10 types of people in the world: Those who understand binary, and those who don't."

-----Original Message-----

[] On Behalf Of Sent: Friday, May 18, 2007 12:03 PM
Subject: ORA 28604 - table is too fragmented

Hi all:

I am running oracle and am getting the following error when building bitmap indices:

 ORA-28604: TABLE TOO FRAGMENTED TO BUILD BITMAP INDEX (25206487,40,40) I have found the note 119674 and applied the first solution that was recommended - rebuild the table through export/import - I have copied the data from the table into another table, dropped and recreate my table and inserted the data back. After that I tried to rebuild the indices and received the same error. I looked at the second solution and it looks like a reduced version of the first one.

I have temporarily rebuilt all bitmap indices as non-bitmap to allow the user testing to go on, but I would still like to have the bitmap indices instead. Does anyone have a better solution for this?

thank you

Gene Gurevich




-- Received on Fri May 18 2007 - 19:52:36 CDT

Original text of this message