US7627786B2 - Tracking error events relating to data storage drives and/or media of automated data storage library subsystems - Google Patents

Tracking error events relating to data storage drives and/or media of automated data storage library subsystems Download PDF

Info

Publication number
US7627786B2
US7627786B2 US11/535,238 US53523806A US7627786B2 US 7627786 B2 US7627786 B2 US 7627786B2 US 53523806 A US53523806 A US 53523806A US 7627786 B2 US7627786 B2 US 7627786B2
Authority
US
United States
Prior art keywords
data storage
error events
storage media
drive
successive
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related, expires
Application number
US11/535,238
Other versions
US20080077825A1 (en
Inventor
Keith Anthony Bello
Cheryl Marie Friauf
Gregory Tad Kishi
Duke Andy Lee
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Priority to US11/535,238 priority Critical patent/US7627786B2/en
Assigned to INTERNATIONAL BUSINESS MACHINES CORPORATION reassignment INTERNATIONAL BUSINESS MACHINES CORPORATION ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: FRIAUF, CHERYL MARIE, LEE, DUKE ANDY, BELLO, KEITH ANTHONY, KISHI, GREGORY TAD
Priority to CN2007101477094A priority patent/CN101154410B/en
Publication of US20080077825A1 publication Critical patent/US20080077825A1/en
Application granted granted Critical
Publication of US7627786B2 publication Critical patent/US7627786B2/en
Expired - Fee Related legal-status Critical Current
Adjusted expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0787Storage of error reports, e.g. persistent data storage, storage using memory protection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0727Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a storage system, e.g. in a DASD or network based storage system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0781Error filtering or prioritizing based on a policy defined by the user or on a policy defined by a hardware/software module, e.g. according to a severity level
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • G06F11/076Error or fault detection not based on redundancy by exceeding limits by exceeding a count or rate limit, e.g. word- or bit count limit

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Automatic Tape Cassette Changers (AREA)
  • Debugging And Monitoring (AREA)

Abstract

With detection of a selected error event involving a data storage drive and data storage media, a subsystem attempts to move the media to another drive, and conduct a similar operation. The subsystem separately tracks successive error events of individual drives and individual media, wherein a complete successful operation breaks the chain of the successive error events; and upon the number of successive error events reaching a threshold, fails the data storage drive or the data storage media. Error events are categorized into:
    • 1) error events before or during a mount of a media into a drive; and
    • 2) error events after a successful mount of a media into a drive; and
      conducts the tracking, comparing and failing steps separately for each of the categories for the drives and the media.

Description

FIELD OF THE INVENTION
This invention relates to error handling for data storage, and, more particularly, to tracking error events for data storage drives and data storage media of automated data storage library subsystems.
BACKGROUND OF THE INVENTION
Data storage subsystems comprise highly reliable means for storage and accessing of data. Automated data storage library subsystems provide storage of large numbers of data storage media and typically have numbers of data storage drives, and may provide caches and other intermediate storage to migrate data to, and access data from, the data storage media. When errors may occur, it is desirable to both insure against the loss of data and to insure against unnecessary removal and replacement of either data storage media or data storage drives, and to avoid the time necessary to update the subsystem and/or the data. It is also desirable to insure against unnecessary service calls, and to avoid potential downtime that might result. This means that it is desirable to automatically oversee error events and conduct removals, replacements, and provide service calls when necessary.
SUMMARY OF THE INVENTION
Automated data storage library subsystems, computer program products and methods, in certain embodiments, involve library controls of automated data storage library subsystems, the library having storage shelves configured to store data storage media, a plurality of data storage drives, and at least one robot accessor configured to transfer data storage media between the storage shelves and the data storage drives.
In one embodiment, a method detects the occurrence of selected error events involving a data storage drive and a data storage media; upon a selected error event involving a data storage media, attempts to move the data storage media to another data storage drive, and conduct a similar operation to the operation that resulted in the selected error event; separately tracks successive error events of individual data storage drives and individual data storage media, wherein a complete successful operation of the data storage drive and/or data storage media breaks the chain of the successive error events; compares the number of successive error events of the data storage drive and/or data storage media to a threshold; and upon the number of the successive error events reaching the threshold, places the data storage drive and/or data storage media in a failed category.
In another embodiment, a method additionally involves categorizing the error events involving the data storage drive and error events involving the data storage media into:
    • 1) error events before or during a mount of a data storage media into a data storage drive; and
    • 2) error events after a successful mount of a data storage media into a data storage drive; and
conducts the tracking, comparing and placing steps separately for each of the categories for the data storage drives and the data storage media.
In a further embodiment, a method additionally categorizes the error events into:
    • A) immediate error events; and
    • B) non-immediate error events;
