Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought














































                                  VAX DEC/CMS



                                  VERSION V3.0



                                 RELEASE NOTES


                                 14 April 1988






















































                                                               Page ii





                                   CONTENTS



        1       Introduction . . . . . . . . . . . . . . . . . . . . 1

        2       Computer Based Training  . . . . . . . . . . . . . . 1

        3       Installation Procedure Requirements  . . . . . . . . 2

        4       User Account Quotas and Privileges . . . . . . . . . 3

        5       Library Conversion . . . . . . . . . . . . . . . . . 3

        6       Functional Enhancements  . . . . . . . . . . . . . . 4

        6.1       New Commands For V3  . . . . . . . . . . . . . . . 5

        6.2       New Qualifiers For V3  . . . . . . . . . . . . . . 5

        6.3       Command Language Syntax Elements . . . . . . . . . 6

        6.3.1       Comma Lists  . . . . . . . . . . . . . . . . . . 6

        6.3.2       Relative Generation Numbers  . . . . . . . . . . 6

        6.3.3       CTRL/C Handling  . . . . . . . . . . . . . . . . 7

        6.4       Access Control . . . . . . . . . . . . . . . . . . 7

        6.4.1       SET ACL  . . . . . . . . . . . . . . . . . . . . 7

        6.4.2       SHOW ACL . . . . . . . . . . . . . . . . . . . . 7

        6.5       Automatic VERIFY/RECOVER . . . . . . . . . . . . . 8

        6.6       Binary Files . . . . . . . . . . . . . . . . . . . 8

        6.7       DIFFERENCES  . . . . . . . . . . . . . . . . . . . 8

        6.8       DELETE GENERATION  . . . . . . . . . . . . . . . . 8

        6.9       History and Notes  . . . . . . . . . . . . . . . . 9

        6.10      Notification . . . . . . . . . . . . . . . . . . . 9

        6.11      MODIFY GENERATION  . . . . . . . . . . . . . . . . 9

        6.12      Reference Copy Handling  . . . . . . . . . . . .  10
        6.13      REMARK . . . . . . . . . . . . . . . . . . . . .  11

        6.14      REMOVE GENERATION  . . . . . . . . . . . . . . .  12

        6.15      REPLACE  . . . . . . . . . . . . . . . . . . . .  12

        6.16      RESERVE  . . . . . . . . . . . . . . . . . . . .  12

        6.17      REVIEW . . . . . . . . . . . . . . . . . . . . .  13

        6.17.1      ACCEPT GENERATION  . . . . . . . . . . . . . .  13

        6.17.2      CANCEL REVIEW  . . . . . . . . . . . . . . . .  13

        6.17.3      MARK GENERATION  . . . . . . . . . . . . . . .  13

        6.17.4      REJECT GENERATION  . . . . . . . . . . . . . .  14

        6.17.5      REVIEW GENERATION  . . . . . . . . . . . . . .  14

        6.17.6      SHOW REVIEWS_PENDING . . . . . . . . . . . . .  14

        6.18      Search Lists . . . . . . . . . . . . . . . . . .  15

        6.18.1      SET NOLIBRARY  . . . . . . . . . . . . . . . .  15

        6.19      SHOW RESERVATIONS  . . . . . . . . . . . . . . .  15

        6.20      UNRESERVE  . . . . . . . . . . . . . . . . . . .  16

        6.21      New Callable Entry Points for V3 . . . . . . . .  16

        6.22      Modified Callable Entry Points for V3  . . . . .  17

        7       Known Problems and Restrictions  . . . . . . . . .  17

        7.1       CMS V2.3 and CMS T3.0 Libraries  . . . . . . . .  17

        7.2       Callback Routine Parameters  . . . . . . . . . .  18

        7.3       Merging Binary Files . . . . . . . . . . . . . .  18

        7.4       Depth of Library Directories . . . . . . . . . .  18

        7.5       Virtual Memory Requirements  . . . . . . . . . .  18

        7.6       Assigning Action ACEs to Multiple Objects  . . .  18

        7.7       Blanks Cannot Separate Multiple Action ACEs  . .  18

        7.8       Wildcard Indicator in Notification Messages  . .  19

        7.9       Restriction on CMS$FETCH_OPEN and Library Search

                  Lists  . . . . . . . . . . . . . . . . . . . . .  19
        7.10      Restriction on DIFFERENCES and Library Search

                  Lists  . . . . . . . . . . . . . . . . . . . . .  19





















































                                                              Page iii





        7.11      Input File Deletion  . . . . . . . . . . . . . .  20

        7.12      COPY ELEMENT with Many Elements/Generations  . .  20

        7.13      Generation Stack Overflow  . . . . . . . . . . .  20

        7.14      COPY ELEMENT/LIBRARY Messages  . . . . . . . . .  20

        7.15      Reference Copy Messages  . . . . . . . . . . . .  20

        7.16      VERIFY/REPAIR on a Library with REFREPAIR

                  Condition  . . . . . . . . . . . . . . . . . . .  20

        7.17      VERIFY/RECOVER on Valid Library  . . . . . . . .  21

        7.18      SET ACL/DELETE with Nonexistent Identifier . . .  21

        7.19      Syntax Errors on SET ACL and SHOW ACL  . . . . .  21

        7.20      Severity of Summary Messages . . . . . . . . . .  21

        7.21      Parameters on Negated Qualifiers . . . . . . . .  21

        8       Documentation Errata . . . . . . . . . . . . . . .  21

        8.1       RETRIEVE ARCHIVE . . . . . . . . . . . . . . . .  21























                                                                Page 1





     1  Introduction



          These are the release notes for DEC/CMS version V3.0.   This

          is  a major release containing new functionality beyond that

          available  in  previous   releases.    Included   below   is

          information  about  computer  based  training  for  DEC/CMS,

          requirements for installing and using  DEC/CMS,  information

          about  library  conversion,  descriptions  of  all  the  new

          features  implemented   in   V3.0,   descriptions   of   any

          restrictions   and   outstanding   bugs,   and   a  list  of

          documentation errors.





                                      NOTE



              Before installing and using  DEC/CMS  V3.0  for  the

              first  time,  you MUST use the VERIFY command on ALL

              existing libraries and correct any reported problems

              before  proceeding.   CMS  V2 libraries which do not

              verify correctly may not be convertible to  V3.   It

              is  extremely  important  to verify ALL V2 libraries

              BEFORE V3  is  installed,  as  the  V3  installation

              procedure  will remove CMS V2 from the system.  This

              is a precaution to prevent the accidental corruption

              of  CMS  V3  libraries by operating on them with CMS
              V2, as CMS V2 does not recognize V3 libraries.   CMS

              V3  will  properly  recognize V2 libraries, and will

              not  operate  on  them.   For  more  information  on

              library  conversion  please  refer  to  the "Library

              Conversion" section in this document.







     2  Computer Based Training



          Computer  based  training  is  available  for  VAX  DEC/Code

          Management  System, VAX DEC/Module Management System and VAX

          Language-Sensitive Editor.



          To order the "Using VAX DEC/CMS and  VAX  DEC/MMS"  computer

          based    training    (CBI)    or    the   "Using   the   VAX

          Language-Sensitive  Editor"  (CBI)  please  call  the   most

          convenient  location  listed  below.   Information  on other

          training available from  Digital  Equipment  Corporation  in

          CBI,  lecture/lab  and other formats can also be obtained at

          these numbers.



          Order numbers and media for these courses are:



                  Using VAX DEC/CMS and VAX       Using the VAX Language Sensitive

          Media   DEC/MMS                         Editor



          RX50    EY-8267E-RX                     EY-3491E-RX
          1600bpi EY-8267E-MT                     EY-3491E-MT

          TK50    EY-8267E-TK                     EY-3491E-TK





















































                                                                Page 2





          In the US and Canada call toll free 1-800-332-5656



          In  Europe  contact  your  local  training  center  at   the

          following telephone numbers:



          Training Center         Country         Telephone



          Barcelona               Spain           [34] (93) 2035200

          Brussels                Belgium         02/242.50.95

          Copenhagen              Denmark         +45-2-88.96.66

          Evry                    France          60.76.50.05

          Geneva                  Switzerland     [41] (+22) 31 56 55

          Highfield               England,UK      [44]-(734)-868008

          Nieuwegein              Holland         [31]-(3402)-65654

          Madrid                  Spain           [34] (91) 7347002

          Manchester              England         [44]-061-865-0831

          Milan                   Italy           [39]-(2)-617961

          Munich                  Germany         [49]-(89)-95072281

          Reading                 England, UK     [44]-(734)-868711

          Zurich                  Switzerland     [41]-(1)-3120555



          In the General International Area contact  training  centers

          at the following telephone numbers:



          Training Center         Location                Telephone


          Digital Equipment Corp  Brisbane                (61) (07) 221 6000

          (Australia)             Canberra                (61) (62) 47 3654

                                  Melbourne               (61) (03) 895 9595

                                  Sydney                  (61) (02) 412 5252

          Dig Eq do Brasil Ltda   Rio de Janeiro          (55) (21) 297-1122

                                  Sao Paulo               (55) (11) 575-0088

          Digital Eq of Canada    Montreal                (514) 340-7811

                                  Ottawa                  (613) 723-3634

                                  Toronto                 (416) 597-3429

                                  Vancouver               (604) 276-6902

          Digital Eq Caribbean    Puerto Rico             (809) 754-7575

          Digital Eq Hong Kong    Wanchai                 (852) (5) 861 4283

          Nihon Digital Eq Corp   Osaka                   (81) (06) 206-2771

          (Japan)                 Tokyo                   (81) (03) 989-7180

          Digital Eq de Mexico    Mexico                  (905) 687-6671

          Digital Equipment Corp  Auckland                (64) (09) 393 940

          (New Zealand)

          Digital Eq Corp PRC     Beijing                 (86) (1) 890721

          Digital Eq Corp Taiwan  Taiwan                  (886) (2) 776 8888

          Digital Eq Singapore    Singapore               (65) 336 3588





     3  Installation Procedure Requirements



          The installation should take approximately 10 to 45 minutes,

          depending   on   the   type   of   media   and  your  system

          configuration.  Before installing CMS,  you  must  have  the
          following privileges and resources:























































                                                                Page 3





           o  SETPRV  privileges,  or  CMKRNL,   WORLD,   and   SYSPRV

              privileges



           o  A minimum of 4600  blocks  of  free  disk  space  during

              installation; 1600 blocks are used after installation



           o  A minimum of 815  +  size  of  SYS$LIBRARY:DCLTABLES.EXE

              free global pages at installation



           o  A minimum of 7 free global sections at installation





                                      NOTE



              You must ensure that your system has  the  necessary

              global page and global section SYSGEN quotas for the

              installation.  Failure to do so could cause the  DCL

              tables to be corrupted in some situations.



          See the VAX DEC/Code Management  System  Installation  Guide

          for more details on installation procedure requirements.





     4  User Account Quotas and Privileges


          To use CMS, each account must have a minimum of  TMPMBX  and

          NETMBX privileges and the following minimum requirements:



           o  AST limit (ASTLM) of 14



           o  Buffered I/O byte count quota (BYTLM) of 14,000



           o  Enqueue quota (ENQLM) of 1



           o  Open file limit (FILLM) of 6



           o  Timer queue entry limit (TQELM) of 1



          See the VAX DEC/Code Management  System  Installation  Guide

          for more details on user account quotas and privileges.





     5  Library Conversion



          The  CMS  data  base  has  been  reorganized  in  V3.0   for

          performance  reasons.  In addition, the CMS library has been

          reorganized to store element data files  in  subdirectories,

          named  CMS$nnn, of the CMS library directory.  These changes

          require that libraries created with  any  V2  conversion  of

          DEC/CMS  be  converted  to the new format.  Conversion of V1

          libraries is no longer supported.



          To convert a library, you must use the CMS  CONVERT  LIBRARY
          <v2  library>  <v3 library> command, specifying the existing

          library and an empty directory to receive the  new  library.





















































                                                                Page 4





          The original library is not altered by the conversion.



          Conversion time depends highly on the number of  classes  in

          the library, the number of generations in those classes, and

          the size of the 00CMS.CMS file in the original library.  For

          example,  a  3000-block 00CMS.CMS file with 125 classes each

          holding approximately 300 generations will take  about  five

          hours  on  a  VAX  11/785 to convert.  The converted library

          will take up about the same amount  of  disk  space  as  the

          original library, although the new 00CMS.CMS is likely to be

          10 to 20% larger.



          Note that CMS does not propagate the security attributes  of

          existing  CMS  V2  library  files to the new CMS V3 library.

          The owner, UIC-based protection, and  access  control  lists

          (ACLs) of the files in the new CMS V3 library are determined

          by  the  default  values  for  the  process  performing  the

          conversion  or  by  the  ownership  and  access control list

          (specifically,  access  control  entries  (ACEs)  with   the

          OPTIONS=DEFAULT  clause  or  DEFAULT_PROTECTION ACEs) on the

          CMS V3 directory file itself.



          You may establish default ACE's on the CMS library directory

          before  performing  the  CMS CONVERT LIBRARY operation.  All

          element files and element file subdirectories created during
          conversion   will   automatically   inherit   the  specified

          protection  and  default  ACEs.   This  is  the  recommended

          procedure.   If  you set the security attributes on files in

          an  existing  CMS  V3  library  (i.e.   after   conversion),

          remember that you must VERIFY/REPAIR the library afterwards,

          so that CMS can restore the element data file headers.   See

          Section 8.2.6 of the Guide to VAX DEC/Code Management System

          for more information on using VERIFY/REPAIR.



          If you had used file  security  attributes  to  restrict  or

          control  access  to  your  CMS  V2  library, you may wish to

          review these in view of the functionality  provided  by  the

          new  CMS  internal  security  mechanisms, which allow you to

          specify ACLs on CMS elements, groups, classes,  and  library

          entities, such as the library history, the CMS commands, and

          the class, element, and group lists.  For  more  information

          refer  to  Chapter 6 of the Guide to VAX DEC/Code Management

          System.





     6  Functional Enhancements



          The following functional enhancements have been made to  VAX

          DEC/CMS since its V2.3 release.









                                                                Page 5





     6.1  New Commands For V3





           o  CMS ACCEPT GENERATION



           o  CMS CANCEL REVIEW



           o  CMS CONVERT LIBRARY



           o  CMS DELETE GENERATION



           o  CMS MARK GENERATION



           o  CMS MODIFY GENERATION



           o  CMS REJECT GENERATION



           o  CMS RETRIEVE ARCHIVE



           o  CMS REVIEW GENERATION



           o  CMS SET ACL



           o  CMS SET NOLIBRARY


           o  CMS SHOW ACL



           o  CMS SHOW ARCHIVE



           o  CMS SHOW REVIEWS_PENDING







     6.2  New Qualifiers For V3





                Qualifiers                  Command it Will Modify

                ----------                  ----------------------



                /FORMAT                     ANNOTATE and DIFFERENCES



                /REVIEW                     CREATE and MODIFY ELEMENT

                /NOREVIEW



                /AFTER                      CREATE and SET LIBRARY

                /BEFORE



                /SKIP                       DIFFERENCES



                /SENTINEL                   DIFFERENCES



                /IGNORE=HISTORY             DIFFERENCES

                /IGNORE=NOTES


                /PAGE_BREAK                 DIFFERENCES





















































                                                                Page 6





                /NOPAGE_BREAK



                /HISTORY                    FETCH and RESERVE

                /NOTES

                /POSITION



                /NOOUTPUT                   FETCH and RESERVE



                /UNUSUAL                    REMARK



                /GENERATION                 REMOVE GENERATION



                /IF_CHANGED                 REPLACE



                /GENERATION                 REPLACE and UNRESERVE

                /IDENTIFICATION_NUMBER



                /NOREPLACEMENTS             SHOW RESERVATIONS



                /CONFIRM                    VERIFY

                /NOCONFIRM



                /OCCLUDE                    most commands




     6.3  Command Language Syntax Elements



          DEC/CMS V3.0 command handling and syntax is the same  as  it

          was  in  V2,  with  the  additions  described  below.  For a

          complete description of commands, syntax,  and  expressions,

          refer to Chapter 9 of the Guide to VAX DEC/CMS.





     6.3.1  Comma Lists -



          All entity expressions, with  the  exception  of  generation

          expressions,    may    now   include   a   comma   list   of

          sub-expressions.  For example, a group expression may  be  a

          group  name,  a  full  or  partial  wild  card,  or  a  list

          containing combinations of both.





     6.3.2  Relative Generation Numbers -



          Generation expressions have been expanded to allow  positive

          and  negative  integer  offsets  as  part of the expression.

          These  offsets  are  used  to  indicate  a  generation   the

          specified  number  of  existing  generations  away  from the

          generation indicated by the previous part of the expression.

          For  example,  a generation expression of CLASS;-3 indicates

          the third generation before the generation that  is  in  the

          class CLASS.



                                                                Page 7





     6.3.3  CTRL/C Handling -



          The user's typing CTRL/C at any prompt, other than the  CMS>

          subsystem  prompt,  is  now  taken  to  mean that the action

          producing prompt is to be  aborted.   (Versions  of  DEC/CMS

          prior  to  V3.0  treated  CTRL/C  at  a prompt as a carriage

          return).





     6.4  Access Control



          Access control in DEC/CMS V3.0 is  accomplished  via  Access

          Control  Lists  (ACLs)  associated with various commands and

          CMS library entities.  Users manipulate and view  ACLs  with

          the commands described below.



          A CMS ACL is used to control access by groups  of  users  to

          CMS library objects.  They function much the same as ACLs in

          VMS.  The major difference is that while VMS ACLs  are  used

          to specify READ, WRITE, EXECUTE, and DELETE access, CMS ACLs

          are used to specify types of access more meaningful  to  CMS

          operations.   The  access types allowed depend on the object

          in question.




     6.4.1  SET ACL -



          SYNTAX:



            $ CMS SET ACL /qualifiers object-expression "remark"



          COMMAND DESCRIPTION:



            The SET ACL command is used to manipulate ACLs on  various

            objects  in the CMS library.  ACLs can be put on elements,

            groups, and classes, as well as on  the  lists  containing

            these  entities.  (An ACL on a list can be thought of as a

            directory ACL.) An ACL can be put  on  the  library  as  a

            whole,  and on the library history.  ACLs can also be used

            to control access to individual CMS commands.





     6.4.2  SHOW ACL -



          SYNTAX:



            $ CMS SHOW ACL /qualifiers object-expression



          COMMAND DESCRIPTION:



            Displays the  access  control  list  associated  with  the

            specified object or objects.



                                                                Page 8





     6.5  Automatic VERIFY/RECOVER



          DEC/CMS  will  now  perform  an   automatic   VERIFY/RECOVER

          operation  when  it  tries  to do any operation in a library

          that needs recovery.  A message will be issued informing the

          user that the library has been automatically recovered.





     6.6  Binary Files



          DEC/CMS  can  now  handle  any  valid  RMS  file,  with  the

          exception  of  directory  files.   In  addition to the files

          allowed by DEC/CMS V2, this includes  indexed  and  relative

          files,  as  well  as  files  with undefined record format or

          record attributes of NONE.  The handling of  these  formerly

          disallowed  file  structures is invisible to the user except

          when asking DEC/CMS V3.0 for either an annotated listing  or

          the differences between two such files.  In these cases, the

          user may select one of a set of built-in formatting  options

          via   the   /FORMAT  qualifier  on  both  the  ANNOTATE  and

          DIFFERENCES commands.





     6.7  DIFFERENCES


          DEC/CMS V3.0 supports the following additional qualifiers on

          the DIFFERENCES command:





           -  /[NO]PAGE_BREAK



           -  /SENTINEL=("begin delimiter","end delimiter")



           -  /SKIP=number-of-lines



          In addition  to  these  changes,  two  new  IGNORE  options,

          HISTORY  and  NOTES,  have been added as part of history and

          notes handling.  Also, the GENERATION_DIFFERENCES option can

          be specified on the /FORMAT qualifier to request that a list

          of  generation  differences  between  the  compared  element

          generations be included in the DIFFERENCES output.





     6.8  DELETE GENERATION



          SYNTAX:



            $ CMS DELETE GENERATION  element-expression  [/qualifiers]

            "remark"



          COMMAND DESCRIPTION:



            Causes generations of elements to be removed from the main
            library.  Once a generation has been deleted, it cannot be

            restored without restoring a backup copy of  the  library.





















































                                                                Page 9





            However,  the  /ARCHIVE[=file-specification] qualifier can

            be used on the DELETE  GENERATION  command  to  store  the

            contents  of  the  deleted  generations in an archive file

            external to the CMS library.  Refer to the descriptions of

            the  DELETE GENERATION, RETRIEVE ARCHIVE, and SHOW ARCHIVE

            commands in the Command Dictionary part of  the  Guide  to

            VAX DEC/CMS for additional information.



            You cannot delete a generation  that  is  the  head  of  a

            variant  line of descent without first deleting all of the

            generations in  that  variant  line.   You  cannot  delete

            generation  1  of  an  element.   Also, no generation that

            belongs to a class can be deleted.





     6.9  History and Notes



          Users can request inclusion of history and notes in  fetched

          or  reserved  generations when the element does not have the

          history or notes attributes enabled.  This  is  accomplished

          by  the  /HISTORY,  /NOTES, and /POSITION qualifiers on both

          the FETCH and RESERVE commands.





     6.10  Notification


          DEC/CMS V3.0 gives users the ability  to  specify  lists  of

          people  that  are to be notified when an event occurs in the

          library.  An event is the combination of a CMS operation  on

          one  of  the entities in the CMS library.  This notification

          is achieved by processing of one or more  "action"  ACEs  in

          the entity's access control list (ACL).



          DEC/CMS V3.0 provides a default  event  handler,  performing

          user  notification  through VMS Mail.  This event handler is

          in a separate shareable image, to allow the users to  supply

          their  own event handlers, as documented in Chapter 7 of the

          Guide to VAX DEC/CMS.





     6.11  MODIFY GENERATION



          SYNTAX:



            $ CMS  MODIFY  GENERATION  element-expression  /qualifiers

            "remark"



          COMMAND DESCRIPTION:



            Alters information associated with the  generation  of  an

            element.





                                                               Page 10





     6.12  Reference Copy Handling



          Reference copy handling in DEC/CMS V3.0 is now part  of  the

          processing  of  the command, rather than occurring after the

          command has completed.  Below is a list of commands and  the

          modified  behavior  they  will  exhibit  in  the presence of

          reference copy handling.



           -  CREATE ELEMENT



              Elements created will inherit  the  library's  reference

              copy  attribute.   If  the  library has reference copies

              enabled, the created element, by default, will also.  If

              the  library  does  not  have  reference copies enabled,

              neither will the element.



              The reference copy attribute cannot  be  enabled  on  an

              element  unless  the library reference copy attribute is

              enabled.



              When an element with the reference copy attribute set is

              created,  the  reference copy directory is checked for a

              file with the same name as the element.  If such a  file

              exists, CMS will not create the element and will issue a

              message explaining that  the  reference  copy  directory
              already  contains  a file with that name.  It will be up

              to the user to delete the offending file, choose  a  new

              name  for  the  element,  or choose a new reference copy

              directory for the library.



           -  DELETE ELEMENT



              DELETE ELEMENT will check for delete access to both  the

              element  data file and the corresponding reference copy.

              If the user does not have delete access to  both  files,

              the   command   will  fail,  issuing  an  error  message

              identifying which file could not be deleted.



           -  MODIFY ELEMENT



              Modifying element attributes will  cause  the  reference

              copy  to be created, updated, or deleted, as appropriate

              for the modification.  Changing the name will rename the

              reference  copy.  Disabling the reference copy attribute

              will delete the reference copy.  Enabling the  reference

              copy  attribute  will create a reference copy.  Enabling

              or disabling HISTORY or NOTES attributes will cause  the

              reference copy to be updated.



              The reference copy attribute cannot  be  enabled  on  an

              element  unless  the library reference copy attribute is

              enabled.


           -  MODIFY LIBRARY























































                                                               Page 11





              MODIFY LIBRARY is restricted so  that  /NOREFERENCE_COPY

              can  be  specified  only  if  reference copies have been

              disabled for every element in the library.  This ensures

              that  no  old  copies  are  left behind in the directory

              where someone  may  assume  they  are  the  most  recent

              reference copies.



              If /REFERENCE_COPY is used to change the directory spec,

              CMS  verifies  all  the  files in the new reference copy

              directory to ensure that they reflect the state  of  the

              library.   If  there  are any discrepancies, you will be

              notified that  the  reference  copy  directory  must  be

              repaired  with  the VERIFY/REPAIR command.  You will not

              be able to perform any other operations on  the  library

              until either the reference copies have been repaired, or

              MODIFY  LIBRARY  is  used  to  change  to  a   different

              reference copy directory.



           -  VERIFY



              VERIFY (and VERIFY/REPAIR) now check that the  reference

              copy  exists  for  each  element  with  reference copies

              enabled, and make sure there is no  reference  copy  for

              each  element without reference copies enabled.  It will

              then compare the reference copy  with  the  latest  main
              line generation as a validity check.  VERIFY/REPAIR will

              correct any problems by creating or  deleting  files  as

              necessary.



              The /[NO]CONFIRM qualifier has been added to the  VERIFY

              command  to control whether CMS prompts for confirmation

              prior to deleting any invalid reference copies during  a

              VERIFY/REPAIR  operation.   In  some cases, however, CMS

              will delete invalid reference copies without  prompting.

              Refer  to  the  description of the VERIFY command in the

              Command Dictionary part of the Guide to VAX DEC/CMS  for

              more information.



           -  REPLACE



              REPLACE will not succeed unless the reference  copy  can

              be  updated.   Errors  updating the reference copy cause

              the command to fail with appropriate error messages.







     6.13  REMARK



          DEC/CMS V3.0 allows users to place  remark  strings  in  the

          history  file  that indicate an unusual occurrence.  This is

          accomplished  by  the  /UNUSUAL  qualifier  on  the   REMARK

          command.



                                                               Page 12





     6.14  REMOVE GENERATION



          DEC/CMS V3.0 allows users to specify which generation of  an

          element  should be removed from a particular class.  This is

          accomplished by the  /GENERATION  qualifier  on  the  REMOVE

          GENERATION  command.   The  generation to be removed must be

          currently existing in the class.





     6.15  REPLACE



          DEC/CMS  V3.0  allows  a  given  user  to  reserve  multiple

          generations  of  the same element (including having multiple

          reservations of the same generation).   This  requires  that

          the  user  be  able  to  specify  which  generation is being

          replaced.   To  accomplish   this,   the   /GENERATION   and

          /IDENTIFICATION_NUMBER   qualifiers   have   been  added  to

          REPLACE.



          DEC/CMS V3.0 allows users to prevent the creation of  a  new

          generation  when  the  file  being  used  as  input  to  the

          replacement has not changed  from  the  original.   This  is

          accomplished  by  the  /IF_CHANGED  qualifier on the REPLACE

          command.


          DEC/CMS V3.0 allows users to REPLACE a  reservation  created

          by  another  user  if  the person attempting the REPLACE has

          BYPASS process privilege or is granted (via an  ACE)  BYPASS

          access to the element.  The REPLACE is logged as having been

          performed by the user entering the command, not the user who

          initially  held  the  reservation.  Any attempt to REPLACE a

          reservation held by another user  prompts  for  confirmation

          before doing so.





     6.16  RESERVE



          DEC/CMS V3.0 allows a user to reserve  multiple  generations

          of  an  element  and  to  reserve  the same generation of an

          element multiple times.   These  multiple  reservations  are

          only allowed if concurrent reservations are allowed.



          DEC/CMS V3.0 provides a means to mark  a  generation  of  an

          element  as  reserved  without  performing  any  file I/O or

          creating an  output  file.   This  is  accomplished  by  the

          /NOOUTPUT  qualifier  on the RESERVE command.  The /NOOUTPUT

          qualifier is also available on the FETCH  command,  but  the

          generation will not be marked as reserved.











                                                               Page 13





     6.17  REVIEW



          The following commands implement REVIEW functionality, which

          allows  users  to specify that new generations of an element

          must be reviewed before becoming a "normal" part of the  CMS

          library.



          In addition, the CREATE ELEMENT and MODIFY ELEMENT  commands

          now  take  the /[NO]REVIEW qualifier to control an element's

          review attribute,  which  indicates  whether  newly  created

          generations  of  that element should be automatically marked

          for review.



     6.17.1  ACCEPT GENERATION -



          SYNTAX:



            $ CMS  ACCEPT  GENERATION  element-expression  /qualifiers

            "remark"



          COMMAND DESCRIPTION:



            ACCEPT GENERATION marks a generation which currently has a

            review  pending  as  accepted, removing it from the review

            pending  list.   This  command  can  only   be   used   on
            generations which have a review pending.





     6.17.2  CANCEL REVIEW -



          SYNTAX:



            $  CMS  CANCEL   REVIEW   element-expression   /qualifiers

            "remark"



          COMMAND DESCRIPTION:



            CANCEL  REVIEW  cancels  a  generation's  pending  review,

            removing  it  from the review pending list.  The effect on

            the generation is the same as if  it  had  been  accepted.

            This  command can only be used on generations which have a

            review pending.





     6.17.3  MARK GENERATION -



          SYNTAX:



            $  CMS  MARK  GENERATION  element-expression   /qualifiers

            "remark"



          COMMAND DESCRIPTION:


            MARK  GENERATION  marks  a  generation  which   does   not























































                                                               Page 14





            currently  have a review pending as pending review, adding

            it to the review pending list.  This command can  only  be

            used on generations which do not have a review pending.





     6.17.4  REJECT GENERATION -



          SYNTAX:



            $ CMS  REJECT  GENERATION  element-expression  /qualifiers

            "remark"



          COMMAND DESCRIPTION:



            REJECT GENERATION marks a generation which currently has a

            review  pending  as  rejected, removing it from the review

            pending  list.   This  command  can  only   be   used   on

            generations which have a review pending.





     6.17.5  REVIEW GENERATION -



          SYNTAX:



            $ CMS  REVIEW  GENERATION  element-expression  /qualifiers
            "remark"



          COMMAND DESCRIPTION:



            REVIEW GENERATION  associates  a  review  comment  with  a

            generation  that  is currently under review.  This command

            can only be  used  on  generations  which  have  a  review

            pending.   Comments  entered with this command can be seen

            with the SHOW REVIEWS_PENDING command.





     6.17.6  SHOW REVIEWS_PENDING -



          SYNTAX:



            $   CMS    SHOW    REVIEWS_PENDING    [element-expression]

            [/qualifiers]



          COMMAND DESCRIPTION:



            Displays a list of those generations which  are  currently

            marked  for  review;  that is, those generations for which

            reviews are pending.  Also  displays  any  review  remarks

            that  have  been  associated  with  the  generation  under

            review.







                                                               Page 15





     6.18  Search Lists



          DEC/CMS V3.0 provides users with the ability to operate on a

          search list of libraries.  A search list of libraries is set

          up by specifying a list of directory specifications  to  the

          CREATE  LIBRARY  or  SET LIBRARY commands.  In addition, the

          /AFTER and /BEFORE qualifiers on those  commands  allow  the

          search  list to be augmented, rather than superseded, by the

          CREATE LIBRARY or SET LIBRARY command.



          Most of the CMS commands now accept  the  optional  /OCCLUDE

          qualifier,  as  documented in the Command Dictionary part of

          the Guide to VAX DEC/CMS.  The  new  qualifier  is  used  to

          specify  the  command's  behavior  in  a library search list

          environment.   By  default,   the   command   searches   the

          consecutive  libraries in the search list until it finds the

          first instance of any object it acts  upon.   This  behavior

          can  be  modified  with the /OCCLUDE qualifier.  For a given

          type of object (ELEMENT, GROUP, CLASS, or OTHER), it can  be

          used  to  specify  whether the first or all instances of the

          given object found in the search list are to be  acted  upon

          by the command.



          In addition, a new command  has  been  added  to  allow  the

          removal of one or more libraries from the search list:




     6.18.1  SET NOLIBRARY -



          SYNTAX:



            $  CMS  SET  NOLIBRARY  directory-spec[,directory-spec...]

            [/qualifiers]



          COMMAND DESCRIPTION:



            Removes one or more, or all, libraries  from  the  current

            library  search  list.   If all libraries are removed, the

            logical CMS$LIB is deassigned.





     6.19  SHOW RESERVATIONS



          DEC/CMS  V3.0  allows  users  to  specify  that   concurrent

          replacements  are  not  to  be  displayed  when  using  SHOW

          RESERVATIONS.  This is accomplished by  the  /NOREPLACEMENTS

          qualifier on the SHOW RESERVATIONS command.













                                                               Page 16





     6.20  UNRESERVE



          DEC/CMS  V3.0  allows  a  given  user  to  reserve  multiple

          generations  of  the same element (including having multiple

          reservations of the same generation).   This  requires  that

          the  user  be  able  to  specify  which  generation is being

          unreserved.   To  accomplish  this,  the   /GENERATION   and

          /IDENTIFICATION_NUMBER   qualifiers   have   been  added  to

          UNRESERVE.



          DEC/CMS V3.0 allows users to UNRESERVE reservations held  by

          another  user  if  the person attempting the UNRESERVE holds

          the process BYPASS privilege or  is  granted  (via  an  ACE)

          BYPASS  access  to  the element.  The UNRESERVE is logged as

          having been performed by the person issuing the command, not

          by  the  holder  of the initial reservation.  Any attempt to

          UNRESERVE a reservation held by  another  user  prompts  for

          confirmation before doing so.



          The UNRESERVE command's /DELETE  qualifier  now  accepts  an

          optional file specification:



            UNRESERVE/DELETE[=file-specification]



          The file specification allows the user  to  request  that  a
          file  with  a different name than the name of the unreserved

          element be deleted from the user's directory.  It  can  also

          be  used  to  specify  the device and/or directory where the

          file to be deleted resides.  If  the  /DELETE  qualifier  is

          used  without  a  file-specification, then the file with the

          same name as the  name  of  the  element  being  unreserved,

          residing  in  the current default directory, is assumed.  In

          any case, if the /DELETE qualifier is used, all the versions

          of the file are deleted from the given directory.





     6.21  New Callable Entry Points for V3



           o  CMS$DELETE_GENERATION



           o  CMS$MODIFY_GENERATION



           o  CMS$RETRIEVE_ARCHIVE



           o  CMS$REVIEW_GENERATION



           o  CMS$SET_ACL



           o  CMS$SET_NOLIBRARY



           o  CMS$SHOW_ACL



           o  CMS$SHOW_ARCHIVE
























































                                                               Page 17





           o  CMS$SHOW_REVIEWS_PENDING







     6.22  Modified Callable Entry Points for V3





           o  CMS$ANNOTATE



           o  CMS$CREATE_ELEMENT



           o  CMS$CREATE_LIBRARY



           o  CMS$DIFFERENCES



           o  CMS$FETCH



           o  CMS$MODIFY_ELEMENT



           o  CMS$REMARK



           o  CMS$REMOVE_GENERATION



           o  CMS$REPLACE


           o  CMS$SET_LIBRARY



           o  CMS$SHOW_GROUP



           o  CMS$SHOW_LIBRARY



           o  CMS$SHOW_RESERVATIONS



           o  CMS$SHOW_VERSION



           o  CMS$UNRESERVE







     7  Known Problems and Restrictions



     7.1  CMS V2.3 and CMS T3.0 Libraries



          CMS V2.3 attempts to work on a CMS V3 library, despite being

          an incompatible version, resulting in a corrupted V3 library

          (CMS T3.0 will  not  work  on  V2.3  libraries,  except  for

          conversion).













                                                               Page 18





     7.2  Callback Routine Parameters



          Callback   output    routines    for    CMS$SHOW_GENERATION,

          CMS$SHOW_GROUP  and  CMS$SHOW_RESERVATIONS  are  called with

          additional parameters.  Callback routines written in  BASIC,

          DIBOL,   or  any  other  language  which  performs  run-time

          argument count checking, will have to  be  updated  for  use

          with this version of DEC/CMS.





     7.3  Merging Binary Files



          Merging of binary files, while  allowed,  will  usually  not

          produce meaningful results.





     7.4  Depth of Library Directories



          CMS libraries cannot be in 8th-level directories, since  the

          first  CREATE  ELEMENT  attempt  will  be unable to create a

          subdirectory.   CREATE  LIBRARY  and  CONVERT  LIBRARY  will

          detect this condition and signal an error.





     7.5  Virtual Memory Requirements


          CMS operations performed on several objects at  a  time  may

          require  large  amounts  of virtual memory.  You may need to

          increase your page file quota (pgflquo) accordingly.





     7.6  Assigning Action ACEs to Multiple Objects



          When assigning action ACEs to  multiple  objects  (specified

          through  comma  lists or wildcarded expressions, or found in

          multiple libraries in a library search  list)  the  SET  ACL

          command  may  report  syntax errors in otherwise correct ACE

          specifications.  This can  be  worked  around  by  assigning

          action ACEs to a single object at a time.





     7.7  Blanks Cannot Separate Multiple Action ACEs



          When multiple action ACEs are specified on a single SET  ACL

          command,  only  commas  should be used as separators between

          the individual ACEs.  Additional blanks or  tabs  may  cause

          the  SET  ACL  command  to report syntax errors in otherwise

          correct ACE specifications.











                                                               Page 19





     7.8  Wildcard Indicator in Notification Messages



          The history line sent to the CMS event handler and  seen  in

          notification  messages will contain the letter 'W' after the

          transaction time field if the transaction  resulted  from  a

          wildcard  operation.  This information should be suppressed,

          as it is by the SHOW HISTORY command.





     7.9  Restriction on CMS$FETCH_OPEN and Library Search Lists



          CMS$FETCH_OPEN,  the  callable   routine   that   begins   a

          line-by-line  fetch  transaction,  cannot  be  used  with  a

          library search list.  The directory argument may not contain

          wildcard characters, nor may it be a comma list of directory

          specifications, nor may it be a search list logical name.





     7.10  Restriction on DIFFERENCES and Library Search Lists



          The following restrictions  apply  to  the  CMS  DIFFERENCES

          command when used with a CMS library search list.



          If  both  file_1   and   file_2   are   element   generation

          specifications, then both of the elements must reside in the
          same library of the library search list.



          CMS DIFFERENCES will emit %CMS-E-NOFETCH (or other  messages

          returned  by CMS$FETCH_OPEN) if it cannot locate a specified

          element generation.  In a  library  search  list,  this  may

          occur  if one or both of the specified elements do not exist

          in the first library.  These messages  will  be  issued  for

          each library of the library search list in which the element

          is not found.  The exact sequence of such  messages  depends

          on  the  values of the /OCCLUDE qualifier.  In such cases, a

          %CMS-E-NOFETCH message may be followed by a %CMS-S-IDENTICAL

          or  %CMS-W-DIFFERENT  message.  The latter message indicates

          the actual status of the operation, whereas the  intervening

          %CMS-E-NOFETCH  messages  are  a  side-effect of the library

          search list traversal.  This behavior will be corrected in a

          subsequent release of DEC/CMS.



          The same  considerations  apply  to  the  callable  routine,

          CMS$DIFFERENCES.   CMS$DIFFERENCES  uses  the callable fetch

          routines,      CMS$FETCH_OPEN,      CMS$FETCH_GET,       and

          CMS$FETCH_CLOSE.   Conditions  may  be  signaled  from these

          routines during  the  operation  of  CMS$DIFFERENCES.   This

          behavior will be changed in a subsequent release of DEC/CMS.











                                                               Page 20





     7.11  Input File Deletion



          If CMS is unable to delete the input  file  after  a  CREATE

          ELEMENT  or  REPLACE operation, no message will be issued to

          inform the user of the problem.





     7.12  COPY ELEMENT with Many Elements/Generations



          Using the COPY ELEMENT command to copy either a large number

          of elements or an element with a large number of generations

          may cause CMS to fail with an error diagnostic.





     7.13  Generation Stack Overflow



          Under certain pathological conditions,  CMS  may  issue  the

          GENSTKOVF  (generation  stack overflow) fatal error message.

          This indicates that CMS was trying to nest generation  edits

          to  a depth greater than 400, which is the maximum allowable

          nesting level.  This nesting restriction may be removed in a

          future version of CMS.





     7.14  COPY ELEMENT/LIBRARY Messages


          When the /LIBRARY qualifier is used with  the  COPY  ELEMENT

          command,  CMS  will  emit  CMS-I-LIBIS, CMS-I-LIBINSLIS, and

          CMS-I-LIBREMLIS diagnostics as it references  the  specified

          library.    The  current  default  library  context  is  not

          modified.





     7.15  Reference Copy Messages



          When using CMS library reference copies, certain file system

          related  messages, such as RMS-F-DEV or RMS-E-PRV, may refer

          to the reference copy directory.  The CMS  messages  do  not

          make  this  explicit  in some cases.  When such problems are

          encountered, you should check that  you  have  the  required

          access to the reference copy.





     7.16  VERIFY/REPAIR on a Library with REFREPAIR Condition



          When using VERIFY/REPAIR to  clear  a  REFREPAIR  (reference

          copies  need  repairing)  condition,  CMS may ask if certain

          spurious reference copies should be deleted.  If you  answer

          'NO'  to these prompts, CMS will report that the library has

          been repaired, but the REFREPAIR condition will still exist.







                                                               Page 21





     7.17  VERIFY/RECOVER on Valid Library



          If you use the VERIFY/RECOVER command on a library that does

          not  need  recovery,  the VERIFY operation will fail with an

          error diagnostic, RECNOTNEC, stating that the  library  does

          not need recovery.





     7.18  SET ACL/DELETE with Nonexistent Identifier



          When using the SET ACL/DELETE command to delete  a  list  of

          ACEs  from  an  ACL,  the  operation  will  terminate  if it

          encounters an identifier that does not exist on the  system.

          The  correct  behavior is to continue the operation with the

          remaining ACEs specified.





     7.19  Syntax Errors on SET ACL and SHOW ACL



          Certain syntax errors are not detected by the command parser

          in  the  SET  ACL and SHOW ACL commands.  This may result in

          the repetitious display of the illegal syntax error  message

          for each object specified for the operation.




     7.20  Severity of Summary Messages



          The severity of CMS success summary messages may be  changed

          from  the  documented  value  of SUCCESS to INFORMATIONAL in

          some cases.  This will be corrected in a future  release  of

          DEC/CMS.





     7.21  Parameters on Negated Qualifiers



          Certain qualifiers that should  only  accept  parameters  in

          their  non-negated  form  are  also  accepting them in their

          negated form, and the qualifier is then  treated  as  if  it

          were    not    negated.     For   example,   the   qualifier

          /NOHISTORY="#H" should be disallowed, but is  being  treated

          as /HISTORY="#H".





     8  Documentation Errata



     8.1  RETRIEVE ARCHIVE



          The description of  the  RETRIEVE  ARCHIVE  command  in  the

          Command  Dictionary  of the Guide to VAX DEC/Code Management

          System is incorrect.  The corrected version is as follows:



             The  RETRIEVE  ARCHIVE  command  retrieves  one  or  more

             generations of an element from one or more archive files.
             By default, CMS retrieves the highest numbered generation

             from the archive file and places a copy of the generation





















































                                                               Page 22





             in your default directory with the  same  file  name  and

             type  as the original element (unless you specify another

             name or location with the /OUTPUT  qualifier).   You  can

             indicate  a  specific generation to be retrieved with the

             /GENERATION qualifier.  CMS creates  one  file  for  each

             retrieved  generation.  You do not need to have a library

             currently set to use this command, because  the  RETRIEVE

             ARCHIVE command does not interact with the CMS library.

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026