Monday, September 01, 2008

Defaults should never be trusted

I've performed a few audits recently and this one keeps popping up, again and again!

Please be aware that the defaults provided when defining a new storage pool will turn on collocation by GROUP. If this default is specified and no collocation groups are defined then the TSM server will collocate data by NODE!

Pleasant little surprise eh?

COLlocate
Specifies whether the server attempts to keep data belonging to a single client node, group of client nodes, or client file space stored on as few volumes as possible. This parameter is optional. The default value is GROUP.

If you specify COLLOCATE=GROUP but do not define any collocation groups or if you specify COLLOCATE=GROUP but do not add nodes to a collocation group, data is collocated by node.

It never hurts to double check everything, here's some queries I use all the time to sanity check collocation: (replace the stgpool_name as needed)
  • select stgpool_name, access, collocate, maxscratch, reusedelay from stgpools
  • select count(distinct node_name) as "Number of Nodes", volume_name from volumeusage where stgpool_name='%_TAPE' group by volume_name order by "Number of Nodes" desc
  • select count(distinct volume_name) as "Number of Tapes", node_name from volumeusage where stgpool_name='%_TAPE' group by node_name, stgpool_name order by "Number of Tapes" desc
  • select count(distinct volume_name) as "Number of Tapes", node_name, stgpool_name from volumeusage group by node_name, stgpool_name order by "Number of Tapes" desc

1 comment:

  1. When I discovered this I submitted a design change request to IBM to fix it. They said they would consider doing so in a future release of TSM. In the meantime, I use the following to check for nodes not assigned to collocation groups:

    select node_name, collocgroup_name from nodes where collocgroup_name is null

    ReplyDelete