IP Library Granted Patent US 9,104,325
Granted Patent B2
US 9,104,325 · App. 14/078,558 · Granted Aug 11, 2015

Managing read operations, write operations and extent change operations

Inventors: Yechiel Yochai (Moshav Aviel, IL); Joseph Ezra (Even Yehuda, IL); Ido Ben-Tsion (Ness-Ziona, IL); Efraim Zeidner (Haifa, IL)
Assignee: INFINIDAT LTD.
G06F3/0638G06F3/0626G06F3/0683G06F3/0611G06F17/3033
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,104,325
App. No.
14/078,558
Granted
Aug 11, 2015
Kind
B2
Abstract

A method for responding to an extent change operation, the method may include receiving, by a storage system and from a requesting entity, a request to perform an extent content change operation that involves changing a content of a certain extent within a logical space supported by a storage system; generating, in response to the request, extent change operation information that comprises (a) an event counter indicative of a time of requested occurrence of the extent change operation, (ii) a type of extent change operation indicator, and (ii) logical addresses associated with the extent change operation; and sending to the requesting entity an acknowledgement indicative of a completion of the extent change operation before a completion of the extent change operation if an expected content of the certain extent is known before completion of the extent change operation.

Claims (38)

1. A method for responding to an extent change operation, the method comprising:

receiving, by a storage system and from a requesting entity, a request to perform an extent content change operation that involves changing a content of a certain extent within a logical space supported by a storage system;

generating, in response to the request, extent change operation information that comprises (a) an event counter indicative of a time of requested occurrence of the extent change operation, (ii) a type of extent change operation indicator, and (ii) logical addresses associated with the extent change operation; and

sending to the requesting entity an acknowledgement indicative of a completion of the extent change operation before a completion of the extent change operation if an expected content of the certain extent is known before completion of the extent change operation.

2. The method according to claim 1 , comprising completing the exchange operation as a background process.

3. The method according to claim 1 , comprising sending the acknowledgement immediately after generating the extent change operation information.

4. A method for accessing data units in a storage system, the method comprises:

receiving by a storage system, at an access request point of time, an access request for accessing a requested data unit having a requested logical address;

determining, by the storage system, whether to respond to the access request by providing either one of:

(a) a currently stored content of the requested data unit; and

(b) an expected content of the requested data unit at a completion of an extent change operation that is not completed at the access request point of time, wherein the extent change operation involves changing a content of a certain extent that comprises the requested data unit;

providing the expected content if it is determined to provide the expected content; and

providing the currently stored content if it is determined to provide the currently stored content.

5. The method according to claim 4 comprising determining to provide the expected content if a last extent change operation associated with the requested data unit was requested to be executed at a point of time that exceeded writing the requested data unit to the storage system.

6. The method according to claim 4 wherein the access request is a read request.

7. The method according to claim 4 further comprising completing the extent change operation.

8. The method according to claim 4 comprising providing the expected content regardless of a completion of the extent change operation.

9. The method according to claim 4 wherein the extent change operation is an Unmap operation and wherein the providing of the expected content comprising providing a default content indicative of a deleted content.

10. The method according to claim 4 wherein the extent change operation is a copy operation for copying a content of a source extent to the certain extent.

11. The method according to claim 10 wherein the source extent is a read only extent and wherein the method comprises re-directing the access request from the requested logical address to a logical address in the source extent.

12. The method according to claim 11 comprising updating a logical to physical address data structure that includes mapping of the certain extent to map between logical addresses of the certain extent to physical addresses that store the source extent.

13. The method according to claim 10 wherein the method comprises creating a certain snapshot of the source extent in proximity to the read request point of time.

14. The method according to claim 13 wherein the providing of the expected content comprises providing a content of a data unit of the certain snapshot that corresponds to the requested data unit.

15. The method according to claim 13 wherein the providing of the expected content comprises re-directing the access request from the requested logical address to a logical address in the certain snapshot.

16. The method according to claim 13 comprising updating a logical to physical address data structure that includes mapping of the certain extent to map between logical addresses of the certain extent to physical addresses that facilitate a retrieval of the certain snapshot.

17. The method according to claim 4 comprising maintaining, per each logical space entity that is supported by the storage system, extent change operations information that comprises, for each extent change operation that is associated with at least one logical address of the logical space entity, (a) an event counter indicative of a time of requested occurrence of the extent change operation, (ii) a type of extent change operation indicator, and (ii) logical addresses associated with the extent change operation.

18. The method according to claim 17 , wherein the extent change operation information further comprises information about a manner for responding to a read request for data units having logical addresses associated with the extent change operation.

