16.10 - ASSIGN - Teradata Database

Teradata Database Support Utilities

prodname
Teradata Database
vrm_release
16.10
created_date
June 2017
category
Configuration
featnum
B035-1180-161K

Purpose

The ASSIGN command reassigns a cylinder back to a specified AMP and storage type. ASSIGN is normally used after a cylinder that has been marked bad or quarantined has been repaired.

Some types of errors can cause the file system to identify several contiguous small cylinders as a single large cylinder. In these situations, the ASSIGN command can be used to break the apparent large cylinder back into its component small cylinders, and reassign the small cylinders back to their proper AMPs and storage types.

This command can be used only when Teradata Database is not running on the affected AMP.
This command should be used only to reassign repaired cylinders back to their original AMP vprocs. Improper use of this command can result in data corruption.

Syntax



cylid
The 64-bit identifier of a small or large cylinder, entered as a 16-character hexadecimal number.
TARGETVPROC=vproc_num_or_listor TAR=vproc_num_or_list
A list of the vproc numbers that identify the AMPs to which the repaired cylinders will be assigned.
For large cylinders, from which several small cylinders will be created, TARGETVPROC can be either:
  • a single vproc number, to which all small cylinders will be assigned

    If the BREAKUP option is specified, all resulting small cylinders are assigned to the specified vproc.

    If the BREAKUP option is not specified, the large cylinder itself will be assigned to the specified vproc.

  • a list of vproc numbers, one for each of the newly created small cylinders. The numbers must be separated by commas, and should enumerate in order the AMP numbers to which the resulting small cylinders will be assigned.

    If more than one vproc is specified, the BREAKUP option is implied.

For large cylinders, if TARGETVPROC is not specified, the resulting small cylinders are assigned to the AMP vproc to which the source large cylinder belonged.
TYPEOFCYL=typeofcyl
The type of storage to which the cylinders are assigned. Valid types are:
  • PERMCYL
  • WALCYL
  • JRNLCYL
  • GLOBALTEMPCYL
  • PSPOOLCYL
For large cylinders, if TYPEOFCYL is not specified, the resultant small cylinders are assigned the same type as the large cylinder they comprised. They can be assigned different cylinder types by subsequently running the ASSIGN command on each individual small cylinder.
BREAKUP or BREAK
Splits the specified large cylinder into smaller cylinders, each with a new cylinder ID.
The BREAKUP option should not be used for small cylinders.

If TARGETVPROC, TYPEOFCYL, or both are specified, the new cylinders will be explicitly assigned to the specified vproc and storage type.

Usage Notes

The ASSIGN command is related to the /R option of BADLIST and QUARLIST. ASSIGN re-associates a repaired cylinder back to a specific AMP, while the /R option releases a repaired cylinder back into the general storage pool.

For more information on the proper use of this command to repair durable file system structures, see Repairing Cylinders

Example: Assigning a cylinder to a specific AMP and storage type

The following example assigns a cylinder to a specific AMP and storage type.

Filer ==>
ssign 0006000200000044 typeofcyl=jrnlcyl targetvproc=vproc 3
Fri May 07, 2010  19:00:31: Assign command will assign Cylinder 0006000200000044 belonging to
vproc 2 with target cyltype of JOURNAL.
        Do you wish to continue? (Y/N)
y
The following is the extent reserved on amp 3:
     000600030000000C
 Please quit filer and restart the database for the changes to take effect.
Assign command completed successully

Example: Using the Filer ASSIGN command to break large cylinders into component small cylinders

Certain file system errors can cause several contiguous small cylinders to be misidentified as a single large cylinder. The ASSIGN command can break such large cylinders back into their component small cylinders, and assign the small cylinders back to their original AMP vprocs.

The following example demonstrates using the ASSIGN command to break a large cylinder into its six component small cylinders, and assigns the small cylinders back to their original AMP vprocs. In this case, the first cylinder is assigned to vproc 2, the next to vproc 4, and so forth.

Filer ==>
assign 000600020000003F targetvproc=2,4,3,1,2,1 break
Fri Jan 08, 2010  02:03:32: 
Assign command will split Cylinder 000600020000003F on vproc 2 and with the specified type.
        Do you wish to continue? (Y/N)
y

vproc  2 (0002)  response
The following are the reserved 6 small cylinders:
      0001000200000021
      0001000200000022
      0001000200000024
      0001000200000025
      0001000300000018
      0001000300000026
Please run rebuildci command on each small cylinder.
Then quit filer and restart the database for the changes to take effect.
Assign command completed successully