Why TVS migration is disabled due AMPs reached space limit and the dictionary tables do not show system is so full? WrittenSep 27, 2017


Product Categories
PDE - Parallel Database Extensions

We are received following alerts:
Disabling migration of cylinders due to 1 AMP(s) approaching space limit.
Enabling migrations as AMP(s) are no longer running on low space.

Using Ferret showspace we see that only 5% cylinders are available for each vproc.
However DBC.DiskSpace shows AMPs are 69% full.
Why DBC.DiskSpace does not show the AMPs are getting full? 


TD 15.10


DBC.DiskSpace is a view based in tables DBC.DataBaseSpace and DBC.dbase. These tables account data blocks used by database objects, therefore they do not account the space within the allocated cylinders that are not used.
But TVS considers the cylinders allocated per AMP, regardless of their utilization percentage.  

TVS migration will move cylinders as they are, without pack/unpack them and to work efficiently TVS migration requires a minimum amount of free cylinders, under which it get disabled.

In TD 15.10, TVS migrations are stopped when allocated cylinders in an AMP reaches 95% and it will not start again until all AMPs, assigned to the TVS allocator, are having allocated cylinders under 93%.
Migrations stop/start in the TVS vproc where the AMP, that reached the threshold, is assigned.


Special Considerations

Additional Information

In the case where this article was generated 

Ferret showspace:
PERM Data Cyl "Avg utl per Cyl" was 65% for all AMPs
PERM Data Cyl "% of total Avail Space" was 97% for all AMPs
Average Free Cylinders Across All AMPs was 3%.

AutoCylPack was disabled in the system, therefore it was not working in the background to pack cylinders. 

Filesystem Group

   17.  DisableAutoCylPack            = TRUE    (Disabled)