Consultor Eletrônico



Kbase P18874: When does using prostrct add fix the size of variable-length extents in V9?
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   10/15/2008
Status: Verified

GOAL:

When does using prostrct add fix the size of variable-length extents in V9?

FACT(s) (Environment):

Progress 9.x

FIX:

When a new extent is added to a database, whether or not an existing variable-length extent becomes fixed in size will depend on the following conditions -

- if the new extent is being added to an existing area, the extent that is already in place will become fixed at whatever size it is.
- if the extent is being added in a new area (and thus the area is being created as well), then this has no effect on existing extent sizes.

This can be seen using a copy of sports:

1. prostrct list sports shows on screen:

Area Name: Control Area, Type 6, Block Size 4096, Extents 1, Records/Block 32
Ext # 1, Type VARIABLE, Size 32 KByte, Name: .\sports.db

Area Name: Primary Recovery Area, Type 3, Block Size 8192, Extents 1
Ext # 1, Type VARIABLE, Size 2176 KByte, Name: .\sports.b1

Area Name: Schema Area, Type 6, Block Size 4096, Extents 1, Records/Block 32
Ext # 1, Type VARIABLE, Size 832 KByte, Name: .\sports.d1

Area Name: Info Area, Type 6, Block Size 4096, Extents 1, Records/Block 32
Ext # 1, Type VARIABLE, Size 192 KByte, Name: .\sports_7.d1

Area Name: Order Area, Type 6, Block Size 4096, Extents 1, Records/Block 32
Ext # 1, Type VARIABLE, Size 192 KByte, Name: .\sports_8.d1

And the st file created is:

#
b .\sports.b1
#
d "Schema Area":6,32 .\sports.d1
#
d "Info Area":7,32 .\sports_7.d1
#
d "Order Area":8,32 .\sports_8.d1


2. Created an add.st just containing the line:

d .


3. prostrct add sports add.st returns

Converting relative path database to absolute path database. (8461)

Formatting extents:
size area name path name
16 Schema Area C:\prgswrk\91dwrk\addtest\sports.d2 00:00:00


4. prostrct list shows:

Area Name: Schema Area, Type 6, Block Size 4096, Extents 2, Records/Block 32
Ext # 1, Type FIXED , Size 832 KByte, Name: C:\prgswrk\91dwrk\addtest\sport
s.d1
Ext # 2, Type VARIABLE, Size 64 KByte, Name: C:\prgswrk\91dwrk\addtest\sports
.d2

and the sports.st file now shows:

#
b C:\prgswrk\91dwrk\addtest\sports.b1
#
d "Schema Area":6,32 C:\prgswrk\91dwrk\addtest\sports.d1 f 832
d "Schema Area":6,32 C:\prgswrk\91dwrk\addtest\sports.d2
#
d "Info Area":7,32 C:\prgswrk\91dwrk\addtest\sports_7.d1
#
d "Order Area":8,32 C:\prgswrk\91dwrk\addtest\sports_8.d1

The new extent was being added to an existing area, so the existing extent sports.d1 has been fixed in size.


5. Created a new add.st containing the line:

d "Order Area":8,32 C:\prgswrk\91dwrk\addtest\sports_8.d2

Ran prostrct add again, and prostrct list again shows on screen:

Area Name: Order Area, Type 6, Block Size 4096, Extents 2, Records/Block 32
Ext # 1, Type FIXED , Size 192 KByte, Name: C:\prgswrk\91dwrk\addtest\sport
s_8.d1
Ext # 2, Type VARIABLE, Size 64 KByte, Name: C:\prgswrk\91dwrk\addtest\sports
_8.d2

Again, the new extent was being added to an existing area, so the existing extent sports_8.d1 has been fixed in size.


6. Created a new add.st with the line:

d "New Area":9,32 C:\prgswrk\91dwrk\addtest\sports_9.d1

Area Name: Order Area, Type 6, Block Size 4096, Extents 2, Records/Block 32
Ext # 1, Type FIXED , Size 192 KByte, Name: C:\prgswrk\91dwrk\addtest\sport
s_8.d1
Ext # 2, Type VARIABLE, Size 64 KByte, Name: C:\prgswrk\91dwrk\addtest\sports
_8.d2

Area Name: New Area, Type 6, Block Size 4096, Extents 1, Records/Block 32
Ext # 1, Type VARIABLE, Size 64 KByte, Name: C:\prgswrk\91dwrk\addtest\sports
_9.d1

A new area was being added here, and so the existing extents were not affected.