upon isolating a data storage media or a data storage drive with the immediate error event, places the isolated data storage media, or data storage drive in a failed category; and conducts the tracking, comparing and placing steps for the non-immediate error events for the data storage drive or the data storage media involved in the immediate error event with the failed category data storage media or the failed category data storage drive without considering the immediate error event in the succession or the accumulation of error events.
In a still further embodiment, a method separately accumulates selected error events regarding individual data storage drives and regarding individual data storage media in each of the categories over a period of time; compares the number of the accumulated error events of a data storage drive and of a data storage media in a category to a threshold; and upon the number of the accumulated error events in the category reaching the threshold, placing the data storage drive and/or data storage media in a failed category.
In still another embodiment, a method involves, additionally, if error events are related to each other, reducing weighting of the error events in the succession and in the accumulation of the selected error events.
In a further embodiment, a method involves additionally, if a data storage drive is removed from the subsystem, clearing the error events of data storage media that occurred at the removed data storage drive.
In still another embodiment, a method involves, if a data storage drive is removed from the subsystem and returned, clearing the error events of the removed and returned data storage drive.
In a still further embodiment, a method involves, if a data storage media is removed from the subsystem, clearing the error events of data storage drive that occurred at the data storage drive with respect to the removed data storage media.
In a still further embodiment, a method involves, additionally, if a data storage media is removed from the subsystem and returned, clearing the error events of the removed and returned data storage media.
In another embodiment, a method involves reducing related errors to a single selected error event.
In a further embodiment, the a method involves storing, in a database, information relating to selected error events relevant to both a data storage media and a data storage drive, the information describing the data storage media and the data storage drive and the selected error event.
For a fuller understanding of the present invention, reference should be made to the following detailed description taken in conjunction with the accompanying drawings.
BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 is an isometric illustration of an automated data storage library which may implement the present invention;
FIG. 2 is a diagrammatic illustration of an opened frame of the automated data storage library of FIG. 1
FIG. 3 is a block diagrammatic illustration of a system incorporating an automated data storage library subsystem with the automated data storage library of FIGS. 1 and 2; and
FIG. 4 is a flow chart depicting the operation of the automated of the automated data storage library subsystem of FIG. 3 in accordance with the present invention.
DETAILED DESCRIPTION OF THE INVENTION
This invention is described in preferred embodiments in the following description with reference to the Figures, in which like numbers represent the same or similar elements. While this invention is described in terms of the best mode for achieving this invention's objectives, it will be appreciated by those skilled in the art that variations may be accomplished in view of these teachings without deviating from the spirit or scope of the invention.
FIGS. 1, 2 and 3 illustrate an embodiment of an automated data storage library 100, configured in a subsystem 101 in accordance with the present invention, which is arranged to access data storage media, such as magnetic tape cartridges, typically in response to commands from at least one external host system 21, and comprises one or more frames 50, 51, 52, 53, 54, and 55, each of which has a plurality of storage shelves 66 for storing the data storage media, and may have a plurality of data storage drives 10 for reading and for writing data with respect to the data storage media. The library 100 further comprises at least one robot accessor 68 for transporting the data storage media between the storage shelves 66 and the data storage drives 10. The robot accessor 68 comprises a gripper assembly 60 for gripping one or more of the data storage media, and may comprise an accessor sensor 72 to read the labels of the data storage media. Magnetic tape data storage cartridges may be added to or removed from the library, for example, at input/output stations 77. Herein, an automated data storage library subsystem 101 may comprise a single automated data storage library 100, or a plurality of libraries. A plurality of libraries may be physically coupled together, such that a robot accessor may move between and into each library, or such that a pass through is established to allow the movement of data storage media between the libraries.
The library subsystem 101 also comprises a library control 80, which may be distributed among the frames to operate the library, communicate with a host system 21, and communicate with the data storage drives 10 and 11. Further, the library may provide one or more operator panels 93 for communicating with the library control. An example of an automated data storage library comprises the IBM® 3584 tape library, and another example of an automated data storage library comprises the IBM® 3494 tape library. Herein “library control” may comprise any suitable logic, microprocessor, and associated memory and/or data storage for responding to program code, and the associated memory and/or data storage may comprise fixed or rewritable memory or data storage devices. The program code may be supplied to the library control directly as from a data storage device or memory, for example by an input from an optical disk, for example at operator panel 93, or by being read from a magnetic tape cartridge, for example at a data storage drive 10, or from a network, for example via host system 21, or by any other suitable means. The library control 80 is typically located in the automated data storage library 100, but may be physically located at any point in the subsystem, or spread across the library or the subsystem.
The library subsystem 101 may or may not comprise a virtualization node 40, and may or may not comprise a cache 45. A virtualization node 40 may comprise part of the library control or may comprise a separate entity, and comprises tape daemons 41 that emulate a tape drive to the host system 21, but actually operate on a file that is on cache 45 as is known to those of skill in the art. A cache 45 is typically a disk file subsystem such as a RAID) (Redundant Array of Independent Disks), or a number of such disk file subsystems, as is known to those of skill in the art. The subsystem places data in cache from the host system and migrates that data to the automated data storage library. Data may be retained in the cache 45 for quick access by the host system, and, if the data has been migrated, it is typically moved from the automated data storage library to cache and made available from the cache, as is known to those of skill in the art.
Although libraries, data storage drives and data storage media are highly reliable, errors may occur, and the types of errors may be highly varied. To avoid some errors, various retry procedures may be conducted. For example, a read error may be the result of a misalignment of the read heads of a magnetic tape drive that is reading the data from a magnetic tape data storage media, a misalignment of the write heads of the magnetic tape drive that wrote the data, a defect in the magnetic tape data storage media, a stretched magnetic tape data storage media, a servo error in the magnetic tape drive that is reading the data, etc. Thus, retry procedures may attempt to vary one or more of the parameters of the magnetic tape drive, such as offsetting the servo a small amount, etc. Herein, not every error results in a “selected error event”. For example, if the drive conducts retry procedures that ultimately work, the original error may not comprise a selected error event. Alternatively, if a large number of retry procedures are conducted before the operation is successfully completed, the original error may be considered a warning of future problems, and, so, the original (or the last) error may be considered a selected error event. Still alternatively, the error may be of a type that no retry will work, such as that a data storage media cartridge is missing from a storage shelf, for example, it was removed from the library by an operator who did not update the library inventory, and therefore an error in being unable to find a label, or being unable to access a cartridge at the physical storage shelf indicated by the physical inventory, may constitute a selected error event without significant retry procedures. In the same situation, if the error is being unable to read the label (because it isn't there), a substantial number of retries may be conducted to make sure there is an error before the error becomes a selected error event. Many other scenarios are known to those of skill in the art, and the selection of which types of errors and the amount of retries that are required before a potential error becomes a selected error event is subject to considerable variation herein.
Further, many errors may occur where it is unknown whether the error is the result of the data storage drive, the data storage media, a previous data storage drive, or another entity or device. The selected error event can only provide an error code describing the detected error or problem, and does not necessarily identify the source of the error or problem.
Referring to FIGS. 3 and 4, an embodiment of a method for implementing the invention with respect to an automated data storage library subsystem is illustrated. In step 200, a selected error event, as discussed above, is detected. The detection may be by a data storage drive 10, by the robot accessor 68, etc., and is typically reported by means of an error code. Herein, the detection also describes the involved data storage drive and/or data storage media.
Step 202 groups some of the selected error events that may be related to one another, reducing the detected error events to a single error event. For example, the data storage drive may have an error in opening a file of a data storage media that has been mounted in the drive, may have an error in reading data from the data storage media, may have an error in writing data to the data storage media, and may have an error in closing a file. All of these errors may have a single cause, and are reduced to a single error event.
In step 205, the detection information may be provided to, and stored in database 85 of the library control 80, for example in a drive-media table, listing each selected error event by the involved data storage drive and the involved data storage media. If the information relating to a selected error event is relevant to both a data storage media and a data storage drive, the information stored in the database describes the data storage media and the error event, and describes the data storage drive and the selected error event. The table allows for tracking of the selected error events as will be described. All of the media in the library may have entries in the database 85 for purposes unrelated to errors. Examples of information stored in the database comprise volume name, status and amount of data it contains. Step 205 determines the involved data storage drive, if any, and the involved data storage media, if any, and stores that information in the database 85. Database 85 may comprise a portion of the memory and/or data storage of the library control, or may comprise separate memory and/or separate data storage.
With respect to the present invention, the database 85 additionally identifies at least the last physical drive this media was mounted on that had an immediately preceding error. In step 207, based on the database information of the last physical drive where there was an error, the library attempts to move the data storage media involved in the error to another data storage drive, and conduct a similar operation to the operation that resulted in the selected error event. If the error is repeated, for example, by a repeat of the error detection step 200, etc., on the second data storage drive, then the media is most likely the cause of the problem. If the error is not repeated, then it is unknown whether the error was overcome by the other drive, or whether the original drive was the cause of the problem. Step 207 prevents a retry procedure of trying the operation again, but finding that the only drive currently available is the drive where the problem occurred, and trying the operation at the original drive and repeating the problem, possibly over and over.
In step 210, some selected error events may be considered “immediate events”. One example comprises a library subsystem attempting to access a data storage media cartridge and cannot locate the cartridge, meaning that it is inaccessible or misplaced, for example, it has been removed from the library subsystem without updating the inventory. Another example comprises a drive that has been reconfigured but the reconfiguration has not been noted to the library control, and hence the drive previous to the reconfiguration no longer “exists” in the library. Step 210 categorizes the error events into A) immediate error events; and B) non-immediate error events.
If the error event is an immediate error event, step 213 isolates a data storage media or a data storage drive as having the immediate error event, and, in step 215, places the isolated data storage media or data storage drive in a failed category. For example, if a data storage media cartridge cannot be accessed, the media is failed. If a data storage drive cannot be found, the drive is failed. Information about the failed media or about the failed drive may be maintained in the database in case the media or the drive reappears.
If the error event is a non-immediate error event, step 220 categorizes the error events involving the data storage drive and/or data storage media into 1) error events before or during a mount of a data storage media into a data storage drive; and 2) error events after a successful mount of a data storage media into a data storage drive.
In the case of data storage media, rather than characterize the media as failed after an error event, the media, at least after certain errors, may be sent to a recovery queue. Data storage media in the recovery queue may then go through a read only recovery process to recover as much data as possible. Herein, the term “failed category” and similar terminology refer both or either to a characterization of failure and to placement in a recovery process.
An example of an error event before or during a mount of a data storage media comprises a tape leader block that cannot be threaded into the drive, for example because the leader block is missing or at an erroneous position, or because the drive threading mechanism is not working properly. An example of an error event after a successful mount is an inability to write data to the media, for example because the write protect button has been set, or because the drive write driver is not functioning properly. Another example of an error event after a successful mount is a servo error, for example, because the tape is stretched and mispositioning the servo tracks, or because the drive servo has a tracking error. If an error occurs that may be either a drive or the media, an error event is attributed to both.
In accordance with the present invention, the categorized error events are so different in character that they are unrelated, and tracking successive errors of these different types would likely lead to an erroneous failing of a drive or media.
Providing only two categories puts the emphasis on the specific drive or the specific media, and not on the type of error, changing the emphasis from how the particular drive encodes the error. In this manner, the algorithm is agnostic to the drive type or the drive manufacturer, who may have specific ways of encoding errors that specifically interest them.
Step 221 reduces the weighting of related error events. For example, if a library is powered off, errors may occur at some or all of the data storage drives when the library is again powered on and/or reinitialized, and step 221 reduces the weighting, or eliminates, all of the errors that appear related to the power on and/or reinitialization.
Step 230 separately tracks successive error events of the individual data storage drives and of the individual data storage media, and in the two categories of step 220. If a data storage drive or a data storage media has no error event attributed to its involvement, the data storage drive or data storage media need not be tracked at all. The successive error events are, for example, tracked from the entries in the database discussed above. Herein, “separately tracking” can refer to tracking separately each of all of the drives and media and noting whether they have error events, or tracking separately only the drives and media that have been identified with an error event. As discussed above, if an error occurs that may be either a drive or the media, an error event is attributed to both. It is presumed that successive errors, because of step 207 moving the media to another drive, arise because the drive or the media having the successive error events is the problem.
In step 232, a complete successful operation of the data storage drive and/or data storage media breaks the chain of the successive error events. In accordance with the present invention, the chain only relates to the specific category of the error event. Thus, a successful mount of a cartridge breaks a chain of error events before or during a mount relating to the cartridge being mounted and/or to the drive at which the cartridge is being mounted, but does not break a chain of error events occurring after successful mounts. Successful operation after a mount will break a chain of error events of the category “after a successful mount”.
Herein, the terminology “data storage drive and/or data storage media”, the reverse, and similar terminology, refer to an action pertinent to at least one of a data storage drive and a data storage media. Thus, in the example of a chain of successive error events involving a data storage cartridge after a successful mount, where the data storage drive has no current chain of error events, successful operation of the drive and cartridge only breaks the chain of successive error events of the cartridge.
Step 235 compares the number of successive error events of the data storage drive and/or of the data storage media to a threshold 237; and upon the number of the successive error events reaching the threshold, in step 238, places the data storage drive and/or data storage media in a failed category.
The thresholds of step 237 may be set differently for data storage media and for data storage drives, and may be set differently for the different categories of error events. A threshold for drives may be set conservatively, for example, to fail drives easily to prevent the situation worsening and potentially ruining a number of media, or perhaps to compensate for drives that are not as precise as others. A threshold may be set higher, for example, to avoid or postpone taking a long time to swap drives during an unusually high load cycle. A threshold for media may be set conservatively to better insure against the potential loss of data, or may be set high for media that has data that is not critical, such as a string of seismic data.
The occurrence of a string of successive error events is strong evidence that the drive or media that has the successive errors is a problem. An example of a threshold is therefore 4 successive error events.
Step 240 separately accumulates selected error events regarding individual data storage drives and regarding individual data storage media in each of the categories over a period of time. The time, such as a 24 hour period, may be controlled by a reset 243. This accumulation is not reset by a successful operation, and the accumulation continues for the entire period. For example, after an error event with a media, such that the media, in step 207, is mounted on a different drive, a different operation is completed successfully with a different media, breaking the chain of step 232, but an error event reoccurs later in the day. This could also be an indication of a problem with the drive.
Step 235 compares the number of the accumulated error events of a data storage drive and/or of a data storage media in a category to a threshold 237; and upon the number of the accumulated error events in the category reaching the threshold, placing the data storage drive and/or data storage media in a failed category in step 238.
The thresholds of step 237 may be set differently for accumulated error events of step 240 than for the successive events of step 230. Further, the thresholds may be different for data storage media and for data storage drives, and may be set differently for the different categories of error events. As discussed above, a threshold for drives may be set conservatively, for example, to fail drives easily to prevent the situation worsening and potentially ruining a number of media, or perhaps to compensate for drives that are not as precise as others. A threshold may be set higher, for example, to avoid or postpone taking a long time to swap drives during an unusually high load cycle. A threshold for media may be set conservatively to better insure against the potential loss of data, or may be set high for media that has data that is not critical, such as a string of seismic data.
The occurrence of a number of error events in a given time period is evidence that the drive or media that has the errors is a problem. An example of a threshold is therefore an accumulated 4 error events.
If neither threshold is met, the process continues from step 243 to examine the database to track and accumulate error event counts.
An alternate type of failure is pointed out in step 250, where not only is a drive or media failed, but enough drives and/or media have failed to present a situation that requires additional attention. Thus, in step 250, a “call home” signal is initiated to call an administrator, and/or the manufacturer of the library, and/or the manufacturer or supplier of the drives, and/or the manufacturer or supplier of the media. The subsequent analysis may or may not result in a service call.
Once a failed drive or media is removed, detected by step 260, it may be that the error events of the media or drives involved with the drive or media, which error events also had been added to the database for affected other media or drives, are now solved.
In steps 260 and 265, if a data storage drive is removed from the subsystem, the error events of data storage media that occurred at the removed data storage drive are cleared.
Similarly, in steps 260 and 265, if a data storage media is removed from the subsystem, the error events of data storage drive that occurred at the data storage drive with respect to the removed data storage media are cleared.
Once a failed drive or media has been removed and then returned, detected by step 270, it may be assumed that the drive or media was repaired before being returned.
In steps 270 and 275, if a data storage drive is removed from the subsystem and returned, the error events of the removed and returned data storage drive are cleared.
Also in steps 270 and 275, if a data storage media is removed from the subsystem and returned, the error events of the removed and returned data storage media are cleared.
In the case of an immediate error event, in step 280, if a data storage drive is failed in steps 210, 213 and 215, the corresponding error(s) of data storage media that occurred at the failed data storage drive are not considered as error events. Similarly, if a data storage media is failed in steps 210, 213 and 215, the corresponding error(s) of data storage drives that occurred with respect to the failed data storage media are not considered as error events.
Those of skill in the art will understand that changes may be made with respect to the methods discussed above, including changes to the ordering of the steps, or the removal of various steps. Further, those of skill in the art will understand that differing specific component arrangements may he employed than those illustrated herein.
While the preferred embodiments of the present invention have been illustrated in detail, it should be apparent that modifications and adaptations to those embodiments may occur to one skilled in the art without departing from the scope of the present invention as set forth in the following claims.

