Patents by Inventor David Granshaw

David Granshaw 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: 9736103
    Abstract: Embodiments of the present invention provide a method, system and computer program product for dynamic, granular messaging persistence in a messaging system. In an embodiment of the invention, a method for dynamic, granular messaging persistence in a messaging system is provided. The method includes monitoring operational performance of a message broker and receiving a message for queuing in a message queue of the message broker. The method also includes parsing the message to extract different fields and corresponding priorities and selectively storing in fixed storage, data for corresponding ones of the different fields based upon consideration of corresponding ones of the priorities and the monitored operational performance. Finally, the method includes queuing the message in the message queue.
    Type: Grant
    Filed: January 8, 2016
    Date of Patent: August 15, 2017
    Assignee: International Business Machines Corporation
    Inventors: David Granshaw, Sam T. Massey, Daniel McGinnes, Martin Ross, Richard Schofield, Craig Stirling
  • Publication number: 20170228256
    Abstract: Allocating threads to processors based, at least in part, on identifiers for thread sets and applications. A thread is paired with an application and, using the identifier for the application, an ID pairing is allocated to a processor.
    Type: Application
    Filed: February 5, 2016
    Publication date: August 10, 2017
    Inventors: David Granshaw, Samuel T. Massey, Daniel J. McGinnes, Martin A. Ross, Richard G. Schofield, Craig H. Stirling
  • Publication number: 20170208121
    Abstract: Managing a system comprising a pool of servers including a number of active servers. Utilization of the system capacity is monitored, in which the utilization results from a workload of the number of active servers. Upon detecting a critical utilization of the system capacity during the monitoring of the utilization of the system capacity, a duration of the detected critical utilization of the system capacity is predicted from a monitoring history of the utilization of the system capacity. Further, the number of active servers is increased, if the predicted duration exceeds a defined threshold. Tuning measures may also be deployed to handle surges in capacity utilization.
    Type: Application
    Filed: January 20, 2016
    Publication date: July 20, 2017
    Inventors: David Granshaw, Daniel J. McGinnes, Samuel T. Massey, Martin A. Ross, Richard Graham Schofield, Craig H. Stirling
  • Patent number: 9674069
    Abstract: A messaging system comprises a plurality of connected components and including a schema defining fields for messages, at least one field defined as non-essential. A mechanism for operating the messaging system comprises the steps of collecting one or more performance metrics for one or more components of the messaging system, determining that at least one performance metric has crossed a predetermined threshold, informing one or more components of the messaging system that a surge in workload has occurred, and the informed components removing non-essential fields from transmitted messages and/or not processing non-essential fields from received messages.
    Type: Grant
    Filed: October 7, 2014
    Date of Patent: June 6, 2017
    Assignee: International Business Machines Corporation
    Inventors: David Granshaw, Samuel T. Massey, Daniel J. McGinnes, Martin A. Ross, Richard G. Schofield, Craig H. Stirling
  • Publication number: 20170149705
    Abstract: A messaging system comprises a plurality of connected components and including a schema defining fields for messages, at least one field defined as non-essential. A mechanism for operating the messaging system comprises the steps of collecting one or more performance metrics for one or more components of the messaging system, determining that at least one performance metric has crossed a predetermined threshold, informing one or more components of the messaging system that a surge in workload has occurred, and the informed components removing non-essential fields from transmitted messages and/or not processing non-essential fields from received messages.
    Type: Application
    Filed: February 8, 2017
    Publication date: May 25, 2017
    Inventors: David Granshaw, Samuel T. Massey, Daniel J. McGinnes, Martin A. Ross, Richard G. Schofield, Craig H. Stirling
  • Patent number: 9569285
    Abstract: A method and system for message handling wherein a structured message is transmitted as a reduced message with the structure removed. The method includes: monitoring messages to be transmitted, the step of monitoring comprising: for each message, identifying one or more elements within the message and identifying the format of content and/or structure encapsulated by those elements; determining the probability that a message will conform to a previously identified format; and using the determined probability to decide when to transmit a format template for the message, wherein the format template is for use by a destination to add the structure removed by a message source back into the message.
    Type: Grant
    Filed: February 14, 2011
    Date of Patent: February 14, 2017
    Assignee: International Business Machines Corporation
    Inventors: William Bittles, David Granshaw, John B. Pickering
  • Patent number: 9524747
    Abstract: Embodiments relate to controlling persisting of data to disk for use with a messaging system including an application operable for generating and sending a message to a destination. An aspect is an apparatus, which includes a comparator operable to determine whether the message includes common data, and an extractor, responsive to a determination that the message includes common data, configured to extract the common data and non-common data from the message. The apparatus also includes a persistor operable to determine whether the common data have already been persisted to disk. The persistor is operable, in response to a determination that the common data have not already been persisted to disk, to separately persist the common data and the non-common data to disk. The persistor is operable, in response to a determination that the common data have already been persisted to disk, to persist the non-common data to disk.
    Type: Grant
    Filed: July 10, 2013
    Date of Patent: December 20, 2016
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: David Granshaw, Samuel T. Massey, Daniel J. McGinnes, Martin A. Ross, Richard G. Schofield, Craig H. Stirling
  • Patent number: 9477576
    Abstract: A computer captures a thread state data of a first program. The computer generates a second program by applying a first program patch to the first program. The computer inserts additional code into a source code of the second program. The computer executes a first performance test using the second program and the inserted additional code. The computer monitors a first status of the second program and the inserted additional code that are under the first performance test. The computer determines a degree that a first deadlock state was prevented during the first performance test. The computer generates a first message based, at least in part, on the determined degree that the first deadlock state was prevented during the first performance test.
    Type: Grant
    Filed: April 11, 2013
    Date of Patent: October 25, 2016
    Assignee: International Business Machines Corporation
    Inventors: David Granshaw, Samuel T. Massey, Daniel J. McGinnes, Martin A. Ross, Richard G. Schofield, Craig H. Stirling
  • Publication number: 20160299788
    Abstract: Event processing is prioritized based on system workload. A time constraint attribute is defined in an event rule. The event rule uses one or more events. An event processing system is monitored to determine when the system is under a predefined level of stress. If the system is determined to be under the predefined level of stress, the time constraint attribute in the event rule is used to establish when the processing of a received event used in an event rule must be carried out.
    Type: Application
    Filed: June 16, 2016
    Publication date: October 13, 2016
    Inventors: David Granshaw, Samuel T. Massey, Daniel J. McGinnes, Martin A. Ross, Richard G. Schofield, Craig H. Stirling
  • Patent number: 9424546
    Abstract: Event processing is prioritized based on system workload. A time constraint attribute is defined in an event rule. The event rule uses one or more events. An event processing system is monitored to determine when the system is under a predefined level of stress. If the system is determined to be under the predefined level of stress, the time constraint attribute in the event rule is used to establish when the processing of a received event used in an event rule must be carried out.
    Type: Grant
    Filed: June 5, 2014
    Date of Patent: August 23, 2016
    Assignee: International Business Machines Corporation
    Inventors: David Granshaw, Samuel T. Massey, Daniel J. McGinnes, Martin A. Ross, Richard G. Schofield, Craig H. Stirling
  • Patent number: 9386087
    Abstract: A system for workflow placement in a computer system wherein the performance of a system processing a workflow is monitored against one or more performance measures. One or more logic elements from the workflow are delegated for subsequent processing to other systems in the computer system in response to one or more of the one or more performance measures being within a predetermined range.
    Type: Grant
    Filed: March 20, 2014
    Date of Patent: July 5, 2016
    Assignee: International Business Machines Corporation
    Inventors: David Granshaw, Samuel T. Massey, Daniel J. McGinnes, Martin A. Ross, Richard G. Schofield, Craig H. Stirling
  • Publication number: 20160127300
    Abstract: Embodiments of the present invention provide a method, system and computer program product for dynamic, granular messaging persistence in a messaging system. In an embodiment of the invention, a method for dynamic, granular messaging persistence in a messaging system is provided. The method includes monitoring operational performance of a message broker and receiving a message for queuing in a message queue of the message broker. The method also includes parsing the message to extract different fields and corresponding priorities and selectively storing in fixed storage, data for corresponding ones of the different fields based upon consideration of corresponding ones of the priorities and the monitored operational performance. Finally, the method includes queuing the message in the message queue.
    Type: Application
    Filed: January 8, 2016
    Publication date: May 5, 2016
    Inventors: David Granshaw, Sam T. Massey, Daniel McGinnes, Martin Ross, Richard Schofield, Craig Stirling
  • Patent number: 9264310
    Abstract: A method for event processing within a complex event processing environment. The method includes monitoring a plurality of event processing paths of the complex event processing environment. The method includes determining that utilization of server resources in the complex event processing environment has exceeded a threshold value and identifying one or more event processing paths responsible for the high utilization of server resources. The method includes determining that the one or more event processing paths contain an independent rule, wherein an independent rule includes a rule or a rule subset where data for processing of the rule or rule subset is accessible by a client computing device. The method then includes determining the client computing device can perform processing of the independent rule and transferring processing of the independent rule to the client computing device.
    Type: Grant
    Filed: April 12, 2013
    Date of Patent: February 16, 2016
    Assignee: International Business Machines Corporation
    Inventors: David Granshaw, Samuel T. Massey, Daniel J. McGinnes, Martin A. Ross, Richard G. Schofield, Craig H. Stirling
  • Patent number: 9258263
    Abstract: Embodiments of the present invention provide a method, system and computer program product for dynamic, granular messaging persistence in a messaging system. In an embodiment of the invention, a method for dynamic, granular messaging persistence in a messaging system is provided. The method includes monitoring operational performance of a message broker and receiving a message for queuing in a message queue of the message broker. The method also includes parsing the message to extract different fields and corresponding priorities and selectively storing in fixed storage, data for corresponding ones of the different fields based upon consideration of corresponding ones of the priorities and the monitored operational performance. Finally, the method includes queuing the message in the message queue.
    Type: Grant
    Filed: November 29, 2012
    Date of Patent: February 9, 2016
    Assignee: International Business Machines Corporation
    Inventors: David Granshaw, Sam T. Massey, Daniel McGinnes, Martin Ross, Richard Schofield, Craig Stirling
  • Patent number: 9244813
    Abstract: Software is traced using Extensible Markup Language (XML) messages. A trace command, which includes one or more specified fields to be traced and a trace output file location, is defined. A determination is made as to whether the trace command is for a full trace or a differential trace, where the full trace traces all the one or more specified fields, and the differential trace traces specified fields only in response to the specified fields having a value that has changed during processing. The trace command is added to an XML input message for propagation through one or more products. Trace data is collected from the full trace or the differential trace for defined fields at each product, and then stored at the trace output file location.
    Type: Grant
    Filed: January 8, 2015
    Date of Patent: January 26, 2016
    Assignee: International Business Machines Corporation
    Inventors: David Granshaw, Samuel T. Massey, Daniel J. McGinnes, Martin A. Ross, Richard G. Schofield, Craig H. Stirling
  • Publication number: 20150212925
    Abstract: Software is traced using Extensible Markup Language (XML) messages. A trace command, which includes one or more specified fields to be traced and a trace output file location, is defined. A determination is made as to whether the trace command is for a full trace or a differential trace, where the full trace traces all the one or more specified fields, and the differential trace traces specified fields only in response to the specified fields having a value that has changed during processing. The trace command is added to an XML input message for propagation through one or more products. Trace data is collected from the full trace or the differential trace for defined fields at each product, and then stored at the trace output file location.
    Type: Application
    Filed: January 8, 2015
    Publication date: July 30, 2015
    Inventors: DAVID GRANSHAW, SAMUEL T. MASSEY, DANIEL J. MCGINNES, MARTIN A. ROSS, RICHARD G. SCHOFIELD, CRAIG H. STIRLING
  • Publication number: 20150163122
    Abstract: A messaging system comprises a plurality of connected components and including a schema defining fields for messages, at least one field defined as non-essential. A mechanism for operating the messaging system comprises the steps of collecting one or more performance metrics for one or more components of the messaging system, determining that at least one performance metric has crossed a predetermined threshold, informing one or more components of the messaging system that a surge in workload has occurred, and the informed components removing non-essential fields from transmitted messages and/or not processing non-essential fields from received messages.
    Type: Application
    Filed: October 7, 2014
    Publication date: June 11, 2015
    Inventors: David Granshaw, Samuel T. Massey, Daniel J. McGinnes, Martin A. Ross, Richard G. Schofield, Craig H. Stirling
  • Publication number: 20150161098
    Abstract: A computer-implemented method of parsing a message comprising a sequence of data fields, the method comprising evaluating program code for processing the parsed message to identify a first set of data fields of the message that are referenced in said program code; identifying the boundaries of the data fields in a schema defining the format of said message; identifying a second set of data fields in said schema related to the first set of data fields by reference, said second set further including the first set; and sequentially parsing the message using the identified data field boundaries, wherein said parsing step comprises skipping data fields in said sequence that precede the first data field belonging to the second set. A computer program product comprising program code for implementing this method and a data processing system adapted to implement this method are also disclosed.
    Type: Application
    Filed: October 11, 2014
    Publication date: June 11, 2015
    Inventors: David Granshaw, Samuel T. Massey, Daniel J. McGinnes, Martin A. Ross, Richard G. Schofield, Craig H. Stirling
  • Patent number: 8924932
    Abstract: A computer accesses a stack data and a source code of a program. The computer searches for a first change made to the program, wherein the first change is one of a change to a method of the program, a change to a class of the program, a change to a method that is invoked by the program, or a change to a class containing a method that is invoked by the program. The computer identifies the first change that was made to the program and determines the probability that the identified first change caused one or both of an error and a regression. The computer generates a ranked list of identified changes based, at least in part, on the probability that the identified first change caused one or both of an error and a regression.
    Type: Grant
    Filed: April 11, 2013
    Date of Patent: December 30, 2014
    Assignee: International Business Machines Corporation
    Inventors: David Granshaw, Samuel T. Massey, Daniel J. McGinnes, Martin A. Ross, Richard G. Schofield, Craig H. Stirling
  • Publication number: 20140366032
    Abstract: Event processing is prioritized based on system workload. A time constraint attribute is defined in an event rule. The event rule uses one or more events. An event processing system is monitored to determine when the system is under a predefined level of stress. If the system is determined to be under the predefined level of stress, the time constraint attribute in the event rule is used to establish when the processing of a received event used in an event rule must be carried out.
    Type: Application
    Filed: June 5, 2014
    Publication date: December 11, 2014
    Inventors: David Granshaw, Samuel T. Massey, Daniel J. McGinnes, Martin A. Ross, Richard G. Schofield, Craig H. Stirling