19. The method according to claim 17 , comprising maintaining for each data unit currently stored by the storage system a data unit write tag indicative of a value of the event counter when the data unit was written to the storage system.

20. The method according to claim 19 , wherein the determining comprises determining to provide the expected content if a value of a data unit write tag of the requested data unit and an event counter associated with a last extent change operation associated with the requested data unit indicate that the last extent change operation associated with the requested data unit was requested to be executed at a point of time that exceeded writing the requested data unit to the storage system.

21. The method according to claim 19 , wherein the determining comprises determining to provide the currently stored content if a value of a data unit write tag of the requested data unit and an event counter associated with a last extent change operation associated with the requested data unit indicate that the last extent change operation associated with the requested data unit was requested to be executed at a point of time that preceded writing the requested data unit to the storage system.

22. The method according to claim 21 , comprising maintaining a logical to physical mapping data structure that includes mapping information about data units written to the storage system, wherein the logical to physical mapping is calculated regardless of any extent change operation; wherein the providing of the currently stored content comprises utilizing the logical to physical mapping data structure.

23. The method according to claim 22 , wherein the logical space entity is a volume.

24. A non-transitory computer readable medium that stores instructions that one executed by a computer cause the computer to execute at least the stages of: receiving by a storage system, at a read request point of time, a read request for reading a requested data unit having a requested logical address; determining, by the storage system, whether to respond to the read request by providing either one of: (a) a currently stored content of the requested data unit; and (b) an expected content of the requested data unit at a completion of an extent change operation that is not completed at the read request point of time, wherein the extent change operation involves changing a content of a certain extent that comprises the requested data unit; providing the expected content if it is determined to provide the expected content; and providing the currently stored content if it is determined to provide the currently stored content.

25. A storage system that comprises a permanent storage layer and a storage control and cache unit, wherein the storage control and cache unit is arranged to:

receive at a read request point of time, a read request for reading a requested data unit having a requested logical address;

determine whether to respond to the read request by providing either one of: (a) a currently stored content of the requested data unit; and (b) an expected content of the requested data unit at a completion of an extent change operation that is not completed at the read request point of time, wherein the extent change operation involves changing a content of a certain extent that may include the requested data unit;

provide the expected content if it is determined to provide the expected content; and

provide the currently stored content if it is determined to provide the currently stored content.

Assignments (10)
SECURITY INTEREST Recorded Jan 30, 2025
From: INFINIDAT LTD
To: KREOS CAPITAL VII AGGREGATOR SCSP,
Reel/Frame 070056/0458 →
RELEASE OF SECURITY INTEREST IN IP RECORDED AT R/F 55653/0854 Recorded Jan 18, 2024
From: SILICON VALLEY BANK
To: INFINIDAT LTD.
Reel/Frame 066344/0064 →
SECURITY INTEREST Recorded Jan 11, 2024
From: INFINIDAT LTD
To: KREOS CAPITAL VI (EXPERT FUND) L.P.; KREOS CAPITAL 2020 OPPORTUNITY L.P.
Reel/Frame 066270/0359 →
SECURITY INTEREST Recorded Jan 10, 2024
From: INFINIDAT LTD
To: HSBC BANK PLC
Reel/Frame 066268/0584 →
RELEASE OF SECURITY INTEREST Recorded Mar 30, 2021
From: BANK LEUMI LE-ISRAEL B.M.
To: INFINIDAT LTD.
Reel/Frame 055776/0526 →
RELEASE OF SECURITY INTEREST Recorded Mar 30, 2021
From: BANK LEUMI LE-ISRAEL B.M.
To: INFINIDAT LTD.
Reel/Frame 055776/0597 →
SECURITY INTEREST Recorded Mar 18, 2021
From: INFINIDAT LTD.
To: SILICON VALLEY BANK
Reel/Frame 055653/0854 →
SECURITY INTEREST Recorded Apr 12, 2018
From: INFINIDAT LTD.
To: BANK LEUMI LE-ISRAEL B.M.
Reel/Frame 045914/0276 →
LIEN Recorded Jul 18, 2016
From: INFINIDAT LTD.
To: BANK LEUMI LE-ISRAEL B.M.
Reel/Frame 039361/0161 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 5, 2014
From: YOCHAI, YECHIEL; EZRA, JOSEPH; BEN-TSION, IDO; ZEIDNER, EFRAIM
To: INFINIDAT ISRAEL LTD.
Reel/Frame 032141/0419 →
Continuity (1)
Related Publication 20150134909A1 · May 14, 2015