Claims (35)

1. In an automated data storage library subsystem with storage shelves configured to store data storage media, a plurality of data storage drives, and at least one robot accessor configured to transfer data storage media between said storage shelves and said data storage drives, the method comprising:
detecting the occurrence of selected error events involving a data storage drive and selected error events involving a data storage media;
upon a selected error event involving a data storage media, attempting to move said data storage media to another data storage drive to prevent a retry procedure, and conducting a similar operation to the operation that resulted in said selected error event;
separately tracking successive error events of individual data storage drives and individual data storage media, wherein a complete successful operation of at least one of said data storage drives and said data storage media breaks the chain of said successive error events for said successful at least one data storage drive and said data storage media having a chain of said successive error events;
comparing the number of said successive error events of at least one of said data storage drive and said data storage media to a threshold; and
upon said number of said successive error events reaching said threshold, placing at least one of said data storage drive and said data storage media in a failed category.
2. The method of claim 1, additionally:
categorizing said error events involving said data storage drive and said error events involving said data storage media into:
1) error events before and during a mount of a data storage media into a data storage drive; and
2) error events after a successful mount of a data storage media into a data storage drive;
conducting said tracking, comparing and placing steps for each of said categories for said data storage drives and said data storage media; and
wherein said breaking of said chain of successive error events applies only to a category of error events to which said complete successful operation belongs.
3. The method of claim 2, additionally:
separately accumulating selected error events regarding individual data storage drives and regarding individual data storage media in each of said categories over a period of time;
comparing the number of said accumulated error events of at least one of a data storage drive and a data storage media in a category to a threshold; and
upon said number of said accumulated error events in said category reaching said threshold, placing said at lest one of said data storage drive and said data storage media in a failed category.
4. The method of claim 1, additionally:
reducing related errors to a single said selected error event.
5. The method of claim 1, additionally:
storing, in a database, information relating to said selected error events relevant to both a data storage media and a data storage drive, said information describing said data storage media and said data storage drive and said selected error event.
6. In an automated data storage library subsystem with storage shelves configured to store data storage media, a plurality of data storage drives, and at least one robot accessor configured to transfer data storage media between said storage shelves and said data storage drives, the method comprising:
detecting the occurrence of selected error events involving a data storage drive and selected error events involving a data storage media;
upon a selected error event involving a data storage media, attempting to move said data storage media to another data storage drive, and conducting a similar operation to the operation that resulted in said selected error event;
separately tracking successive error events of individual data storage drives and individual data storage media, wherein a complete successful operation of at least one of said data storage drive and said data storage media breaks the chain of said successive error events;
comparing the number of said successive error events of at least one of said data storage drive and said data storage media to a threshold;
upon said number of said successive error events reaching said threshold, placing at least one of said data storage drive and said data storage media in a failed category;
additionally:
categorizing said error events involving said data storage drive and said error events involving said data storage media into:
1) error events before and during a mount of a data storage media into a data storage drive; and
2) error events after a successful mount of a data storage media into a data storage drive; and
conducting said tracking, comparing and placing steps for each of said categories for said data storage drives and said data storage media; and, additionally:
categorizing said error events into:
A) immediate error events; and
B) non-immediate error events; and
upon isolating at least one of a data storage media and a data storage drive with said immediate error event, placing said isolated at least one of said data storage media and said data storage drive in a failed category; and conducting said tracking, comparing and placing steps for said non-immediate error events for said at least one of said data storage drive and said data storage media involved in said immediate error event with at least one of said failed category data storage media and said failed category data storage drive without considering said immediate error event in said succession or said accumulation of error events.
7. In an automated data storage library subsystem with storage shelves configured to store data storage media, a plurality of data storage drives, and at least one robot accessor configured to transfer data storage media between said storage shelves and said data storage drives, the method comprising:
detecting the occurrence of selected error events involving a data storage drive and selected error events involving a data storage media;
upon a selected error event involving a data storage media, attempting to move said data storage media to another data storage drive, and conducting a similar operation to the operation that resulted in said selected error event;
separately tracking successive error events of individual data storage drives and individual data storage media, wherein a complete successful operation of at least one of said data storage drive and said data storage media breaks the chain of said successive error events;
comparing the number of said successive error events of at least one of said data storage drive and said data storage media to a threshold;
upon said number of said successive error events reaching said threshold, placing at least one of said data storage drive and said data storage media in a failed category;
additionally:
categorizing said error events involving said data storage drive and said error events involving said data storage media into:
1) error events before and during a mount of a data storage media into a data storage drive; and
2) error events after a successful mount of a data storage media into a data storage drive; and
conducting said tracking, comparing and placing steps for each of said categories for said data storage drives and said data storage media;
additionally:
separately accumulating selected error events regarding individual data storage drives and regarding individual data storage media in each of said categories over a period of time;
comparing the number of said accumulated error events of at least one of a data storage drive and a data storage media in a category to a threshold; and
upon said number of said accumulated error events in said category reaching said threshold, placing said at lest one of said data storage drive and said data storage media in a failed category; and, additionally: if error events are related to each other, reduce weighting of said error events in said succession and in said accumulation of said selected error events.
8. In an automated data storage library subsystem with storage shelves configured to store data storage media, a plurality of data storage drives, and at least one robot accessor configured to transfer data storage media between said storage shelves and said data storage drives, the method comprising:
detecting the occurrence of selected error events involving a data storage drive and selected error events involving a data storage media;
upon a selected error event involving a data storage media, attempting to move said data storage media to another data storage drive, and conducting a similar operation to the operation that resulted in said selected error event;
separately tracking successive error events of individual data storage drives and individual data storage media, wherein a complete successful operation of at least one of said data storage drive and said data storage media breaks the chain of said successive error events;
comparing the number of said successive error events of at least one of said data storage drive and said data storage media to a threshold; and
upon said number of said successive error events reaching said threshold, placing at least one of said data storage drive and said data storage media in a failed category;
and, additionally:
if a data storage drive is removed from said subsystem, clearing said error events of data storage media that occurred at said removed data storage drive.
9. The method of claim 8, additionally:
if a data storage drive is removed from said subsystem and returned, clearing said error events of said removed and returned data storage drive.
10. In an automated data storage library subsystem with storage shelves configured to store data storage media, a plurality of data storage drives, and at least one robot accessor configured to transfer data storage media between said storage shelves and said data storage drives, the method comprising:
detecting the occurrence of selected error events involving a data storage drive and selected error events involving a data storage media;
upon a selected error event involving a data storage media, attempting to move said data storage media to another data storage drive, and conducting a similar operation to the operation that resulted in said selected error event;
separately tracking successive error events of individual data storage drives and individual data storage media, wherein a complete successful operation of at least one of said data storage drive and said data storage media breaks the chain of said successive error events;
comparing the number of said successive error events of at least one of said data storage drive and said data storage media to a threshold; and
upon said number of said successive error events reaching said threshold, placing at least one of said data storage drive and said data storage media in a failed category;
and, additionally:
if a data storage media is removed from said subsystem, clearing said error events of data storage drive that occurred at said data storage drive with respect to said removed data storage media.
11. The method of claim 10, additionally:
if a data storage media is removed from said subsystem and returned, clearing said error events of said removed and returned data storage media.
12. An automated data storage library subsystem comprising:
storage shelves configured to store data storage media;
a plurality of data storage drives configured to mount, demount, read and write data with respect to data storage media;
at least one robot accessor configured to transfer data storage media between said storage shelves and said data storage drives; and
library control configured to:
detect the occurrence of selected error events involving data storage drives;
categorize said error events into:
1) error events before and during a mount of a data storage media into a data storage drive; and
2) error events after a successful mount of a data storage media into a data storage drive;
separately track successive error events of individual data storage drives in each of said categories, wherein a complete successful operation of said data storage drive breaks the chain of said successive error events, wherein said breaking of said chain of successive error events applies only to a category of error events to which said complete successful operation belongs;
compare the number of said successive error events of a data storage drive in a category to a threshold; and
upon said number of said successive error events reaching said threshold, place said data storage drive in a failed category.
13. The automated data storage library subsystem of claim 12, wherein said library control is additionally configured to:
detect the occurrence of selected error events involving data storage media;
categorize said error events involving said data storage media into:
1) error events before and during a mount of a data storage media into a data storage drive; and
2) error events after a successful mount of a data storage media into a data storage drive;
separately track successive error events of individual data storage media in each of said categories, wherein a complete successful operation of said data storage media with respect to a data storage drive breaks the chain of said successive error events; wherein said breaking of said chain of successive error events applies only to a category of error events to which said complete successful operation belongs;
compare the number of said successive error events of a data storage media in a category to a threshold; and
upon said number of said successive error events reaching said threshold, place said data storage media in a failed category.
14. The automated data storage library subsystem of claim 13, wherein said library control is additionally configured to:
reduce related errors to a single said selected error event.
15. The automated data storage library subsystem of claim 13, wherein said library control is additionally configured to:
store, in a database, information relating to said selected error events relevant to both a data storage media and a data storage drive, said information describing said data storage media and said data storage drive and said selected error event.
16. An automated data storage library subsystem comprising:
storage shelves configured to store data storage media;
a plurality of data storage drives configured to mount, demount, read and write data with respect to data storage media;
at least one robot accessor configured to transfer data storage media between said storage shelves and said data storage drives; and
library control configured to:
detect the occurrence of selected error events involving data storage drives;
categorize said error events into:
1) error events before and during a mount of a data storage media into a data storage drive; and
2) error events after a successful mount of a data storage media into a data storage drive;
separately track successive error events of individual data storage drives in each of said categories, wherein a complete successful operation of said data storage drive breaks the chain of said successive error events;
compare the number of said successive error events of a data storage drive in a category to a threshold; and
upon said number of said successive error events reaching said threshold, place said data storage drive in a failed category; and
wherein said library control is additionally configured to:
detect the occurrence of selected error events involving data storage media;
categorize said error events involving said data storage media into:
1) error events before and during a mount of a data storage media into a data storage drive; and
2) error events after a successful mount of a data storage media into a data storage drive;
separately track successive error events of individual data storage media in each of said categories, wherein a complete successful operation of said data storage media with respect to a data storage drive breaks the chain of said successive error events;
compare the number of said successive error events of a data storage media in a category to a threshold; and
upon said number of said successive error events reaching said threshold, place said data storage media in a failed category; and, wherein said library control is additionally configured to:
categorize said error events into:
A) immediate error events; and
B) non-immediate error events; and
upon isolating at least one of a data storage media and a data storage drive with said immediate error event, place said isolated at least one of said data storage media and said data storage drive in a failed category; and conduct said tracking, comparing and placing steps for said non-immediate error events for said at least one of said data storage drive and said data storage media involved in said immediate error event with at least one of said failed category data storage media and said failed category data storage drive without considering said immediate error event in said succession of error events.
17. An automated data storage library subsystem comprising:
storage shelves configured to store data storage media;
a plurality of data storage drives configured to mount, demount, read and write data with respect to data storage media;
at least one robot accessor configured to transfer data storage media between said storage shelves and said data storage drives; and
library control configured to:
detect the occurrence of selected error events involving data storage drives;
categorize said error events into:
1) error events before and during a mount of a data storage media into a data storage drive; and
2) error events after a successful mount of a data storage media into a data storage drive;
separately track successive error events of individual data storage drives in each of said categories, wherein a complete successful operation of said data storage drive breaks the chain of said successive error events;
compare the number of said successive error events of a data storage drive in a category to a threshold; and
upon said number of said successive error events reaching said threshold, place said data storage drive in a failed category; and
wherein said library control is additionally configured to:
detect the occurrence of selected error events involving data storage media;
categorize said error events involving said data storage media into:
1) error events before and during a mount of a data storage media into a data storage drive; and
2) error events after a successful mount of a data storage media into a data storage drive;
separately track successive error events of individual data storage media in each of said categories, wherein a complete successful operation of said data storage media with respect to a data storage drive breaks the chain of said successive error events:
compare the number of said successive error events of a data storage media in a category to a threshold; and
upon said number of said successive error events reaching said threshold, place said data storage media in a failed category; and, wherein said library control is additionally configured to:
separately accumulate selected error events in said categories regarding individual data storage drives and regarding individual data storage media over a period of time;
compare the number of said accumulated error events of at least one of a data storage drive and a data storage media to a threshold; and
upon said number of said accumulated error events reaching said threshold, place said at least one of said data storage drive and said data storage media in a failed category.
18. The automated data storage library subsystem of claim 17, wherein said library control is additionally configured to:
if error events are related to each other, reduce weighting of said error events in said succession and in said accumulation of said selected error events.
19. An automated data storage library subsystem comprising:
storage shelves configured to store data storage media;
a plurality of data storage drives configured to mount, demount, read and write data with respect to data storage media;
at least one robot accessor configured to transfer data storage media between said storage shelves and said data storage drives; and
library control configured to:
detect the occurrence of selected error events involving data storage drives;
categorize said error events into:
1) error events before and during a mount of a data storage media into a data storage drive; and
2) error events after a successful mount of a data storage media into a data storage drive;
separately track successive error events of individual data storage drives in each of said categories, wherein a complete successful operation of said data storage drive breaks the chain of said successive error events;
compare the number of said successive error events of a data storage drive in a category to a threshold; and
upon said number of said successive error events reaching said threshold, place said data storage drive in a failed category; and
wherein said library control is additionally configured to:
detect the occurrence of selected error events involving data storage media;
categorize said error events involving said data storage media into:
1) error events before and during a mount of a data storage media into a data storage drive; and
2) error events after a successful mount of a data storage media into a data storage drive;
separately track successive error events of individual data storage media in each of said categories, wherein a complete successful operation of said data storage media with respect to a data storage drive breaks the chain of said successive error events:
compare the number of said successive error events of a data storage media in a category to a threshold; and
upon said number of said successive error events reaching said threshold, place said data storage media in a failed category; and, wherein said library control is additionally configured to:
if a data storage drive is removed from said subsystem, clear said error events of data storage media that occurred at said removed data storage drive.
20. The automated data storage library subsystem of claim 19, wherein said library control is additionally configured to:
if a data storage drive is removed from said subsystem and returned, clear said error events of said removed and returned data storage drive.
21. An automated data storage library subsystem comprising:
storage shelves configured to store data storage media;
a plurality of data storage drives configured to mount, demount, read and write data with respect to data storage media;
at least one robot accessor configured to transfer data storage media between said storage shelves and said data storage drives; and
library control configured to:
detect the occurrence of selected error events involving data storage drives;
categorize said error events into:
1) error events before and during a mount of a data storage media into a data storage drive; and
2) error events after a successful mount of a data storage media into a data storage drive;
separately track successive error events of individual data storage drives in each of said categories, wherein a complete successful operation of said data storage drive breaks the chain of said successive error events;
compare the number of said successive error events of a data storage drive in a category to a threshold; and
upon said number of said successive error events reaching said threshold, place said data storage drive in a failed category; and
wherein said library control is additionally configured to:
detect the occurrence of selected error events involving data storage media;
categorize said error events involving said data storage media into:
1) error events before and during a mount of a data storage media into a data storage drive; and
2) error events after a successful mount of a data storage media into a data storage drive;
separately track successive error events of individual data storage media in each of said categories, wherein a complete successful operation of said data storage media with respect to a data storage drive breaks the chain of said successive error events;
compare the number of said successive error events of a data storage media in a category to a threshold; and
upon said number of said successive error events reaching said threshold, place said data storage media in a failed category; and, wherein said library control is additionally configured to:
if a data storage media is removed from said subsystem, clear said error events of data storage drive that occurred at said data storage drive with respect to said removed data storage media.
22. The automated data storage library subsystem of claim 21, wherein said library control is additionally configured to:
if a data storage media is removed from said subsystem, clear said error events of said removed and returned data storage media.
23. An automated data storage library subsystem comprising:
storage shelves configured to store data storage media;
a plurality of data storage drives configured to mount, demount, read and write data with respect to data storage media;
at least one robot accessor configured to transfer data storage media between said storage shelves and said data storage drives; and
library control configured to:
detect the occurrence of selected error events involving a data storage media and error events involving a data storage drive;
upon a selected error event involving a data storage media, attempt to move said data storage media to another data storage drive to prevent a retry procedure, and conduct a similar operation to the operation that resulted in said selected error event;
separately track successive error events of individual data storage drives, wherein a complete successful operation of at least one of said data storage drives breaks the chain of said successive error events for said successful at least one data storage drive and said data storage media having a chain of successive error events;
compare the number of said successive error events of a data storage drive to a threshold;
upon said number of said successive error events reaching said threshold, place said data storage drive in a failed category;
separately track successive error events of individual data storage media, wherein a complete successful operation of said data storage media breaks the chain of said successive error events;
compare the number of said successive error events of a data storage media to a threshold; and
upon said number of said successive error events reaching said threshold, place said data storage media in a failed category.
24. A computer program product comprising at least one of data storage and memory having computer useable program code stored therein for operating a library control of an automated data storage library subsystem, said subsystem comprising storage shelves configured to store data storage media, a plurality of data storage drives configured to mount, demount, read and write data with respect to data storage media, at least one robot accessor configured to transfer data storage media between said storage shelves and said data storage drives; said computer useable program code configured to, when executed on said library control, cause said library control to:
detect the occurrence of selected error events involving data storage drives;
categorize said error events into:
1) error events before and during a mount of a data storage media into a data storage drive; and
2) error events after a successful mount of a data storage media into a data storage drive;
separately track successive error events of individual data storage drives in each of said categories, wherein a complete successful operation of said data storage drive breaks the chain of said successive error events, wherein said breaking of said chain of successive error events applies only to a category of error events to which said complete successful operation belongs;
compare the number of said successive error events of a data storage drive in a category to a threshold; and
upon said number of said successive error events reaching said threshold, place said data storage drive in a failed category.
25. The computer program product of claim 24, wherein said computer useable program code is additionally configured to, when executed on said library control, cause said library control to:
detect the occurrence of selected error events involving data storage media;
categorize said error events involving said data storage media into:
1) error events before and during a mount of a data storage media into a data storage drive; and
2) error events after a successful mount of a data storage media into a data storage drive;
track successive error events of individual data storage media in each of said categories, wherein a complete successful operation of said data storage media with respect to a data storage drive breaks the chain of said successive error events, wherein said breaking of said chain of successive error events applies only to a category of error events to which said complete successful operation belongs;
compare the number of said successive error events of a data storage media in a category to a threshold; and
upon said number of said successive error events reaching said threshold, place said data storage media in a failed category.
26. The computer program product of claim 25, wherein said computer useable program code is additionally configured to, when executed on said library control, cause said library control to:
reduce related errors to a single said selected error event.
27. The computer program product of claim 25, wherein said computer useable program code is additionally configured to, when executed on said library control, cause said library control to:
store, in a database, information relating to said selected error events relevant to both a data storage media and a data storage drive, said information describing said data storage media and said data storage drive and said selected error event.
28. A computer program product comprising at least one of data storage and memory having computer useable pro gram code stored therein for operating a library control of an automated data storage library subsystem, said subsystem comprising storage shelves configured to store data storage media, a plurality of data storage drives configured to mount, demount, read and write data with respect to data storage media, at least one robot accessor configured to transfer data storage media between said storage shelves and said data storage drives; said computer useable program code configured to, when executed on said library control, cause said library control to:
detect the occurrence of selected error events involving data storage drives; categorize said error events into:
1) error events before and during a mount of a data storage media into a data storage drive; and
2) error events after a successful mount of a data storage media into a data storage drive;
separately track successive error events of individual data storage drives in each of said categories, wherein a complete successful operation of said data storage drive breaks the chain of said successive error events;
compare the number of said successive error events of a data storage drive in a category to a threshold; and
upon said number of said successive error events reaching said threshold, place said data storage drive in a failed category; and, additionally to:
detect the occurrence of selected error events involving data storage media;
categorize said error events involving said data storage media into:
1) error events before and during a mount of a data storage media into a data storage drive; and
2) error events after a successful mount of a data storage media into a data storage drive;
track successive error events of individual data storage media in each of said categories, wherein a complete successful operation of said data storage media with respect to a data storage drive breaks the chain of said successive error events;
compare the number of said successive error events of a data storage media in a category to a threshold; and
upon said number of said successive error events reaching said threshold, place said data storage media in a failed category; and additionally to:
categorize said error events into:
A) immediate error events; and
B) non-immediate error events; and
upon isolating at least one of a data storage media and a data storage drive with said immediate error event, place said isolated at least one of said data storage media and said data storage drive in a failed category; and conduct said tracking, comparing and placing steps for said non-immediate error events for said at least one of said data storage drive and said data storage media involved in said immediate error event with said at least one of said failed category data storage media and said failed category data storage drive without considering said immediate error event in said succession and said accumulation of error events.
29. A computer program product comprising at least one of data storage and memory having computer useable program code stored therein for operating a library control of an automated data storage library subsystem, said subsystem comprising storage shelves configured to store data storage media, a plurality of data storage drives configured to mount, demount, read and write data with respect to data storage media, at least one robot accessor configured to transfer data storage media between said storage shelves and said data storage drives; said computer useable program code configured to, when executed on said library control, cause said library control to:
detect the occurrence of selected error events involving data storage drives;
categorize said error events into:
1) error events before and during a mount of a data storage media into a data storage drive; and
2) error events after a successful mount of a data storage media into a data storage drive;
separately track successive error events of individual data storage drives in each of said categories, wherein a complete successful operation of said data storage drive breaks the chain of said successive error events;
compare the number of said successive error events of a data storage drive in a category to a threshold; and
upon said number of said successive error events reaching said threshold, place said data storage drive in a failed category; and, additionally to:
detect the occurrence of selected error events involving data storage media;
categorize said error events involving said data storage media into:
1) error events before and during a mount of a data storage media into a data storage drive; and
2) error events after a successful mount of a data storage media into a data storage drive;
track successive error events of individual data storage media in each of said categories, wherein a complete successful operation of said data storage media with respect to a data storage drive breaks the chain of said successive error events;
compare the number of said successive error events of a data storage media in a category to a threshold; and
upon said number of said successive error events reaching said threshold, place said data storage media in a failed category; and, wherein said computer useable program additionally to:
separately accumulate selected error events in said categories regarding individual data storage drives and regarding individual data storage media over a period of time;
compare the number of said accumulated error events of at least one of a data storage drive and a data storage media to a threshold; and
upon said number of said accumulated error events reaching said threshold, place said at least one of said data storage drive and said data storage media in a failed category.
30. The computer program product of claim 29, wherein said computer useable program code is additionally configured to, when executed on said library control, cause said library control to:
if error events are related to each other, reduce weighting of said error events in said succession and in said accumulation of said selected error events.
31. A computer program product comprising at least one of data storage and memory having computer useable program code stored therein for operating a library control of an automated data storage library subsystem, said subsystem comprising storage shelves configured to store data storage media, a plurality of data storage drives configured to mount, demount, read and write data with respect to data storage media, at least one robot accessor configured to transfer data storage media between said storage shelves and said data storage drives;
said computer useable program code configured to, when executed on said library control, cause said library control to:
detect the occurrence of selected error events involving data storage drives;
categorize said error events into:
1) error events before and during a mount of a data storage media into a data storage drive; and
2) error events after a successful mount of a data storage media into a data storage drive;
separately track successive error events of individual data storage drives in each of said categories, wherein a complete successful operation of said data storage drive breaks the chain of said successive error events;
compare the number of said successive error events of a data storage drive in a category to a threshold; and
upon said number of said successive error events reaching said threshold, place said data storage drive in a failed category; and, additionally to:
detect the occurrence of selected error events involving data storage media;
categorize said error events involving said data storage media into:
1) error events before and during a mount of a data storage media into a data storage drive; and
2) error events after a successful mount of a data storage media into a data storage drive;
track successive error events of individual data storage media in each of said categories, wherein a complete successful operation of said data storage media with respect to a data storage drive breaks the chain of said successive error events;
compare the number of said successive error events of a data storage media in a category to a threshold; and
upon said number of said successive error events reaching said threshold, place said data storage media in a failed category; and, additionally to:
if a data storage drive is removed from said subsystem, clear said error events of data storage media that occurred at said removed data storage drive.
32. The computer program product of claim 31, wherein said computer useable program code is additionally configured to, when executed on said library control, cause said library control to:
if a data storage drive is removed from said subsystem and returned, clear said error events of said removed and returned data storage drive.
33. A computer program product comprising at least one of data storage and memory having computer useable program code stored therein for operating a library control of an automated data storage library subsystem, said subsystem comprising storage shelves configured to store data storage media, a plurality of data storage drives configured to mount, demount, read and write data with respect to data storage media, at least one robot accessor configured to transfer data storage media between said storage shelves and said data storage drives;
said computer useable program code configured to, when executed on said library control, cause said library control to:
detect the occurrence of selected error events involving data storage drives;
categorize said error events into:
1) error events before and during a mount of a data storage media into a data storage drive; and
2) error events after a successful mount of a data storage media into a data storage drive;
separately track successive error events of individual data storage drives in each of said categories, wherein a complete successful operation of said data storage drive breaks the chain of said successive error events;
compare the number of said successive error events of a data storage drive in a category to a threshold; and
upon said number of said successive error events reaching said threshold, place said data storage drive in a failed category; and, additionally to:
detect the occurrence of selected error events involving data storage media;
categorize said error events involving said data storage media into:
1) error events before and during a mount of a data storage media into a data storage drive; and
2) error events after a successful mount of a data storage media into a data storage drive;
track successive error events of individual data storage media in each of said categories, wherein a complete successful operation of said data storage media with respect to a data storage drive breaks the chain of said successive error events;
compare the number of said successive error events of a data storage media in a category to a threshold; and
upon said number of said successive error events reaching said threshold, place said data storage media in a failed category; and, additionally to:
if a data storage media is removed from said subsystem, clear said error events of data storage drive that occurred at said data storage drive with respect to said removed data storage media.
34. The computer program product of claim 33, wherein said computer useable program code is additionally configured to, when executed on said library control, cause said library control to:
if a data storage media is removed from said subsystem, clear said error events of said removed and returned data storage media.
35. A computer program product comprising at least one of data storage and memory having computer useable program code stored therein for operating a library control of an automated data storage library subsystem, said subsystem comprising storage shelves configured to store data storage media, a plurality of data storage drives configured to mount, demount, read and write data with respect to data storage media, at least one robot accessor configured to transfer data storage media between said storage shelves and said data storage drives; and said library control, said computer useable program code configured to, when executed on said library control, cause said library control to:
detect the occurrence of selected error events involving a data storage media and selected error events involving a data storage drive;
upon a selected error event involving a data storage media, attempt to move said data storage media to another data storage drive to prevent a retry procedure, and conduct a similar operation to the operation that resulted in said selected error event;
separately track successive error events of individual data storage drives, wherein a complete successful operation of at least one of said data storage drives breaks the chain of said successive error events for said successful at least one data storage drive having a chain of said successive error events;
compare the number of said successive error events of a data storage drive to a threshold; and
upon said number of said successive error events reaching said threshold, place said data storage drive in a failed category;
separately track successive error events of individual data storage media, wherein a complete successful operation of said data storage media breaks the chain of said successive error events;
compare the number of said successive error events of a data storage media to a threshold; and
upon said number of said successive error events reaching said threshold, place said data storage media in a failed category.
US11/535,238 2006-09-26 2006-09-26 Tracking error events relating to data storage drives and/or media of automated data storage library subsystems Expired - Fee Related US7627786B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US11/535,238 US7627786B2 (en) 2006-09-26 2006-09-26 Tracking error events relating to data storage drives and/or media of automated data storage library subsystems
CN2007101477094A CN101154410B (en) 2006-09-26 2007-08-24 Method of automated data storage library subsystems and library controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US11/535,238 US7627786B2 (en) 2006-09-26 2006-09-26 Tracking error events relating to data storage drives and/or media of automated data storage library subsystems

