Patents by Inventor Sashikanth Chandrasekaran

Sashikanth Chandrasekaran 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).

  • Publication number: 20080307267
    Abstract: Techniques are provided for automatically diagnosing errors in a software system. The software system automatically determines whether conditions associated with the software system warrant use of any diagnostic features that are not currently enabled. When the software system determines that the conditions associated with the software system warrant use of any diagnostic features that are not currently enabled, the software system determines which of a plurality of available diagnostic features should be enabled. The software system then enables the determined one or more diagnostics features.
    Type: Application
    Filed: May 6, 2008
    Publication date: December 11, 2008
    Inventor: Sashikanth Chandrasekaran
  • Patent number: 7451290
    Abstract: A method and mechanism is disclosed for implementing storage and compression in a computer system. Each granular portion of a file can be individually stored in either a compressed storage unit or an uncompressed storage unit. The storage units can be allocated apriori or on an as-needed basis.
    Type: Grant
    Filed: May 11, 2006
    Date of Patent: November 11, 2008
    Assignee: Oracle International Corporation
    Inventors: Sashikanth Chandrasekaran, Angelo Pruscino
  • Patent number: 7447786
    Abstract: Described herein are techniques for synchronizing access to resources in a multi node system by establishing a resource as a read-mostly resource based on one or more criteria, and allowing a node to acquire a shared lock, not granted by the master, on the read-mostly resource where no anti-lock exists for the resource.
    Type: Grant
    Filed: May 5, 2006
    Date of Patent: November 4, 2008
    Assignee: Oracle International Corporation
    Inventors: Juan Loaiza, Sashikanth Chandrasekaran, Neil Macnaughton
  • Patent number: 7379952
    Abstract: Remastering of shared resources among nodes in a cluster, while minimizing the time that such resources are unavailable for access, comprises dividing the shared resources being remastered into multiple “windows” and freezing and remastering one window at a time. The remastering windows are defined over one or more buckets associated with a hash table of resources. In clusters with unequally sized hash tables, an enhancement to the fundamental windowing approach utilizes a functionally specific hashing algorithm and a hash table size constraint to ensure that the set of all resources that hash to a given bucket in a hash table of a given size will hash precisely to the same bucket, plus a set of higher buckets which are well defined, in a node that has a larger hash table.
    Type: Grant
    Filed: April 26, 2004
    Date of Patent: May 27, 2008
    Assignee: Oracle International Corporation
    Inventors: Wilson Wai Shun Chan, Sashikanth Chandrasekaran, Tolga Yurek
  • Patent number: 7376744
    Abstract: Described herein are techniques for global synchronization that under various scenarios eliminate or defer the acquisition of global locks. In many cases, the need to acquire global locks is eliminated, thereby saving the overhead attendant to processing global locks.
    Type: Grant
    Filed: May 9, 2003
    Date of Patent: May 20, 2008
    Assignee: Oracle International Corporation
    Inventors: Juan Loaiza, Sashikanth Chandrasekaran, Neil MacNaughton
  • Patent number: 7373554
    Abstract: Techniques are provided for automatically circumventing errors encountered by a software system. The software system automatically determines that the code path executed to perform a particular operation contains a software error. Upon determining that path-switching conditions are satisfied, the software system automatically switches the execution code path for the particular operation from the current code path to a different code path, where the different code path is selected from a predetermined plurality of code paths that can execute the particular operation.
    Type: Grant
    Filed: October 27, 2004
    Date of Patent: May 13, 2008
    Assignee: Oracle International Corporation
    Inventor: Sashikanth Chandrasekaran
  • Publication number: 20080059471
    Abstract: Described herein are techniques for global synchronization that under various scenarios eliminate or defer the acquisition of global locks. In many cases, the need to acquire global locks is eliminated, thereby saving the overhead attendant to processing global locks.
    Type: Application
    Filed: November 6, 2007
    Publication date: March 6, 2008
    Applicant: ORACLE INTERNATIONAL CORPORATION
    Inventors: Juan Loaiza, Sashikanth Chandrasekaran, Neil MacNaughton
  • Publication number: 20070271573
    Abstract: Techniques are provided for evaluating base events, compound events, and logical update events in an event processing system. In one embodiment, the base events, compound events, and logical update events are definitions in a particular syntax language that specify conditions for evaluating input event data. In this embodiment, base event definitions are evaluated over the input event data; logical update event definitions are evaluated by determining whether the effect of any earlier event is changed by the arrival of a new event; and compound event definitions are evaluated over records representing events that have been selected by evaluating the base event definitions over the input event data.
    Type: Application
    Filed: December 13, 2006
    Publication date: November 22, 2007
    Inventor: Sashikanth Chandrasekaran
  • Patent number: 7299378
    Abstract: A method and apparatus for mirroring data between a plurality of sites is provided. At a first site of the plurality of sites, a record is maintained that identifies which changes made to one or more data blocks that are stored at the first site have had associated redo information replicated to the other sites of the plurality of sites. A priority value associated with a transaction that is to be performed at the first site is determined. The transaction specifies a modification to a data block. Thereafter, if the priority value indicates that the transaction should not be lost if the first site becomes inoperable, then the transaction is committed only after the record indicates that all other changes that have updated the data block at the first site have had their respective redo information replicated to the other sites of the plurality of sites.
    Type: Grant
    Filed: January 15, 2004
    Date of Patent: November 20, 2007
    Assignee: Oracle International Corporation
    Inventors: Sashikanth Chandrasekaran, William F. Kehoe
  • Patent number: 7296039
    Abstract: Techniques are provided for managing caches in a system with multiple caches that may contain different copies of the same data item. Specifically, techniques are provided for coordinating the write-to-disk operations performed on such data items to ensure that older versions of the data item are not written over newer versions, and to reduce the amount of processing required to recover after a failure. Various approaches are provided in which a master is used to coordinate with the multiple caches to cause a data item to be written to persistent storage. Techniques are also provided for managing checkpoints associated with the caches, where the checkpoints are used to determine the position at which to begin processing recovery logs in the event of a failure.
    Type: Grant
    Filed: October 12, 2004
    Date of Patent: November 13, 2007
    Assignee: Oracle International Corporation
    Inventors: Sashikanth Chandrasekaran, Roger J. Bamford, William H. Bridge, David Brower, Neil MacNaughton, Wilson Wai Shun Chan, Vinay Srihari
  • Publication number: 20070261103
    Abstract: One embodiment of the present invention provides a system for executing a command on a computer system. During operation, the system receives a signed command from a first quorum member at a security manager, wherein one or more quorum members must accept the command before the command is executed. Along with the command is data indicating which additional quorum members will be participating in a session, and which quorum persona they wish to invoke for the session. After verifying the signature, the system sends the command to a second quorum member, wherein the command is verified, or authenticated as originating from the first quorum member. Next, the system receives a signed response from the second quorum member, wherein the response indicates whether the second quorum member accepts or rejects the command. If the second quorum member accepts the command, the system sends the command to a native client which executes the command.
    Type: Application
    Filed: May 2, 2006
    Publication date: November 8, 2007
    Inventors: Steven Viavant, Sashikanth Chandrasekaran
  • Patent number: 7284151
    Abstract: A method of operation within a data processing system that includes a plurality of processing nodes each having access to a set of shared resources. Failure of one of the processing nodes is detected, followed by receipt of a request to access a first resource of the set of shared resources. Access to the first resource is granted if the failed node was not responsible for controlling access to the first resource and did not have exclusive access to the first resource when the failure was detected.
    Type: Grant
    Filed: July 21, 2003
    Date of Patent: October 16, 2007
    Assignee: Oracle International Corporation
    Inventor: Sashikanth Chandrasekaran
  • Patent number: 7277897
    Abstract: Various techniques are described for improving the performance of a shared-nothing database system in which at least two of the nodes that are running the shared-nothing database system have shared access to a disk. Specifically, techniques are provided for changing the ownership of data in a shared-nothing database dynamically, based on factors such as which node would be the most efficient owner relative to the performance of a particular operation. Once determined, the ownership of the data may be changed permanently to the new owner, or temporarily for the duration of the particular operation.
    Type: Grant
    Filed: April 23, 2004
    Date of Patent: October 2, 2007
    Assignee: Oracle International Corporation
    Inventors: Roger J. Bamford, Sashikanth Chandrasekaran, Angelo Pruscino
  • Patent number: 7275074
    Abstract: A method and mechanism for propagating commit times between a plurality of database servers is provided. A database server maintains a set of one or more values that indicate which timestamps have been exchanged with at least one other database server that shares access to a common database. The one or more values maintained by the database server include a first value describing the most recent timestamp that the database server has sent to another database server and a second value describing the most recent timestamp that the database server has received from the other database server. The database server determines whether to send a commit timestamp associated with a committing transaction to another database server based, at least in part, on the set of one or more values. These techniques may be utilized for propagating commit times between any number of database servers.
    Type: Grant
    Filed: October 12, 2004
    Date of Patent: September 25, 2007
    Assignee: Oracle International Corporation
    Inventor: Sashikanth Chandrasekaran
  • Publication number: 20070214191
    Abstract: A method and apparatus for determining when an event occurred in a database is provided. At least a portion of the database is restored to a point in time that is prior to the event. Recovery logs are translated to database operations (e.g., SQL) that are capable of causing the changes described in the recovery logs. A mechanism is created for detecting the event based on execution of the statements. For example, a database trigger is created to detect the event. The database operations are executed against the restored database to cause the mechanism to detect the event.
    Type: Application
    Filed: March 10, 2006
    Publication date: September 13, 2007
    Applicant: ORACLE INTERNATIONAL CORPORATION
    Inventor: Sashikanth Chandrasekaran
  • Publication number: 20070192623
    Abstract: One embodiment of the present invention provides a system that facilitates preventing unauthorized access to computer system resources. The system operates by receiving a section of programming language code to execute on a computer system. This programming language code includes a pragma that defines a set of resources that the programming language code has permission to access. The system analyzes the pragma to determine the set of resources. After analyzing the pragma, the system processes the programming language code in accordance with the pragma. In a variation on this embodiment, processing the program in accordance with the pragma involves creating a sandbox that includes the set of resources defined by the pragma. The system then executes the programming language code within the boundaries of the sandbox.
    Type: Application
    Filed: February 16, 2006
    Publication date: August 16, 2007
    Inventor: Sashikanth Chandrasekaran
  • Publication number: 20070174541
    Abstract: Techniques are provided for managing caches in a system with multiple caches that may contain different copies of the same data item. Specifically, techniques are provided for coordinating the write-to-disk operations performed on such data items to ensure that older versions of the data item are not written over newer versions, and to reduce the amount of processing required to recover after a failure. Various approaches are provided in which a master is used to coordinate with the multiple caches to cause a data item to be written to persistent storage. Techniques are also provided for managing checkpoints associated with the caches, where the checkpoints are used to determine the position at which to begin processing recovery logs in the event of a failure.
    Type: Application
    Filed: February 20, 2007
    Publication date: July 26, 2007
    Inventors: Sashikanth Chandrasekaran, Roger Bamford, William Bridge, David Brower, Neil Macnaughton, Wilson Chan, Vinay Srihari
  • Publication number: 20070168319
    Abstract: Techniques are provided for managing caches in a system with multiple caches that may contain different copies of the same data item. Specifically, techniques are provided for coordinating the write-to-disk operations performed on such data items to ensure that older versions of the data item are not written over newer versions, and to reduce the amount of processing required to recover after a failure. Various approaches are provided in which a master is used to coordinate with the multiple caches to cause a data item to be written to persistent storage. Techniques are also provided for managing checkpoints associated with the caches, where the checkpoints are used to determine the position at which to begin processing recovery logs in the event of a failure.
    Type: Application
    Filed: February 20, 2007
    Publication date: July 19, 2007
    Applicant: Oracle International Corporation
    Inventors: Sashikanth Chandrasekaran, Roger Bamford, William Bridge, David Brower, Neil MacNaughton, Wilson Chan, Vinay Srihari
  • Patent number: 7200623
    Abstract: Techniques are provided for managing caches in a system with multiple caches that may contain different copies of the same data item. Specifically, techniques are provided for coordinating the write-to-disk operations performed on such data items to ensure that older versions of the data item are not written over newer versions, and to reduce the amount of processing required to recover after a failure. Various approaches are provided in which a master is used to coordinate with the multiple caches to cause a data item to be written to persistent storage. Techniques are also provided for managing checkpoints associated with the caches, where the checkpoints are used to determine the position at which to begin processing recovery logs in the event of a failure.
    Type: Grant
    Filed: March 4, 2002
    Date of Patent: April 3, 2007
    Assignee: Oracle International Corp.
    Inventors: Sashikanth Chandrasekaran, Roger J. Bamford, William H. Bridge, David Brower, Neil MacNaughton, Wilson Wai Shun Chan, Vinay Srihari
  • Publication number: 20060265420
    Abstract: A lock manager system is provided that includes multiple distinct mechanisms for assigning resources to masters. Specifically, the lock manager system includes (1) one or more assignment mechanisms that do not take into account the affinity between nodes and objects (“affinity-independent assignment mechanisms”), and (3) one or more assignment mechanisms that do take into account the affinity between nodes and objects (“affinity-based assignment mechanisms”). At any given time, the assignment of any given resource to a master is governed by only one of the multiple assignment mechanisms employed by the system. Various techniques are described for determining which assignment mechanism to use with which resources.
    Type: Application
    Filed: May 18, 2005
    Publication date: November 23, 2006
    Inventors: Neil Macnaughton, Sashikanth Chandrasekaran