reqmaster
Applicability
Product |
Command type |
---|---|
ClearCase® |
cleartool subcommand |
MultiSite |
multitool subcommand |
Platform |
---|
UNIX |
Linux |
Windows |
Synopsis
- Display or set the ACL for mastership requests:
- Set access controls for the replica, branches, or branch types:
- Request mastership of a branch or branch type:
Description
This command has three forms: two forms to configure access controls for mastership requests and one form to request mastership of a branch or branch type from the replica that masters the object. For more information, see the ClearCase MultiSite Administrator's Guide.
Setting access controls
To allow requests for mastership, the MultiSite administrator must set access controls at each replica:
- Add developers to the replica's access control list (ACL). Use the –acl option with –edit or –set to edit the ACL.
- Enable replica-level access. By default, replica-level access is not enabled. To enable it, use the –enable option.
Also, the type and the object must allow mastership requests. By default, type-level and object-level access are enabled. You can enable replica-level access, but deny requests for mastership of specific branches or branch types, or all branches of a specific type. Even if replica-level access is enabled, the reqmaster command fails if requests are denied at the type level or object level. Use the –deny option to deny requests at the type and object level.
Note: Mastership request settings are not replicated. The describe command and the Mastership tab in the Properties Browser on Windows display the current replica's settings.
Requesting mastership of a branch or branch type
This form of the reqmaster command contacts a sibling replica and requests that the replica transfer mastership to the current replica. You can also use reqmaster to display information about whether a mastership request will succeed.
If you specify multiple branches or branch types and the request fails for one or more items, reqmaster prints error messages for the failures and continues processing the other items.
Troubleshooting
If the reqmaster command fails, the error message indicates whether the failure occurred at the current replica or the sibling replica.
If the reqmaster command fails with the message can't get handle, reenter the command. If it continues to fail, ask the sibling replica's administrator to check the status of the VOB server.
When you request mastership, the reqmaster command may complete successfully, but the mastership is not transferred to your current replica. In this case, verify that the synchronization packet was sent from the sibling replica and that your current replica imported it successfully.
Errors that occur during the mastership request process, including errors occurring during the synchronization export, are written to the msadm log file. To view this log, use the cleartool getlog command or the ClearCase Administration Console (Windows).
For more information about error messages from the reqmaster command, see the ClearCase MultiSite Administrator's Guide.
Options and arguments
Event records and comments
- Default
- Creates one or more event records, with commenting controlled by the standard ClearCase user profile (default: –nc). See comments.htm#ref_comments_refsect1_30223__ref_comments_refsect2_30268 in the comments reference page. To edit a comment, use chevent.
- –c/omment comment | –cq/uery | –nc/omment
- Overrides the default with the specified comment option.
Displaying or setting access controls
- Default
- None. You must specify access controls. Specifying –acl with no other option displays the ACL for the current replica in the VOB family specified by vob-selector.
- –acl [ –edi/t | –set pname | –get ] vob-selector
- By default or with –get, displays the ACL for the current replica in the VOB
family specified by vob-selector. With –edit, opens the
ACL for the current replica in the editor specified by (in order) the WINEDITOR (UNIX and
Linux), VISUAL, or EDITOR environment variable. With –set, uses the contents
of pname to set the ACL for the current replica.
Specify vob-selector in the form vob:pname-in-vob
pname-in-vob
Pathname of the VOB tag (whether or not the VOB is mounted) or of any file system object within the VOB (if the VOB is mounted)
- –enable vob-selector
- Allows mastership requests to be made to the current replica in the VOB family specified by vob-selector.
- –dis/able vob-selector
- Denies all mastership requests made to the current replica in the VOB family specified by vob-selector.
- { –deny | –allow } [ –inst/ances ] branch-type-selector ...
- Denies or allows requests for mastership of the specified branch type.
With –instances, denies or allows requests for mastership
of all branches of the specified type. Specify branch-type-selector in
the form brtype:type-name[@vob-selector]
type-name
Name of the branch type
vob-selector
VOB specifier; can be omitted if the current working directory is within the VOB.
Specify vob-selector in the form [vob:]pname-in-vob
pname-in-vob
Pathname of the VOB tag (whether or not the VOB is mounted) or of any file system object within the VOB (if the VOB is mounted)
- { –deny | –allow } branch-pname ...
- Denies or allows requests for mastership of the specified branch object.
Specify branch-pname in the form file-pname@@branch.
For example:
cmdsyn.c@@/main/v3.8 header.h@@\main\v1\bugfix
Requesting mastership
- Default
- Sends a request for mastership to the master replica of the object.
- –lis/t
- Displays information about whether a request would succeed, but does not send a request for mastership.
- branch-pname
- Branch whose mastership you are requesting. For example:
cmdsyn.c@@/main/v3.8 header.h@@\main\v1\bugfix
- branch-type-selector
- Branch type whose mastership you are requesting. For example:
brtype:main@/vobs/doc brtype:v2.0_integration@vob:\tests
Examples
- Display the ACL for the current replica
in the VOB family /vobs/dev, and then change it to give
full access to ccadmin and permission to request mastership to gail and paul.
multitool reqmaster –acl –get vob:/vobs/dev# Replica boston_hub@/vobs/dev
# Request for Mastership ACL:
Everyone: Read
cat > /tmp/boston_hub_aclfile
# Replica boston_hub@/vobs/dev
# Request for Mastership ACL:
User:purpledoc.com/ccadmin Full
User:purpledoc/ccadmin Full
User:purpledoc.com/gail Change
User:purpledoc/gail Change
User:purpledoc.com/paul Change
User:purpledoc/paul Change
multitool reqmaster –acl –set /tmp/boston_hub_aclfile vob:/vobs/dev
multitool reqmaster –acl –get vob:/vobs/dev
# Replica boston_hub@/vobs/dev
# Request for Mastership ACL:
User:purpledoc.com/ccadmin Full
User:purpledoc/ccadmin Full
User:purpledoc.com/gail Change
User:purpledoc/gail Change
User:purpledoc.com/paul Change
User:purpledoc/paul Change - Allow requests for mastership for
all branches and branch types mastered by the current replica in VOB family \tests,
except for the branch type v2.0_integration and all branches of that
type.
multitool reqmaster –enable vob:\tests
Requests for mastership enabled in the replica object for "vob:\tests"
multitool reqmaster –deny –instances brtype:v2.0_integration@vob:\tests
Requests for mastership denied for all instances of
"brtype:v2.0_integration@vob:\tests"
multitool reqmaster –deny brtype:v2.0_integration@vob:\tests
Requests for mastership denied for "brtype:v2.0_integration@vob:\tests" - Allow requests for mastership for
all branches and branch types mastered by the current replica in VOB family \dev,
except for the branch cmdsyn.m@@\main\v1.0_bugfix.
multitool reqmaster –enable vob:\dev Requests for mastership enabled in the replica object for "vob:\dev" multitool reqmaster –deny \dev\cmdsyn.m@@\main\v1.0_bugfix Requests for mastership denied for branch "\dev\cmdsyn.m@@\main\v1.0_bugfix"
- Deny requests for mastership for all
branches and branch types mastered by the current replica.
multitool reqmaster –disable vob:/vobs/dev Requests for mastership disabled in the replica object for "vob:/vobs/dev"
- Deny requests for mastership of the
branch type v2.0_integration.
multitool reqmaster –deny brtype:v2.0_integration@vob:\tests
Requests for mastership denied for "brtype:v2.0_integration@vob:\tests" - Display mastership information about
the branches include.h@@\main\integ and acc.c@@\main.
multitool reqmaster –list include.h@@\main\integ acc.c@@\main
multitool: Error: acc.c@@\main
The following would block the "reqmaster" operation at replica
"sydney".
At least one checkout prevents the request. - Request mastership of the branch cmdsyn.m@@/main/v2.6_dev.
multitool reqmaster cmdsyn.m@@/main/v2.6_dev
cmdsyn.m@@/main/v2.6_dev: Change of mastership at sibling replica
"boston_hub" was successful.
Mastership is in transit to the new master replica. - Request mastership of the branch type v2.0_integration.
multitool reqmaster brtype:v2.0_integration@vob:\tests
brtype:v2.0_integration@vob:\tests: Change of mastership at sibling
replica "sydney" was successful.
Mastership is in transit to the new master replica.