3 Storage Plan Manager Operations

This chapter describes SPM operations, and includes the following information:

Managing the SPM Service through the Command Line

You can manage the SPM Service through the Windows Command-line Interface (START, RUN, CMD), or using the Windows Services Panel. Oracle recommends you use the command-line interface.

spmservice.exe {command} [options]

The following are the commands:

install (or use -i)

This command installs SPM as a Windows Service.

uninstall (or use -u)

This command removes the SPM Windows Service.

debug (or use -d)

This command starts SPM in console mode for troubleshooting purposes.

version (or use -v)

This command displays the SPM release information, and then exits.

help (or use -h)

This command displays help information, and then exits.

The following are the options:

-conf (or use -f)

You use this option to load the settings from a specific configuration file.

For example, spmservice.exe install -conf C:\DIVA\conf\test.conf.

Accessing SPM Information through the Control GUI

You can view SPM information for objects, and reschedule failed actions using the DIVArchive Control GUI. This section describes how to use the Control GUI to access the information and what information is available through this interface.

Start the DIVArchive Control GUI, and then follow through this section to discover where to view the SPM information required.

  • You can see which Storage Plan is assigned to an object on the Objects screen under the Manage tab.

    If a newly archived object does not match any filters it is assigned the default Storage Plan. The default Storage Plan is SP_DEFAULT and has no slots (and therefore no actions) associated with it.

  • You can view information concerning all actions established by SPM immediately through the SPM Actions panel under the Manage tab.

    The ID column on the screen is the automatically generated internal SPM ID.

    The Task Name column displays the Task Name for the action. The DEFAULT SPM SCHEDULER TASK name corresponds to internal SPM generated actions. External actions will display a different Task Name.

    The Req. ID column displays the DIVArchive Request ID. When an action is in the SCHEDULED state in SPM, the initial Request ID will be zero. When the action begins execution, DIVArchive receives a request and generates the DIVArchive Request ID.

    The remaining columns on this screen are self-explanatory.

    You can view the Request Properties by double-clicking on the action, or by right-clicking on the action and selecting Request Properties from the resulting context menu. If no Request Mapping exists for the object, the Request Properties window will not appear.

    Note:

    If the action is getting old, the DIVArchive request history may have cycled and the Request ID may have been reused by a newer DIVArchive request. In this case, viewing the Request Properties will display a different request other than the one expected.

Filtering the SPM Actions Panel View

The SPM Actions panel enables filtering which actions you want to view. You use the menu lists and text boxes at the top of the screen to filter your view. The default asterisk displayed in the text boxes is a wildcard and signifies that no filtering restriction is being placed on the parameter where it is used (that is, the Object name, Category, Task Name, and Slot name).

To filter by Scheduled Date (and time), select the check box next to enable, and then select the Begin and End dates and times to view. If you do not select the check box next to enable, this filtering function will be grayed out and unusable.

Additional filtering is possible by Action Status, or Action Type, or both. Click the button next to either one (or both) to display a list of options, and select the desired filters, then click Close to continue.

After changing any of the viewing filters, you must click Refresh to refresh the view.

Assigning a New Storage Plan

You can change Storage Plans only for an object that is assigned the default Storage Plan (DEFAULT_SP). When a new Storage Plan is assigned to an object, SPM sees that object as being a new object in the system because it has a new Storage Plan assigned.

You can select a list of multiple objects by holding the SHIFT key and selecting the first, and then the last object in the list. All objects in between the first and last will be selected. You can also click and hold the mouse button on the first object, and then drag the mouse pointer to the last object and release the button.

To select individual objects, hold the CTRL key and click each specific object to highlight it, and then release the button.

Use the following procedure to assign a Storage Plan to the selected objects:

  1. Open the DIVArchive Control GUI. and connect to the database.

  2. Navigate to the Manage tab, and then click the Objects icon.

  3. Select one or more object to assign a new Storage Plan to using one of the methods previously described.

  4. Right-click the objects requiring the new Storage Plan.

  5. Select Assign Storage Plan from the displayed context menu.

  6. A new dialog box is displayed allowing selection of the Storage Plan to be assigned. Select the Storage Plan to assign from the list, and then click Assign to assign the new plan to the selected objects.

