Patents by Inventor Robert B. Hagmann

Robert B. Hagmann 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: 8539502
    Abstract: The present invention provides a method for obtaining predicable and repeatable output results in a continuous processing system. The method involves processing messages and primitives in accordance with the following rules: (1) Messages are processed in accordance with timestamps, where messages are divided up into “time slices”; (2) message order within a data stream is preserved among messages with the same time stamp; (3) subject to rule #4, for each time slice, a primitive is executed when either the messages within such time slice show up in the input stream for such primitive or the state of the window immediately preceding such primitive changes due to messages within such time slice; and (4) for each time slice, primitives that are dependent on one or more upstream primitives are not executed until such upstream primitives have finished executing messages in such time slice that are queued for processing.
    Type: Grant
    Filed: April 18, 2007
    Date of Patent: September 17, 2013
    Assignee: Sybase, Inc.
    Inventors: Aleksey Sanin, Mark Tsimelzon, Ian D. Marshall, Robert B. Hagmann
  • Patent number: 8046744
    Abstract: The present invention provides a system and method for measuring latency in a continuous processing system. The invention involves generating “tracer” messages that are specifically designed for measuring latency. A tracer message is configured to pass through and be outputted by each primitive in the tracer message's path regardless of the function of the primitive and without changing the state of the primitive. Tracer messages are not filtered by filter primitives or delayed by time-delay primitives. Tracer messages are detected and discarded within loops. These rules provide for predictable behavior of tracer messages, thereby making them reliable indicators of latency and liveness in the continuous processing system. A tracer message is inserted into the continuous processing system at a desired start point for measuring latency. At a desired end point for measuring latency, latency is measured by calculating the amount of time the tracer message took to travel from the start point to the end point.
    Type: Grant
    Filed: April 23, 2008
    Date of Patent: October 25, 2011
    Assignee: Sybase, Inc.
    Inventors: Ian D. Marshall, Aleksey Sanin, Mark Tsimelzon, Robert B. Hagmann
  • Patent number: 7818313
    Abstract: A method, in a continuous computation system, for processing a set of registered queries over a cluster of servers includes creating an execution plan for processing a set of queries over a cluster of servers, where the continuous computation system creates the execution plan by analyzing the semantics and requirements of the queries to determine how to distribute processing across the cluster. Analysis of a query can include determining whether input messages for the query can be processed independent of each other, whether input messages for the query can be partitioned into groups that can be processed independent of each other, whether the query includes an aggregator function, and whether the query includes a subquery.
    Type: Grant
    Filed: July 14, 2006
    Date of Patent: October 19, 2010
    Assignee: Sybase, Inc.
    Inventors: Mark Tsimelzon, Aleksey Sanin, Robert B. Hagmann
  • Patent number: 6769125
    Abstract: A number of methods, apparatus, and data structures are disclosed for managing computer processes. In one aspect, a daemon process which manages server processes includes an active server table and a locator service. The locator service can look up and register server processes in the active server table. Furthermore, the locator service can start up server processes. In some embodiments, the locator service includes a look-up object and a server process registration object which perform the tasks of the locator service. In other embodiments, methods for managing server process such as starting and registering the server processes are taught. In one specific method, a daemon process performs a variety of steps in response to receiving a look-up call for a target object. These steps include obtaining a server identifier for the target object, determining the state of a server process, and returning addressing information corresponding to the server process under which the target object will activate.
    Type: Grant
    Filed: September 28, 2001
    Date of Patent: July 27, 2004
    Assignee: Sun Microsystems, Inc.
    Inventors: Anthony W. Menges, Kenneth M. Cavanaugh, III, David M. Brownell, Robert B. Hagmann, Dwight F. Hare, Peter Vanderbilt
  • Patent number: 6353860
    Abstract: A variety of methods, apparatus and data structures for managing collections of objects are described. In one aspect of the invention, an object that is intended for use in a distributed object operating environment has a structure including a group designation, a co-activation designation and a co-process designation. The group designation is arranged to identify a group to which the object belongs. The group is defined as a collection of objects which share a common persistent state. The co-activation designation is arranged to identify a co-activation set to which the object belongs. The co-activation set is a collection of objects which are to be activated at the same time. The co-process designation is arranged to identify a co-process set to which the object belongs. The co-process set is a collection of objects which are to be activated within a single process.
    Type: Grant
    Filed: December 23, 1997
    Date of Patent: March 5, 2002
    Assignee: Sun Microsystems, Inc.
    Inventors: Dwight F. Hare, Robert B. Hagmann, Michael L. Powell, Alan Snyder, Peter Vanderbilt
  • Patent number: 6349342
    Abstract: A number of methods, apparatus, and data structures are disclosed for managing computer processes. In one aspect, a daemon process which manages server processes includes an active server table and a locator service. The locator service can look up and register server processes in the active server table. Furthermore, the locator service can start up server processes. In some embodiments, the locator service includes a look-up object and a server process registration object which perform the tasks of the locator service. In other embodiments, methods for managing server process such as starting and registering the server processes are taught. In one specific method, a daemon process performs a variety of steps in response to receiving a look-up call for a target object. These steps include obtaining a server identifier for the target object, determining the state of a server process, and returning addressing information corresponding to the server process under which the target object will activate.
    Type: Grant
    Filed: April 11, 1997
    Date of Patent: February 19, 2002
    Assignee: Sun Microsystems, Inc.
    Inventors: Anthony W. Menges, Kenneth M. Cavanaugh, III, David M. Brownell, Robert B. Hagmann, Dwight F. Hare, Peter Vanderbilt
  • Publication number: 20020016866
    Abstract: A number of methods, apparatus, and data structures are disclosed for managing computer processes. In one aspect, a daemon process which manages server processes includes an active server table and a locator service. The locator service can look up and register server processes in the active server table. Furthermore, the locator service can start up server processes. In some embodiments, the locator service includes a look-up object and a server process registration object which perform the tasks of the locator service. In other embodiments, methods for managing server process such as starting and registering the server processes are taught. In one specific method, a daemon process performs a variety of steps in response to receiving a look-up call for a target object. These steps include obtaining a server identifier for the target object, determining the state of a server process, and returning addressing information corresponding to the server process under which the target object will activate.
    Type: Application
    Filed: September 28, 2001
    Publication date: February 7, 2002
    Applicant: Sun Microsystems, Inc.
    Inventors: Anthony W. Menges, Kenneth M. Cavanaugh, David M. Brownell, Robert B. Hagmann, Dwight E. Hare, Peter Vanderbilt
  • Patent number: 5481715
    Abstract: An apparatus and a method are disclosed whereby a client application can use a trusted "Deputy" application to execute operation calls on several servers on behalf of the client, the Deputy application being able to convince the servers that the deputy application is representing the original client application, and the client thereby reducing the risk of being contaminated by uncontrolled access to an unknown server, while at the same time being able to obtain the desired processing results regardless of the number or location of servers involved in providing the results. The Deputy application is authenticated by the server as representing a user, not a user on a predetermined workstation or as a predetermined member of a particular work group.
    Type: Grant
    Filed: December 15, 1993
    Date of Patent: January 2, 1996
    Assignee: Sun Microsystems, Inc.
    Inventors: Graham Hamilton, Robert B. Hagmann