Skip to content
pvmehta.com

pvmehta.com

  • Home
  • About Me
  • Toggle search form
  • Distributed Transaction Troubleshooting. Oracle
  • Removing Blank lines from file using grep Linux/Unix
  • Find execution plan from dba_hist_sql_plan for a specific SQL_ID and PLAN_HASH_VALUE fplan.sql Oracle
  • get_aix_vmstat.ksh Oracle
  • V$ROLLSTAT status is Full Oracle
  • scripts to take listener.log backup Linux/Unix
  • track_autoupgrade_copy_progress.sql Oracle
  • Metalink Note: Note:250655.1 : ADDM Basics USING THE AUTOMATIC DATABASE DIAGNOSTIC MONITOR Oracle
  • Find all users who have DML privileges Oracle
  • ENQ: KO – FAST OBJECT CHECKPOINT tips Oracle
  • Find long Running Transaction Linux/Unix
  • good note for shared pool tunnig Oracle
  • Reading parameter file and printing Linux/Unix
  • Formatter Explain plan Output 1 Oracle
  • pvm_metric.sql for gathering report from vmstat tables Oracle

_B_TREE_BITMAP_PLANS issue during 8.1.7 to 9.2.0.8 upgrade

Posted on 30-Aug-2007 By Admin No Comments on _B_TREE_BITMAP_PLANS issue during 8.1.7 to 9.2.0.8 upgrade

Subject: Upgrading from 8.1.X to 9.X – Btree Bitmap Plan Issues – Diagnosing and Resolving

Doc ID: Note:259126.1 Type: TROUBLESHOOTING

Last Revision Date: 13-MAR-2006 Status: PUBLISHED

PURPOSE

The Oracle Cost Based Optimizer is continually been enhanced. These enhancements were designed to improve performance but in some cases can cause a minority of queries to perform no better or worse than before. This article discusses some of the potential problems you may encounter when moving SQL Queries from Oracle 8i to Oracle 9i. It mainly centres on changes within the Cost Based Optimizer.

SCOPE & APPLICATION

DBAs and Application Designers

Upgrading from 8.1.X to 9.X – Btree Bitmap Plan Issues – Diagnosing and Resolving

Btree Bitmap Plan Changes

Btree Bitmap plans is a technology that takes Btree index rowids and converts them in to bitmaps. After conversion, various bitmap comparison operations can be performed. Oracle 9i enables code that considers converting Btree indexes into bitmaps by default. The choice of a bitmap plan is a cost based choice and will only be made if the bitmap plan is deemed to be cheaper based upon the available statistics. Choice of a bitmap plan is controlled by the and (underscore). If this was set to >= 9.0.0. then the choice of bitmap plans would be enabled. This means that some 9i queries may start to use bitmap plans that were not considered before.

If an application has 8i to 9i upgrade related query tuning problems, please consider if btree bitmap plans are involved

Diagnosing Btree Bitmap Plan Issues:

Examine the explain plan and look for bitmap operations (but where not all the indexes involved are bitmap indexes)

Compare the current explain plan with the plan from the earlier version to see if the plan is different

Disable btree_bitmap_plan functionality and see if that resolves the problem

To workaround BTree to bitmap conversion issues, either disable the functionality or force a different plan in one of the following ways:

Ensure statistics are as accurate as possible, including column statistics for columns containing non uniform data distribution. This will ensure that the optimizer makes the best choice it can.

Set (underscore) = FALSE

alter session set “_B_TREE_BITMAP_PLANS” = false;

Set to a value less than “9.0.0”

This is a static parameter and cannot be changed on the fly. It has to be set in one of the instance initialisation files (e.g. initSID.ora).

Hint so that indexes are not chosen and cannot therefore be converted.

Use a stored outline See: Note 67536.1

Oracle, SQL scripts

Post navigation

Previous Post: Multiple listeners
Next Post: reset Sequence

Related Posts

  • Difference between SYNC and AFFIRM Oracle
  • temp_use.sql diplays usage of temp ts Oracle
  • On solaris 10, “S” link is not part of $ORACLE_HOME/bin/oracle as default. ( For 9.2.0.8) Oracle
  • good note for shared pool tunnig Oracle
  • longtx.sql with the flag whether session is blocking any DML locks or not. Oracle
  • How to find pinned objects from shared pool. (pinned via dbms_shared_pool.keep) Oracle

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Categories

  • AMC10 (0)
  • Ansible (0)
  • AWS (2)
  • Azure (1)
  • Django (0)
  • GIT (1)
  • Linux/Unix (150)
  • MYSQL (5)
  • Oracle (403)
  • PHP/MYSQL/Wordpress (10)
  • POSTGRESQL (1)
  • Power-BI (0)
  • Python/PySpark (7)
  • RAC (18)
  • rman-dataguard (26)
  • shell (151)
  • SQL scripts (349)
  • SQL Server (6)
  • Uncategorized (6)
  • Videos (0)

Recent Posts

  • AMC1020-Sep-2026
  • Key Management in Oracle: The Core Issue: Missing Master Key12-May-2026
  • SAT Mathematics 10 questions and answer at the end.30-Apr-2026
  • top 10 AI news today30-Apr-2026
  • runon_allpdbs_show_conname.sh23-Apr-2026
  • runon_allcdbs_find_pdbs.sh23-Apr-2026
  • Running PDB on single node in RAC09-Apr-2026
  • find_arc.sql09-Apr-2026
  • pvm_pre_change.sql08-Apr-2026
  • find_encr_wallet.sql08-Apr-2026

Archives

  • 2026
  • 2025
  • 2024
  • 2023
  • 2010
  • 2009
  • 2008
  • 2007
  • 2006
  • 2005
  • CTAS with LONG Column for 7.x and 8 and 8i Oracle
  • Optimizer SORT Operations Oracle
  • Find_table_size.sql Oracle
  • Drop all SPM baselines for SQL handle Oracle
  • age_alert.ksh aging out alert.log Linux/Unix
  • database trigger failing Oracle
  • plan10g.sql good1 Oracle
  • arch_configUOCIOTTO.ora Oracle

Copyright © 2026 pvmehta.com.

Powered by PressBook News WordPress theme