US20020112230A1 - Software update management system with update chronology generator - Google Patents
Software update management system with update chronology generator Download PDFInfo
- Publication number
- US20020112230A1 US20020112230A1 US09/732,392 US73239200A US2002112230A1 US 20020112230 A1 US20020112230 A1 US 20020112230A1 US 73239200 A US73239200 A US 73239200A US 2002112230 A1 US2002112230 A1 US 2002112230A1
- Authority
- US
- United States
- Prior art keywords
- update
- target
- chronology
- updates
- phkl
- 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.)
- Abandoned
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99931—Database or file accessing
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99941—Database schema or data structure
- Y10S707/99942—Manipulating data structure, e.g. compression, compaction, compilation
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99951—File or database maintenance
- Y10S707/99952—Coherency, e.g. same view to multiple users
- Y10S707/99953—Recoverability
Definitions
- the present invention relates to computers and, more particularly, to the management of updates for computer software.
- a major objective of the present invention is to provide for optimally selecting updates for a given hardware/software configuration.
- Computers include one or more processors and memory.
- the memory stores data and instructions; a processor manipulates data by executing instructions. Instructions are organized into programs to perform meaningful work. While the first programs were quite simple, the size and complexity of the most sophisticated programs have increased exponentially.
- Update installation can be problematic if the update renders a program incompatible with a program that was previously compatible. Typically, “uninstall” programs are available to restore the pre-update state of the computer. However, the objective of the update is then not accomplished.
- Update selection can be difficult for a number of reasons. In the first place, one update may be dependent on another update having been installed. In addition, update successions can be complex since one update can supersede more than one prior update. What is needed is a way to improve update selection when there is a complex succession of updates.
- the present invention provides an update management system including an update chronology generator.
- the update chronology generator In response to a request via a network received at an input of the system, the update chronology generator generates a chronology regarding a given target update.
- the chronology is generated by accessing a database record for the target update, as well as database records for updates indicated in the target-update record as being succeeded by the target update.
- the update management system can access a set of one or more databases including an internal database or an external database or both.
- the chronology extends back to the “base” program, and also extends forward to indicate updates that succeed the target update.
- the update chronology can be in the form of an update family tree or an update state sequence. In either case, the chronology can be used as a reference when troubleshooting a system. For example, where both an original update state and a fully updated state of a program cause compatibility problems, the update chronology presents intermediate states that may avoid these compatibility problems. When used in conjunction with update dependency information, the update chronology can help in removing unnecessary files from a computer—freeing storage capacity and improving performance.
- FIG. 1 is a block diagram of an update management system in accordance with the present invention.
- FIG. 2 is a flow chart of a method of the invention practiced in the context of the system of FIG. 1.
- an update management system AP 1 comprises an update catalog server 10 and update files 11 .
- Update catalog server 10 includes a chronology generator 13 , a dependency generator 15 , an update index 17 , and a local update database 19 .
- the chronology generator and the dependency generator share a common interface 20 for accessing local update database 19 , as well as external databases.
- Update management system AP 1 is connected to a network 21 at a network port 22 , on which two update databases 23 and 25 reside.
- a remote workstation 31 on a remote network 33 communicates with update management system AP 1 via an inter-network link 35 .
- the invention provides for use of one or more databases; each of which can be either local (part of update management system AP 1 ) or remote. Normally, when there are plural databases, they are mutually exclusive as to target updates represented. Alternatively, a local database can be used as a cache to improve performance.
- requests are made to update management system AP 1 from a remote workstation, such as remote workstation 31 , and are received by update management system AP 1 at network port 22 .
- the requests are made for updates to a “base” program, typically residing on the remote workstation.
- the base program can be an operating system, a utility program, an application program, etc.
- the updates can be patches—which fix problems or improve performance without adding features, or upgrades, which add features, or both.
- the request can be directed toward finding an appropriate update for a given computer system.
- the request can include information regarding the hardware configuration, operating system, and co-existing programs on the workstation.
- a request can concern a particular update.
- a dependency request can be seek a listing of “prerequisite” files required by the target update.
- chronology requests for an update chronology for a target update.
- a chronology of patches leading up to a target patch from the initial release of the base program can specify updates that supersede the target update.
- the response to a chronology request (command line: “$ pft PHKL — 8000”, where “PHKL — 8000” is a hypothetic target update) can be a family tree of the form: PHKL_9000 PHKL_8000 PHKL_6000
- Non-indented updates on succeeding lines are successor updates.
- PHKL — 8000 has been succeeded only by PHKL — 9000. If the latter had been succeeded, its successor would have been listed on the line above PHKL — 9000 and with the same indent. It is assumed herein that a target update can only be directly succeeded by one update. Hence, successor updates can be displayed linearly. If it is permitted for a single target update to have multiple direct successors, then the successor updates can be displayed in tree form, as are the predecessor updates.
- the report can include a one-line description for each update.
- the report can indicate: if an update has been recalled, whether it has dependencies, whether it is critical, and whether it has been reposted.
- the information included in the report can be determined by selections made in the request itself.
- a method M 1 of the invention is flow-charted in FIG. 2.
- An update chronology request is received by update management system AP 1 at step S 1 .
- Update catalog server 10 handles this request.
- chronology generator 13 accesses update index 17 to determine the location of an update record for the target update at step S 2 .
- Update index 17 lists updates alphabetically and indicates a database and a record number for each update listed therein.
- the database can be local database 19 , considered part of update catalog server 10 , or it can be an external database, such as databases 23 and 25 at remote nodes on network 21 .
- chronology generator 13 accesses the database and target record identified in index 17 .
- index lookup step S 2 is not necessary. However, the larger the number of records and databases, the more time is saved using the index in step S 2 .
- the target record accessed in step S 3 must identify any updates directly superseded by the target update. Preferably, any immediate successor to the target update is also identified. Updates can be identified by name, or by database (if more than one) and record number, as they are in index 17 . Preferably, both name and database locations are given.
- the records can contain other information, notably, any prerequisite updates that are required to be installed if the target update is to function. (Note that dependency requests are normally handled by dependency generator 15 ).
- step S 4 the records for any indicated immediate predecessors, step S 4 A, and for any indicated immediate successor, step S 4 b, are accessed. If the target record does not indicate the database locations of these records, chronology generator 13 can look up the locations in index 17 . Preferably, however, the target record does indicate database locations for the immediate successor and predecessors so this index step can be omitted for higher performance. If, at step S 4 A, the predecessor records indicate further predecessors update, step S 4 A is repeated. When, in step S 4 A, the only predecessor is the base program, the iteration stops. Likewise, if at step S 4 B, a further successor update is indicated, step S 4 B is iterated until a successor record is found with no successor update indicated.
- chronology generator 13 generates a family tree, as indicated in the example for PHKL — 8000 above.
- a state list can be generated at step S 5 from the family tree. (Alternatively, the state list can be generated directly, without first generating a family tree.)
- the state list can indicate a series of workable update states. The following state list corresponds to the PHKL — 8000 family tree generated above, given that update names reflective the order in which they were introduced.
- the family tree or the state table can be used in upgrading a system when the most recent updates cause problems. For example, assume workstation 31 had PHKL — 1000 and PHKL — 2000 installed at its last update. Also, assume a user for workstation 31 is advised to upgrade to PHKL — 8000 for higher performance. The user performs a chronology request and discovers that PHKL — 8000 has been superseded by PHKL — 9000. The user downloads and installs PHKL — 9000 from update manager system AP 1 . In addition, the user can issue a dependency request handled by dependency generator 15 to ensure all updates required by PHKL — 9000 are installed.
- the chronology generator can be used to assist removal of unused updates.
- the dependencies of the replaced updates can be compared with the dependencies of the newly installed updates, and the dependencies that are no longer used can be subject to a reverse dependency analysis. If the reverse dependency analysis turns out negative, the former dependencies can be removed.
- the OS is specified with the ⁇ o option, and the hardware is specified with the ⁇ p option.
- the hardware platform is not required for any HP-UX 11.X releases.
- the tool can be directed to a particular catalog server, or servers, using the ⁇ s option. This will override the default value, and any value(s) specified with the CATALOG_SERVERS environment variable.
- a patch family tree is generated for a single patch and it must be specified on the command line.
- the number of spaces in the indentation can be adjusted using the ⁇ i option. Increasing the number of spaces can improve readability of the output report.
- the report can include one-line descriptions of each patch, by specifying the ⁇ v option, for “verbose” output.
- the report will contain patches that are both older than (superseded by) and newer than (supersede) the specified patch. Only the older patches are shown when the ⁇ y option is used. Only the newer patches are shown when the ⁇ z option is used.
- This following example shows the use of the ⁇ v (verbose) option and the ⁇ i (indentation) option, for the command line beginning with the “$” ⁇ sign below.
- the specified patch supersedes five patches: PHKL — 14070, PHKL — 14034, PHKL — 13676, PHKL — 13644, and PHKL — 13328.
- PHKL — 14070 supersedes one patch, PHKL — 13858, which supersedes PHKL — 13552, which supersedes PHKL — 13081.
- PHCO — 14842, and PHCO — 16591) are not displayed. Note the two recalled patches, PHCO — 11909 and PHCO — 11908, flagged with the “RCL” keyword.
- the recall notices for the “recalled” patches can be viewed using a query tool.
- the query tool indicated by the abbreviation “qpc”, is used to send a message to the catalog server. Quite often this message takes the form of a query.
- the query tool reads a message from its command line arguments, sends it to the specified server, waits for the answer, and displays.
- Warn 97/10/21—This patch has been recalled. —Patch PHCO — 11909 can cause OmniStorage A.02.20 filesystems to be unmountable on HP-UX 10.20. The problem is . . .
- the patch dependencies can be viewed using the patch dependency analysis tool “pdat”, as implemented by patch dependency generator 15 .
- the patch tools work as well for upgrades, so they are general to updates.
- the invention has industrial applicability to both hardware and software manufacturers, as it allows them to organize and distribute their updates both internally and to customers in a manner that optimizes updates for performance and compatibility.
- Other variations upon and modifications to the described embodiments are provided for by the present invention, the scope of which is defined by the following claims.
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Stored Programmes (AREA)
Abstract
Description
- The present invention relates to computers and, more particularly, to the management of updates for computer software. A major objective of the present invention is to provide for optimally selecting updates for a given hardware/software configuration.
- Much of modern progress is associated with the increasing prevalence of computers. Computers include one or more processors and memory. The memory stores data and instructions; a processor manipulates data by executing instructions. Instructions are organized into programs to perform meaningful work. While the first programs were quite simple, the size and complexity of the most sophisticated programs have increased exponentially.
- Almost inevitably, it becomes necessary or desirable to modify a program: 1) to correct a defect, 2) to address a compatibility issue with other software or hardware, 3) to improve performance, and/or 4) to add features. (If no new features are added, the update is called a “patch”; if new features are added, the update is called an “upgrade”.) Instead of replacing an entire program, the program can be updated. Updating can involve actually changing the instructions in a monolithic program. However, partly to facilitate updates, programs are often configured as a group of files so that an update can simply involve a replacing a preexisting file with an update file.
- Update installation can be problematic if the update renders a program incompatible with a program that was previously compatible. Typically, “uninstall” programs are available to restore the pre-update state of the computer. However, the objective of the update is then not accomplished.
- Often, available updates are not installed. A user may avoid changing a system that is serving its purpose well; or a user may not be aware of an update's availability. In such cases, available updates can be superseded one or more times before a user tries to update. This can present a choice of updates. Normally, the most recent update is installed. However, if the most recent update is unsuccessful, e.g., raises new compatibility issues, optimizing the selection of updates can be problematic.
- Update selection can be difficult for a number of reasons. In the first place, one update may be dependent on another update having been installed. In addition, update successions can be complex since one update can supersede more than one prior update. What is needed is a way to improve update selection when there is a complex succession of updates.
- The present invention provides an update management system including an update chronology generator. In response to a request via a network received at an input of the system, the update chronology generator generates a chronology regarding a given target update. The chronology is generated by accessing a database record for the target update, as well as database records for updates indicated in the target-update record as being succeeded by the target update. The update management system can access a set of one or more databases including an internal database or an external database or both. Preferably, the chronology extends back to the “base” program, and also extends forward to indicate updates that succeed the target update.
- The update chronology can be in the form of an update family tree or an update state sequence. In either case, the chronology can be used as a reference when troubleshooting a system. For example, where both an original update state and a fully updated state of a program cause compatibility problems, the update chronology presents intermediate states that may avoid these compatibility problems. When used in conjunction with update dependency information, the update chronology can help in removing unnecessary files from a computer—freeing storage capacity and improving performance. These and other features and advantages of the invention are apparent from the description below with reference to the following drawings.
- FIG. 1 is a block diagram of an update management system in accordance with the present invention.
- FIG. 2 is a flow chart of a method of the invention practiced in the context of the system of FIG. 1.
- In accordance with the present invention, an update management system AP1 comprises an
update catalog server 10 andupdate files 11.Update catalog server 10 includes achronology generator 13, adependency generator 15, anupdate index 17, and alocal update database 19. The chronology generator and the dependency generator share acommon interface 20 for accessinglocal update database 19, as well as external databases. Update management system AP1 is connected to anetwork 21 at anetwork port 22, on which twoupdate databases remote workstation 31 on aremote network 33 communicates with update management system AP1 via aninter-network link 35. - The invention provides for use of one or more databases; each of which can be either local (part of update management system AP1) or remote. Normally, when there are plural databases, they are mutually exclusive as to target updates represented. Alternatively, a local database can be used as a cache to improve performance.
- Typically, requests are made to update management system AP1 from a remote workstation, such as
remote workstation 31, and are received by update management system AP1 atnetwork port 22. The requests are made for updates to a “base” program, typically residing on the remote workstation. The base program can be an operating system, a utility program, an application program, etc. The updates can be patches—which fix problems or improve performance without adding features, or upgrades, which add features, or both. - The request can be directed toward finding an appropriate update for a given computer system. To this end, the request can include information regarding the hardware configuration, operating system, and co-existing programs on the workstation. Alternatively, a request can concern a particular update. For example, a dependency request can be seek a listing of “prerequisite” files required by the target update.
- Of particular interest herein, are “chronology” requests for an update chronology for a target update. For example, a chronology of patches leading up to a target patch from the initial release of the base program. Alternatively, the chronology can specify updates that supersede the target update. Most useful, is a chronology that indicates an entire succession from the base program, through the target update, to its most recent successor.
- The response to a chronology request (command line: “$ pft PHKL—8000”, where “PHKL—8000” is a hypothetic target update) can be a family tree of the form:
PHKL_9000 PHKL_8000 PHKL_6000 | PHKL_3000 | | PHKL_1000 | PHKL_4000 | PHKL_5000 | PHKL_2000 PHKL_7000 - Non-indented updates on succeeding lines are successor updates. In this case, PHKL—8000 has been succeeded only by PHKL—9000. If the latter had been succeeded, its successor would have been listed on the line above PHKL—9000 and with the same indent. It is assumed herein that a target update can only be directly succeeded by one update. Hence, successor updates can be displayed linearly. If it is permitted for a single target update to have multiple direct successors, then the successor updates can be displayed in tree form, as are the predecessor updates.
- It is often the case that an update will in effect merge two or more of its predecessors. Hence, the chain of succession up to a target update can have a tree-type structure. Updates that have a common successor are aligned vertically in the report. For example, PHKL—6000 and PHKL—7000 are aligned, since they are both succeeded by PHKL—8000. Likewise, PHKL—6000 succeeds PHKL—3000, PHKL—4000 and PHKL—5000. The report also indicates that PHKL—3000 supersedes only PHKL—1000, and PHKL—5000 supersedes only PHKL—2000. All updates for which no predecessor is indicated are patches to the base program.
- Several attributes can be displayed in the report. The report can include a one-line description for each update. In addition, the report can indicate: if an update has been recalled, whether it has dependencies, whether it is critical, and whether it has been reposted. The information included in the report can be determined by selections made in the request itself.
- A method M1 of the invention is flow-charted in FIG. 2. An update chronology request is received by update management system AP1 at step S1.
Update catalog server 10 handles this request. In particular,chronology generator 13 accesses updateindex 17 to determine the location of an update record for the target update at step S2.Update index 17 lists updates alphabetically and indicates a database and a record number for each update listed therein. The database can belocal database 19, considered part ofupdate catalog server 10, or it can be an external database, such asdatabases network 21. - At step S3,
chronology generator 13 accesses the database and target record identified inindex 17. For small systems with not too many updates, index lookup step S2 is not necessary. However, the larger the number of records and databases, the more time is saved using the index in step S2. - The target record accessed in step S3 must identify any updates directly superseded by the target update. Preferably, any immediate successor to the target update is also identified. Updates can be identified by name, or by database (if more than one) and record number, as they are in
index 17. Preferably, both name and database locations are given. The records can contain other information, notably, any prerequisite updates that are required to be installed if the target update is to function. (Note that dependency requests are normally handled by dependency generator 15). - At step S4, the records for any indicated immediate predecessors, step S4A, and for any indicated immediate successor, step S4 b, are accessed. If the target record does not indicate the database locations of these records,
chronology generator 13 can look up the locations inindex 17. Preferably, however, the target record does indicate database locations for the immediate successor and predecessors so this index step can be omitted for higher performance. If, at step S4A, the predecessor records indicate further predecessors update, step S4A is repeated. When, in step S4A, the only predecessor is the base program, the iteration stops. Likewise, if at step S4B, a further successor update is indicated, step S4B is iterated until a successor record is found with no successor update indicated. - Once all the records indicated in step S4 are gathered,
chronology generator 13 generates a family tree, as indicated in the example for PHKL—8000 above. Optionally, a state list can be generated at step S5 from the family tree. (Alternatively, the state list can be generated directly, without first generating a family tree.) The state list can indicate a series of workable update states. The following state list corresponds to the PHKL—8000 family tree generated above, given that update names reflective the order in which they were introduced.State List: PHKL_8000 Update Co-existing Updates (0) (Base program) PHKL_1000 (Base program) PHKL_2000 PHKL_1000 PHKL_3000 PHKL_2000 PHKL_4000 PHKL_2000 & PHKL_3000 PHKL_5000 PHKL_3000 & PHKL_4000 PHKL_6000 PHKL_7000 PHKL_6000 PHKL_8000 PHKL_9000 - The family tree or the state table can be used in upgrading a system when the most recent updates cause problems. For example, assume
workstation 31 had PHKL—1000 and PHKL—2000 installed at its last update. Also, assume a user forworkstation 31 is advised to upgrade to PHKL—8000 for higher performance. The user performs a chronology request and discovers that PHKL—8000 has been superseded by PHKL—9000. The user downloads and installs PHKL—9000 from update manager system AP1. In addition, the user can issue a dependency request handled bydependency generator 15 to ensure all updates required by PHKL—9000 are installed. - Assume that after proper installation, PHKL—9000 causes compatibility problems with a key application program. The user uninstalls update PHKL—9000, returning
workstation 31 to its previous state. Instead of choosing only between the most recent update and the most-recent pre-update state, the family tree and state table present a number of intermediate alternatives. The user can work forward or backward through the chronology until the optimal state is found. For each state, dependency checks can be performed for each installed update to ensure that the proper dependency updates are also installed. Thus, the update catalog manager, in particular, the chronology generator, facilitates update optimization. - In addition, the chronology generator can be used to assist removal of unused updates. The dependencies of the replaced updates can be compared with the dependencies of the newly installed updates, and the dependencies that are no longer used can be subject to a reverse dependency analysis. If the reverse dependency analysis turns out negative, the former dependencies can be removed.
- While the invention applies generally to updates, it has been implemented in the following patch-family-tree tool (pft) for patches. The following command-line syntax with switches can be used.
- Usage: pft −o <os> [−p <platform>] [−s <servers>] [−v] [−l] [−r] [−e] [−c] [−a] [−y] [−z] [−i <number_of_spaces>] <patch_name_or—number>
- where,
- <os>=operating system version
- examples: 10.20 11.00 11.04
- <platform>={ 700 |800 } (ignored for 11.X)
- <servers>=system1:port1[,system2:port2] [, . . . ]
- −v=verbose (print one-line descriptions)
- −l=show recalled patches
- −r=show released patches
- −e=show patches with dependencies
- −c=show critical patches
- −a=show reposted patches
- −y=show superseded patches (“older”)
- −z=show superseding patches (“newer”) (default is to show both)
- <number_of_spaces>=to indent each generation (default and min=1; max=8)
- The OS is specified with the −o option, and the hardware is specified with the −p option. The hardware platform is not required for any HP-UX 11.X releases.
- The tool can be directed to a particular catalog server, or servers, using the −s option. This will override the default value, and any value(s) specified with the CATALOG_SERVERS environment variable.
- A patch family tree is generated for a single patch and it must be specified on the command line.
- The number of spaces in the indentation can be adjusted using the −i option. Increasing the number of spaces can improve readability of the output report.
- The report can include one-line descriptions of each patch, by specifying the −v option, for “verbose” output.
- By default, the report will contain patches that are both older than (superseded by) and newer than (supersede) the specified patch. Only the older patches are shown when the −y option is used. Only the newer patches are shown when the −z option is used.
- Various attributes of the listed patches can be displayed using several options. If the patch has the requested attribute, a flag will be included in the output listing.
Output Option Flag Description -l RCL Patch has been recalled. -r REL Patch has been released in a Support Plus or Extension Software bundle. -e DEP, Patch has patch dependencies and/or other ODEP dependencies. -c CRIT Patch is flagged has containing critical defect fixes. -a REP Patch was reposted. - This following example shows the use of the −v (verbose) option and the −i (indentation) option, for the command line beginning with the “$”−sign below. The specified patch supersedes five patches: PHKL—14070, PHKL—14034, PHKL—13676, PHKL—13644, and PHKL—13328. PHKL—14070 supersedes one patch, PHKL—13858, which supersedes PHKL—13552, which supersedes PHKL—13081.
- $ pft −v −o 11.00 −i 3 −y 14088
- #
- # Patch Family Tree
- # PHKL—14088 HP-UX Performance Pack cumulative patch
- # OS: 11.00
- #
- # Only superseded patches are displayed.
- # Superseded patches are indented to the right
- # and go down.
- # Patches aligned in a vertical column are in the
- # same “generation”.
- #
- PHKL—14088 HP-UX Performance Pack; cumulative patch
- PHKL—14070 Tape, IOCTL, FC fixes cumulative patch
- | PHKL—13858 Tape and IOCTL fixes cumulative patch
- | PHKL—13552 Large record, seismic tape support
- | PHKL—13081 PCI EPIC arbitration timeout panic
- PHKL—14034 SHMEM_MAGIC Perf, Mem window patch
- | PHKL—13810 Memory Windows; pstat; space id
- | | PHKL—13278 User stack limits on 32/64 bit
- | | PHKL—13193 Fix panic:hdl_alloc_spaceid
- | | PHKL—13052 pstat(2) number of procs limit
- | PHKL—13646 Poor perf with SHMEM_MAGIC programs
- PHKL—13676 Fix C program error in badalignment( )
- PHKL—13644 Fix for panic in wait1( )
- PHKL—13328 Fix for panic in proc_close( )
- The following example shows the use of the −y (display older patches) and the −r (denote recalled patch) options. Only patches that are superseded by the specified patch, PHCO—12922, are displayed. The patches that supersede PHCO—12992 (PHCO—12923,
- PHCO—14842, and PHCO—16591) are not displayed. Note the two recalled patches, PHCO—11909 and PHCO—11908, flagged with the “RCL” keyword.
- $ pft −v −o 10.20 −p 800 −y −r 12922
- #
- # Patch Family Tree
- # PHCO—12922 fsck—vxfs(1M) cumulative patch
- # OS: 10.20
- # PLATFORM: 800
- #
- # Only superseded patches are displayed.
- # Superseded patches are indented to the right
- # and go down.
- # Patches aligned in a vertical column are in the
- # same “generation”.
- # RCL=Recalled patch
- #
- PHCO—12922 fsck—vxfs(1M) cumulative patch
- PHCO—11909 RCL fsck_vxfs(1M) cumulative patch
- PHCO—11908 RCL fsck_vxfs(1M) cumulative patch
- PHCO—11223 fsck_vxfs(1M) cumulative patch
- PHCO—10965 fsck_vxfs(1M) cumulative patch
- PHCO—9396 fsck−vxfs(1M) fix for file system
- The recall notices for the “recalled” patches can be viewed using a query tool. The query tool, indicated by the abbreviation “qpc”, is used to send a message to the catalog server. Quite often this message takes the form of a query. The query tool reads a message from its command line arguments, sends it to the specified server, waits for the answer, and displays.
- $ qpc 11909 Warn
- PHCO—11909:
- Warn: 97/10/21—This patch has been recalled. —Patch PHCO—11909 can cause OmniStorage A.02.20 filesystems to be unmountable on HP-UX 10.20. The problem is . . .
- The following example shows the use of the −z (display newer patches) option, and the −e (display patches with dependencies) option. Note that each of the patches that supersede PHCO—11909 has a dependency on at least one other patch.
- $ pft −v −o 10.20 −p 700 −z −e 11909
- #
- # Patch Family Tree
- # PHCO—11909 fsck_vxfs(1M) cumulative patch
- # OS: 10.20
- # PLATFORM: 700
- #
- # Only superseding patches are displayed.
- # Superseding patches are indented to the left
- # and go up.
- # Patches aligned in a vertical column are in the
- # same “generation”.
- # DEP =Patch has dependencies on other patch(es)
- # ODEP =Patch has other dependencies
- #
- PHCO—16591 DEP fsck_vxfs(1M) cumulative patch
- PHCO—14842 DEP fsck_vxfs(1M) cumulative patch
- PHCO—12923 DEP fsck_vxfs(1M) cumulative patch
- PHCO—12922 DEP fsck_vxfs(1M) cumulative patch
- PHCO—11909 DEP fsck_vxfs(1M) cumulative patch
- The patch dependencies can be viewed using the patch dependency analysis tool “pdat”, as implemented by
patch dependency generator 15. - $ pdat −v −o 10.20 −p 700 16591
- PHCO—18563 LVM commands cumulative patch
- PHKL—16750 SIG_IGN/SIGCLD,LVM,JFS,PCI/SCSI cum. patch
- PHKL—16959 Physical dump devices configuration patch
- PHKL—17857 Fix for mount/access of disc sections
- PHKL—20610 Correct process hangs on ufs inodes
- PHKL—21594 VxFS (JFS) mount, fsck cumulative patch
- PHKL—21660 lo_realvfs panic fix, Cum. LOFS patch
- PHNE—19937 cumulative ARPA Transport patch
- The following example shows the use of the −c (flag critical patches) option for a patch family tree command. Patches which have been released with Support Plus and/or Extension Software are flagged when the −r option is specified. PHCO—14198 is a critical patch, and both PHCO—14198 and PHCO—13131 have been released in a Support Plus and/or Extension Software bundle.
- $ pft −v −o 11.00 −i 3 −c −r 14198
- #
- # Patch Family Tree
- # PHCO—14198 crashutil(1M) cumulative patch
- # OS: 11.00
- #
- # Both superseded and superseding patches are
- # displayed.
- # Superseded patches are indented to the right
- # and go down.
- # Superseding patches are indented to the left
- # and go up.
- # Patches aligned in a vertical column are in the
- # same “generation”.
- # REL=Patch released with Extension Software and/or
- # Support Plus
- #
- # CRIT=Patch contains critical fixes
- PHCO—14198 REL CRIT crashutil(1M) cumulative patch
- PHCO—13131 REL crashutil(1M) cumulative patch
- Critical fix information for a patch, and all patches that it supersedes, can be viewed using qpctree:
- $ qpctree −f Crit 14198
- PHCO—14198:
- Crit: PHCO—14198::
- Yes
- CORRUPTION
- PHCO—13131::
- No
- The following example shows the use of the −a (flag reposted patches) option. In this example, PHCO—10576 has been reposted.
- $ pft −v −o 10.20 −p 800 −a 14967
- #
- # Patch Family Tree
- # PHCO—14967 sar(1M) cumulative patch
- # OS: 10.20
- # PLATFORM: 800
- #
- # Both superseded and superseding patches are
- # displayed.
- # Superseded patches are indented to the right
- # and go down.
- # Superseding patches are indented to the left
- # and go up.
- # Patches aligned in a vertical column are in the
- # same “generation”.
- # REP=Patch was reposted
- PHCO—14967 sar(1M) cumulative patch
- PHCO—14228 sar(1) cumulative patch
- PHCO—10576 REP sar(1) cumulative patch
- PHCO—8820 sar(1M) patch
- The reposting notice can be viewed using qpc:
- $ qpc 10576 Repost
- PHCO—10576:
- Repost: 98/04/20
- A problem was discovered with replacement patch PHCO—14228. PHCO—14228 breaks the Year 2000 compliance implemented in patch PHCO—8820. PHCO—10576 will be re-released until a replacement patch is available.
- As indicated earlier, the patch tools work as well for upgrades, so they are general to updates. The invention has industrial applicability to both hardware and software manufacturers, as it allows them to organize and distribute their updates both internally and to customers in a manner that optimizes updates for performance and compatibility. Other variations upon and modifications to the described embodiments are provided for by the present invention, the scope of which is defined by the following claims.
Claims (9)
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/732,392 US20020112230A1 (en) | 2000-12-07 | 2000-12-07 | Software update management system with update chronology generator |
US10/673,842 US6907603B2 (en) | 2000-12-07 | 2003-09-29 | Software update management system with update chronology generator |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/732,392 US20020112230A1 (en) | 2000-12-07 | 2000-12-07 | Software update management system with update chronology generator |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/673,842 Continuation US6907603B2 (en) | 2000-12-07 | 2003-09-29 | Software update management system with update chronology generator |
Publications (1)
Publication Number | Publication Date |
---|---|
US20020112230A1 true US20020112230A1 (en) | 2002-08-15 |
Family
ID=24943341
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/732,392 Abandoned US20020112230A1 (en) | 2000-12-07 | 2000-12-07 | Software update management system with update chronology generator |
US10/673,842 Expired - Lifetime US6907603B2 (en) | 2000-12-07 | 2003-09-29 | Software update management system with update chronology generator |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/673,842 Expired - Lifetime US6907603B2 (en) | 2000-12-07 | 2003-09-29 | Software update management system with update chronology generator |
Country Status (1)
Country | Link |
---|---|
US (2) | US20020112230A1 (en) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030014422A1 (en) * | 2001-07-03 | 2003-01-16 | Eastman Kodak Company | Method and system for building a family tree |
US20040015938A1 (en) * | 2001-05-09 | 2004-01-22 | Sun Microsystems, Inc. | Method, system, program, and data structures for using a database to apply patches to a computer system |
GB2402297A (en) * | 2003-05-15 | 2004-12-01 | Sun Microsystems Inc | Update dependency control for multi-master replication |
EP1550959A2 (en) * | 2003-12-29 | 2005-07-06 | Myfamily.com, Inc. | Providing alternatives within a family tree systems and methods |
WO2005052816A3 (en) * | 2003-07-25 | 2005-09-29 | Honeywell Int Inc | Multiple system compatible database system and method |
US20060064685A1 (en) * | 2004-09-22 | 2006-03-23 | Defolo Daniel | Resolving patch dependencies |
WO2007088602A1 (en) * | 2006-02-01 | 2007-08-09 | Fujitsu Limited | Object relation display program and object relation display method |
US20090013319A1 (en) * | 2007-07-05 | 2009-01-08 | Stuart Williams | Data processing system and method |
US20090124372A1 (en) * | 2005-04-29 | 2009-05-14 | Gagner Mark B | Asset management of downloadable gaming components in a gaming system |
US20140245290A1 (en) * | 2013-02-28 | 2014-08-28 | Adobe Systems Incorporated | Method and apparatus for deploying software as a service |
US20170317949A1 (en) * | 2016-04-29 | 2017-11-02 | International Business Machines Corporation | Providing an optimal resource to a client computer via interactive dialog |
CN111367550A (en) * | 2020-03-02 | 2020-07-03 | 深圳前海达闼云端智能科技有限公司 | Internet of things management system, method and equipment |
Families Citing this family (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7574481B2 (en) * | 2000-12-20 | 2009-08-11 | Microsoft Corporation | Method and system for enabling offline detection of software updates |
JP2003084984A (en) * | 2001-09-12 | 2003-03-20 | Canon Inc | Information processor, information processing method, control program, and recording medium storing control program |
US20030115202A1 (en) * | 2001-12-17 | 2003-06-19 | Electronic Data Systems Corporation | System and method for processing a request using multiple database units |
US7483965B1 (en) | 2002-08-19 | 2009-01-27 | Juniper Networks, Inc. | Generation of a configuration patch for network devices |
US7558835B1 (en) * | 2002-08-19 | 2009-07-07 | Juniper Networks, Inc. | Application of a configuration patch to a network device |
US7865578B1 (en) | 2002-08-19 | 2011-01-04 | Juniper Networks, Inc. | Generation of a configuration patch for network devices |
US7233975B1 (en) | 2002-08-19 | 2007-06-19 | Juniper Networks, Inc. | Private configuration of network devices |
US7574706B2 (en) * | 2003-12-15 | 2009-08-11 | Microsoft Corporation | System and method for managing and communicating software updates |
US7478381B2 (en) * | 2003-12-15 | 2009-01-13 | Microsoft Corporation | Managing software updates and a software distribution service |
US8171474B2 (en) * | 2004-10-01 | 2012-05-01 | Serguei Mankovski | System and method for managing, scheduling, controlling and monitoring execution of jobs by a job scheduler utilizing a publish/subscription interface |
TWI273453B (en) * | 2004-12-10 | 2007-02-11 | Hon Hai Prec Ind Co Ltd | An system and method for automatically updating software |
US8245216B2 (en) * | 2005-10-11 | 2012-08-14 | Oracle International Corporation | Patch management system |
US20070106979A1 (en) * | 2005-10-11 | 2007-05-10 | Bea Systems, Inc. | Patch management system |
US20070169079A1 (en) * | 2005-11-08 | 2007-07-19 | Microsoft Corporation | Software update management |
US8775572B2 (en) | 2006-06-23 | 2014-07-08 | Microsoft Corporation | Public network distribution of software updates |
US20080244555A1 (en) * | 2007-03-29 | 2008-10-02 | Welvaert Eugene F | Bundling software updates |
US7857222B2 (en) | 2007-08-16 | 2010-12-28 | Hand Held Products, Inc. | Data collection system having EIR terminal interface node |
US20100088689A1 (en) * | 2008-10-03 | 2010-04-08 | Microsoft Corporation | Branding binary modules using resource patching |
US8266477B2 (en) | 2009-01-09 | 2012-09-11 | Ca, Inc. | System and method for modifying execution of scripts for a job scheduler using deontic logic |
JP5336965B2 (en) * | 2009-07-27 | 2013-11-06 | キヤノン株式会社 | Information processing apparatus, information processing apparatus control method, and program |
US8898627B2 (en) * | 2010-05-11 | 2014-11-25 | Smartshift Gmbh | Systems and methods for applying rules to transform objects of an application |
US9497092B2 (en) | 2009-12-08 | 2016-11-15 | Hand Held Products, Inc. | Remote device management interface |
US8539123B2 (en) | 2011-10-06 | 2013-09-17 | Honeywell International, Inc. | Device management using a dedicated management interface |
US8621123B2 (en) | 2011-10-06 | 2013-12-31 | Honeywell International Inc. | Device management using virtual interfaces |
US9367298B1 (en) | 2012-03-28 | 2016-06-14 | Juniper Networks, Inc. | Batch configuration mode for configuring network devices |
US20150039360A1 (en) * | 2013-07-31 | 2015-02-05 | Yahoo! Inc. | Dependency management for enterprise computing |
US9286057B2 (en) | 2014-06-11 | 2016-03-15 | International Business Machines Corporation | Updating software based on utilized functions |
US11593342B2 (en) | 2016-02-01 | 2023-02-28 | Smartshift Technologies, Inc. | Systems and methods for database orientation transformation |
US10585655B2 (en) | 2016-05-25 | 2020-03-10 | Smartshift Technologies, Inc. | Systems and methods for automated retrofitting of customized code objects |
US10089103B2 (en) | 2016-08-03 | 2018-10-02 | Smartshift Technologies, Inc. | Systems and methods for transformation of reporting schema |
US10528343B2 (en) | 2018-02-06 | 2020-01-07 | Smartshift Technologies, Inc. | Systems and methods for code analysis heat map interfaces |
US10740075B2 (en) | 2018-02-06 | 2020-08-11 | Smartshift Technologies, Inc. | Systems and methods for code clustering analysis and transformation |
US10698674B2 (en) | 2018-02-06 | 2020-06-30 | Smartshift Technologies, Inc. | Systems and methods for entry point-based code analysis and transformation |
US11003423B2 (en) | 2019-06-28 | 2021-05-11 | Atlassian Pty Ltd. | System and method for autowiring of a microservice architecture |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4558413A (en) * | 1983-11-21 | 1985-12-10 | Xerox Corporation | Software version management system |
US5208765A (en) * | 1990-07-20 | 1993-05-04 | Advanced Micro Devices, Inc. | Computer-based method and system for product development |
US5430869A (en) * | 1991-05-29 | 1995-07-04 | Hewlett-Packard Company | System and method for restructuring a B-Tree |
US5574898A (en) * | 1993-01-08 | 1996-11-12 | Atria Software, Inc. | Dynamic software version auditor which monitors a process to provide a list of objects that are accessed |
US5586304A (en) * | 1994-09-08 | 1996-12-17 | Compaq Computer Corporation | Automatic computer upgrading |
AU6500596A (en) * | 1995-07-20 | 1997-02-18 | Novell, Inc. | Transaction log management in a disconnectable computer and network |
US6367075B1 (en) * | 1996-07-24 | 2002-04-02 | Marimba, Inc. | Method and apparatus for producing instructions describing the removal of updates to a computer system |
US6523035B1 (en) * | 1999-05-20 | 2003-02-18 | Bmc Software, Inc. | System and method for integrating a plurality of disparate database utilities into a single graphical user interface |
-
2000
- 2000-12-07 US US09/732,392 patent/US20020112230A1/en not_active Abandoned
-
2003
- 2003-09-29 US US10/673,842 patent/US6907603B2/en not_active Expired - Lifetime
Cited By (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040015938A1 (en) * | 2001-05-09 | 2004-01-22 | Sun Microsystems, Inc. | Method, system, program, and data structures for using a database to apply patches to a computer system |
US6859923B2 (en) * | 2001-05-09 | 2005-02-22 | Sun Microsystems, Inc. | Method, system, program, and data structures for using a database to apply patches to a computer system |
US20030014422A1 (en) * | 2001-07-03 | 2003-01-16 | Eastman Kodak Company | Method and system for building a family tree |
US6886015B2 (en) * | 2001-07-03 | 2005-04-26 | Eastman Kodak Company | Method and system for building a family tree |
GB2402297A (en) * | 2003-05-15 | 2004-12-01 | Sun Microsystems Inc | Update dependency control for multi-master replication |
GB2402297B (en) * | 2003-05-15 | 2005-08-17 | Sun Microsystems Inc | Update dependency control for multi-master replication |
US8782097B2 (en) | 2003-07-25 | 2014-07-15 | Honeywell International Inc. | Multiple system compatible database system and method |
WO2005052816A3 (en) * | 2003-07-25 | 2005-09-29 | Honeywell Int Inc | Multiple system compatible database system and method |
US8768970B2 (en) | 2003-12-29 | 2014-07-01 | Ancestry.Com Operations Inc. | Providing alternatives within a family tree systems and methods |
EP1550959A2 (en) * | 2003-12-29 | 2005-07-06 | Myfamily.com, Inc. | Providing alternatives within a family tree systems and methods |
EP1550959A3 (en) * | 2003-12-29 | 2006-06-07 | Myfamily.com, Inc. | Providing alternatives within a family tree systems and methods |
US8095567B2 (en) | 2003-12-29 | 2012-01-10 | Myfamily.Com, Inc. | Providing alternatives within a family tree systems and methods |
US7562356B2 (en) * | 2004-09-22 | 2009-07-14 | Hewlett-Packard Development Company, L.P. | Automatically resolving patch dependencies for a path bundle |
US20060064685A1 (en) * | 2004-09-22 | 2006-03-23 | Defolo Daniel | Resolving patch dependencies |
US20090124372A1 (en) * | 2005-04-29 | 2009-05-14 | Gagner Mark B | Asset management of downloadable gaming components in a gaming system |
JP5071113B2 (en) * | 2006-02-01 | 2012-11-14 | 富士通株式会社 | Object relationship display program and object relationship display method |
US8356275B2 (en) * | 2006-02-01 | 2013-01-15 | Fujitsu Limited | Program and method for displaying relationships between objects |
WO2007088602A1 (en) * | 2006-02-01 | 2007-08-09 | Fujitsu Limited | Object relation display program and object relation display method |
US20080276217A1 (en) * | 2006-02-01 | 2008-11-06 | Fujitsu Limited | Program and method for displaying relationships between objects |
KR100973022B1 (en) | 2006-02-01 | 2010-07-30 | 후지쯔 가부시끼가이샤 | The recording medium on which the object relationship display program is written and how to display the object relationship |
US20090013319A1 (en) * | 2007-07-05 | 2009-01-08 | Stuart Williams | Data processing system and method |
US8255903B2 (en) * | 2007-07-05 | 2012-08-28 | Hewlett-Packard Development Company, L.P. | Data processing system and method |
EP2015173A1 (en) * | 2007-07-05 | 2009-01-14 | Hewlett-Packard Development Company, L.P. | Method of maintaining software updates by means of dependency expressions |
US20140245290A1 (en) * | 2013-02-28 | 2014-08-28 | Adobe Systems Incorporated | Method and apparatus for deploying software as a service |
US9411571B2 (en) * | 2013-02-28 | 2016-08-09 | Adobe Systems Incorporated | Method and apparatus for deploying software as a service |
US20170317949A1 (en) * | 2016-04-29 | 2017-11-02 | International Business Machines Corporation | Providing an optimal resource to a client computer via interactive dialog |
US10735348B2 (en) * | 2016-04-29 | 2020-08-04 | International Business Machines Corporation | Providing an optimal resource to a client computer via interactive dialog |
US11245642B2 (en) * | 2016-04-29 | 2022-02-08 | International Business Machines Corporation | Providing an optimal resource to a client computer via interactive dialog |
CN111367550A (en) * | 2020-03-02 | 2020-07-03 | 深圳前海达闼云端智能科技有限公司 | Internet of things management system, method and equipment |
Also Published As
Publication number | Publication date |
---|---|
US6907603B2 (en) | 2005-06-14 |
US20040073900A1 (en) | 2004-04-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6907603B2 (en) | Software update management system with update chronology generator | |
US6804663B1 (en) | Methods for optimizing the installation of a software product onto a target computer system | |
US6055363A (en) | Managing multiple versions of multiple subsystems in a distributed computing environment | |
US9213740B2 (en) | System and methodology for automatic tuning of database query optimizer | |
US6367077B1 (en) | Method of upgrading a software application in the presence of user modifications | |
US6408434B1 (en) | System and method for using a substitute directory to automatically install an update program | |
US6301710B1 (en) | System and method for creating a substitute registry when automatically installing an update program | |
KR101075388B1 (en) | Peripheral device driver maintenance scheme for networked peripheral device clients | |
US6115715A (en) | Transaction management in a configuration database | |
US6460052B1 (en) | Method and system for performing fine grain versioning | |
US7310653B2 (en) | Method, system, and product for maintaining software objects during database upgrade | |
US6415299B1 (en) | Method for merging versions of a model in an object oriented repository | |
US7366955B2 (en) | Automated test execution framework with central management | |
US20070016887A1 (en) | Versioned project association | |
US7099889B2 (en) | System and method for decoupling object identification for the purpose of object switching in database systems | |
US5956515A (en) | Method for managing multiple versions of multiple subsystems in a distributed computing environment | |
EP0980554A1 (en) | System and method for storing and manipulating data in an information handling system | |
US20050216486A1 (en) | Methods and systems for software release management | |
US6453324B1 (en) | Method for maintaining a version history of objects in a repository | |
US20030051230A1 (en) | Code management software fast transactions using state table technology | |
US20070174329A1 (en) | Presenting a reason why a secondary data structure associated with a database needs rebuilding | |
US8533702B2 (en) | Dynamically resolving fix groups for managing multiple releases of multiple products on multiple systems | |
US7634766B2 (en) | Method and apparatus for pattern-based system design analysis using a meta model | |
US7797334B2 (en) | Automated downloading from mainframe to local area network | |
US20070112886A1 (en) | Method and apparatus for database change management |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: HEWLETT-PACKARD COMPANY, COLORADO Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:SCOTT, JOHN CHARLES;REEL/FRAME:011728/0679 Effective date: 20001122 |
|
AS | Assignment |
Owner name: HEWLETT-PACKARD DEVELOPMENT COMPANY L.P., TEXAS Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:HEWLETT-PACKARD COMPANY;REEL/FRAME:014061/0492 Effective date: 20030926 Owner name: HEWLETT-PACKARD DEVELOPMENT COMPANY L.P.,TEXAS Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:HEWLETT-PACKARD COMPANY;REEL/FRAME:014061/0492 Effective date: 20030926 |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |