Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

Checking the value for the LOCATION operand

When multiple storage locations which are administered by different ROBAR-SV instances exist, the LOCATION operand should always be specified in the ROBAR-SDF statements with reference to a location. Otherwise each ROBAR-SV instance would attempt to execute the statement. This can lead to incorrect results and an inconsistent archive. Furthermore, MAREN is placed in an inconsistent state.

To prevent this, you must also modify the ROBAR rule files (RRFs) so that the ROBAR-SDF statements can be processed as required. The aim is to ensure that outstanding ROBAR-SDF requests are processed only by the ROBAR-SV instance for which they are intended. The ROBAR-SV instance is identified by means of the LOCATION operand.

Details on the ROBAR rule files are provided in chapter "ROBAR rule files".

There are a number of appropriate entries in the message_file and message_xref ROBAR rule files for all messages received from ROBAR-CL-SDF that originate in a statement containing the LOCATION operand. The appropriate entry is determined with the aid of the specified value for LOCATION.

  1. The first entry in the message_file ROBAR rule file refers to the storage location name of the current ROBAR-SV instance. The value for the storage location is initially llllllll.

    The entry is selected when the user explicitly specifies the storage location of this ROBAR-SV instance in the ROBAR-CL-SDF statement.


    Example

    The storage location is ROBABBA1. The following statement is entered: //SHOW-ROBAR-VOLUME LOCATION=ROBABBA1. The message ROB1050 is displayed on the console.

    This leads to the following entry being processed in the RRF file message_file:

    :*:MF360: ?ROB1050 *ALL *ALL llllllll hhh
  2. Entry if no storage location was specified for the ROBAR-CL-SDF statement (LOCATION=*NOT-SPECIFIED).


    Example

    SHOW-ROBAR-VOLUME

    This leads to the following entry being processed in the RRF file message_file:

    :*:MF361: ?ROB1050 *ALL *ALL *NO hhh
  3. Entry if a further ROBAR instance is connected to the BS2000 system. This ROBAR instance corresponds to another storage location which must be entered in the RRF file message_file.

    The ROBAR rule file message_xref contains the WAIT 0 code for that purpose, i.e. the current ROBAR-SV instance does not have to become active, because another instance of ROBAR-SV is handling the message.


    Example

    SHOW-ROBAR-VOLUME LOCATION=ROBABBA2

    The following entry in the RRF file message_file is processed after the value LOCATION of the RRF file supplied has been replaced by ROBABBA2 before the ROBAR-SV instance starts:

    :*:MF362: ?ROB1050 *ALL *ALL ROBABBA2

    If further ROBAR-SV instances are connected to the BS2000 system, further entries must be generated in the RRF file message_file with the corresponding entries in the RRF file message_xref, e.g.:

    :*:MF363: ?ROB1050 *ALL *ALL AILLEURS
    :*:MF364: ?ROB1050 *ALL *ALL PATOUCHE
    ...
    

    In this case the corresponding entries must be made in the RRF file message_xref, e.g.:

    :*:MF363  MR200  (WAIT 0)
    :*:MF364  MR200  (WAIT 0)
    ...
    
  4. Entry if a non-existent location is specified. This entry may be activated only in one of the ROBAR instances involved so that only one ROBAR-SV instance responds to the message (in the negative).


    Example

    SHOW-ROBAR-VOLUME LOCATION=WRONGLOC

    This leads to the following entry being processed in the RRF file message_file:

    :*:MF36Z: ?ROB1050 *ALL *ALL /

By default, the entries are configured in the ROBAR rule file for just one ROBAR-SV instance. I.e. the first, the second and the last entry are activated in message_file. The entry for a further ROBAR instance exists as a comment.


Example

:*:MF360: ?ROB1050 *ALL *ALL llllllll hhh
:*:MF361: ?ROB1050 *ALL *ALL *NO hhh
/*:MF362: ?ROB1050 *ALL *ALL LOCATION
:*:MF36Z: ?ROB1050 *ALL *ALL /

If you are using several ROBAR instances, observe the following:

  • The entry for further ROBAR instances (in the example MF362) has to be activated by removing the comment characters. The term LOCATION has to be replaced by the actual name of the storage location of the additional ROBAR instance.

  • The entry for storage locations that are not specified (*NO, in the example MF361) has to be deactivated.

  • If further ROBAR-SV instances are connected to the BS2000 system, further entries must be generated in the RRF file message_file with the corresponding entries in the RRF file message_xref.

  • The last entry may only be activated in one ROBAR-SV instance. It has to be deactivated in all other instances.

     

All entries contained in the ROBAR rule file message_file for ROBAR-CL-SDF statements referring to a storage location have to be adjusted. This applies to the following entries in the standard ROBAR rule file:

MF33x (//EXPORT-ROBAR-VOLUME KEEP-POSITION=*NO)
MF34x (//EXPORT-ROBAR-VOLUME KEEP-POSITION=*YES)
MF35x (//IMPORT-ROBAR-VOLUME)

This example illustrates on the basis of MF36x entries which adjustments have to be made in the message_file ROBAR rule file.


Example for two storage locations

One ROBAR-SV instance exists for each of the storage locations ROBABBA1 and ROBABBA2. The relevant message_file looks like this for the SHOW-ROBAR-VOLUME statement:

  • First ROBAR-SV instance wtih storage position ROBABBA1

    :*:MF360: ?ROB1050 *ALL *ALL llllllll hhh
    /*:MF361: ?ROB1050 *ALL *ALL *NO hhh
    :*:MF362: ?ROB1050 *ALL *ALL ROBABBA2
    :*:MF36Z: ?ROB1050 *ALL *ALL /
    
    • Since several ROBAR-SV instances exist, LOCATION=*NOT-SPECIFIED is not allowed. Consequently, the entry MF361 has been deactivated.

    • The entry MF362 has been activated by replacing the leading / by : and by replacing LOCATION by ROBABBA2 (storage location of the other ROBAR-SV instance).

  • Second ROBAR-SV instance with storage position ROBABBA2

    :*:MF360: ?ROB1050 *ALL *ALL llllllll hhh
    /*:MF361: ?ROB1050 *ALL *ALL *NO hhh
    :*:MF362: ?ROB1050 *ALL *ALL ROBABBA1
    /*:MF36Z: ?ROB1050 *ALL *ALL /
    
    • Since several ROBAR-SV instances exist, LOCATION=*NOT-SPECIFIED is not allowed. Consequently, the entry MF361 has been deactivated.

    • The entry MF362 has been activated by replacing the leading / by : and by replacing LOCATION by ROBABBA1 (storage location of the other ROBAR-SV instance).

    • The entry MF36Z has been deactivated by replacing the leading : by /.