Patents by Inventor Wilson Wai Shun Chan

Wilson Wai Shun Chan 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: 7392335
    Abstract: A method and system are provided for performing anticipatory changes to a resource governed by a locking mechanism. Entities (such as transactions in a database system) that want to modify a resource request permission to modify the resource. However, prior to receiving permission, they make anticipatory changes to a private version of the resource. The entities are prevented from making the anticipatory changes permanent until they receive permission to make the changes. Because they can make the changes, and proceed to other operations, before receiving permission, any delay in receiving permission has less adverse effect on their performance.
    Type: Grant
    Filed: February 10, 2006
    Date of Patent: June 24, 2008
    Assignee: Oracle International Corporation
    Inventors: Wilson Wai Shun Chan, Angelo Pruscino, Michael Zoll, Tak Fung Wang
  • Patent number: 7389293
    Abstract: Techniques are provided for remastering resources based on node utilization. According to one such technique, resources are remastered in response to the over-utilization of the node that currently masters those resources. The utilization of each node is tracked, and when a particular node's utilization exceeds a specified threshold, selected resources that are currently mastered by that node are remastered so that nodes other than the particular node become the new masters for the selected resources. Each node's utilization is based on that node's capacity, and each node's capacity may differ. According to an aspect of one technique, each node's capacity is based on that node's processing resources and memory resources. Remastering resources in this manner tends to reduce the average amount of time taken for nodes to handle requests for the resources that they master.
    Type: Grant
    Filed: February 17, 2005
    Date of Patent: June 17, 2008
    Assignee: Oracle International Corporation
    Inventors: Wilson Wai Shun Chan, Angelo Pruscino, Stefan Roesch, Michael Zoll
  • Publication number: 20080140733
    Abstract: In a multi-node database system, a list of data blocks to perform recovery operations on in the event of failure of a given node is dynamically maintained on another node. List is available when the given node fails, and allows the database to be made available more quickly.
    Type: Application
    Filed: December 12, 2006
    Publication date: June 12, 2008
    Applicant: Oracle International Corporation
    Inventors: Wilson Wai Shun Chan, Vinay Srihari, Tak Fung Wang, Tolga Yurek, Angelo Pruscino
  • 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
  • Publication number: 20080082533
    Abstract: The state of locks maintained in volatile memory by the master for the resources are preserved after termination of the master. The locks are preserved by storing persistent copies of the locks. The persistently stored copies of the locks are accessible to other nodes in a multi-node system of the master. Locks for which persistent copies are stored in this way are referred to as persistent locks. A persistent copy of data is a copy that is stored in a form of memory that is able to store the copy after the volatile memory storing the data is unable to do so.
    Type: Application
    Filed: September 28, 2006
    Publication date: April 3, 2008
    Inventors: Tak Fung Wang, Angelo Pruscino, Wilson Wai Shun Chan, Tolga Yurek
  • Patent number: 7315910
    Abstract: Techniques are described herein for handling lock-related inconsistencies. As mentioned above, such inconsistencies occur when two or more sets of lock information, relating to the same resource, convey inconsistent information about locks requested and/or granted on that resource. In general, the techniques involve causing the locally-stored lock information about a resource to be sent to the master node of the resource. The master node of the resource compares the lock information thus received against the lock information maintained by the master node. Based on the comparison, the master node determines how to resolve the lock-related inconsistency, and sends messages to those nodes that need to change their local lock information for the resource. Once all of the lock information has been made consistent, the resource made available for access.
    Type: Grant
    Filed: June 16, 2005
    Date of Patent: January 1, 2008
    Assignee: Oracle International Corporation
    Inventors: Wilson Wai Shun Chan, Angelo Pruscino, Stefan Roesch, Michael Zoll, Tolga Yurek, Eugene Ho
  • 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
  • Patent number: 7246120
    Abstract: Techniques are described for remastering shared resources among nodes in a cluster, while minimizing the number of resources that are unavailable for access (“frozen”) during the remastering operation. Only the resources that are being remastered from one node to one or more other nodes are frozen, whereas the other resources that are not being remastered are not frozen and are, therefore, still accessible. For example, in the context of a database cluster, there is no longer a need to freeze the entire database during a reconfiguration remastering operation. Consequently, during the remastering operation requests for access to the resources that are not being remastered can be processed and locks granted thereon.
    Type: Grant
    Filed: June 10, 2004
    Date of Patent: July 17, 2007
    Assignee: Oracle International Corporation
    Inventors: Wilson Wai Shun Chan, Tolga Yurek
  • 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
  • Patent number: 7185339
    Abstract: A mechanism and system are described for either releasing held resources in the case of a deadlock or to postpone requests for resources when a potential deadlock is detected. One technique involves a three pass algorithm for selecting a candidate, where the candidate is either a possessory entity or resource is used. The three passes are as follows: (1) determining the subset of candidates, which have the CAN-BE-VICTIM flag set on; (2) If pass one results in a subset with more than one candidates in it, process that subset to determine a second subset of candidates based on resource priority associated with a resource type; (3) If the second pass results in a subset with more than one candidate in it, process that subset to select the candidate that has been running or held the shortest length of time.
    Type: Grant
    Filed: August 3, 2001
    Date of Patent: February 27, 2007
    Assignee: Oracle International Corporation
    Inventors: Alok Kumar Srivastava, Wilson Wai Shun Chan
  • Patent number: 7080075
    Abstract: Techniques are provided for mastering resources by assigning resources to mastery-eligible-sets. The resources that are assigned to a mastery-eligible-set may be mastered only at nodes that belong to the mastery-eligible-set. The membership of a mastery-eligible-set for a given set of related resources may be established based on which nodes have the highest affinity for the given set of related resources. Resource usage may be monitored, and the system may be periodically reconfigured, by changing membership of the mastery-eligible-sets, based on the usage information.
    Type: Grant
    Filed: December 27, 2004
    Date of Patent: July 18, 2006
    Assignee: Oracle International Corporation
    Inventors: Wilson Wai Shun Chan, Angelo Pruscino, Stefan Roesch, Michael Zoll
  • Patent number: 7065540
    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: June 20, 2006
    Assignee: Oracle International Corporation
    Inventors: Sashikanth Chandrasekaran, Roger J. Bamford, William H. Bridge, David Brower, Neil MacNaughton, Wilson Wai Shun Chan, Vinay Srihari
  • Patent number: 6965893
    Abstract: Techniques are disclosed for managing resources that are accessible to a plurality of entities. In one embodiment, shared locks on a resource are granted more efficiently by maintaining data that is local to (e.g. on the same node as) each entity to indicate whether an exclusive lock has been granted on the resource to any entity of the plurality of entities. Data that (15) is maintained local to an entity, and that (16) indicates whether any entity has an exclusive lock on a particular resource is referred to herein as a “local exclusive lock flag” for that particular resource. When an entity of the plurality of entities seeks to acquire a shared lock for a particular resource, that entity checks the local exclusive lock flag for that particular resource. If the local exclusive lock flag indicates that no entity holds an exclusive lock on the resource, then the entity seeking the shared lock acquires the shared lock without first receiving a lock grant from the resource manager that manages the resource.
    Type: Grant
    Filed: December 20, 2000
    Date of Patent: November 15, 2005
    Assignee: Oracle International Corporation
    Inventors: Wilson Wai Shun Chan, Michael Zoll
  • Patent number: 6920454
    Abstract: Techniques for optimizing a distributed lock manager (DLM) include transferring lock information to a new master without freezing one or more shared resources. A hash value range is associated with the resources by a hash function. A first master node is established as master for the resources in response to a hash value range being mapped to the first master node. Responsibility for mastering the resources is transferred from the first master node to a second master node during a transfer time interval. Lock requests received at a receiving node, either the first master node or the second master node, are processed by the receiving node during the transfer time interval.
    Type: Grant
    Filed: January 28, 2000
    Date of Patent: July 19, 2005
    Assignee: Oracle International Corporation
    Inventor: Wilson Wai Shun Chan
  • Publication number: 20040243578
    Abstract: Techniques are described for remastering shared resources among nodes in a cluster, while minimizing the number of resources that are unavailable for access (“frozen”) during the remastering operation. Only the resources that are being remastered from one node to one or more other nodes are frozen, whereas the other resources that are not being remastered are not frozen and are, therefore, still accessible. For example, in the context of a database cluster, there is no longer a need to freeze the entire database during a reconfiguration remastering operation. Consequently, during the remastering operation requests for access to the resources that are not being remastered can be processed and locks granted thereon.
    Type: Application
    Filed: June 10, 2004
    Publication date: December 2, 2004
    Applicant: ORACLE INTERNATIONAL CORPORATION
    Inventors: Wilson Wai Shun Chan, Tolga Yurek
  • Patent number: 6751616
    Abstract: Techniques for optimizing a distributed lock manager (DLM) for faster reconfiguration includes using a constant hash function to associate each resource of a plurality of shared resources with a hash value. A hash map is maintained which associates a plurality of hash value ranges with each of one or more master nodes. In response to one or more factors, the hash value ranges are re-mapped to master nodes by revising the hash map without changing the constant hash function. The factors include at least a measure of the amount of lock information or a weight. A weight is associated with each node in the cluster, and is selected from a set of non-uniform master weights.
    Type: Grant
    Filed: January 28, 2000
    Date of Patent: June 15, 2004
    Assignee: Oracle International Corp.
    Inventor: Wilson Wai Shun Chan
  • Patent number: 6697901
    Abstract: Techniques are disclosed for managing access to a set of one or more resources that are accessible to a plurality of entities. In one embodiment, one primary resource master and one or more secondary resource masters are established for a given resource. Each resource master (whether primary or secondary) is assigned to be the master for the resource for a corresponding subgroup of entities of the plurality of entities. Each secondary resource master is assigned to a parent resource master, which may either be the primary resource master or another secondary resource master. Each entity of the plurality of entities, upon seeking access to the resource, requests a lock on the resource from the resource master that is assigned to the subgroup that includes that entity.
    Type: Grant
    Filed: October 24, 2000
    Date of Patent: February 24, 2004
    Assignee: Oracle International Corporation
    Inventor: Wilson Wai Shun Chan
  • Patent number: 6668295
    Abstract: A method and apparatus for managing access to a resource using anticipatory lock conversions in a distributed lock management system is provided. According to the method, when an entity requests a lock on a resource, the entity is granted, if possible, a lock with a more restrictive lock mode than is required if it is determined that the entity may require the more restrictive lock mode in the near future.
    Type: Grant
    Filed: June 10, 2002
    Date of Patent: December 23, 2003
    Assignee: Oracle International Corporation
    Inventor: Wilson Wai Shun Chan
  • Patent number: 6539446
    Abstract: A novel locking approach for managing access to resources generally includes generating and storing duplicate lock data that may be used if the original lock data upon which the duplicate lock data is based is lost or otherwise becomes unavailable. In response to granting a lock on a resource to a first process, lock data is generated that indicates that the lock on the resource was granted to the first process. Duplicate lock data is generated that indicates that the lock on the resource was granted to the first process. When a change is made to the lock data, the duplicate lock data is updated to reflect the change made to the lock data. If the lock data is lost or otherwise becomes unavailable, the duplicate lock data may be used to continue managing access to the resource.
    Type: Grant
    Filed: May 7, 1999
    Date of Patent: March 25, 2003
    Assignee: Oracle Corporation
    Inventor: Wilson Wai Shun Chan
  • Patent number: 6529906
    Abstract: Techniques for optimizing a distributed lock manager (DLM) for faster reconfiguration includes distributing over a cluster of one or more active nodes, management of locks on shared resources. A system hash map is initialized to establish a mapping between a plurality of hash value ranges and one or more master nodes. The management of the locks is initially distributed based on that mapping. The cluster is monitored to gather data during a time interval, including data that identifies how much resource usage is made of resources hashed to each hash value range of the plurality of hash value ranges. It is determined whether a re-mastering event condition is satisfied based on one or more factors. The factors include the resource usage. If the re-mastering event condition is satisfied, a re-mastering event is performed.
    Type: Grant
    Filed: January 28, 2000
    Date of Patent: March 4, 2003
    Assignee: Oracle Corporation
    Inventor: Wilson Wai Shun Chan