Publications (2)

Publication Number Publication Date
US20080077825A1 US20080077825A1 (en) 2008-03-27
US7627786B2 true US7627786B2 (en) 2009-12-01

Family

ID=39226441

Family Applications (1)

Application Number Title Priority Date Filing Date
US11/535,238 Expired - Fee Related US7627786B2 (en) 2006-09-26 2006-09-26 Tracking error events relating to data storage drives and/or media of automated data storage library subsystems

Country Status (2)

Country Link
US (1) US7627786B2 (en)
CN (1) CN101154410B (en)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100182887A1 (en) * 2008-02-01 2010-07-22 Crossroads Systems, Inc. System and method for identifying failing drives or media in media library
JP2013030257A (en) * 2011-07-29 2013-02-07 Internatl Business Mach Corp <Ibm> Device and method for performing processing about removable medium
US20130107389A1 (en) * 2011-10-27 2013-05-02 Mark L. Davis Linking errors to particular tapes or particular tape drives
US8631281B1 (en) 2009-12-16 2014-01-14 Kip Cr P1 Lp System and method for archive verification using multiple attempts
US8644185B2 (en) 2008-02-04 2014-02-04 Kip Cr P1 Lp System and method of network diagnosis
US8645328B2 (en) 2008-02-04 2014-02-04 Kip Cr P1 Lp System and method for archive verification
US20140189425A1 (en) * 2012-12-28 2014-07-03 Fujitsu Limited Library controller and method for controlling library device
US8832495B2 (en) 2007-05-11 2014-09-09 Kip Cr P1 Lp Method and system for non-intrusive monitoring of library components
US9015005B1 (en) * 2008-02-04 2015-04-21 Kip Cr P1 Lp Determining, displaying, and using tape drive session information
EP2799992A3 (en) * 2013-04-30 2015-05-27 Fujitsu Limited Storage system, control apparatus, control program, and control method
US9311176B1 (en) * 2012-11-20 2016-04-12 Emc Corporation Evaluating a set of storage devices and providing recommended activities
US9866633B1 (en) 2009-09-25 2018-01-09 Kip Cr P1 Lp System and method for eliminating performance impact of information collection from media drives

