Hi markgeer,
The problem of "warmstarting" objects ( not alterable- ORA-00701) looks to be limiting.
lets concentrate to the second part od the question:
How to prevent?
Regards,
Bob
Main Topics
Browse All TopicsThere is clustered table SYS.HISTGRM$ assigned to store column histogram when statistics are computed.
Accidentally, we computed statistics (column histohrams) for large (fact) tables and the cluster (SYS.C_OBJ#_INTCOL#) has swollen up to 3 GB
Unfortunatelly, after statistics was deleted allocated space of the cluster hasn't been reduced (feature of cluster).
I've got two questions:
- how to reduce the cluster allocated size (other way than to reinstall an oracle instance as Oracle support suggested)
- how to prevent similar cases?
Thanks
Bob
This Question has been solved and asker verified All Experts Exchange premium technology solutions are available to subscription members.
Experts Exchange has been collecting answers to technology questions since 1996…3 million and counting! If you have a question, chances are we already have your answer.
If you can't find the exact answer you're looking for, ask our exclusive community of 50,000 experts. You’ll get a personalized answer from a trusted professional.
Thousands of free tech tips, tricks, how-to’s and tutorials are available in our peer reviewed articles section. See for yourself how smart our experts are, no login required.
Access the answers to your technology questions today.
30-day free trial. Register in 60 seconds.
Members of the expert community talk about why the experience at Experts Exchange is different than what you will find anywhere else.

Try it out and discover for yourself.
30-day free trial. Register in 60 seconds.
Join the community of experts here and help other tech pros by answering question in your area of expertise. You can earn FREE access to all Experts Exchange's premium features and resources.
Do you mean, how to prevent accidentally creating histograms for tables that don't need them? That's a tough one. Oracle supports a number of DDL triggers, so it may be possible to find one that would fire before actually calculating a histogram. If so, that could be modified to do a select from a table you create that would list the owner and table name for those tables that you do want to allow histograms to be calculated for, and return an error if the owner/table_name are not found in this list.
Business Accounts
Answer for Membership
by: markgeerPosted on 2005-08-12 at 08:45:56ID: 14661857
I'm not surprised that Oracle support suggested a re-install, since that's the only supported way to defragment or reduce the size of the SYSTEM tablespace or objects in it. Anything else that you try would likely be considered by Oracle as an unsupported action, and they may then take the position that your database is unsupported.
The techniques that work for user-created clusters and tables would be the obvious things to try, like:
1. create new tables (in a different tablespace) for each table in the cluster as "select * from" each table.
2. make a list of the grants, contraints and indexes for each table (I don't think there will be any triggers on SYS-owned tables to worry about)
3. drop the cluster
4. re-create the cluster, then re-create and reload the tables
5. re-create the grants, contraints and indexes for each table
For non-clustered tables, you could just save the table contents, then truncate them, then reload them, but for clustered tables I don't think this will help. I think the only way to recover space in the cluster is to drop and recreate the cluster. The problem is, these actions on SYS-owned tables are not supported.
If you do want to try it, make sure that you have a good backup of the entire database first.