doyoudb2

DB2 UDB for LUW (Linux, Unix and Windows)

 
  • Increase font size
  • Default font size
  • Decrease font size

Hidden Bufferpools – really, but why?

E-mail Print PDF
User Rating: / 3
PoorBest 
DB2 has 4 hidden bufferpools in the database which are allocated automatically when a database is activated or started (i.e. first connection to the database).  These are in addition to the default IBMDEFAULTBP and any other user defined bufferpools. These are provided so that an appropriate bufferpool is available in all circumstances and the unavailability of a bufferpool does not cause the system to go down.

There is one hidden buffer pool per page size (4K, 8K, 16K and 32K). These bufferpools are very small in size (16 pages each) and are not present in the system catalogs or the bufferpool system files - thus hidden to the user.  However you can use db2pd to view the hidden bufferpools.


These cannot be altered directly and are used by db2 in the following dire circumstances:

1.       When a bufferpool of a required page size cannot be activated because of insufficient system memory after a CREATE BUFFERPOOL statement is activated with the IMMEDIATE option.

In this case tablespaces using that bufferpool will be remapped to the hidden system bufferpool, but performance will be drastically reduced.

2.       When regular bufferpools cannot be allocated during a database startup/connect.

In this case too, the tablespaces using that bufferpool will be remapped to the hidden system bufferpool but performance will be drastically reduced.

You can use db2pd to view the hidden bufferpools in your database:

$ db2pd -bufferpools -db SAMPLE

Database Partition 0 -- Database SAMPLE -- Active -- Up 0 days 00:00:07

Bufferpools:

First Active Pool ID      1

Max Bufferpool ID         1

Max Bufferpool ID on Disk 1

Num Bufferpools           5

Address            Id   Name               PageSz     PA-NumPgs

0x0780000020F48DC0 1    IBMDEFAULTBP       4096       1000

0x078000002038F900 4096 IBMSYSTEMBP4K      4096       16

0x0780000020F48100 4097 IBMSYSTEMBP8K      8192       16

0x0780000020F48540 4098 IBMSYSTEMBP16K     16384      16

0x0780000020F48980 4099 IBMSYSTEMBP32K     32768      16

Comments
Add New Search
+/-
Write comment
Name:
Email:
 
Website:
Title:
UBBCode:
[b] [i] [u] [url] [quote] [code] [img] 
 
 
Please input the anti-spam code that you can read in the image.
esskim   |Thursday, 21 August 2008 06:44
thanks for your advice.

i'm using express-c versions(V9.5). but, i can't add
new bufferpool.

i called 'create bufferpool ~~' statements without errors, and
i could find them syscat.bufferpools.
but, they were not used. and db2pd can't
detect new bufferpools.

what's the problem?
db2admin   |Tuesday, 26 August 2008 03:44
Hi esskim,

Are you running db2 on windows or unix?

The hidden bufferpools are
not shown in the syscat.bufferpools view.

The following db2 command should
display all the available bufferpools (including the hidden ones) in your
database:

db2pd -bufferpools -db

cheers,

db2admin

3.25 Copyright (C) 2007 Alain Georgette / Copyright (C) 2006 Frantisek Hliva. All rights reserved."

 

Search Site

Subscribe

Enter your email address to receive new posts directly in your Inbox:

Relax! We hate SPAM as much as you do.

Sign In/Register

Syndicate Feeds - Subscribe



Related Articles