Claims
- 1. A method of managing disk space, the method comprising:
determining whether at least one bitmap block satisfies a first set of one or more criteria; if at least one bitmap block satisfies said first set of one or more criteria, then, based on information that is indicated in a bitmap block that satisfies said first set of one or more criteria, allocating disk space for use by a first server instance; and if no bitmap block satisfies said first set of one or more criteria, then performing the steps of: determining whether at least one bitmap block satisfies a second set of one or more criteria; and
if at least one bitmap block satisfies said second set of one or more criteria, then performing the steps of:
causing a particular bitmap block, that is associated with a second server instance and that satisfies said second set of one or more criteria, to be associated with said first server instance instead of said second server instance; and based on information that is indicated in said particular bitmap block, allocating disk space for use by said first server instance.
- 2. The method of claim 1, wherein said first set of criteria includes being associated with said first server instance.
- 3. The method of claim 1, wherein said first set of criteria includes indicating at least a specified amount of free disk space.
- 4. The method of claim 1, wherein said second set of criteria includes being associated with a server instance for more than a specified period of time.
- 5. The method of claim 1, wherein said second set of criteria includes indicating that disk space has not been allocated, for use by a server instance, within a specified period of time preceding a current time.
- 6. The method of claim 1, wherein said second set of criteria includes indicating at least a specified amount of free disk space.
- 7. The method of claim 1, wherein said second set of criteria includes not being currently associated with an executing server instance.
- 8. The method of claim 1, wherein allocating based on information that is indicated in said bitmap block that satisfies said first set of one or more criteria comprises allocating one or more data blocks, that are associated with said bitmap block that satisfies said first set of one or more criteria, for use by said first server instance.
- 9. The method of claim 1, wherein allocating based on information that is indicated in said particular bitmap block comprises allocating one or more data blocks, that are associated with said particular bitmap block, for use by said first server instance.
- 10. The method of claim 1, further comprising:
associating a first set of one or more first-level bitmap blocks with a first second-level bitmap block; and associating a second set of one or more first-level bitmap blocks with a second second-level bitmap block; wherein no bitmap block in said first set of one or more first-level bitmap blocks is associated with said second second-level bitmap block; and wherein no bitmap block in said second set of one or more first-level bitmap blocks is associated with said first second-level bitmap block.
- 11. The method of claim 10, wherein determining whether at least one bitmap block satisfies said first set of one or more criteria comprises determining, from information indicated in said first second-level bitmap block, whether at least one first-level bitmap block in said first set of one or more first-level bitmap blocks satisfies one or more particular criteria in said first set of one or more criteria.
- 12. The method of claim 11, further comprising:
selecting said first second-level bitmap block from a plurality of second-level bitmap blocks based on information that indicates which one of said plurality of second-level bitmap blocks is associated with a first-level bitmap block that indicates a most recent allocation of disk space for use by a server instance.
- 13. The method of claim 12, further comprising:
determining an address of said first second-level bitmap block based on information contained in a third-level bitmap block with which said second-level bitmap block is associated.
- 14. The method of claim 1, wherein allocating disk space based on information that is indicated in said bitmap block that satisfies said first set of one or more criteria comprises updating said bitmap block that satisfies said first set of one or more criteria.
- 15. The method of claim 14, wherein updating said bitmap block that satisfies said first set of one or more criteria comprises causing said bitmap block that satisfies said first set of one or more criteria to indicate a time at which disk space was allocated for use by a server instance.
- 16. The method of claim 14, wherein updating said bitmap block that satisfies said first set of one or more criteria comprises causing said bitmap block that satisfies said first set of one or more criteria to indicate a different amount of free space than an amount of free disk space previously indicated by said bitmap block that satisfies said first set of one or more criteria.
- 17. The method of claim 14, wherein updating said bitmap block that satisfies said first set of one or more criteria comprises updating information that is indicated in a second-level bitmap block with which said bitmap block that satisfies said first set of one or more criteria is associated.
- 18. The method of claim 1, wherein allocating disk space based on information that is indicated in said particular bitmap block comprises updating said particular bitmap block.
- 19. The method of claim 18, wherein updating said particular bitmap block comprises causing said particular bitmap block to indicate a time at which disk space was allocated for use by a server instance.
- 20. The method of claim 18, wherein updating said particular bitmap block comprises causing said particular bitmap block to indicate to indicate a different amount of free space than an amount of free space that said particular bitmap block previously indicated.
- 21. The method of claim 18, wherein updating said particular bitmap block comprises causing said particular bitmap block to indicate a time at which said particular bitmap block was associated with said first server instance.
- 22. The method of claim 18, wherein updating said particular bitmap block comprises updating information that is indicated in a second-level bitmap block with which said particular bitmap block is associated.
- 23. The method of claim 1, wherein causing said particular bitmap block to be associated with said first server instance instead of said second server instance comprises updating said particular bitmap block to indicate a time that said particular bitmap block became associated with said first server instance instead of said second server instance.
- 24. The method of claim 1, wherein causing said particular bitmap block to be associated with said first server instance instead of said second server instance comprises updating information that is indicated in a second-level bitmap block, with which said particular bitmap block is associated, to indicate that said particular bitmap block is associated with said first server instance instead of said second server instance.
- 25. A computer-readable medium carrying one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform the method recited in claim 1.
- 26. A computer-readable medium carrying one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform the method recited in claim 2.
- 27. A computer-readable medium carrying one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform the method recited in claim 3.
- 28. A computer-readable medium carrying one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform the method recited in claim 4.
- 29. A computer-readable medium carrying one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform the method recited in claim 5.
- 30. A computer-readable medium carrying one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform the method recited in claim 6.
- 31. A computer-readable medium carrying one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform the method recited in claim 7.
- 32. A computer-readable medium carrying one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform the method recited in claim 8.
- 33. A computer-readable medium carrying one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform the method recited in claim 9.
- 34. A computer-readable medium carrying one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform the method recited in claim 10.
- 35. A computer-readable medium carrying one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform the method recited in claim 11.
- 36. A computer-readable medium carrying one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform the method recited in claim 12.
- 37. A computer-readable medium carrying one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform the method recited in claim 13.
- 38. A computer-readable medium carrying one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform the method recited in claim 14.
- 39. A computer-readable medium carrying one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform the method recited in claim 15.
- 40. A computer-readable medium carrying one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform the method recited in claim 16.
- 41. A computer-readable medium carrying one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform the method recited in claim 17.
- 42. A computer-readable medium carrying one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform the method recited in claim 18.
- 43. A computer-readable medium carrying one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform the method recited in claim 19.
- 44. A computer-readable medium carrying one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform the method recited in claim 20.
- 45. A computer-readable medium carrying one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform the method recited in claim 21.
- 46. A computer-readable medium carrying one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform the method recited in claim 22.
- 47. A computer-readable medium carrying one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform the method recited in claim 23.
- 48. A computer-readable medium carrying one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform the method recited in claim 24.
CLAIM OF PRIORITY
[0001] This application claims benefit of Provisional Application Serial No. 60/383,498, filed May 24, 2002, entitled “DYNAMIC DISK SPACE MANAGEMENT IN A CLUSTER CONFIGURATION,” by Sujatha Muthulingam, Alexander Tsukerman, and Vishwanath Karra, the entire contents of which are incorporated by reference as if fully set forth herein.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60383498 |
May 2002 |
US |