Families Citing this family (197)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9043573B2 (en) * 2012-06-07 2015-05-26 Netapp, Inc. System and method for determining a level of success of operations on an abstraction of multiple logical data storage containers
US11630585B1 (en) 2016-08-25 2023-04-18 Pure Storage, Inc. Processing evacuation events in a storage array that includes a plurality of storage devices
US9443616B2 (en) * 2014-04-02 2016-09-13 Seagate Technology Llc Bad memory unit detection in a solid state drive
CN105094684B (en) * 2014-04-24 2018-03-09 国际商业机器公司 The method for reusing and system of problem disk in disc array system
US9552247B2 (en) * 2014-11-05 2017-01-24 Dell Products, Lp Method for detection of soft media errors for hard drive
US9716755B2 (en) 2015-05-26 2017-07-25 Pure Storage, Inc. Providing cloud storage array services by a local storage array in a data center
US11102298B1 (en) 2015-05-26 2021-08-24 Pure Storage, Inc. Locally providing cloud storage services for fleet management
US9594678B1 (en) 2015-05-27 2017-03-14 Pure Storage, Inc. Preventing duplicate entries of identical data in a storage device
US9300660B1 (en) 2015-05-29 2016-03-29 Pure Storage, Inc. Providing authorization and authentication in a cloud for a user of a storage array
US10021170B2 (en) 2015-05-29 2018-07-10 Pure Storage, Inc. Managing a storage array using client-side services
US9444822B1 (en) 2015-05-29 2016-09-13 Pure Storage, Inc. Storage array access control from cloud-based user authorization and authentication
US11503031B1 (en) 2015-05-29 2022-11-15 Pure Storage, Inc. Storage array access control from cloud-based user authorization and authentication
US9588691B2 (en) 2015-06-10 2017-03-07 Pure Storage, Inc. Dynamically managing control information in a storage device
US9594512B1 (en) 2015-06-19 2017-03-14 Pure Storage, Inc. Attributing consumed storage capacity among entities storing data in a storage array
US10310740B2 (en) 2015-06-23 2019-06-04 Pure Storage, Inc. Aligning memory access operations to a geometry of a storage device
US10296236B2 (en) 2015-07-01 2019-05-21 Pure Storage, Inc. Offloading device management responsibilities from a storage device in an array of storage devices
US9892071B2 (en) 2015-08-03 2018-02-13 Pure Storage, Inc. Emulating a remote direct memory access (‘RDMA’) link between controllers in a storage array
US9851762B1 (en) 2015-08-06 2017-12-26 Pure Storage, Inc. Compliant printed circuit board (‘PCB’) within an enclosure
US10198194B2 (en) 2015-08-24 2019-02-05 Pure Storage, Inc. Placing data within a storage device of a flash array
US11625181B1 (en) 2015-08-24 2023-04-11 Pure Storage, Inc. Data tiering using snapshots
US11294588B1 (en) 2015-08-24 2022-04-05 Pure Storage, Inc. Placing data within a storage device
US11360844B1 (en) 2015-10-23 2022-06-14 Pure Storage, Inc. Recovery of a container storage provider
US9384082B1 (en) 2015-10-23 2016-07-05 Pure Storage, Inc. Proactively providing corrective measures for storage arrays
US10514978B1 (en) 2015-10-23 2019-12-24 Pure Storage, Inc. Automatic deployment of corrective measures for storage arrays
US10284232B2 (en) 2015-10-28 2019-05-07 Pure Storage, Inc. Dynamic error processing in a storage device
US9740414B2 (en) 2015-10-29 2017-08-22 Pure Storage, Inc. Optimizing copy operations
US10374868B2 (en) 2015-10-29 2019-08-06 Pure Storage, Inc. Distributed command processing in a flash storage system
US10353777B2 (en) 2015-10-30 2019-07-16 Pure Storage, Inc. Ensuring crash-safe forward progress of a system configuration update
US11762764B1 (en) 2015-12-02 2023-09-19 Pure Storage, Inc. Writing data in a storage system that includes a first type of storage device and a second type of storage device
US9760479B2 (en) 2015-12-02 2017-09-12 Pure Storage, Inc. Writing data in a storage system that includes a first type of storage device and a second type of storage device
US11616834B2 (en) 2015-12-08 2023-03-28 Pure Storage, Inc. Efficient replication of a dataset to the cloud
US10326836B2 (en) 2015-12-08 2019-06-18 Pure Storage, Inc. Partially replicating a snapshot between storage systems
US10162835B2 (en) 2015-12-15 2018-12-25 Pure Storage, Inc. Proactive management of a plurality of storage arrays in a multi-array system
US11347697B1 (en) 2015-12-15 2022-05-31 Pure Storage, Inc. Proactively optimizing a storage system
US10346043B2 (en) 2015-12-28 2019-07-09 Pure Storage, Inc. Adaptive computing for data compression
US9886314B2 (en) 2016-01-28 2018-02-06 Pure Storage, Inc. Placing workloads in a multi-array system
US10572460B2 (en) 2016-02-11 2020-02-25 Pure Storage, Inc. Compressing data in dependence upon characteristics of a storage system
US9760297B2 (en) 2016-02-12 2017-09-12 Pure Storage, Inc. Managing input/output (‘I/O’) queues in a data storage system
US9959043B2 (en) 2016-03-16 2018-05-01 Pure Storage, Inc. Performing a non-disruptive upgrade of data in a storage system
US9841921B2 (en) 2016-04-27 2017-12-12 Pure Storage, Inc. Migrating data in a storage array that includes a plurality of storage devices
US11112990B1 (en) 2016-04-27 2021-09-07 Pure Storage, Inc. Managing storage device evacuation
US11809727B1 (en) 2016-04-27 2023-11-07 Pure Storage, Inc. Predicting failures in a storage system that includes a plurality of storage devices
US9811264B1 (en) 2016-04-28 2017-11-07 Pure Storage, Inc. Deploying client-specific applications in a storage system utilizing redundant system resources
US10303390B1 (en) 2016-05-02 2019-05-28 Pure Storage, Inc. Resolving fingerprint collisions in flash storage system
US11231858B2 (en) 2016-05-19 2022-01-25 Pure Storage, Inc. Dynamically configuring a storage system to facilitate independent scaling of resources
US9507532B1 (en) 2016-05-20 2016-11-29 Pure Storage, Inc. Migrating data in a storage array that includes a plurality of storage devices and a plurality of write buffer devices
US10691567B2 (en) 2016-06-03 2020-06-23 Pure Storage, Inc. Dynamically forming a failure domain in a storage system that includes a plurality of blades
US10452310B1 (en) 2016-07-13 2019-10-22 Pure Storage, Inc. Validating cabling for storage component admission to a storage array
US11706895B2 (en) 2016-07-19 2023-07-18 Pure Storage, Inc. Independent scaling of compute resources and storage resources in a storage system
US10459652B2 (en) 2016-07-27 2019-10-29 Pure Storage, Inc. Evacuating blades in a storage array that includes a plurality of blades
US10474363B1 (en) 2016-07-29 2019-11-12 Pure Storage, Inc. Space reporting in a storage system
US11481261B1 (en) 2016-09-07 2022-10-25 Pure Storage, Inc. Preventing extended latency in a storage system
US10908966B1 (en) 2016-09-07 2021-02-02 Pure Storage, Inc. Adapting target service times in a storage system
US10331588B2 (en) 2016-09-07 2019-06-25 Pure Storage, Inc. Ensuring the appropriate utilization of system resources using weighted workload based, time-independent scheduling
US10671439B1 (en) 2016-09-07 2020-06-02 Pure Storage, Inc. Workload planning with quality-of-service (‘QOS’) integration
US10146585B2 (en) 2016-09-07 2018-12-04 Pure Storage, Inc. Ensuring the fair utilization of system resources using workload based, time-independent scheduling
US11960348B2 (en) 2016-09-07 2024-04-16 Pure Storage, Inc. Cloud-based monitoring of hardware components in a fleet of storage systems
US11886922B2 (en) 2016-09-07 2024-01-30 Pure Storage, Inc. Scheduling input/output operations for a storage system
US11531577B1 (en) 2016-09-07 2022-12-20 Pure Storage, Inc. Temporarily limiting access to a storage device
US10235229B1 (en) 2016-09-07 2019-03-19 Pure Storage, Inc. Rehabilitating storage devices in a storage array that includes a plurality of storage devices
US10007459B2 (en) 2016-10-20 2018-06-26 Pure Storage, Inc. Performance tuning in a storage system that includes one or more storage devices
US11379132B1 (en) 2016-10-20 2022-07-05 Pure Storage, Inc. Correlating medical sensor data
US11620075B2 (en) 2016-11-22 2023-04-04 Pure Storage, Inc. Providing application aware storage
US10162566B2 (en) 2016-11-22 2018-12-25 Pure Storage, Inc. Accumulating application-level statistics in a storage system
US10198205B1 (en) 2016-12-19 2019-02-05 Pure Storage, Inc. Dynamically adjusting a number of storage devices utilized to simultaneously service write operations
US11461273B1 (en) 2016-12-20 2022-10-04 Pure Storage, Inc. Modifying storage distribution in a storage system that includes one or more storage devices
US10452468B2 (en) * 2016-12-30 2019-10-22 Western Digital Technologies, Inc. Method and system for managing non-volatile memory
US10489307B2 (en) 2017-01-05 2019-11-26 Pure Storage, Inc. Periodically re-encrypting user data stored on a storage device
US11307998B2 (en) 2017-01-09 2022-04-19 Pure Storage, Inc. Storage efficiency of encrypted host system data
US11340800B1 (en) 2017-01-19 2022-05-24 Pure Storage, Inc. Content masking in a storage system
US10503700B1 (en) 2017-01-19 2019-12-10 Pure Storage, Inc. On-demand content filtering of snapshots within a storage system
US11163624B2 (en) 2017-01-27 2021-11-02 Pure Storage, Inc. Dynamically adjusting an amount of log data generated for a storage system
US11675520B2 (en) 2017-03-10 2023-06-13 Pure Storage, Inc. Application replication among storage systems synchronously replicating a dataset
US10454810B1 (en) 2017-03-10 2019-10-22 Pure Storage, Inc. Managing host definitions across a plurality of storage systems
US10503427B2 (en) 2017-03-10 2019-12-10 Pure Storage, Inc. Synchronously replicating datasets and other managed objects to cloud-based storage systems
US11803453B1 (en) 2017-03-10 2023-10-31 Pure Storage, Inc. Using host connectivity states to avoid queuing I/O requests
US11169727B1 (en) 2017-03-10 2021-11-09 Pure Storage, Inc. Synchronous replication between storage systems with virtualized storage
US11941279B2 (en) 2017-03-10 2024-03-26 Pure Storage, Inc. Data path virtualization
US11442825B2 (en) 2017-03-10 2022-09-13 Pure Storage, Inc. Establishing a synchronous replication relationship between two or more storage systems
US11089105B1 (en) 2017-12-14 2021-08-10 Pure Storage, Inc. Synchronously replicating datasets in cloud-based storage systems
US10521344B1 (en) 2017-03-10 2019-12-31 Pure Storage, Inc. Servicing input/output (‘I/O’) operations directed to a dataset that is synchronized across a plurality of storage systems
US9910618B1 (en) 2017-04-10 2018-03-06 Pure Storage, Inc. Migrating applications executing on a storage system
US10459664B1 (en) 2017-04-10 2019-10-29 Pure Storage, Inc. Virtualized copy-by-reference
US11868629B1 (en) 2017-05-05 2024-01-09 Pure Storage, Inc. Storage system sizing service
US11592991B2 (en) 2017-09-07 2023-02-28 Pure Storage, Inc. Converting raid data between persistent storage types
US10417092B2 (en) 2017-09-07 2019-09-17 Pure Storage, Inc. Incremental RAID stripe update parity calculation
US11016824B1 (en) 2017-06-12 2021-05-25 Pure Storage, Inc. Event identification with out-of-order reporting in a cloud-based environment
US11422731B1 (en) 2017-06-12 2022-08-23 Pure Storage, Inc. Metadata-based replication of a dataset
US10976962B2 (en) 2018-03-15 2021-04-13 Pure Storage, Inc. Servicing I/O operations in a cloud-based storage system
CN110720088A (en) 2017-06-12 2020-01-21 净睿存储股份有限公司 Accessible fast durable storage integrated into mass storage device
US11210133B1 (en) 2017-06-12 2021-12-28 Pure Storage, Inc. Workload mobility between disparate execution environments
US10884636B1 (en) 2017-06-12 2021-01-05 Pure Storage, Inc. Presenting workload performance in a storage system
US10552090B2 (en) 2017-09-07 2020-02-04 Pure Storage, Inc. Solid state drives with multiple types of addressable memory
US10613791B2 (en) 2017-06-12 2020-04-07 Pure Storage, Inc. Portable snapshot replication between storage systems
US11609718B1 (en) 2017-06-12 2023-03-21 Pure Storage, Inc. Identifying valid data after a storage system recovery
US11442669B1 (en) 2018-03-15 2022-09-13 Pure Storage, Inc. Orchestrating a virtual storage system
US10853148B1 (en) 2017-06-12 2020-12-01 Pure Storage, Inc. Migrating workloads between a plurality of execution environments
US11340939B1 (en) 2017-06-12 2022-05-24 Pure Storage, Inc. Application-aware analytics for storage systems
US10789020B2 (en) 2017-06-12 2020-09-29 Pure Storage, Inc. Recovering data within a unified storage element
US11561714B1 (en) 2017-07-05 2023-01-24 Pure Storage, Inc. Storage efficiency driven migration
US11477280B1 (en) 2017-07-26 2022-10-18 Pure Storage, Inc. Integrating cloud storage services
US10831935B2 (en) 2017-08-31 2020-11-10 Pure Storage, Inc. Encryption management with host-side data reduction
US10452444B1 (en) 2017-10-19 2019-10-22 Pure Storage, Inc. Storage system with compute resources and shared storage resources
US11494692B1 (en) 2018-03-26 2022-11-08 Pure Storage, Inc. Hyperscale artificial intelligence and machine learning infrastructure
US10360214B2 (en) 2017-10-19 2019-07-23 Pure Storage, Inc. Ensuring reproducibility in an artificial intelligence infrastructure
US10671434B1 (en) 2017-10-19 2020-06-02 Pure Storage, Inc. Storage based artificial intelligence infrastructure
US11861423B1 (en) 2017-10-19 2024-01-02 Pure Storage, Inc. Accelerating artificial intelligence (‘AI’) workflows
US11455168B1 (en) 2017-10-19 2022-09-27 Pure Storage, Inc. Batch building for deep learning training workloads
US10817392B1 (en) 2017-11-01 2020-10-27 Pure Storage, Inc. Ensuring resiliency to storage device failures in a storage system that includes a plurality of storage devices
US10484174B1 (en) 2017-11-01 2019-11-19 Pure Storage, Inc. Protecting an encryption key for data stored in a storage system that includes a plurality of storage devices
US10467107B1 (en) 2017-11-01 2019-11-05 Pure Storage, Inc. Maintaining metadata resiliency among storage device failures
US10509581B1 (en) 2017-11-01 2019-12-17 Pure Storage, Inc. Maintaining write consistency in a multi-threaded storage system
US10671494B1 (en) 2017-11-01 2020-06-02 Pure Storage, Inc. Consistent selection of replicated datasets during storage system recovery
US10929226B1 (en) 2017-11-21 2021-02-23 Pure Storage, Inc. Providing for increased flexibility for large scale parity
US10990282B1 (en) 2017-11-28 2021-04-27 Pure Storage, Inc. Hybrid data tiering with cloud storage
US10936238B2 (en) 2017-11-28 2021-03-02 Pure Storage, Inc. Hybrid data tiering
US10795598B1 (en) 2017-12-07 2020-10-06 Pure Storage, Inc. Volume migration for storage systems synchronously replicating a dataset
US11036677B1 (en) 2017-12-14 2021-06-15 Pure Storage, Inc. Replicated data integrity
US10929031B2 (en) 2017-12-21 2021-02-23 Pure Storage, Inc. Maximizing data reduction in a partially encrypted volume
KR102413096B1 (en) * 2018-01-08 2022-06-27 삼성전자주식회사 Electronic device and control method thereof
US10992533B1 (en) 2018-01-30 2021-04-27 Pure Storage, Inc. Policy based path management
US10521151B1 (en) 2018-03-05 2019-12-31 Pure Storage, Inc. Determining effective space utilization in a storage system
US11150834B1 (en) 2018-03-05 2021-10-19 Pure Storage, Inc. Determining storage consumption in a storage system
US10942650B1 (en) 2018-03-05 2021-03-09 Pure Storage, Inc. Reporting capacity utilization in a storage system
US11861170B2 (en) 2018-03-05 2024-01-02 Pure Storage, Inc. Sizing resources for a replication target
US10296258B1 (en) 2018-03-09 2019-05-21 Pure Storage, Inc. Offloading data storage to a decentralized storage network
US10924548B1 (en) 2018-03-15 2021-02-16 Pure Storage, Inc. Symmetric storage using a cloud-based storage system
US10917471B1 (en) 2018-03-15 2021-02-09 Pure Storage, Inc. Active membership in a cloud-based storage system
US11210009B1 (en) 2018-03-15 2021-12-28 Pure Storage, Inc. Staging data in a cloud-based storage system
US11048590B1 (en) 2018-03-15 2021-06-29 Pure Storage, Inc. Data consistency during recovery in a cloud-based storage system
US11288138B1 (en) 2018-03-15 2022-03-29 Pure Storage, Inc. Recovery from a system fault in a cloud-based storage system
US11171950B1 (en) 2018-03-21 2021-11-09 Pure Storage, Inc. Secure cloud-based storage system management
US11095706B1 (en) 2018-03-21 2021-08-17 Pure Storage, Inc. Secure cloud-based storage system management
US10838833B1 (en) 2018-03-26 2020-11-17 Pure Storage, Inc. Providing for high availability in a data analytics pipeline without replicas
US11392553B1 (en) 2018-04-24 2022-07-19 Pure Storage, Inc. Remote data management
US11436344B1 (en) 2018-04-24 2022-09-06 Pure Storage, Inc. Secure encryption in deduplication cluster
US11675503B1 (en) 2018-05-21 2023-06-13 Pure Storage, Inc. Role-based data access
US11455409B2 (en) 2018-05-21 2022-09-27 Pure Storage, Inc. Storage layer data obfuscation
US20190354628A1 (en) 2018-05-21 2019-11-21 Pure Storage, Inc. Asynchronous replication of synchronously replicated data
US11954220B2 (en) 2018-05-21 2024-04-09 Pure Storage, Inc. Data protection for container storage
US10871922B2 (en) 2018-05-22 2020-12-22 Pure Storage, Inc. Integrated storage management between storage systems and container orchestrators
US11403000B1 (en) 2018-07-20 2022-08-02 Pure Storage, Inc. Resiliency in a cloud-based storage system
US11416298B1 (en) 2018-07-20 2022-08-16 Pure Storage, Inc. Providing application-specific storage by a storage system
US11632360B1 (en) 2018-07-24 2023-04-18 Pure Storage, Inc. Remote access to a storage device
US11146564B1 (en) 2018-07-24 2021-10-12 Pure Storage, Inc. Login authentication in a cloud storage platform
US11954238B1 (en) 2018-07-24 2024-04-09 Pure Storage, Inc. Role-based access control for a storage system
US11860820B1 (en) 2018-09-11 2024-01-02 Pure Storage, Inc. Processing data through a storage system in a data pipeline
US10671302B1 (en) 2018-10-26 2020-06-02 Pure Storage, Inc. Applying a rate limit across a plurality of storage systems
US10963189B1 (en) 2018-11-18 2021-03-30 Pure Storage, Inc. Coalescing write operations in a cloud-based storage system
US11526405B1 (en) 2018-11-18 2022-12-13 Pure Storage, Inc. Cloud-based disaster recovery
US11340837B1 (en) 2018-11-18 2022-05-24 Pure Storage, Inc. Storage system management via a remote console
US11023179B2 (en) 2018-11-18 2021-06-01 Pure Storage, Inc. Cloud-based storage system storage management
US11650749B1 (en) 2018-12-17 2023-05-16 Pure Storage, Inc. Controlling access to sensitive data in a shared dataset
US11003369B1 (en) 2019-01-14 2021-05-11 Pure Storage, Inc. Performing a tune-up procedure on a storage device during a boot process
US11042452B1 (en) 2019-03-20 2021-06-22 Pure Storage, Inc. Storage system data recovery using data recovery as a service
US11221778B1 (en) 2019-04-02 2022-01-11 Pure Storage, Inc. Preparing data for deduplication
US11068162B1 (en) 2019-04-09 2021-07-20 Pure Storage, Inc. Storage management in a cloud data store
US11853266B2 (en) 2019-05-15 2023-12-26 Pure Storage, Inc. Providing a file system in a cloud environment
US11126364B2 (en) 2019-07-18 2021-09-21 Pure Storage, Inc. Virtual storage system architecture
US11392555B2 (en) 2019-05-15 2022-07-19 Pure Storage, Inc. Cloud-based file services
US11327676B1 (en) 2019-07-18 2022-05-10 Pure Storage, Inc. Predictive data streaming in a virtual storage system
US11093139B1 (en) 2019-07-18 2021-08-17 Pure Storage, Inc. Durably storing data within a virtual storage system
US11550514B2 (en) 2019-07-18 2023-01-10 Pure Storage, Inc. Efficient transfers between tiers of a virtual storage system
US11487715B1 (en) 2019-07-18 2022-11-01 Pure Storage, Inc. Resiliency in a cloud-based storage system
US11861221B1 (en) 2019-07-18 2024-01-02 Pure Storage, Inc. Providing scalable and reliable container-based storage services
US11526408B2 (en) 2019-07-18 2022-12-13 Pure Storage, Inc. Data recovery in a virtual storage system
US11086553B1 (en) 2019-08-28 2021-08-10 Pure Storage, Inc. Tiering duplicated objects in a cloud-based object store
US11693713B1 (en) 2019-09-04 2023-07-04 Pure Storage, Inc. Self-tuning clusters for resilient microservices
US11797569B2 (en) 2019-09-13 2023-10-24 Pure Storage, Inc. Configurable data replication
US11625416B1 (en) 2019-09-13 2023-04-11 Pure Storage, Inc. Uniform model for distinct types of data replication
US11573864B1 (en) 2019-09-16 2023-02-07 Pure Storage, Inc. Automating database management in a storage system
US11669386B1 (en) 2019-10-08 2023-06-06 Pure Storage, Inc. Managing an application's resource stack
US11868318B1 (en) 2019-12-06 2024-01-09 Pure Storage, Inc. End-to-end encryption in a storage system with multi-tenancy
US11733901B1 (en) 2020-01-13 2023-08-22 Pure Storage, Inc. Providing persistent storage to transient cloud computing services
US11709636B1 (en) 2020-01-13 2023-07-25 Pure Storage, Inc. Non-sequential readahead for deep learning training
US11720497B1 (en) 2020-01-13 2023-08-08 Pure Storage, Inc. Inferred nonsequential prefetch based on data access patterns
US11637896B1 (en) 2020-02-25 2023-04-25 Pure Storage, Inc. Migrating applications to a cloud-computing environment
US11868622B2 (en) 2020-02-25 2024-01-09 Pure Storage, Inc. Application recovery across storage systems
US11321006B1 (en) 2020-03-25 2022-05-03 Pure Storage, Inc. Data loss prevention during transitions from a replication source
US11301152B1 (en) 2020-04-06 2022-04-12 Pure Storage, Inc. Intelligently moving data between storage systems
US11630598B1 (en) 2020-04-06 2023-04-18 Pure Storage, Inc. Scheduling data replication operations
US11494267B2 (en) 2020-04-14 2022-11-08 Pure Storage, Inc. Continuous value data redundancy
US11921670B1 (en) 2020-04-20 2024-03-05 Pure Storage, Inc. Multivariate data backup retention policies
US11431488B1 (en) 2020-06-08 2022-08-30 Pure Storage, Inc. Protecting local key generation using a remote key management service
US11442652B1 (en) 2020-07-23 2022-09-13 Pure Storage, Inc. Replication handling during storage system transportation
US11349917B2 (en) 2020-07-23 2022-05-31 Pure Storage, Inc. Replication handling among distinct networks
US11397545B1 (en) 2021-01-20 2022-07-26 Pure Storage, Inc. Emulating persistent reservations in a cloud-based storage system
US11853285B1 (en) 2021-01-22 2023-12-26 Pure Storage, Inc. Blockchain logging of volume-level events in a storage system
US20220365827A1 (en) 2021-05-12 2022-11-17 Pure Storage, Inc. Rebalancing In A Fleet Of Storage Systems Using Data Science
US11816129B2 (en) 2021-06-22 2023-11-14 Pure Storage, Inc. Generating datasets using approximate baselines
US11714723B2 (en) 2021-10-29 2023-08-01 Pure Storage, Inc. Coordinated snapshots for data stored across distinct storage environments
US11893263B2 (en) 2021-10-29 2024-02-06 Pure Storage, Inc. Coordinated checkpoints among storage systems implementing checkpoint-based replication
US11914867B2 (en) 2021-10-29 2024-02-27 Pure Storage, Inc. Coordinated snapshots among storage systems implementing a promotion/demotion model
US11922052B2 (en) 2021-12-15 2024-03-05 Pure Storage, Inc. Managing links between storage objects
US11847071B2 (en) 2021-12-30 2023-12-19 Pure Storage, Inc. Enabling communication between a single-port device and multiple storage system controllers
US11860780B2 (en) 2022-01-28 2024-01-02 Pure Storage, Inc. Storage cache management
US11886295B2 (en) 2022-01-31 2024-01-30 Pure Storage, Inc. Intra-block error correction

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6023709A (en) * 1997-12-15 2000-02-08 International Business Machines Corporation Automated file error classification and correction in a hierarchical storage management system
US20030214744A1 (en) * 2002-05-20 2003-11-20 Nec Corporation Information recorder and its control method
US20050044451A1 (en) * 2003-08-20 2005-02-24 Fry Scott Milton Apparatus, system, and method for developing failure prediction software
US20050052772A1 (en) * 2003-07-18 2005-03-10 Barbian Douglas F. Methods and systems for providing predictive maintenance, preventative maintenance, and/or failure isolation in a tape storage subsystem
US7116506B1 (en) * 2005-08-18 2006-10-03 International Business Machines Corporation Automated data storage library magnetic tape diagnostic
US20070050664A1 (en) * 2005-08-31 2007-03-01 Cheng-Ping Tan Method and apparatus for diagnosing mass storage device anomalies

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6023709A (en) * 1997-12-15 2000-02-08 International Business Machines Corporation Automated file error classification and correction in a hierarchical storage management system
US20030214744A1 (en) * 2002-05-20 2003-11-20 Nec Corporation Information recorder and its control method
US20050052772A1 (en) * 2003-07-18 2005-03-10 Barbian Douglas F. Methods and systems for providing predictive maintenance, preventative maintenance, and/or failure isolation in a tape storage subsystem
US20050044451A1 (en) * 2003-08-20 2005-02-24 Fry Scott Milton Apparatus, system, and method for developing failure prediction software
US7116506B1 (en) * 2005-08-18 2006-10-03 International Business Machines Corporation Automated data storage library magnetic tape diagnostic
US20070050664A1 (en) * 2005-08-31 2007-03-01 Cheng-Ping Tan Method and apparatus for diagnosing mass storage device anomalies

Cited By (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8832495B2 (en) 2007-05-11 2014-09-09 Kip Cr P1 Lp Method and system for non-intrusive monitoring of library components
US9501348B2 (en) 2007-05-11 2016-11-22 Kip Cr P1 Lp Method and system for monitoring of library components
US9280410B2 (en) 2007-05-11 2016-03-08 Kip Cr P1 Lp Method and system for non-intrusive monitoring of library components
US8949667B2 (en) 2007-05-11 2015-02-03 Kip Cr P1 Lp Method and system for non-intrusive monitoring of library components
US9092138B2 (en) * 2008-02-01 2015-07-28 Kip Cr P1 Lp Media library monitoring system and method
US9058109B2 (en) * 2008-02-01 2015-06-16 Kip Cr P1 Lp System and method for identifying failing drives or media in media library
US8631127B2 (en) 2008-02-01 2014-01-14 Kip Cr P1 Lp Media library monitoring system and method
US8639807B2 (en) 2008-02-01 2014-01-28 Kip Cr P1 Lp Media library monitoring system and method
US20100182887A1 (en) * 2008-02-01 2010-07-22 Crossroads Systems, Inc. System and method for identifying failing drives or media in media library
US8650241B2 (en) 2008-02-01 2014-02-11 Kip Cr P1 Lp System and method for identifying failing drives or media in media library
US20140112118A1 (en) * 2008-02-01 2014-04-24 Kip Cr P1 Lp System and Method for Identifying Failing Drives or Media in Media Libary
US8644185B2 (en) 2008-02-04 2014-02-04 Kip Cr P1 Lp System and method of network diagnosis
US8645328B2 (en) 2008-02-04 2014-02-04 Kip Cr P1 Lp System and method for archive verification
US9015005B1 (en) * 2008-02-04 2015-04-21 Kip Cr P1 Lp Determining, displaying, and using tape drive session information
US9699056B2 (en) 2008-02-04 2017-07-04 Kip Cr P1 Lp System and method of network diagnosis
US9866633B1 (en) 2009-09-25 2018-01-09 Kip Cr P1 Lp System and method for eliminating performance impact of information collection from media drives
US9317358B2 (en) 2009-12-16 2016-04-19 Kip Cr P1 Lp System and method for archive verification according to policies
US9864652B2 (en) 2009-12-16 2018-01-09 Kip Cr P1 Lp System and method for archive verification according to policies
US8843787B1 (en) 2009-12-16 2014-09-23 Kip Cr P1 Lp System and method for archive verification according to policies
US8631281B1 (en) 2009-12-16 2014-01-14 Kip Cr P1 Lp System and method for archive verification using multiple attempts
US9081730B2 (en) 2009-12-16 2015-07-14 Kip Cr P1 Lp System and method for archive verification according to policies
US9442795B2 (en) 2009-12-16 2016-09-13 Kip Cr P1 Lp System and method for archive verification using multiple attempts
WO2011090930A1 (en) * 2010-01-22 2011-07-28 Crossroads Systems, Inc. System and method for identifying failing drives or media in media library
US9343106B2 (en) 2011-07-29 2016-05-17 International Business Machines Corporation Performing process for removal medium
JP2013030257A (en) * 2011-07-29 2013-02-07 Internatl Business Mach Corp <Ibm> Device and method for performing processing about removable medium
US8780471B2 (en) * 2011-10-27 2014-07-15 Hewlett-Packard Development Company, L.P. Linking errors to particular tapes or particular tape drives
US20130107389A1 (en) * 2011-10-27 2013-05-02 Mark L. Davis Linking errors to particular tapes or particular tape drives
US9311176B1 (en) * 2012-11-20 2016-04-12 Emc Corporation Evaluating a set of storage devices and providing recommended activities
US20140189425A1 (en) * 2012-12-28 2014-07-03 Fujitsu Limited Library controller and method for controlling library device
US9483371B2 (en) 2013-04-30 2016-11-01 Fujitsu Limited Storage system, control apparatus, computer product, and control method
EP2799992A3 (en) * 2013-04-30 2015-05-27 Fujitsu Limited Storage system, control apparatus, control program, and control method

Also Published As

Publication number Publication date
US20080077825A1 (en) 2008-03-27
CN101154410B (en) 2011-07-20
CN101154410A (en) 2008-04-02

Similar Documents

Publication Publication Date Title
US7627786B2 (en) Tracking error events relating to data storage drives and/or media of automated data storage library subsystems
US8000052B2 (en) Cartridge refresh and verify
US7587631B2 (en) RAID controller, RAID system and control method for RAID controller
US7900083B2 (en) Disk array apparatus, disk array control method and disk array controller
US7200722B2 (en) Reducing inventory after media access in an automated data storage library
CN1466760A (en) Critical event log for a disc drive
CN100437804C (en) Self_repair method and storage system
US20070174678A1 (en) Apparatus, system, and method for a storage device&#39;s enforcing write recovery of erroneous data
US6237109B1 (en) Library unit with spare media and it&#39;s computer system
US7191365B2 (en) Information recorder and its control method
JP3860967B2 (en) Method for automatically changing leads and magnetic disk device using the same
US7484036B2 (en) Apparatus system and method for managing control path commands in an automated data storage library
JP2001154929A (en) Management method and system for substituting path system
JP3063666B2 (en) Array disk controller
KR20110039416A (en) Data storage method, apparatus and system for interrupted write recovery
JP2880701B2 (en) Disk subsystem
JPH0467476A (en) Array disk controller
US9336820B2 (en) Data sector sync mark with multiple patterns
US6888692B2 (en) Method and apparatus for implementing intelligent spin-up for a disk drive
JP3470698B2 (en) Cartridge library device and cell inspection method thereof
JPH07152495A (en) Recovery system for disk array device
JPH09161415A (en) Control method for magnetic tape apparatus
US7917802B2 (en) Write omission detector, write omission detecting method, and computer product
JPS6010328A (en) Input and output error demarcating and processing system
JP3665921B2 (en) Array type storage device and array type storage management method

Legal Events

Date Code Title Description
AS Assignment

Owner name: INTERNATIONAL BUSINESS MACHINES CORPORATION, NEW Y

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:BELLO, KEITH ANTHONY;FRIAUF, CHERYL MARIE;KISHI, GREGORY TAD;AND OTHERS;REEL/FRAME:018436/0265;SIGNING DATES FROM 20060922 TO 20060925

FEPP Fee payment procedure

Free format text: PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

STCF Information on status: patent grant

Free format text: PATENTED CASE

FPAY Fee payment

Year of fee payment: 4

FPAY Fee payment

Year of fee payment: 8

FEPP Fee payment procedure

Free format text: MAINTENANCE FEE REMINDER MAILED (ORIGINAL EVENT CODE: REM.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

LAPS Lapse for failure to pay maintenance fees

Free format text: PATENT EXPIRED FOR FAILURE TO PAY MAINTENANCE FEES (ORIGINAL EVENT CODE: EXP.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

STCH Information on status: patent discontinuation

Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362

FP Lapsed due to failure to pay maintenance fee

Effective date: 20211201