Patents by Inventor Angelo Pruscino

Angelo Pruscino 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: 9075650
    Abstract: Systems, methods, and other embodiments associated with avoiding resource blockages and hang states are described. One example computer-implemented method for a computing system includes determining that a first process is waiting for a resource and is in a blocked state. The resource that the first process is waiting for is identified. A blocking process that is holding the resource is then identified. A priority of the blocking process is compared with a priority the first process. If the priority of the blocking process is lower than the priority of the first process, the priority of the blocking process is increased. In this manner the blocking process can be scheduled for execution sooner and thus release the resource.
    Type: Grant
    Filed: April 22, 2013
    Date of Patent: July 7, 2015
    Assignee: ORACLE INTERNATIONAL CORPORATION
    Inventors: Michael Zoll, Angelo Pruscino, Wilson Chan
  • Patent number: 9027025
    Abstract: Techniques for monitoring resources of a computer system are provided. A monitoring process collects and reports utilization data for one or more resources of a computer system, such as CPU, memory, disk I/O, and network I/O. Instead of reporting just an average of the collected data over a period of time (e.g., 10 seconds), the monitoring process at least reports individually collected resource utilization values. If one or more of the utilization values exceed specified thresholds for the respective resources, then an alert may be generated. In one approach, the monitoring process is made a real-time priority process in the computer system to ensure that the memory used by the monitoring process is not swapped out of memory. Also, being a real-time priority process ensures that the monitoring process obtains a CPU in order collect resource utilization data even when the computer system is in a starvation mode.
    Type: Grant
    Filed: April 17, 2007
    Date of Patent: May 5, 2015
    Assignee: Oracle International Corporation
    Inventors: Michael Zoll, Wilson Wai Shun Chan, Angelo Pruscino, Tak Fung Wang
  • Patent number: 8990179
    Abstract: Described herein are techniques for time limited lock ownership. In one embodiment, in response to receiving a request for a lock on a shared resource, the lock is granted and a lock lease period associated with the lock is established. Then, in response to determining that the lock lease period has expired, one or more lock lease expiration procedures are performed. In many cases, the time limited lock ownership may prevent system hanging, timely detect system deadlocks, and/or improve overall performance of the database.
    Type: Grant
    Filed: December 20, 2012
    Date of Patent: March 24, 2015
    Assignee: Oracle International Corporation
    Inventors: Wilson Chan, Angelo Pruscino, Michael Zoll
  • Publication number: 20150040143
    Abstract: The approaches described herein provide support for application specific policies for conventional operating systems. In an embodiment, a kernel module representing a kernel subsystem is executed within an operating system's kernel. The kernel subsystem may be configured to respond to particular requests with one or more default actions. Additionally, the kernel subsystem may define a number of sub-modules which represent application specific policies that deviate from the default actions. Each sub-module may define one or more sets of conditions which indicate when the sub-module is applicable to a request and one or more sets of corresponding actions to take when the conditions are met. When an application sends a request to the kernel subsystem, the kernel subsystem determines whether the request meets the conditions of a particular sub-module. If the particular sub-module's conditions are met, the kernel subsystem performs the corresponding actions of the particular sub-module.
    Type: Application
    Filed: September 15, 2014
    Publication date: February 5, 2015
    Inventors: FREDERICK S. GLOVER, DIANE LEBEL, THOMAS J. ENGLE, ANGELO PRUSCINO
  • Patent number: 8839272
    Abstract: The approaches described herein provide support for application specific policies for conventional operating systems. In an embodiment, a kernel module representing a kernel subsystem is executed within an operating system's kernel. The kernel subsystem may be configured to respond to particular requests with one or more default actions. Additionally, the kernel subsystem may define a number of sub-modules which represent application specific policies that deviate from the default actions. Each sub-module may define one or more sets of conditions which indicate when the sub-module is applicable to a request and one or more sets of corresponding actions to take when the conditions are met. When an application sends a request to the kernel subsystem, the kernel subsystem determines whether the request meets the conditions of a particular sub-module. If the particular sub-module's conditions are met, the kernel subsystem performs the corresponding actions of the particular sub-module.
    Type: Grant
    Filed: April 18, 2012
    Date of Patent: September 16, 2014
    Assignee: Oracle International Corporation
    Inventors: Frederick S. Glover, Diane Lebel, Thomas J. Engle, Angelo Pruscino
  • Publication number: 20140258254
    Abstract: A method, system, and computer program product for analyzing performance of a database cluster. Disclosed are techniques for analyzing performance of components of a database cluster by transforming many discrete event measurements into a time series to identify dominant signals. The method embodiment commences by sampling the database cluster to produce a set of timestamped events, then pre-processing the timestamped events by tagging at least some of the timestamped events with a semantic tag drawn from a semantic dictionary and formatting the set of timestamped events into a time series where a time series entry comprises a time indication and a plurality of values corresponding to signal state values. Further techniques are disclosed for identifying certain signals from the time series to which is applied various statistical measurement criteria in order to isolate a set of candidate signals which are then used to identify indicative causes of database cluster behavior.
    Type: Application
    Filed: March 8, 2013
    Publication date: September 11, 2014
    Applicant: ORACLE INTERNATIONAL CORPORATION
    Inventors: Yaser Ib SULEIMAN, Michael ZOLL, Angelo PRUSCINO
  • Publication number: 20140258187
    Abstract: A method, system, and computer program product for generating database cluster health alerts using machine learning. A first database cluster known to be operating normally is measured and modeled using machine learning techniques. A second database cluster is measured and compared to the learned model. More specifically, the method collects a first set of empirically-measured variables of a first database cluster, and using the first set of empirically-measured variables a mathematical behavior predictor model is generated. Then, after collecting a second set of empirically-measured variables of a second database cluster over a plurality of second time periods, the mathematical behavior predictor model classifies the observed behavior. The classified behavior might be deemed to be normal behavior, or some form of abnormal behavior. The method forms and report alerts when the classification deemed to be anomalous behavior, or fault behavior.
    Type: Application
    Filed: March 8, 2013
    Publication date: September 11, 2014
    Applicant: ORACLE INTERNATIONAL CORPORATION
    Inventors: Yaser Ib SULEIMAN, Michael ZOLL, Angelo PRUSCINO
  • Patent number: 8660816
    Abstract: A system, method, and computer program product are described for distinguishing between a computing system that is hung in a hang state and systems that are in an idle or otherwise non-hang state which do not need intervention before regaining the ability to adequately process work. According to some approaches, heuristics are employed to perform hang and idle system detection and validation. Data representative of systems resources are analyzed and transformed in order to identify systems that are in a hang state.
    Type: Grant
    Filed: May 7, 2009
    Date of Patent: February 25, 2014
    Assignee: Oracle International Corporation
    Inventors: Joy Mukherjee, Angelo Pruscino, Sunil Kumar, Sujeet Kumar, Anuj Tripathi, Macharapu Sai Prasanth
  • Publication number: 20130283295
    Abstract: The approaches described herein provide support for application specific policies for conventional operating systems. In an embodiment, a kernel module representing a kernel subsystem is executed within an operating system's kernel. The kernel subsystem may be configured to respond to particular requests with one or more default actions. Additionally, the kernel subsystem may define a number of sub-modules which represent application specific policies that deviate from the default actions. Each sub-module may define one or more sets of conditions which indicate when the sub-module is applicable to a request and one or more sets of corresponding actions to take when the conditions are met. When an application sends a request to the kernel subsystem, the kernel subsystem determines whether the request meets the conditions of a particular sub-module. If the particular sub-module's conditions are met, the kernel subsystem performs the corresponding actions of the particular sub-module.
    Type: Application
    Filed: April 18, 2012
    Publication date: October 24, 2013
    Inventors: Frederick S. Glover, Diane Lebel, Thomas J. Engle, Angelo Pruscino
  • Patent number: 8549002
    Abstract: Systems, methods, and other embodiments associated with producing a proximity display of correlated load metrics associated with members of a cluster are described. One example method includes acquiring metrics data (e.g., load data) from nodes in a cluster. The example method may also include determining a cluster element state based on the metrics data and determining relationships between members of the set of related cluster elements. The method may also include identifying element metric representations for cluster elements based on cluster element states and identifying locations on a proximity display at which element metric representations are to be displayed. The locations may depend on relationships between cluster element states. The method may also include displaying element metric representations at the computed locations to produce a proximity display of correlated load metrics.
    Type: Grant
    Filed: May 15, 2008
    Date of Patent: October 1, 2013
    Assignee: Oracle International Corporation
    Inventors: Thomas Herter, Angelo Pruscino
  • Publication number: 20130232496
    Abstract: Systems, methods, and other embodiments associated with avoiding resource blockages and hang states are described. One example computer-implemented method for a computing system includes determining that a first process is waiting for a resource and is in a blocked state. The resource that the first process is waiting for is identified. A blocking process that is holding the resource is then identified. A priority of the blocking process is compared with a priority the first process. If the priority of the blocking process is lower than the priority of the first process, the priority of the blocking process is increased. In this manner the blocking process can be scheduled for execution sooner and thus release the resource.
    Type: Application
    Filed: April 22, 2013
    Publication date: September 5, 2013
    Applicant: ORACLE INTERNATIONAL CORPORATION
    Inventors: Michael ZOLL, Angelo PRUSCINO, Wilson CHAN
  • Patent number: 8510334
    Abstract: A method and apparatus for managing shared resources in a clustered database management system is provided. In an embodiment, multiple master nodes exist in a database management system. A master node receives a lock request from a second node. The lock request is a request for a lock on a shared resource. The master node grants the lock request to the second node. While the second node holds the lock, the second node causes the master node to modify the shared resource.
    Type: Grant
    Filed: November 5, 2009
    Date of Patent: August 13, 2013
    Assignee: Oracle International Corporation
    Inventors: Wilson Wai Shun Chan, Angelo Pruscino
  • Publication number: 20130185270
    Abstract: A method for locking resources, including: receiving, by an accelerator, a first request from a first client to lock a first resource; evaluating, by a computer processor of a server, a hash function using an identifier of the first resource as an input to the hash function; identifying, by the computer processor and based on evaluating the hash function, a first hash bucket in a shared memory residing in a physical memory of the server; detecting that the first hash bucket is occupied; and sending the first request to a master lock monitor residing in a user space of the server based at least on detecting that the first hash bucket is occupied.
    Type: Application
    Filed: January 13, 2012
    Publication date: July 18, 2013
    Applicant: ORACLE INTERNATIONAL CORPORATION
    Inventors: David Brower, Angelo Pruscino, Wilson Chan, Tak Fung Wang
  • Patent number: 8429657
    Abstract: Systems, methods, and other embodiments associated with avoiding resource blockages and hang states are described. One example computer-implemented method for a clustered computing system includes determining that a first process is waiting for a resource and is in a blocked state. The resource that the first process is waiting for is identified. A blocking process that is holding the resource is then identified. A priority of the blocking process is compared with a priority the first process. If the priority of the blocking process is lower than the priority of the first process, the priority of the blocking process is increase. In this manner the blocking process can be scheduled for execution sooner and thus release the resource.
    Type: Grant
    Filed: April 28, 2008
    Date of Patent: April 23, 2013
    Assignee: Oracle International Corporation
    Inventors: Michael Zoll, Angelo Pruscino, Wilson Chan
  • Patent number: 8370318
    Abstract: Described herein are techniques for time limited lock ownership. In one embodiment, in response to receiving a request for a lock on a shared resource, the lock is granted and a lock lease period associated with the lock is established. Then, in response to determining that the lock lease period has expired, one or more lock lease expiration procedures are performed. In many cases, the time limited lock ownership may prevent system hanging, timely detect system deadlocks, and/or improve overall performance of the database.
    Type: Grant
    Filed: December 19, 2008
    Date of Patent: February 5, 2013
    Assignee: Oracle International Corporation
    Inventors: Wilson Chan, Angelo Pruscino, Michael Zoll
  • Patent number: 8365177
    Abstract: Measuring processes are started at a plurality of priority levels. A different one of the measuring processes is started for each of the priority levels. Subsequently, for each of the measuring processes, it is determined whether each measuring process is scheduled for executing at a respective target rate. In response to determining that a particular measuring process of the measuring processes is not scheduled for executing at a particular target rate, resource allocation to at least one monitored process running at a particular level of the priority levels is adjusted. The at least one monitored process is not any of the measuring processes.
    Type: Grant
    Filed: January 20, 2009
    Date of Patent: January 29, 2013
    Assignee: Oracle International Corporation
    Inventors: Wilson Chan, Angelo Pruscino, Ahmed S. Abbas, Tak Fung Wang
  • Patent number: 8266479
    Abstract: Described herein are techniques for dynamically monitoring process activeness of processes running on a computing node. Problems affecting processes to serve their designated functions on the computing node can be relatively quickly detected and dealt with, thereby making restoring process activeness on the computing node much more quickly than otherwise.
    Type: Grant
    Filed: April 6, 2009
    Date of Patent: September 11, 2012
    Assignee: Oracle International Corporation
    Inventors: Wilson Chan, Cheng-Lu Hsu, Angelo Pruscino
  • Patent number: 8234517
    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 recovering the data owned by a failed node using multiple recovery nodes operating in parallel. The data owned by a failed node is reassigned to recovery nodes that have access to the shared disk on which the data resides. The recovery logs of the failed node are read by the recovery nodes, or by a coordinator process that distributes the recovery tasks to the recovery nodes.
    Type: Grant
    Filed: April 23, 2004
    Date of Patent: July 31, 2012
    Assignee: Oracle International Corporation
    Inventors: Roger J. Bamford, Sashikanth Chandrasekaran, Angelo Pruscino
  • Patent number: 8220001
    Abstract: Described herein are techniques for adaptively managing timers that are used in various layers of a node. In many cases, the number of timers that occur in the system is reduced by proactively and reactively adjusting values of the timers based on conditions affecting the system, thereby making such a system to perform significantly better and more resiliently than otherwise.
    Type: Grant
    Filed: February 13, 2009
    Date of Patent: July 10, 2012
    Assignee: Oracle International Corporation
    Inventors: Wilson Chan, Deepti Srivastava, Tolga Yurek, Yu Kin Ho, John Hsu, Tak Fung Wang, Angelo Pruscino
  • Patent number: 8169856
    Abstract: Techniques are described herein for synchronizing cluster time. According to one technique, a master node is appointed in a cluster. Other “slave” nodes periodically synchronize their clocks with the master node. To synchronize its clock with the master node, a slave node sends a timestamped message to the master node, which also timestamps the message and sends the message back to the slave node, which then timestamps the message again. Based on the timestamps, the slave node is able to determine the difference between the master node's clock's time and slave node's clock's time, compensating for the message travel time between master node and slave node. Depending on various circumstances, and based on the determined difference, the slave node adjusts its clock so that the time indicated by the slave node's clock at least begins to approach more closely the time indicated by the master node's clock.
    Type: Grant
    Filed: October 24, 2008
    Date of Patent: May 1, 2012
    Assignee: Oracle International Corporation
    Inventors: Vikram Rai, Alok Srivastava, Angelo Pruscino, Sameer Joshi