1 :Info: manage_volume_pool: mvp:  2020-06-15  manage_volume_pool, mvp
   2 
   3 Syntax as a command:
   4    mvp OPERATION {args} {-control_args}
   5 
   6 
   7 Syntax as an active function:
   8   [mvp OPERATION {args} {-control_args}]
   9 
  10 
  11 Function:  allows a user or a group of users to regulate the use of a
  12 predefined set of volumes (tape reels, etc.).  The concept of volume
  13 sets as used with tape_ansi_/tape_ibm_ is also supported.  The default
  14 volume pool for each user pool is named Person_id.volumes and exists in
  15 the user's home directory.  This default can be reset via the use
  16 operation.
  17 
  18 
  19 Arguments:
  20 OPERATION
  21    identifies the operation to be performed.  See "List of operations"
  22    below.
  23 args
  24    are optional arguments associated with the various operations.  They
  25    can be names of volumes to be acted upon according to the operation
  26    given.
  27 
  28 
  29 List of operations:
  30    For details of any operation, type:  help mvp.OPERATION
  31 add, a
  32    adds selected volumes to the current volume pool.
  33 allocate, alloc
  34    allocates freed or reserved volume sets for use, changing their
  35    state to "allocated".
  36 append_volume_set, appvs
  37    appends selected volumes to an existing volume set.
  38 delete, dl
  39    removes selected volume sets from the current volume pool.
  40 free
  41    changes state of previously allocated volume sets to "freed".
  42 list, ls
  43    lists information about selected volume sets in the volume pool.
  44 
  45 
  46 print, pr, p
  47    displays pathname of the user's current volume pool.
  48 pv_expire, pvexp
  49    changes state of selected volume sets to "expired".
  50 remove_volume_set, rmvs
  51    removes selected secondary volumes from a volume set.
  52 reserve, rsv
  53    reserves a selected volume set for use by the current process,
  54    changing its state to "reserved".
  55 reuse
  56    changes state of a given number of allocated volume sets to "freed",
  57    then reallocates them for a new use, again changing their state to
  58    "allocated".
  59 
  60 
  61 set
  62    changes the comment or expiration date fields of selected volume
  63    sets.
  64 test
  65    tests whether selected volume sets are in a given state.
  66 use, u
  67    sets pathname of volume pool to be used in subsequent mvp commands
  68    in the current process.
  69 
  70 
  71 Control arguments:
  72 -control_args
  73    vary by operation being performed.  For detail on a particular
  74    operation, type:  help mvp.OPERATION
  75 
  76 
  77 Notes on expiration dates:
  78 There are two kinds of expiration dates.  One is associated with the
  79 physical volume and is referenced with -pv_expire.  Physical volume
  80 expiration dates are useful for keeping track of old and bad tapes.
  81 
  82 The pv_expire date is checked whenever the volume state is changed to
  83 freed, allocated, or reserved, or when a volume is removed from or
  84 appended to another volume set.  When the current date reaches the
  85 pv_expire date of a volume in the set, such operations notice that the
  86 pv_expire date has passed.  The state of that volume set changes to
  87 expired and the user is notified.  The date is not checked when the
  88 reuse operation is performed.
  89 
  90 Such expired volume sets can only be deleted or freed from the volume
  91 pool; if freed, the expiration date can be reset using the set key.
  92 
  93 
  94 The other optional expiration date applies only to an entire allocated
  95 volume sets.  It is referenced by -expire and refers to the time when
  96 the information on the volume set is considered no longer relevant.
  97 
  98 This date can be set at allocation time.  When the volume set is
  99 freed, the expire date field is cleared.  This expire date is useful
 100 for keeping track of recycling volume sets.  There is no state
 101 associated with this expire date.
 102 
 103 Both kinds of expiration dates have to be explicitly set by the user
 104 via control arguments or the set key.  If not set, the default is for
 105 volume sets never to expire.
 106 
 107 
 108 Notes on querying:
 109 The user is asked whether to continue a requested action (allocate,
 110 reserve, etc.) when the action can only be performed on some but not
 111 all volume names specified.  The -force control argument can be used
 112 to override the query.  If the user answers "no," the entire request
 113 is aborted and no action is taken.  If the user replies "yes" to the
 114 query or -force is used, the request is performed on the volume sets
 115 eligible and a message is printed listing the volume sets on which no
 116 action was taken.
 117 
 118 
 119 Notes on active function:
 120 When mvp is invoked as an active function, a successful action returns
 121 "true", a list of volume names, or pathnames, depending on the actual
 122 operation being performed.  In the case of a partial success when an
 123 attempt to query the user is made, active_fnc_err_ is called; however,
 124 its action is overridden when -force or -fexp is used.  This results
 125 in returning "true" or the partial list of volume names successfully
 126 acted upon.
 127 
 128 
 129 :Info: mvp.add: mvp.a:  2020-06-15  mvp add operation
 130 
 131 
 132 Syntax as a command:
 133    mvp a VOL_NAMEs {-control_args}
 134 
 135 
 136 Syntax as an active function:
 137   [mvp a VOL_NAMEs {-control_args}]
 138 
 139 
 140 Function: adds selected volumes to the user's volume pool.  Each
 141 volume added is considered a volume set of size one.
 142 
 143 
 144 Arguments:
 145 add, a
 146    is the operation being performed.
 147 VOL_NAME
 148    label of a volume being added to the pool.  Several physical
 149    volumes may be added by one command.
 150 
 151 
 152 Control arguments:
 153 -force, -fc
 154    adds the volumes it can without aborting the entire request or
 155    querying the user (see mvp.info "Notes on Querying").
 156 -pv_expire DATE, -pvexp DATE
 157    sets the expiration date of all given physical volumes to DATE.
 158    DATE must be acceptable to convert_date_to_binary_.  (See mvp.info
 159    "Notes on expiration dates".)
 160 
 161 
 162 Notes: Failure can occur when the volume to be added already exists in
 163 the volume pool.
 164 
 165 As an active function, "true" is returned if all volumes were
 166 successfully added.
 167 
 168 
 169 :Info: mvp.allocate: mvp.alloc:  2020-06-15  mvp allocate operation
 170 
 171 
 172 Syntax as a command:
 173    mvp alloc {VOLUME_SELECTION} {-control_args}
 174 
 175 
 176 Syntax as an active function:
 177   [mvp alloc {VOLUME_SELECTION} {-control_args}]
 178 
 179 
 180 Function: allocates the selected free or reserved volume sets by
 181 changing their state to "allocated" (in-use).
 182 
 183 As an active function, the allocated VOL_NAMEs are returned.
 184 
 185 
 186 Arguments:
 187 allocate, alloc
 188    is the operation being performed.
 189 
 190 
 191 Arguments for volume selection:
 192    The VOLUME_SELECTION argument gives specific VOL_NAMEs; or gives
 193    zero, one, or two volume selector control arguments.
 194 VOL_NAMEs
 195    name of one or more specific freed or reserved volume sets to be
 196    allocated.  The argument can be the label of a primary or secondary
 197    volume in the volume set.  Several names may be given to select
 198    multiple sets as one allocation.  Reserved volume sets must be
 199    specified by their VOL_NAME.
 200 
 201 
 202 Control arguments for volume selection:
 203    Selects free or reserved volume sets based on their attributes:
 204    -volume_size selects a volume set having a given number of volumes;
 205    and -first selects from most-recently-freed volume sets while -last
 206    selects from least-recently-freed volume sets.  If neither
 207    VOL_NAMEs nor volume selection control args are given, the default
 208    is -last 1.
 209 -volume_size {N}, -vs {N}
 210    allocates a volume set of size N.  If N is not given, the default
 211    size is 1.  If there are no volume sets of size N, an error message
 212    occurs.  The test operation can be used to avoid such errors.
 213    If more than one volume set of size N exists and neither -first nor
 214    -last is used, then the last free (least recently freed) volume set
 215    of size N is assigned.  If -vs is not given, the default action is
 216    to consider volume sets of any size in the pool.
 217 
 218 
 219 -first {N}, -ft {N}
 220    allocates N most-recently-freed volume sets in the pool (freed
 221    volume sets that have the most recent state change date).
 222    (default for N: 1)
 223 -last {N}, -lt {N}
 224    allocates N least-recently-freed volume sets in the pool.
 225    (default for N: 1)
 226 
 227 
 228 Control arguments:
 229 -comment STR, -com STR
 230    designates STR as the comment  associated with the chosen
 231    vol_names.
 232 -expire DATE, -exp DATE
 233    sets the expiration date associated with the data on the
 234    allocated vol_names.  (See mvp.info "Notes on expiration dates").
 235 -force, -fc
 236    assigns the volume sets it can without aborting the entire
 237    request or querying the user (see mvp.info "Notes on querying").
 238 
 239 
 240 Notes:
 241 Failure can occur if the volume sets to be allocated do not exist in
 242 the volume pool, if they are not in the free or reserve state, or if N
 243 free volume sets are requested and fewer than N freed volume sets
 244 exist in the pool.
 245 
 246 
 247 :Info: mvp.append_volume_set: mvp.appvs:  2020-06-15  mvp append_volume_set operation
 248 
 249 
 250 Syntax as a command:
 251    mvp appvs PRIMARY_VOL_NAME {VOLUME_SELECTION} {-control_args}
 252 
 253 
 254 Syntax as an active function:
 255   [mvp appvs PRIMARY_VOL_NAME {VOLUME_SELECTION} {-control_args}]
 256 
 257 
 258 Function: appends volumes identified by the VOLUME_SELECTION to the
 259 volume set specified by the PRIMARY_VOL_NAME.  The pv_expire date of
 260 each volume is checked before appending; if this date has passed (i.e,
 261 is less than the current date), the state of the volume becomes
 262 expired, a message to that effect is printed, and the volume is not
 263 appended.
 264 
 265 As an active function, the volume names that were appended to the
 266 volume set are returned.  If a multiple volume set is appended, all
 267 the volumes in the set are returned.
 268 
 269 
 270 Arguments:
 271 append_volume_set, appvs
 272    is the operation to be performed.
 273 PRIMARY_VOL_NAME
 274    is the label of the primary volume of the set to be extended.
 275 
 276 
 277 Arguments for volume selection:
 278    The VOLUME_SELECTION argument gives specific VOL_NAMEs; or gives
 279    zero, one, or two volume selector control arguments.
 280 VOL_NAMEs
 281    primary volume of one or more free volume sets to be appended;
 282    VOL_NAME cannot be a secondary volume of another volume set.  The
 283    pv_expire date of each VOL_NAME is checked before appending; if the
 284    date has passed (i.e., less than the current date), the state of
 285    the volume becomes expired, a message is printed to that effect,
 286    and the volume is not appended.
 287 
 288 
 289 Control arguments for volume selection:
 290    Selects free volume sets based on their attributes: -volume_size
 291    selects a volume set having a given number of volumes; and -first
 292    selects most-recently-freed volume sets while -last selects from
 293    least-recently-freed volume sets.  If neither VOL_NAMEs nor volume
 294    selection control args are given, the default is -last 1 (one
 295    volume set that has been in the freed state for the longest time).
 296 -volume_size {N}, -vs {N}
 297    appends a volume set of size N.  If N is not given, the default
 298    size is 1.  If more than one volume set of size N exists and
 299    neither -first nor -last is used, then the least-recently-freed
 300    volume set of size N is appended.  If there are no volume sets of
 301    size N, an error message occurs.  The test operation can be used to
 302    avoid such errors.  If -vs is not given, the default action is to
 303    consider volume sets of any size in the pool.
 304 
 305 
 306 -first {N}, -ft {N}
 307    appends N most-recently-freed volume sets in the pool (freed volume
 308    sets that have the most recent state change date).
 309    (default for N: 1)
 310 -last {N}, -lt {N}
 311    appends N least-recently-freed volume sets in the pool.
 312    (default for N: 1)
 313 
 314 
 315 Control arguments:
 316 -force, -fc
 317    appends the volumes it can without aborting the entire request or
 318    querying the user (see mvp.info "Notes on querying").
 319 
 320 
 321 Notes: The vol_names argument and -ft, -lt, or -vs are mutually
 322 exclusive.  If -vs is not chosen, the default action is to consider
 323 volume sets of any size in the pool.
 324 
 325 Failure can occur when a given volume set does not exist or when a
 326 volume to be appended is not free.
 327 
 328 
 329 :Info: mvp.delete: mvp.dl:  2020-06-15  mvp delete operation
 330 
 331 
 332 Syntax as a command:
 333    mvp dl VOL_NAMEs {-control_arg}
 334 
 335 
 336 Syntax as an active function:
 337   [mvp dl VOL_NAMEs {-control_arg}]
 338 
 339 
 340 Function: deletes the specified physical volume sets from the current
 341 volume pool.  Volume sets must be in the freed, reserved, or
 342 expired state to be deleted.
 343 
 344 As an active function, a successful delete returns "true"; an
 345 unsuccessful delete returns "false".
 346 
 347 
 348 Arguments:
 349 delete, dl
 350    is the operation being performed.
 351 VOL_NAME
 352    is a label that identifies a volume set to be deleted.  If VOL_NAME
 353    is part of a multiple volume set, all volumes in the set are
 354    deleted from the pool; if it is a secondary_vol_name, the volume
 355    set to which the secondary volume belongs is deleted.
 356 
 357 
 358 Control arguments:
 359 -force, -fc
 360    deletes the volume sets it can without aborting the entire
 361    request or querying the user (see mvp.info "Notes on Querying").
 362 
 363 
 364 :Info: mvp.free:  2020-06-15  mvp free operation
 365 
 366 
 367 Syntax as a command:
 368    mvp free VOLUME_SELECTION {-control_args}
 369 
 370 
 371 Syntax as an active function:
 372   [mvp free VOLUME_SELECTION {-control_args}]
 373 
 374 
 375 Function:
 376 Changes the state of volume sets in the current volume pool to
 377 "freed".  Upon freeing a volume set, the pv_expire date of each volume
 378 in the set is checked; if one of these dates is passed, the state of
 379 the volume set becomes expired and a message to that effect is
 380 printed.
 381 
 382 In the case of an allocated volume to be freed, the expire date is
 383 checked first; if this date has not passed, the volume set is not
 384 freed and a message to that effect is printed.
 385 
 386 As an active function, a successful free returns "true," otherwise
 387 "false" is returned.
 388 
 389 
 390 Arguments:
 391 free
 392    is the operation being performed.
 393 
 394 
 395 Arguments for volume selection:
 396    The VOLUME_SELECTION argument gives specific VOL_NAMES; or gives a
 397    volume selector control argument to select volume sets.  Either
 398    VOL_NAMEs may be given, or one of the selectors: -expire -match
 399    -force.
 400 VOL_NAMEs
 401    names of one or more specific volume sets to be freed.  If VOL_NAME
 402    is part of a multiple volume set, all volumes in the set are freed;
 403    if it is a secondary_vol_name, the volume set to which the
 404    secondary volume belongs is freed.
 405 
 406 
 407 Control arguments for volume selection:
 408    Selects volume sets based on their attributes.  Either VOL_NAMEs
 409    may be given, or one of the selectors: -expire -match -force.
 410 -expire, -exp
 411    frees all allocated volume sets for which the respective
 412    expiration date has been passed.
 413 -match STR
 414    frees only those volume sets whose comment contains STR as a
 415    substring.  The volume sets can be in the allocated, reserved, or
 416    expired state.  Both expirations dates are first checked before
 417    freeing the volume sets.
 418 -force, -fc
 419    frees the volume sets it can without aborting the entire request
 420    or querying the user (see mvp.info "Notes on querying").
 421 
 422 
 423 Control arguments:
 424 -force_expire, -fexp
 425    overrides the checking of the expire date when -match is given,
 426    freeing allocated volume sets with an unexpired expiration date.
 427 -brief, -bf
 428    suppresses the pv_expire message or the allocation expire message
 429    when appropriate.
 430 
 431 
 432 :Info: mvp.list: mvp.ls:  2020-06-15  mvp list operation
 433 
 434 
 435 Syntax as a command: mvp ls {VOL_NAMEs} {-control_args}
 436 
 437 
 438 Syntax as an active function: [mvp ls {VOL_NAMEs} {-control_args}]
 439 
 440 
 441 Function: lists information about the specified volume sets or about
 442 all volume sets in the pool if no arguments are supplied.  The list is
 443 printed in state change date order with the volumes whose states
 444 changed most recently listed first.
 445 
 446 As an active function, list with no control arguments returns a list
 447 of the primary volume names of all volume sets; otherwise, the control
 448 arguments determine the field(s) returned for each selected volume.
 449 
 450 
 451 Arguments:
 452 list, ls
 453    the operation being performed.
 454 VOL_NAME
 455    name of a volume whose attributes are displayed.  (default: display
 456    all volumes)
 457 
 458 
 459 Control arguments:
 460 -header, -he
 461    prints the header information of the list display.  (default)
 462 -no_header, -nhe
 463    suppresses printing of the header.
 464 -total, -tt
 465    prints the total number of volume sets in the pool.
 466 
 467 
 468 Control arguments for field selection:
 469    These control arguments determine which fields are displayed.
 470 -comment, -com
 471    lists only the comment field of the designated volumes.
 472 -default_format, -dfmt
 473    lists the name, state date, state, and comments fields.
 474 -expire_date, -edt
 475    lists the expiration date field of the given allocated volume
 476    sets.
 477 -name, -nm
 478    lists the volume name field of the selected volume sets.
 479 
 480 
 481 -pv_expire_date, -pvedt
 482    lists the physical expiration date field of the supplied physical
 483    volume sets.
 484 -state
 485    lists only the state field of the indicated volume sets.
 486 -state_date, -sdt
 487    lists only the state change date field of the designated volume
 488    sets.
 489 
 490 
 491 Control arguments for volume state selection:
 492    Volume sets can be listed according to what state they are in:
 493    allocated, freed, expired, or reserved.  The default format is
 494    displayed unless field control arguments are also selected.  Give
 495    either VOL_NAMEs or one of the control arguments listed below.
 496 -all_states, -ast
 497    lists all volume sets in the pool. (default)
 498 -allocate, -alloc
 499    lists only those volume sets that are allocated.
 500 
 501 
 502 -free
 503    lists only those volume sets that are freed.
 504 -pv_expire, -pvexp
 505    lists only those volume sets that are in the expired state.
 506 -reserve, -rsv
 507    lists only those volume sets that are reserved.
 508 
 509 
 510 Control arguments for volume attribute selection:
 511    These control arguments allow one to list volume sets by criteria
 512    other than the volume state or in combination with the volume state
 513    control arguments.  The default format display is used unless field
 514    arguments are given.  This control arguments are mutually exclusive
 515    with specific VOL_NAME arguments.
 516 -expire, -exp
 517    lists allocated volume sets if their expiration date has been
 518    passed.
 519 -first {N}, -ft {N}
 520    lists the first N volume sets in state change date order (those
 521    whose state has changed most recently).  (default for N: 1)
 522 -last {N}, -lt {N}
 523    lists the last N volume sets in state change date order.  (default
 524    for N: 1)
 525 
 526 
 527 -match STR
 528    lists only those volume sets whose comment contains STR as a
 529    substring.
 530 -volume_size {N}, -vs {N}
 531    lists only the volume sets of size N.  If -vs is not given, all
 532    volume sets of any size are listed. (default for N: 1)
 533 
 534 
 535 :Info: mvp.print: mvp.pr: mvp.p:  2020-06-15  mvp print operation
 536 
 537 
 538 Syntax as a command: mvp p
 539 
 540 
 541 Syntax as an active function: [mvp p]
 542 
 543 
 544 Function: prints the pathname of the current volume pool segment.  As
 545 an active function, the pathname is returned.
 546 
 547 
 548 Arguments:
 549 print, pr, p
 550    the operation being performed.
 551 
 552 
 553 :Info: mvp.pv_expire: mvp.pvexp:  2020-06-15  mvp pv_expire operation
 554 
 555 
 556 Syntax as a command:
 557    mvp pvexp VOL_NAMEs {-control_args}
 558 
 559 
 560 Syntax as an active function:
 561   [mvp pvexp VOL_NAMEs {-control_args}]
 562 
 563 
 564 Function: changes the state of the selected volume sets and their
 565 secondary volumes to "expired".  The set key can be used to reset
 566 the physical volume expiration date.  Volume sets cannot be in the
 567 allocated state.  If vol_name is a secondary_vol_name, the state of the
 568 volume set to which the secondary volume belongs becomes "expired".
 569 
 570 The active function returns "true" if all indicated VOL_NAMEs are
 571 successfully expired; "false" otherwise.
 572 
 573 
 574 Arguments:
 575 pv_expire, pvexp
 576    the operation being performed.
 577 VOL_NAMEs
 578    name of one or more volume sets to be changed to "expired" state.
 579 
 580 
 581 Control arguments:
 582 -force, -fc
 583    expires the volume sets it can without aborting the entire
 584    request or querying the user (see mvp.info "Notes on querying").
 585 
 586 
 587 :Info: mvp.remove_volume_set: mvp.rmvs:  2020-06-15  mvp remove_volume_set operation
 588 
 589 
 590 Syntax as a command:
 591  mvp rmvs PRIMARY_VOL_NAME SECONDARY_VOLUME_SELECTION {-control_args}
 592 
 593 
 594 Syntax as an active function:
 595 [mvp rmvs PRIMARY_VOL_NAME SECONDARY_VOLUME_SELECTION {-control_args}]
 596 
 597 
 598 Function:
 599 Removes volumes identified by SECONDARY_VOLUME_SELECTION from the
 600 volume set named PRIMARY_VOL_NAME.  The volumes removed are placed in
 601 the pool as volume sets of size 1 in the free state.
 602 
 603 The primary volume of a volume set cannot be removed unless -all is
 604 used.
 605 
 606 If the volume set supplied is in the allocated state, the expire date
 607 is checked first.  If this date has not passed, the request is aborted
 608 and a message is printed.
 609 
 610 Upon freeing each volume, its pv_expire date is checked; if this date
 611 is passed, the state of the volume changes to "expired" and a message
 612 to that effect is printed.
 613 
 614 
 615 As an active function, the vol_names removed from the volume set are
 616 returned.
 617 
 618 
 619 Arguments:
 620 remove_volume_set, rmvs
 621    the operation being performed.
 622 PRIMARY_VOL_NAME
 623    name of the primary volume which identifies the volume set from
 624    which individual volumes are removed.
 625 
 626 
 627 Arguments for secondary volume selection:
 628    The SECONARY_VOLUME_SELECTION arguments gives specific
 629    SECONDARY_VOL_NAMEs; or gives one of the secondary volume selection
 630    control arguments.
 631 SECONDARY_VOL_NAMEs
 632    names of other volumes to be removed from the selected volume set.
 633 
 634 
 635 Control arguments for secondary volume selection:
 636    One of the following must be given if SECONDARY_VOLUME_NAMEs are
 637    omitted.
 638 -all, -a
 639    breaks the volume set into individual volume sets of size 1, each
 640    with a state of "freed" (or "expired", as explained above); this
 641    state change also occurs for the primary volume of the set.
 642 -pv_expire, -pvexp
 643    removes all volumes of the designated volume set whose pv_expire
 644    date has been passed, and puts them in the pool with the
 645    "expired" state.
 646 
 647 
 648 Control arguments:
 649 -brief, -bf
 650    suppresses the pv_expire message or the volume-not-removed
 651    message when appropriate.
 652 -force, -fc
 653    removes the volumes it can without aborting the entire request or
 654    querying the user (see mvp.info "Notes on querying").
 655 -force_expire, -fexp
 656    overrides the checking of the expire date, freeing allocated
 657    volume sets with an unexpired expiration date.
 658 
 659 
 660 Notes:
 661 Failure can occur when the volumes to be removed do not exist in the
 662 volume set.
 663 
 664 
 665 :Info: mvp.reserve: mvp.rsv:  2020-06-15  mvp reserve operation
 666 
 667 
 668 Syntax as a command:
 669    mvp rsv {VOLUME_SELECTION} {-control_args}
 670 
 671 
 672 Syntax as an active function:
 673   [mvp rsv {VOLUME_SELECTION} {-control_args}]
 674 
 675 
 676 Function:
 677 Reserves the indicated free volume sets for allocation by the current
 678 process.  If VOL_NAME is a secondary volume name of a volume set, its
 679 containing volume set is reserved.
 680 
 681 Only a free volume set can be reserved.  A reserved volume set may be
 682 allocated only by the process that successfully reserved that volume
 683 set.
 684 
 685 Whenever an allocation is attempted for reserved volume, a check is
 686 made to see if the process that made the reservation is still active;
 687 if not, its reservation is cancelled and the volume can be allocated
 688 by the requesting process.
 689 
 690 
 691 When reserving, the pv_expire date is checked; if this date has
 692 passed, the state of the volume set becomes "expired" and message
 693 explains why the reservation failed.
 694 
 695 As an active function, a list of the volume set names reserved is
 696 returned.
 697 
 698 
 699 Arguments:
 700 reserve, rsv
 701    the operation being performed.
 702 
 703 
 704 Arguments for volume selection:
 705    The VOLUME_SELECTION argument gives specific VOL_NAMEs; or gives
 706    zero, one, or two volume selector control arguments.
 707 VOL_NAMEs
 708    name of one or more specific freed volume sets to be reserved.  The
 709    argument can be the label of a primary or secondary volume in the
 710    volume set.  Several names may be given to select multiple sets as
 711    one reservation.
 712 
 713 
 714 Control arguments for volume selection:
 715    Selects free volume sets based on their attributes: -volume_size
 716    selects a volume set having a given number of volumes; and -first
 717    selects from most-recently-freed volume sets while -last selects
 718    from least-recently-freed volume sets.  If neither VOL_NAMEs nor
 719    volume selection control arguments are given, the default is
 720    -last 1 (one value set that has been freed for the longest time).
 721 -volume_size {N}, -vs {N}
 722    reserves a volume set of size N.  If more than one volume set of
 723    size N exists and neither -first nor -last is given, then the
 724    last free volume set of size N is reserved.  (default for N: 1)
 725    If no volume set of size N exists, an error message occurs.  The
 726    test key can be used to avoid such errors.
 727 
 728 
 729 -first {N}, -ft {N}
 730    reserves N most-recently-freed volume sets. (default for N: 1)
 731 -last {N}, -lt {N}
 732    reserves N least-recently-freed volume sets. (default for N: 1)
 733 
 734 
 735 Control arguments:
 736 -comment STR, -com STR
 737    changes the comment associated with the reserved volume set to be
 738    STR.
 739 -force, -fc
 740    reserves the volumes it can without aborting the entire request
 741    or querying the user (see mvp.info "Notes on querying").
 742 
 743 
 744 Notes:
 745 Failure can occur if the specified vol_names to be reserved do not
 746 exist, if they are not in the free state, if no volume set of size N
 747 exists, or if there are only N free volumes in the pool and N+1
 748 volumes are selected to be reserved.
 749 
 750 
 751 :Info: mvp.reuse:  2020-06-15  mvp reuse operation
 752 
 753 
 754 Syntax as a command:
 755    mvp reuse {VOLUME_SELECTION} {-control_args}
 756 
 757 
 758 Syntax as an active function:
 759   [mvp reuse {VOLUME_SELECTION} {-control_args}]
 760 
 761 
 762 Function: allows one to free and reallocate a designated number of
 763 allocated volume sets, without needing to know their volume names.
 764 Before this operation is performed, the expire date is checked; if
 765 this date has not passed, the request is not performed and a
 766 message is printed.
 767 
 768 As an active function, the primary names of the volume sets that were
 769 reused are returned.
 770 
 771 
 772 Arguments:
 773 reuse
 774    the operation being performed.
 775 
 776 
 777 Arguments for volume selection:
 778    The VOLUME_SELECTION argument gives specific VOL_NAMEs; or gives
 779    zero, one, or two volume selector control arguments.
 780 VOL_NAMEs
 781    name of one or more specific allocated volume sets to be freed and
 782    reused.  The argument can be the label of a primary or secondary
 783    volume in the volume set.  Several names may be given to select
 784    multiple sets as one re-allocation.
 785 
 786 
 787 Control arguments for volume selection:
 788    Selects allocated volume sets based on their attributes:
 789    -volume_size selects a volume set having a given number of volumes;
 790    and -first selects from most-recently-freed volume sets while -last
 791    selects from least-recently-freed volume sets; and -match selects
 792    only from volume sets whose comment contains STR.  If neither
 793    VOL_NAMEs nor volume selection control args are given, the default
 794    is -last 1.
 795 -volume_size {N}, -vs {N}
 796    reallocates a volume set of size N. (default for N: 1)  If there
 797    are no volume sets of size N, an error message occurs.  If more
 798    than one volume set of size N exists and neither -first nor -last
 799    is used, then the oldest allocated (least recently allocated) volume
 800    set of size N is assigned.  If -vs is not given, the default action
 801    is to consider volume sets of any size in the pool.
 802 
 803 
 804 -first {N}, -ft {N}
 805    reallocates N most-recently-allocated volume sets in the pool
 806    (allocated volume sets that have the most recent state change
 807    date). (default for N: 1)
 808 -last {N}, -lt {N}
 809    reallocates N least-recently-allocated volume sets in the pool.
 810    (default for N: 1)
 811 -match STR
 812    reallocates all volume sets whose comment contains the string
 813    STR.
 814 
 815 
 816 Control arguments:
 817 -brief, -bf
 818    suppresses the reuse request message not performed.
 819 -force, -fc
 820    reuses the volume sets it can without aborting the entire request
 821    or querying the user (see mvp.info "Notes on Querying").
 822 -force_expire, -fexp
 823    overrides the checking of the expire date and reallocates the
 824    specified volume sets with an unexpired expiration date.
 825 
 826 
 827 Notes:
 828 Failure can occur if N allocated volume sets are requested and fewer
 829 than N allocated volume sets meeting specifications exist in the pool.
 830 
 831 
 832 :Info: mvp.set:  2020-06-15  mvp set operation
 833 
 834 
 835 Syntax as a command:
 836    mvp set VOL_NAMEs -control_args
 837 
 838 
 839 Syntax as an active function:
 840   [mvp set VOL_NAMEs -control_args]
 841 
 842 
 843 Function: sets the comment, expiration date or state change date
 844 fields of the specified volume sets.
 845 
 846 As an active function, "true" is returned when the date and/or
 847 comment has been successfuly changed for all designated vol_names.
 848 
 849 
 850 Arguments:
 851 set
 852    the operation being performed.
 853 VOL_NAMEs
 854    name of one or more volumes in the pool.  Interpretation of
 855    VOL_NAME varies for each of the control arguments below.
 856 
 857 
 858 Control arguments:
 859 -comment STR, -com STR
 860    sets the comment field of the designated VOL_NAMEs to STR.  If
 861    the volume name is secondary, the comment field of the volume set
 862    to which it belongs is changed.
 863 -expire DATE, -exp DATE
 864    sets the expiration date associated with allocated VOL_NAMEs
 865    selected.  The selected volumes must be in the allocated state,
 866    otherwise an error message is printed.  If a secondary volume
 867    name is given, the expire date of the allocated volume set
 868    containing that secondary volume is changed.  The DATE must be
 869    acceptable to convert_date_to_binary_.  (See mvp.info
 870    "Notes on Expiration Dates.")
 871 
 872 
 873 -pv_expire DATE, -pvexp DATE
 874    sets the physical volume expiration date of the specified
 875    VOL_NAMEs to DATE.  The volume set state does not change to
 876    "expired" until the next state change operation is attempted
 877    (via the alloc, free, and rsv keys) after that DATE is reached.
 878    If the volume name is primary, the expiration date is reset to DATE
 879    for only that primary volume unless followed by -secondary_volumes.
 880    Secondary volumes of a volume set can be selected individually to
 881    set their pv_expire date.  (See mvp.info "Notes on Expiration
 882    Dates.")
 883 -secondary_volumes, -svol
 884    is used in conjunction with -pvexp to indicate that the secondary
 885    volumes of the primary volume name preceeding -svol should also be
 886    set to the given pv_expire date.
 887 
 888 
 889 -state_date DATE, -stdt DATE
 890    sets the date associated with the volume state for the selected
 891    volumes.  If the volume name is primary, the expiration date is
 892    set for all secondary volumes as well.
 893 
 894 
 895 :Info: mvp.test:  2020-06-15  mvp test operation
 896 
 897 
 898 Syntax as a command:
 899    mvp test {VOLUME_SELECTION} {-control_args}
 900 
 901 
 902 Syntax as an active function:
 903   [mvp test {VOLUME_SELECTION} {-control_args}]
 904 
 905 
 906 Function: tests what state the specified volume sets are in.
 907 
 908 As an active function, "true" is returned if a volume set with the
 909 state specified is found in the pool.
 910 
 911 
 912 Arguments:
 913 test
 914    the operation being performed.
 915 
 916 
 917 Arguments for volume selection:
 918    The VOLUME_SELECTION argument gives specific VOL_NAMEs; or gives
 919    volume selection control arguments which select volume sets to
 920    test.
 921 VOL_NAMEs
 922    name of one or more specific volume sets to be tested.  If the
 923    VOL_NAME is a secondary volume, the attributes of the volume set
 924    containing that volume are tested.
 925 
 926 
 927 Control arguments for volume selection:
 928    Selects volume sets based on their attributes.  These control
 929    arguments are mutually exclusive with VOL_NAME arguments.
 930 -first {N}, -ft {N}
 931    tests for N volume sets in the given or default state with the
 932    most-recently-changed state date.  (default for N: 1)
 933 -last {N}, -lt {N}
 934    tests for N volume sets in the given or default state with the
 935    least-recently-changed state date.  (default for N: 1)
 936    Failure can occur when N volume sets are requested and fewer than N
 937    volume sets in the test state are found in the pool.
 938 -match STR
 939    tests all volume sets whose comment contains the substring STR.
 940 
 941 
 942 -volume_size {N}, -vs {N}
 943    tests all volume sets of size N volumes.  (default for N: 1)  If no
 944    volume set of size N exists, an error message is returned.
 945 
 946 
 947 Control arguments for testing state:
 948 -allocate, -alloc
 949    tests whether any volume sets or vol_names selected are in the
 950    allocated state.
 951 -free
 952    tests whether any volume sets or vol_names given are in the freed
 953    state. (default)
 954 -pv_expire, -pvexp
 955    tests whether any volume sets or vol_names specified are in the
 956    expired state.
 957 -reserve, -rsv
 958    tests whether any volume sets or vol_names selected are in the
 959    reserved state.
 960 
 961 
 962 Notes: The vol_names argument and -ft, -lt, -match, or -vs are
 963 mutually exclusive.  If -vs is not given, the default action is to
 964 consider all volume sets of any size in the pool.
 965 
 966 
 967 :Info: mvp.use: mvp.u:  2020-06-15  mvp use operation
 968 
 969 
 970 Syntax as a command:
 971    mvp u {PATH}
 972 
 973 
 974 Syntax as an active function:
 975   [mvp u {PATH}]
 976 
 977 
 978 Function: specifies the pathname of the mvp segment to be used by
 979 future invocations of mvp in this process.
 980 
 981 As an active function, the pathname is returned.
 982 
 983 
 984 Arguments:
 985 use, u
 986    the operation being performed.
 987 PATH
 988    The pathname of a volume pool to be used by subsequent mvp commands
 989    in this process.  The "volumes" suffix is assumed. (default: the
 990    user's default volume pool, [home_dir]>[user name].volumes )  If
 991    the given segment is not found, a new volume pool is created.
 992 
 993 
 994 :hcom:
 995 
 996 
 997 
 998 /****^  HISTORY COMMENTS:
 999   1) change(2020-06-16,GDixon), approve(2021-02-22,MCR10088),
1000      audit(2021-05-27,Swenson), install(2021-05-27,MR12.6g-0056):
1001       A) Change contents to Operation Format now supported by the verify_info
1002          command.
1003                                                    END HISTORY COMMENTS */
1004 
1005 
1006