Patents by Inventor Alan Downing

Alan Downing 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: 9792349
    Abstract: A method and apparatus for an in-database sharded queue that supports JMS session ordering is provided. Messages from a plurality of enqueuers are stored in a plurality of shards of a particular queue. For each enqueuer, all messages are stored in only one of the shards. Each shard includes one or more subshards, each subshard having one or more partitions of a queue table maintained by a relational database system. All messages from a first enqueuer are stored in partitions of the queue table that are assigned to a first shard of the plurality of shards. All messages from a second enqueuer are stored in partitions of the queue table that are assigned to a second shard of the plurality of shards. Subscribers of the particular queue are caused to dequeue messages from the plurality of shards.
    Type: Grant
    Filed: December 3, 2013
    Date of Patent: October 17, 2017
    Assignee: Oracle International Corporation
    Inventors: Shubha Bose, Devendra Singh, Neerja Bhatt, Sujatha Janardhanan, Gaurav Garg, Yang Seok Ki, Abhishek Saxena, Alan Downing
  • Publication number: 20140372486
    Abstract: A method and apparatus for an in-database sharded queue that supports JMS session ordering is provided. Messages from a plurality of enqueuers are stored in a plurality of shards of a particular queue. For each enqueuer, all messages are stored in only one of the shards. Each shard includes one or more subshards, each subshard having one or more partitions of a queue table maintained by a relational database system. All messages from a first enqueuer are stored in partitions of the queue table that are assigned to a first shard of the plurality of shards. All messages from a second enqueuer are stored in partitions of the queue table that are assigned to a second shard of the plurality of shards. Subscribers of the particular queue are caused to dequeue messages from the plurality of shards.
    Type: Application
    Filed: December 3, 2013
    Publication date: December 18, 2014
    Applicant: Oracle International Corporation
    Inventors: Shubha Bose, Devendra Singh, Neerja Bhatt, Sujatha Janardhanan, Gaurav Garg, Yang Seok Ki, Abhishek Saxena, Alan Downing
  • Patent number: 8196150
    Abstract: An approach for reducing transport of messages between nodes of a multi-node system is presented wherein a message queue is associated with a queue service, and based on which node the message queue resides, one of the nodes is registered as hosting the associated queue service. In response to a client attempting to connect and requesting a particular queue service, the client is caused to connect to the node on which the queue service resides.
    Type: Grant
    Filed: October 7, 2005
    Date of Patent: June 5, 2012
    Assignee: Oracle International Corporation
    Inventors: Alan Downing, Krishnan Meiyyappan, James Stamos, Ramkumar Venkatesan
  • Patent number: 8161085
    Abstract: Approaches described herein may be used for provisioning of databases that requires a bulk transfer of data within a distributed computing environment, such as a grid. The approaches do not require the manual intervention of a DBA to, for example, transfer a tablespace between the file systems of operating systems. Instead, the tablespaces may be provisioned automatically and dynamically by a grid computing system whenever it determines the need to dynamically provision a database. In addition, as copies of tablespaces are provisioned, synchronization mechanisms can also be automatically provisioned to keep the tablespaces and their copies in sync.
    Type: Grant
    Filed: October 14, 2010
    Date of Patent: April 17, 2012
    Assignee: Oracle International Corporation
    Inventors: Benny Souder, James Stamos, Lik Wong, John Ciminski, Anand Lakshminath, Alan Downing
  • Patent number: 8078588
    Abstract: Systems and methods for providing a one-step API that executes a series of atomic transactions in a database system. In one implementation, each atomic transaction is associated with a forward block of code that effects changes, an undo block of code that reverses the changes made by the forward block, and a state block of code that mimics successful execution of the forward block by setting internal states. In the event of a failure, the forward blocks, undo blocks, and state blocks can be used to roll forward or roll back changes as a whole. In one implementation, a one-step API for replicating data in a database is provided.
    Type: Grant
    Filed: October 10, 2005
    Date of Patent: December 13, 2011
    Assignee: Oracle International Corporation
    Inventors: Anand Lakshminath, Lik Wong, James Stamos, Alan Downing
  • Publication number: 20110302136
    Abstract: Systems and methods for providing a one-step API that executes a series of atomic transactions in a database system. In one implementation, each atomic transaction is associated with a forward block of code that effects changes, an undo block of code that reverses the changes made by the forward block, and a state block of code that mimics successful execution of the forward block by setting internal states. In the event of a failure, the forward blocks, undo blocks, and state blocks can be used to roll forward or roll back changes as a whole. In one implementation, a one-step API for replicating data in a database is provided.
    Type: Application
    Filed: August 12, 2011
    Publication date: December 8, 2011
    Applicant: ORACLE INTERNATIONAL CORPORATION
    Inventors: Anand LAKSHMINATH, Lik WONG, James STAMOS, Alan Downing
  • Patent number: 7899785
    Abstract: Splitting and merging database object information sharing streams. Streams are also referred to herein as “propagations”. Splitting and merging information sharing streams can be used to improve performance in a information sharing environment when a failed or slow DBS impacts the performance. In one embodiment, an auto split process monitors the progress of applying changes at each node and detects the presence of a failed or a slow node. Once the failed or slow node is identified, the auto split process splits the propagation such that the offending node is sent through a separate propagation. Furthermore, an auto merge process can be started to monitor the newly created separate propagation. At a later point, the new propagation can be merged back into the original stream. For example, if the offending node catches up with other nodes, the auto merge process merges the newly created propagation back to the original propagation.
    Type: Grant
    Filed: July 31, 2007
    Date of Patent: March 1, 2011
    Assignee: Oracle International Corporation
    Inventors: Jun Yuan, Alan Downing, Lik Wong, Nimar Arora, Patricia H. McElroy, Byron Wang, Lei Gao, Anand Lakshminath, Ramkumar Venkatesan
  • Publication number: 20110029585
    Abstract: Approaches described herein may be used for provisioning of databases that requires a bulk transfer of data within a distributed computing environment, such as a grid. The approaches do not require the manual intervention of a DBA to, for example, transfer a tablespace between the file systems of operating systems. Instead, the tablespaces may be provisioned automatically and dynamically by a grid computing system whenever it determines the need to dynamically provision a database. In addition, as copies of tablespaces are provisioned, synchronization mechanisms can also be automatically provisioned to keep the tablespaces and their copies in sync.
    Type: Application
    Filed: October 14, 2010
    Publication date: February 3, 2011
    Applicant: ORACLE INTERNATIONAL CORPORATION
    Inventors: Benny Souder, James Stamos, Lik Wong, John Ciminski, Anand Lakshminath, Alan Downing
  • Patent number: 7873684
    Abstract: Approaches described herein may be used for provisioning of databases that requires a bulk transfer of data within a distributed computing environment, such as a grid. The approaches do not require the manual intervention of a DBA to, for example, transfer a tablespace between the file systems of operating systems. Instead, the tablespaces may be provisioned automatically and dynamically by a grid computing system whenever it determines the need to dynamically provision a database. In addition, as copies of tablespaces are provisioned, synchronization mechanisms can also be automatically provisioned to keep the tablespaces and their copies in sync.
    Type: Grant
    Filed: November 21, 2003
    Date of Patent: January 18, 2011
    Assignee: Oracle International Corporation
    Inventors: Benny Souder, James Stamos, Lik Wong, John Ciminski, Anand Lakshminath, Alan Downing
  • Patent number: 7856461
    Abstract: Techniques are provided for maintaining high propagation availability for non-persistent messages. Destination-to-instance mapping information is provided to a listener process for a cluster database. The destination-to-instance mapping indicates the current owner instance of each single-instance destination within the cluster database. To establish a connection to a single-instance destination, a sending process sends a connection request to the global listener. The connection request identifies the desired destination queue, but not the owner instance of the queue. The global listener for the cluster database uses the destination-to-instance mapping to determine which instance is the current owner of the specified queue, and establishes a connection between the sending process and the appropriate owner instance.
    Type: Grant
    Filed: September 12, 2005
    Date of Patent: December 21, 2010
    Assignee: Oracle International Corporation
    Inventors: Ramkumar Venkatesan, Krishnan Meiyyappan, Alan Downing, James W. Stamos
  • Patent number: 7814067
    Abstract: Techniques are disclosed for sharing information in a wide variety of contexts. An information sharing system is described that allows both an explicit capture process and an implicit capture process to add information items to a staging area. Further, the information sharing system supports both implicit and explicit consumption of information items that are stored in said staging area. A rules engine is provided to allow users to create and register rules that customize the behavior of the capture processes, the consuming processes, and propagation processes that propagate information from the staging areas to designated destinations. Techniques are also described for achieving exactly-once handling of sequence of items, where the items are maintained in volatile memory. Techniques are also provided for recording DDL operations, and for asynchronously performing operations based on the previously-performed DDL operations.
    Type: Grant
    Filed: January 12, 2005
    Date of Patent: October 12, 2010
    Assignee: Oracle International Corporation
    Inventors: Benny Souder, Dieter Gawlick, Jim Stamos, Alan Downing
  • Patent number: 7702741
    Abstract: Configuring an n-way multi-master information sharing topology. Adding a new node (e.g., database server) to the information sharing topology can be implemented as follows. Initially, the new node is added as a slave of a particular co-master in the information sharing topology. The objects to replicate are instantiated on the new node by propagating data from the particular co-master to the new node. Furthermore, a capture process is created on the particular co-master to send changes to the objects to the slave. Meanwhile, the co-masters continue to propagate changes to each other. To promote the slave to a master, changes to objects stored at the slave are propagated to each of the co-masters. Furthermore, changes at each of the masters are propagated to the promoted node.
    Type: Grant
    Filed: July 31, 2007
    Date of Patent: April 20, 2010
    Assignee: Oracle International Corporation
    Inventors: Jun Yuan, Alan Downing, Lik Wong, Nimar Arora, Patricia H. McElroy, Byron Wang, Lei Gao, Anand Lakshminath, Ramkumar Venkatesan
  • Publication number: 20090037553
    Abstract: Configuring an n-way multi-master information sharing topology. Adding a new node (e.g., database server) to the information sharing topology can be implemented as follows. Initially, the new node is added as a slave of a particular co-master in the information sharing topology. The objects to replicate are instantiated on the new node by propagating data from the particular co-master to the new node. Furthermore, a capture process is created on the particular co-master to send changes to the objects to the slave. Meanwhile, the co-masters continue to propagate changes to each other. To promote the slave to a master, changes to objects stored at the slave are propagated to each of the co-masters. Furthermore, changes at each of the masters are propagated to the promoted node.
    Type: Application
    Filed: July 31, 2007
    Publication date: February 5, 2009
    Inventors: Jun Yuan, Alan Downing, Lik Wong, Nimar Arora, Patricia H. McElroy, Byron Wang, Lei Gao, Anand Lakshminath, Ramkumar Venkatesan
  • Publication number: 20090037442
    Abstract: Splitting and merging database object information sharing streams. Streams are also referred to herein as “propagations”. Splitting and merging information sharing streams can be used to improve performance in a information sharing environment when a failed or slow DBS impacts the performance. In one embodiment, an auto split process monitors the progress of applying changes at each node and detects the presence of a failed or a slow node. Once the failed or slow node is identified, the auto split process splits the propagation such that the offending node is sent through a separate propagation. Furthermore, an auto merge process can be started to monitor the newly created separate propagation. At a later point, the new propagation can be merged back into the original stream. For example, if the offending node catches up with other nodes, the auto merge process merges the newly created propagation back to the original propagation.
    Type: Application
    Filed: July 31, 2007
    Publication date: February 5, 2009
    Inventors: Jun Yuan, Alan Downing, Lik Wong, Nimar Arora, Patricia H. McElroy, Byron Wang, Lei Gao, Anand Lakshminath, Ramkumar Venkatesan
  • Publication number: 20070101341
    Abstract: An approach for reducing transport of messages between nodes of a multi-node system is presented wherein a message queue is associated with a queue service, and based on which node the message queue resides, one of the nodes is registered as hosting the associated queue service. In response to a client attempting to connect and requesting a particular queue service, the client is caused to connect to the node on which the queue service resides.
    Type: Application
    Filed: October 7, 2005
    Publication date: May 3, 2007
    Applicant: ORACLE INTERNATIONAL CORPORATION
    Inventors: Alan Downing, Krishnan Meiyyappan, James Stamos, Ramkumar Venkatesan
  • Publication number: 20070083530
    Abstract: Systems and methods for providing a one-step API that executes a series of atomic transactions in a database system. In one implementation, each atomic transaction is associated with a forward block of code that effects changes, an undo block of code that reverses the changes made by the forward block, and a state block of code that mimics successful execution of the forward block by setting internal states. In the event of a failure, the forward blocks, undo blocks, and state blocks can be used to roll forward or roll back changes as a whole. In one implementation, a one-step API for replicating data in a database is provided.
    Type: Application
    Filed: October 10, 2005
    Publication date: April 12, 2007
    Applicant: ORACLE INTERNATIONAL CORPORATION
    Inventors: Anand Lakshminath, Lik Wong, James Stamos, Alan Downing
  • Publication number: 20070061444
    Abstract: Techniques are provided for maintaining high propagation availability for non-persistent messages. Destination-to-instance mapping information is provided to a listener process for a cluster database. The destination-to-instance mapping indicates the current owner instance of each single-instance destination within the cluster database. To establish a connection to a single-instance destination, a sending process sends a connection request to the global listener. The connection request identifies the desired destination queue, but not the owner instance of the queue. The global listener for the cluster database uses the destination-to-instance mapping to determine which instance is the current owner of the specified queue, and establishes a connection between the sending process and the appropriate owner instance.
    Type: Application
    Filed: September 12, 2005
    Publication date: March 15, 2007
    Inventors: Ramkumar Venkatesan, Krishnan Meiyyappan, Alan Downing, James Stamos
  • Publication number: 20050125430
    Abstract: Techniques are disclosed for sharing information in a wide variety of contexts. An information sharing system is described that allows both an explicit capture process and an implicit capture process to add information items to a staging area. Further, the information sharing system supports both implicit and explicit consumption of information items that are stored in said staging area. A rules engine is provided to allow users to create and register rules that customize the behavior of the capture processes, the consuming processes, and propagation processes that propagate information from the staging areas to designated destinations. Techniques are also described for achieving exactly-once handling of sequence of items, where the items are maintained in volatile memory. Techniques are also provided for recording DDL operations, and for asynchronously performing operations based on the previously-performed DDL operations.
    Type: Application
    Filed: January 12, 2005
    Publication date: June 9, 2005
    Applicant: ORACLE INTERNATIONAL CORPORATION
    Inventors: Benny Souder, Dieter Gawilick, Jim Stamos, Alan Downing
  • Patent number: 6889231
    Abstract: Techniques for sharing information in a wide variety of contexts allows both an explicit capture process and an implicit capture process to add information items to a staging area. An information sharing system supports both implicit and explicit consumption of information items that are stored in the staging area. A rules engine allows users to create and register rules that customize the behavior of the capture processes, the consuming processes, and propagation processes that propagate information from the staging areas to designated destinations. Exactly-once handling of sequence of items is achieved for items maintained in volatile memory. DDL operations are recorded, and operations are asynchronously performed based on the previously-performed DDL operations.
    Type: Grant
    Filed: December 2, 2002
    Date of Patent: May 3, 2005
    Assignee: Oracle International Corporation
    Inventors: Benny Souder, Dieter Gawlick, Jim Stamos, Alan Downing
  • Publication number: 20050038831
    Abstract: Approaches described herein may be used for provisioning of databases that requires a bulk transfer of data within a distributed computing environment, such as a grid. The approaches do not require the manual intervention of a DBA to, for example, transfer a tablespace between the file systems of operating systems. Instead, the tablespaces may be provisioned automatically and dynamically by a grid computing system whenever it determines the need to dynamically provision a database. In addition, as copies of tablespaces are provisioned, synchronization mechanisms can also be automatically provisioned to keep the tablespaces and their copies in sync.
    Type: Application
    Filed: November 21, 2003
    Publication date: February 17, 2005
    Applicant: ORACLE INTERNATIONAL CORPORATION
    Inventors: Benny Souder, James Stamos, Lik Wong, John Ciminski, Anand Lakshminath, Alan Downing