Patents by Inventor Shekhar Amlekar

Shekhar Amlekar has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 11593309
    Abstract: Embodiments include a method for fault tolerance in the delivery of event information within a file system cluster. One or more processors to determine event information associated with file system activity performed by a node of the cluster. The one or more processors add the event information to an event log buffer in memory. The one or more processors receive a first log sequence number (LSN) associated with flushing of recovery information from a recovery log buffer. The one or more processors determine the event information in the event log buffer having a log sequence number less than or equal to the first log sequence number, and determining the event information includes log sequence numbers less than or equal to the first log sequence number, the one or more processors flush the corresponding event information from the event log buffer to disk storage.
    Type: Grant
    Filed: November 5, 2020
    Date of Patent: February 28, 2023
    Assignee: International Business Machines Corporation
    Inventors: John T. Olson, Deepavali M. Bhagwat, Frank Schmuck, Shekhar Amlekar, Luis Teran, Jacob Morris Tick, April Brown
  • Publication number: 20220138158
    Abstract: Embodiments include a method for fault tolerance in the delivery of event information within a file system cluster. One or more processors to determine event information associated with file system activity performed by a node of the cluster. The one or more processors add the event information to an event log buffer in memory. The one or more processors receive a first log sequence number (LSN) associated with flushing of recovery information from a recovery log buffer. The one or more processors determine the event information in the event log buffer having a log sequence number less than or equal to the first log sequence number, and determining the event information includes log sequence numbers less than or equal to the first log sequence number, the one or more processors flush the corresponding event information from the event log buffer to disk storage.
    Type: Application
    Filed: November 5, 2020
    Publication date: May 5, 2022
    Inventors: John T. Olson, DEEPAVALI M. BHAGWAT, Frank Schmuck, Shekhar Amlekar, Luis Teran, Jacob Morris Tick, April Brown
  • Patent number: 10969968
    Abstract: Methods and systems for an enhanced restripe mechanism are provided. A system for an enhanced restriping mechanism includes a data storage module that stripes data across a plurality of storage devices, wherein the plurality of storage devices are arranged into a plurality of storage pools and the data is distributed across the plurality of storage pools. Also, the system may include a movement detection module that detects changes in the arrangement of the plurality of storage devices that would cause the data on a storage device in the plurality of storage devices to be moved onto other storage devices in the plurality of storage devices. Further, the system may include a restriping module that restripes disk data from the storage device in the plurality of storage devices onto the other storage devices in response to the detected change based on access characteristics of the data.
    Type: Grant
    Filed: January 10, 2020
    Date of Patent: April 6, 2021
    Assignee: International Business Machines Corporation
    Inventors: Sasikanth Eda, Shekhar Amlekar, Sandeep R. Patil
  • Publication number: 20200150874
    Abstract: Methods and systems for an enhanced restripe mechanism are provided. A system for an enhanced restriping mechanism includes a data storage module that stripes data across a plurality of storage devices, wherein the plurality of storage devices are arranged into a plurality of storage pools and the data is distributed across the plurality of storage pools. Also, the system may include a movement detection module that detects changes in the arrangement of the plurality of storage devices that would cause the data on a storage device in the plurality of storage devices to be moved onto other storage devices in the plurality of storage devices. Further, the system may include a restriping module that restripes disk data from the storage device in the plurality of storage devices onto the other storage devices in response to the detected change based on access characteristics of the data.
    Type: Application
    Filed: January 10, 2020
    Publication date: May 14, 2020
    Inventors: Sasikanth Eda, Shekhar Amlekar, Sandeep R. Patil
  • Patent number: 10592125
    Abstract: Methods and systems for an enhanced restripe mechanism are provided. A system for an enhanced restriping mechanism includes a data storage module that stripes data across a plurality of storage devices, wherein the plurality of storage devices are arranged into a plurality of storage pools and the data is distributed across the plurality of storage pools. Also, the system may include a movement detection module that detects changes in the arrangement of the plurality of storage devices that would cause the data on a storage device in the plurality of storage devices to be moved onto other storage devices in the plurality of storage devices. Further, the system may include a restriping module that restripes disk data from the storage device in the plurality of storage devices onto the other storage devices in response to the detected change based on access characteristics of the data.
    Type: Grant
    Filed: October 22, 2018
    Date of Patent: March 17, 2020
    Assignee: International Business Machines Corporation
    Inventors: Sasikanth Eda, Shekhar Amlekar, Sandeep R. Patil
  • Publication number: 20200026611
    Abstract: A computer includes a storage segment fully allocated to an application. The storage segment initially includes a repeating initialization data pattern there within. After the application begins its workload, the application writes application data to a portion of the storage segment. A snapshot application takes a snapshot of the storage segment. After the snapshot, the application generates a post-snapshot-write to the storage segment. The snapshot application determines whether the post-snapshot-write modifies application data or modifies the repeating initialization data pattern. If the post-snapshot-write modifies the repeating initialization data pattern within the storage segment, the snapshot application blocks the repeating initialization data pattern from being copied and moved which resultantly blocks modification of the snapshot.
    Type: Application
    Filed: December 18, 2018
    Publication date: January 23, 2020
    Inventors: Shekhar Amlekar, Sasikanth Eda, Karthik Iyer, Sandeep R. Patil, Sachin C. Punadikar
  • Patent number: 9354976
    Abstract: Technology for accessing previous versions of data objects within a storage cluster including multiple storage volumes under a common namespace is disclosed herein. In some embodiments, the network storage cluster having multiple cooperative storage nodes receives a namespace identifier for a previous version of a data object. The namespace identifier includes a namespace path containing a volume junction and a time indicator indicating a point in time when the previous version of the data object existed. The network storage cluster identifies a storage volume within the network storage cluster using the volume junction. The volume junction points to a root directory of a file system of the storage volume. The network storage cluster locates, based on the namespace path, the previous version of the data object within a snapshot copy of the storage volume, wherein the snapshot copy is identified by the time indicator.
    Type: Grant
    Filed: March 8, 2013
    Date of Patent: May 31, 2016
    Assignee: NetApp, Inc.
    Inventors: Shekhar A. Amlekar, Ankit Mathur
  • Patent number: 9152776
    Abstract: Embodiments described herein provide a technique for securely responding to an enumeration request of a data container stored at a location referenced by a junction or mount point within a share served by a storage system. To that end, the technique applies access permissions of the data container at the referenced location instead of permissions that may reside at the junction or mount point. Upon determining that the permissions are insufficient to allow access to the data container, the technique ensures that a descriptor of the junction or mount point is not included in a response to the enumeration request.
    Type: Grant
    Filed: April 30, 2013
    Date of Patent: October 6, 2015
    Assignee: NetApp, Inc.
    Inventors: Amit Aggarwal, Shekhar Amlekar
  • Publication number: 20140325640
    Abstract: Embodiments described herein provide a technique for securely responding to an enumeration request of a data container stored at a location referenced by a junction or mount point within a share served by a storage system. To that end, the technique applies access permissions of the data container at the referenced location instead of permissions that may reside at the junction or mount point. Upon determining that the permissions are insufficient to allow access to the data container, the technique ensures that a descriptor of the junction or mount point is not included in a response to the enumeration request.
    Type: Application
    Filed: April 30, 2013
    Publication date: October 30, 2014
    Applicant: NetApp, Inc.
    Inventors: Amit Aggarwal, Shekhar Amlekar
  • Publication number: 20140317371
    Abstract: Method and system for access based directory enumeration is provided. When a directory is enumerated for a first time, user credentials are verified against an access control list (ACL) entry that is referenced by an ACL inode (referred to as Xnode). The Xnode number is obtained from a file handle for a directory entry. The verification is recorded in a data structure that stores the Xnode identifier and user identifier. When the directory is enumerated again, the data structure is used to verify that the user has been validated before, instead of loading and checking against an ACL entry.
    Type: Application
    Filed: April 19, 2013
    Publication date: October 23, 2014
    Applicant: NETAPP, INC.
    Inventors: Mark Muhlestein, Shekhar Amlekar
  • Publication number: 20140258239
    Abstract: Technology for accessing previous versions of data objects within a storage cluster including multiple storage volumes under a common namespace is disclosed herein. In some embodiments, the network storage cluster having multiple cooperative storage nodes receives a namespace identifier for a previous version of a data object. The namespace identifier includes a namespace path containing a volume junction and a time indicator indicating a point in time when the previous version of the data object existed. The network storage cluster identifies a storage volume within the network storage cluster using the volume junction. The volume junction points to a root directory of a file system of the storage volume. The network storage cluster locates, based on the namespace path, the previous version of the data object within a snapshot copy of the storage volume, wherein the snapshot copy is identified by the time indicator.
    Type: Application
    Filed: March 8, 2013
    Publication date: September 11, 2014
    Inventors: Shekhar A. Amlekar, Ankit Mathur
  • Patent number: 8140927
    Abstract: Provided is a method and system for reliably multicasting a data transmission from a server to one or more clients, which may be connected via a control channel and a multicast data channel. In one example, the method includes sending a first data transmission to the clients over the multicast data channel. A response is received over the control channel from at least some of the clients. The response identifies data not received by the responding client. In some examples, the response may indicate that all the data was received. The server determines a minimum retransmission data set based on the responses. The minimum retransmission data set includes at least some of the data not received by the client during the first data transmission. The minimum retransmission data set is sent over the multicast data channel and received by the clients that did not receive it during the first data transmission.
    Type: Grant
    Filed: October 29, 2007
    Date of Patent: March 20, 2012
    Assignee: Novell, Inc.
    Inventor: Shekhar Amlekar
  • Patent number: 7685255
    Abstract: A system and method for prefetching one or more embedded objects marked uncacheable using a buffer on a prefetch cache to temporarily store the uncacheable object. The buffer is allocated to a socket that is established between the prefetch cache and a server subsequent to the establishment of an initial connection. A prefetch caching process retrieves one or more embedded objects from the server using the socket based on the preconfigured set of rules. The prefetch caching process determines whether the embedded object is uncacheable, and if so loads the object into the buffer. The prefetch caching process waits a predetermined time period for client request for the object. If the request is received prior to expiration of the time period, the prefetch caching process sends the object to the client. Otherwise, the process “flushes” the buffer, thereby discarding the object, and then closes the socket.
    Type: Grant
    Filed: August 7, 2006
    Date of Patent: March 23, 2010
    Assignee: Blue Coat Systems, Inc.
    Inventors: Shekhar Amlekar, Niall Doherty
  • Publication number: 20080052590
    Abstract: Provided is a method and system for reliably multicasting a data transmission from a server to one or more clients, which may be connected via a control channel and a multicast data channel. In one example, the method includes sending a first data transmission to the clients over the multicast data channel. A response is received over the control channel from at least some of the clients. The response identifies data not received by the responding client. In some examples, the response may indicate that all the data was received. The server determines a minimum retransmission data set based on the responses. The minimum retransmission data set includes at least some of the data not received by the client during the first data transmission. The minimum retransmission data set is sent over the multicast data channel and received by the clients that did not receive it during the first data transmission.
    Type: Application
    Filed: October 29, 2007
    Publication date: February 28, 2008
    Applicant: NOVELL, INC.
    Inventor: Shekhar AMLEKAR
  • Patent number: 7289500
    Abstract: Provided is a method and system for reliably multicasting a data transmission from a server to one or more clients, which may be connected via a control channel and a multicast data channel. In one example, the method includes sending a first data transmission to the clients over the multicast data channel. A response is received over the control channel from at least some of the clients. The response identifies data not received by the responding client. In some examples, the response may indicate that all the data was received. The server determines a minimum retransmission data set based on the responses. The minimum retransmission data set includes at least some of the data not received by the client during the first data transmission. The minimum retransmission data set is sent over the multicast data channel and received by the clients that did not receive it during the first data transmission.
    Type: Grant
    Filed: July 17, 2003
    Date of Patent: October 30, 2007
    Assignee: Novell, Inc.
    Inventor: Shekhar Amlekar
  • Publication number: 20070250601
    Abstract: A system and method for prefetching one or more embedded objects marked uncacheable using a staging area on a prefetch cache to temporarily store (load) the uncacheable object. The staging area is a buffer allocated to a socket that is established between a prefetch cache and the server subsequent to the establishment of an initial connection. A prefetch caching process retrieves one or more embedded objects from the server using one or more sockets 145 based on the response sent to the client and a preconfigured set of rules. Additionally, the prefetch caching process determines whether the embedded object is uncacheable. The prefetch caching process then loads the object into the buffer associated with the socket. The prefetch caching process waits a predetermined time period for the cache to receive a client request for the object. If the request is received prior to expiration of the time period, the prefetch caching process sends the object over the socket.
    Type: Application
    Filed: August 7, 2006
    Publication date: October 25, 2007
    Inventors: Shekhar Amlekar, Niall Doherty