IP Library Granted Patent US 9,787,525
Granted Patent B2
US 9,787,525 · App. 14/011,444 · Granted Oct 10, 2017

Concurrency control in a file system shared by application hosts

Inventors: Haripriya Rajagopal (Sunnyvale, CA); Satyam Vaghani (San Jose, CA); Yuen-Lin Tan (Fremont, CA)
Assignee: VMware, Inc.
H04L29/08549G06F17/30168
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,787,525
App. No.
14/011,444
Granted
Oct 10, 2017
Kind
B2
Abstract

A manager program for managing virtual machines includes a process which receives a notification message indicating an occurrence of an event affecting a data storage unit in a data storage system that supports a shared file system. The notification message might have come from a virtual machine host or resulted from a hardware reconfiguration. The manager program then determines whether another virtual machine host is sharing the data storage unit. The manager program might make this determination by polling each of the virtual machine hosts it manages or by checking information previously collected and stored in a database. If another virtual machine host is sharing the data storage unit, the manager program sends a refresh message to that virtual machine host that causes the virtual machine host to update information relating to the data storage unit in a cache associated with the virtual machine host.

Claims (53)

1. A method, comprising:

receiving, by a computing device, a notification message from a first host indicating an occurrence of an event corresponding to a logical unit of a data storage system, the first host causing the occurrence of the event;

determining, by the computing device, whether a second host having access to the data storage system also shares access to the logical unit with the first host, the second host being different from the first host; and

sending, by the computing device, a refresh message to the second host that causes the second host, upon receiving the refresh message, to scan at least a portion of the data storage system including the logical unit to determine a data storage status associated with a format of the logical unit, wherein the scan causes an update that changes information describing the status of the format of the logical unit to reflect the occurrence of the event, the information being stored in storage associated with the second host.

2. The method as in claim 1 , wherein a plurality of hosts including the second host share access to the logical unit with the first host, the method further comprising:

sending, by the computing device, the refresh message to the plurality of hosts that causes each host in the plurality of hosts to independently scan at least the portion of the data storage system including the logical unit to determine the data storage status associated with a format of the logical unit, wherein the scan causes a respective update that changes information describing the data storage status of the format of the logical unit to reflect the occurrence of the event, the information being stored in respective storage associated with each host.

3. The method as in claim 1 , wherein the second host scans each logical unit in the data storage system in response to receiving the refresh message.

4. The method as in claim 1 , wherein the refresh message identifies the logical unit and the second host only scans the logical unit.

5. The method as in claim 1 , further comprising:

determining, by the computing device, a status report of the data storage system by reviewing the storage associated with the second host and storage associated with the first host, wherein the storage associated with the first host includes the information reflecting the occurrence of the event; and

outputting the status report of the data storage system on an interface, the status report indicating the first host and the second host have information stored in respective storage reflecting the occurrence of the event.

6. The method as in claim 1 , wherein:

the event relates to the first host performing an operation on the logical unit that resulted in the logical unit being formatted as part of a logical data storage entity, and

the scan causes the second host to change the information to reflect the operation on the logical unit that resulted in the logical unit being formatted as part of the logical data storage entity.

7. The method as in claim 1 , wherein:

the event relates to the first host performing an operation on the logical unit that resulted in the logical unit being formatted with a file system, and

the scan causes the second host to change the information to reflect the operation on the logical unit that resulted in the logical unit being formatted with the file system.

8. A non-transitory computer-readable storage medium containing instructions for controlling a computer system to be configured for:

receiving a notification message from a first host indicating an occurrence of an event corresponding to a logical unit of a data storage system, the first host causing the occurrence of the event;

determining whether a second host having access to the data storage system also shares access to the logical unit with the first host, the second host being different from the first host; and

sending a refresh message to the second host that causes the second host, upon receiving the refresh message, to scan at least a portion of the data storage system including the logical unit to determine a data storage status associated with a format of the logical unit, wherein the scan causes an update that changes information describing the status of the format of the logical unit to reflect the occurrence of the event, the information being stored in storage associated with the second host.

9. The non-transitory computer-readable storage medium as in claim 8 , wherein a plurality of hosts including the second host share access to the logical unit with the first host, the computer system further configured for:

sending the refresh message to the plurality of hosts that causes each host in the plurality of hosts to independently scan at least the portion of the data storage system including the logical unit to determine the data storage status associated with a format of the logical unit, wherein the scan causes a respective update that changes information describing the data storage status of the format of the logical unit to reflect the occurrence of the event, the information being stored in respective storage associated with each host.

10. The non-transitory computer-readable storage medium as in claim 8 , wherein the second host scans each logical unit in the data storage system in response to receiving the refresh message.

11. The non-transitory computer-readable storage medium as in claim 8 , wherein the refresh message identifies the logical unit and the second host only scans the logical unit.

12. The non-transitory computer-readable storage medium as in claim 8 , further configured for:

determining a status report of the data storage system by reviewing the storage associated with the second host and storage associated with the first host, wherein the storage associated with the first host includes the information reflecting the occurrence of the event; and

outputting the status report of the data storage system on an interface, the status report indicating the first host and the second host have information stored in respective storage reflecting the occurrence of the event.

13. The non-transitory computer-readable storage medium as in claim 8 , wherein:

the event relates to the first host performing an operation on the logical unit that resulted in the logical unit being formatted as part of a logical data storage entity, and

the scan causes the second host to change the information to reflect the operation on the logical unit that resulted in the logical unit being formatted as part of the logical data storage entity.

14. The non-transitory computer-readable storage medium as in claim 8 , wherein:

the event relates to the first host performing an operation on the logical unit that resulted in the logical unit being formatted with a file system, and

the scan causes the second host to change the information to reflect the operation on the logical unit that resulted in the logical unit being formatted with the file system.

15. An apparatus comprising:

one or more computer processors; and

a non-transitory computer-readable storage medium comprising instructions, that when executed, control the one or more computer processors to be configured for:

receiving a notification message from a first host indicating an occurrence of an event corresponding to a logical unit of a data storage system, the first host causing the occurrence of the event;

determining whether a second host having access to the data storage system also shares access to the logical unit with the first host, the second host being different from the first host; and

sending a refresh message to the second host that causes the second host, upon receiving the refresh message, to scan at least a portion of the data storage system including the logical unit to determine a data storage status associated with a format of the logical unit, wherein the scan causes an update that changes information describing the status of the format of the logical unit to reflect the occurrence of the event, the information being stored in storage associated with the second host.

16. The apparatus as in claim 15 , wherein a plurality of hosts including the second host share access to the logical unit with the first host, the one or more computer processors further configured for:

sending the refresh message to the plurality of hosts that causes each host in the plurality of hosts to independently scan at least the portion of the data storage system including the logical unit to determine the data storage status associated with a format of the logical unit, wherein the scan causes a respective update that changes information describing the data storage status of the format of the logical unit to reflect the occurrence of the event, the information being stored in respective storage associated with each host.

17. The apparatus as in claim 15 , wherein the second host scans each logical unit in the data storage system in response to receiving the refresh message.

18. The apparatus as in claim 15 , wherein the refresh message identifies the logical unit and the second host only scans the logical unit.

19. The apparatus as in claim 15 , further configured for:

determining a status report of the data storage system by reviewing the storage associated with the second host and storage associated with the first host, wherein the storage associated with the first host includes the information reflecting the occurrence of the event; and

outputting the status report of the data storage system on an interface, the status report indicating the first host and the second host have information stored in respective storage reflecting the occurrence of the event.

20. The apparatus as in claim 15 , wherein:

the event relates to the first host performing an operation on the logical unit that resulted in the logical unit being formatted as part of a logical data storage entity, and

the scan causes the second host to change the information to reflect the operation on the logical unit that resulted in the logical unit being formatted as part of the logical data storage entity.

21. The apparatus as in claim 15 , wherein:

the event relates to the first host performing an operation on the logical unit that resulted in the logical unit being formatted with a file system, and

the scan causes the second host to change the information to reflect the operation on the logical unit that resulted in the logical unit being formatted with the file system.

Assignments (1)
CHANGE OF NAME Recorded Apr 15, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067102/0314 →
Continuity (2)
Continuation 12502086 · Jul 13, 2009
Related Publication 20140040395A1 · Feb 6, 2014