Patents by Inventor Tom William Jacopi
Tom William Jacopi 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: 9582314Abstract: Embodiments of the present invention provide a method, system and computer program product for maintaining distributed state consistency in a distributed computing application. In an embodiment of the invention, a method for maintaining distributed state consistency in a distributed computing application can include registering a set of components of a distributed computing application, starting a transaction resulting in changes of state in different ones of the components in the registered set and determining in response to a conclusion of the transaction whether or not an inconsistency of state has arisen amongst the different components in the registered set in consequence of the changes of state in the different ones of the components in the registered set. If an inconsistency has arisen, each of the components in the registered set can be directed to rollback to a previously stored state. Otherwise a committal of state can be directed in each of the components in the registered set.Type: GrantFiled: September 25, 2009Date of Patent: February 28, 2017Assignee: International Business Machines CorporationInventors: Michael Busch, Rajesh M. Desai, Tom William Jacopi, Michael McCandless
-
Patent number: 9020939Abstract: Provided are techniques for invoking with a processor executing on a computer a source code parser to obtain source information that includes a first location of an Application Programming Interface (API) call and parameters of the API call in source code of a client application, where the parameters the API call do not include query text for a query that is to be used to access a database; examining a stack trace to determine a second location of the API call in the stack trace; and deriving the query of the API call and a third location of the query in the source code by identifying the query in the stack trace at the location of the API call in the stack trace.Type: GrantFiled: June 30, 2009Date of Patent: April 28, 2015Assignee: International Business Machines CorporationInventors: Stephen Andrew Brodsky, Zeus Orion Courtois, Tom William Jacopi, Michael Yiupun Kwong, Tony Kai-chi Leung, Sonali Surange
-
Patent number: 8825634Abstract: Provided are techniques for collecting client information for client applications running on a client computer, wherein the client information includes a client application identifier for each client application that issues queries to a database along with text of each of the queries that the client application issues; collecting database monitoring information that includes text of each query issued against the database and performance information for each query; combining the client information and the database monitoring information based on the text of the queries to obtain combined information that provides the client application identifier and the performance information for each of the queries; and identifying a problem query and at least one client application that has issued the problem query using the combined information.Type: GrantFiled: March 6, 2013Date of Patent: September 2, 2014Assignee: International Business Machines CorporationInventors: Stephen Andrew Brodsky, Zeus Orion Courtois, Anshul Dawra, Tom William Jacopi, Tony Kai-chi Leung, Sonali Surange
-
Patent number: 8417691Abstract: Provided are techniques for collecting client information for client applications running on a client computer, wherein the client information includes a client application identifier for each client application that issues queries to a database along with text of each of the queries that the client application issues; collecting database monitoring information that includes text of each query issued against the database and performance information for each query; combining the client information and the database monitoring information based on the text of the queries to obtain combined information that provides the client application identifier and the performance information for each of the queries; and identifying a problem query and at least one client application that has issued the problem query using the combined information.Type: GrantFiled: December 9, 2009Date of Patent: April 9, 2013Assignee: International Business Machines CorporationInventors: Stephen Andrew Brodsky, Zeus Orion Courtois, Anshul Dawra, Tom William Jacopi, Tony Kai-chi Leung, Sonali Surange
-
Patent number: 7991756Abstract: Techniques are disclosed for allowing efficient updating of metadata and high performance searching through the use of a text index and a separate updateable metadata index. Generally, an updateable metadata index is used to store document metadata. A text index is used to store document text. Documents in the text index are stored in the same order as the corresponding metadata entries. Upon receiving a search query, a search engine decomposes the query into a metadata condition and a text condition. Search engine performs a parallel scan upon the metadata index and the text index. To increase performance, metadata entries are skipped over if the corresponding text entries do not match the text condition. During the scan, when a document in the metadata index matches a document in the text index, the document is stored in the search results. After the scan, search results are displayed.Type: GrantFiled: August 12, 2008Date of Patent: August 2, 2011Assignee: International Business Machines CorporationInventors: Tom William Jacopi, Andreas Neumann, Liem Gioi Tran
-
Publication number: 20110078123Abstract: Embodiments of the present invention provide a method, system and computer program product for maintaining distributed state consistency in a distributed computing application. In an embodiment of the invention, a method for maintaining distributed state consistency in a distributed computing application can include registering a set of components of a distributed computing application, starting a transaction resulting in changes of state in different ones of the components in the registered set and determining in response to a conclusion of the transaction whether or not an inconsistency of state has arisen amongst the different components in the registered set in consequence of the changes of state in the different ones of the components in the registered set. If an inconsistency has arisen, each of the components in the registered set can be directed to rollback to a previously stored state. Otherwise a committal of state can be directed in each of the components in the registered set.Type: ApplicationFiled: September 25, 2009Publication date: March 31, 2011Applicant: International Business Machines CorporationInventors: Michael Busch, Rajesh M. Desai, Tom William Jacopi, Michael McCandless
-
Publication number: 20100332473Abstract: Provided are techniques for invoking with a processor executing on a computer a source code parser to obtain source information that includes a first location of an Application Programming Interface (API) call and parameters of the API call in source code of a client application, where the parameters the API call do not include query text for a query that is to be used to access a database; examining a stack trace to determine a second location of the API call in the stack trace; and deriving the query of the API call and a third location of the query in the source code by identifying the query in the stack trace at the location of the API call in the stack trace.Type: ApplicationFiled: June 30, 2009Publication date: December 30, 2010Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Stephen Andrew Brodsky, Zeus Orion Courtois, Tom William Jacopi, Michael Yiupun Kwong, Tony Kai-chi Leung, Sonali Surange
-
Publication number: 20100042599Abstract: Techniques are disclosed for allowing efficient updating of metadata and high performance searching through the use of a text index and a separate updateable metadata index. Generally, an updateable metadata index is used to store document metadata. A text index is used to store document text. Documents in the text index are stored in the same order as the corresponding metadata entries. Upon receiving a search query, a search engine decomposes the query into a metadata condition and a text condition. Search engine performs a parallel scan upon the metadata index and the text index. To increase performance, metadata entries are skipped over if the corresponding text entries do not match the text condition. During the scan, when a document in the metadata index matches a document in the text index, the document is stored in the search results. After the scan, search results are displayed.Type: ApplicationFiled: August 12, 2008Publication date: February 18, 2010Inventors: Tom William Jacopi, Andreas Neumann, Liem Gioi Tran
-
Patent number: 7174551Abstract: A multiple task wait system and associated method allow a client application to wait for multiple tasks to be successfully or conditionally implemented before running subsequent tasks. Two mechanisms can be used to accomplish this multiple wait process: The first mechanism uses a multi-wait grouping process that is visible to the client, and the second mechanism uses a graphical representation to identify the tasks to be completed. The multi-wait grouping process allows a client to group a related set of tasks together for both control and documentation purposes. The client can add as many tasks as the resources of the computer allow to a group while defining the data flows and control flows between the tasks in the group using various graphical tools. The multi-wait system allows the client to define the constraints and conditions for a set of tasks to be considered complete, and further allows the system to define the constraints and conditions for considering all the tasks within the group to be completed.Type: GrantFiled: May 20, 2002Date of Patent: February 6, 2007Assignee: International Business Machines CorporationInventors: Linnette Bakow, Shannon Matthew Farrington, Diane Friedman, Tom William Jacopi, Jacques Joseph Labrie, Thanh Vu Nguyen, Cheung-Yuk Wu
-
Publication number: 20030217089Abstract: A multiple task wait system and associated method allow a client application to wait for multiple tasks to be successfully or conditionally implemented before running subsequent tasks. Two mechanisms can be used to accomplish this multiple wait process: The first mechanism uses a multi-wait grouping process that is visible to the client, and the second mechanism uses a graphical representation to identify the tasks to be completed. The multi-wait grouping process allows a client to group a related set of tasks together for both control and documentation purposes. The client can add as many tasks as the resources of the computer allow to a group while defining the data flows and control flows between the tasks in the group using various graphical tools. The multi-wait system allows the client to define the constraints and conditions for a set of tasks to be considered complete, and further allows the system to define the constraints and conditions for considering all the tasks within the group to be completed.Type: ApplicationFiled: May 20, 2002Publication date: November 20, 2003Applicant: International Business Machines CorporationInventors: Linnette Bakow, Shannon Matthew Farrington, Diana Friedman, Tom William Jacopi, Jacques Joseph Labrie, Thanh Vu Nguyen, Cheung-Yuk Wu
-
Patent number: 5701456Abstract: In a computerized database system, a query is formulated to retrieve data from the database by interactively identifying at least one table containing query data, and at least one column and at least one row in the identified table containing the query data. The rows are interactively identified using a condition statement. The condition statement is interactively formulated using at least one displayed flowline. Input is received from the user specifying a position on the flowline for insertion of a predicate and the predicate. The flowline is displayed with the predicate inserted in the specified location. The predicates are displayed on the flowline in between nodes. Predicates on the same flowline are combined through a logical AND operation. Predicates on different flowlines between the same nodes are combined through a logical OR operation. The flowline is converted to a corresponding Boolean algebra statement and displayed.Type: GrantFiled: August 30, 1995Date of Patent: December 23, 1997Assignee: International Business Machines CorporationInventors: Tom William Jacopi, Brian Gerrit Payton, Howard Alexander Siwek