Rescheduling Failed Actions

When an action fails to execute properly and does not complete correctly, SPM will automatically reschedule the action for re-execution at some time in the future. You can also manually reschedule the action to run immediately using the following procedure:

  1. Open the DIVArchive Control GUI.

  2. Navigate to the Manage tab, and then click the SPM Actions icon.

  3. Right-click the action that requires rescheduling (you can select multiple actions - see the previous section for multi-selection tips).

  4. Click Reschedule Action from the resulting context menu. A confirmation dialog box will display.

  5. On the confirmation dialog box, select Yes to confirm rescheduling the action to execute immediately, or select No to cancel the process.

Marking Failed Actions Complete

You can change the status of SPM Failed Actions to COMPLETED by right clicking the action, and then selecting Mark Action Completed from the context menu.

Normally, SPM will retry a completed Copy Action if the Once Only option is set to N, and a user manually (or accidentally) deletes the instance that SPM copied before the Storage Slot expires. Also, SPM will normally retry a completed Delete Action if a user manually (or accidentally) copies an instance to the Storage Slot medium after SPM deleted it.

Actions marked as complete by a user will never be retried by SPM. However, you can reschedule a user completed action by right clicking it, and the selecting Reschedule Action from the context menu. The Mark Action Completed option is only available using the Administrator profile.

Storage Plan Manager Action Result Codes

Result codes are displayed for every processing and completed action in the SPM Actions panel of the Control GUI. The Action Result Code is a short text string reflecting the latest available result of action execution.

The following list describes the possible result codes:

Prefix: REQ

Description: DIVA_REQUEST_STATE code from the DIVArchive API.

Details: SPM always updates the status of an action after execution based on the status of the corresponding request submitted to the Manager. SPM uses the DIVArchive GET_REQUEST_INFO API call to find the status of the request, and updates the result code for the action based on the DIVA_REQUEST_STATE code returned by the DIVArchive GET_REQUEST_INFO API call. See the DIVArchive API documentation in the Oracle DIVArchive Additional Features documentation library for more details.

Sample RESULT_CODE: REQ-REQUEST_STATUS where REQUEST_STATUS is one of the following:

TRANSFERRING

MIGRATING

COMPLETED

ABORTED

CANCELLED

UNKNOWN

DELETING

WAITING FOR RESOURCES

ASSIGNING POOL

PARTIALLY ABORTED

RUNNING

PENDING

Prefix: API

Description: DIVA_STATUS of the DIVArchive API.

Details: SPM uses the DIVArchive API to execute actions and submit requests to the Manager. The result code of the action is updated with the DIVA_STATUS API return code if SPM failed to submit the request. See the DIVArchive API documentation in the Oracle DIVArchive Additional Features documentation library for more details.

Sample RESULT_CODE: API-RETURN_CODE where RETURN_CODE is one of the following:

DIVA_OK

DIVA_ERR_UNKNOWN

DIVA_ERR_INTERNAL

DIVA_ERR_NO_ARCHIVE_SYSTEM

DIVA_ERR_BROKEN_CONNECTION

DIVA_ERR_DISCONNECTING

DIVA_ERR_ALREADY_CONNECTED

DIVA_ERR_WRONG_VERSION

DIVA_ERR_INVALID_PARAMETER

DIVA_ERR_OBJECT_DOESNT_EXIST

DIVA_ERR_SEVERAL_OBJECTS

DIVA_ERR_NO_SUCH_REQUEST

DIVA_ERR_NOT_CANCELABLE

DIVA_ERR_SYSTEM_IDLE

DIVA_ERR_WRONG_LIST_SIZE

DIVA_ERR_LIST_NOT_INITIALIZED

DIVA_ERR_OBJECT_ALREADY_EXISTS

DIVA_ERR_GROUP_DOESNT_EXIST

DIVA_ERR_SOURCE_OR_DESTINATION_DOESNT_EXIST

DIVA_WARN_NO_MORE_OBJECTS

DIVA_ERR_NOT_CONNECTED

DIVA_ERR_GROUP_ALREADY_EXISTS

DIVA_ERR_GROUP_IN_USE

DIVA_ERR_OBJECT_OFFLINE

DIVA_ERR_TIMEOUT

DIVA_ERR_LAST_INSTANCE

DIVA_ERR_PATH_DESTINATION

DIVA_ERR_INSTANCE_DOESNT_EXIST

DIVA_ERR_INSTANCE_OFFLINE

DIVA_ERR_INSTANCE_MUST_BE_ON_TAPE

DIVA_ERR_NO_INSTANCE_TAPE_EXIST

DIVA_ERR_OBJECT_IN_USE

DIVA_ERR_CANNOT_ACCEPT_MORE_REQUESTS

DIVA_ERR_TAPE_DOESNT_EXIST

DIVA_ERR_INVALID_INSTANCE_TYPE

DIVA_ERR_ACCESS_DENIED

DIVA_ERR_OBJECT_PARTIALLY_DELETED

DIVA_ERR_LICENSE_DOES_NOT_SUPPORT_THIS_FEATURE

DIVA_ERR_COMPONENT_NOT_FOUND

DIVA_ERR_OBJECT_IS_LOCKED

DIVA_ERR_OBJECT_BEING_ARCHIVED

Prefix: SPM

Description: SPM business logic result code.

Details: The description for each result code is included with the sample codes in the following list.

Sample RESULT_CODE:

SPM-LR_CONFIG_PREVENTS_DELETE - ALLOW_OBJECT_DELETION parameter in the spm.conf file was set to false and prevented SPM from deleting the last instance of an object.

SPM-LR_CANNOT_DELETE_LAST_INSTANCE - SPM refused to delete the last instance of an object.

SPM-LR_NO_MORE_INSTANCES_ON_SLOT - SPM refused to create more instances on a slot than it was permitted.

SPM-LR_POSTPONED_AS_WATERMARKED - SPM postponed a Delete Instance Action because it was for a Watermarked media.

SPM-LR_NO_NEED_TO_LINK_OBJECTS - The Verify stage of the LINK OBJECTS step. If the METADATA_ARCHIVE Slot was configured without Cascade Objects for Delete or Restore (both set to N), there will be no link between the objects, and this error will be produced.

SPM-LR_CANNOT_SEND_MORE_REQUESTS - the Manager Monitor does not allow sending more requests to the Manager.

SPM-LR_ACTION_SLOT_EXPIRED - An action will have this code either because the object was deleted from DIVArchive, but is still under SPM, or the slot expired after loading the SPM action into memory.

Prefix: USR

Description: User action was executed.

Details: The user manually marked the action complete.

Sample RESULT_CODE: USR-ACTION where ACTION can be MARKED_COMPLETE.

Storage Plan Manager Logging

The SPM Logging configuration file assists with controlling the SPM log file size and file switching. It purges old SPM logs and identifies which specific module inside of SPM to enable or disable logging for. The description of global parameters is in the following sample spm.trace.ini:

###################################################################
# Global parameters
###################################################################
@timestep = How frequently SPM must switch log files; units in minutes.
@sizelimit = How frequently SPM must switch log files after reaching the log file size limit; units in KB.
@timetolive = How much history of the SPM logs must be preserved; units in days.
@tracelevel = <Value>
Value 1 = Only error messages are logged in the SPM log files
Value 2 = Only Errors and Warnings are logged in SPM log files.
Value 3 = Errors, Warnings and Information will be logged in the SPM log files.
@tracemanagerlog = <Value>
Value 1 = enable logging for trace manager module.
Value 0 = Disable trace manager logging.

You enable and disable SPM module logging as follows:

  • If the module is prefixed with ! then it is enabled.

  • If the module is prefixed with # then it is disabled.

For example:

!SPMService

Trace is enabled for the component SPMService.

#DbConnectionPool

Trace is disabled for the component DbConnectionPool.