SQL server debugging in a distributed database environment
First Claim
1. A software architecture comprising at least one computer readable storage medium storing computer executable instructions for debugging a distributed database application process on a client connection, the software architecture comprising:
- a server, wherein the server runs the distributed database application on a computer;
a client, wherein the client interacts with the distributed database application by way of the client connection; and
the client connection executes managed code hosted by the distributed database application;
a debugger, wherein the debugger debugs the distributed database application process, andan application program interface (API), wherein the API receives a debugger request, via a call for a stored procedure from the debugger, to debug managed code, and causes the server to call a debugging component, and wherein the debugger debugs the managed code and wherein the API further detects a transition between Transact-Structured Query_Language (T-SQL) and managed code and calls a method to communicate the transition to the debugger.
2 Assignments
0 Petitions
Accused Products
Abstract
A software architecture for debugging the execution of T-SQL and managed data-tier application logic associated with a single connection, in isolation from other connections, is provided. In the architecture, a database server hosts the data-tier application logic. A client connects to the database server and issues requests on the connection, which initiates the execution of the data-tier application logic. A debugger debugs a client process on the server. An application program interface (API) receives a request to initiate a debugging session from the debugger, and returns an interface pointer to the debugger, thereby enabling the debugger to debug the client connection to the server.
-
Citations
27 Claims
-
1. A software architecture comprising at least one computer readable storage medium storing computer executable instructions for debugging a distributed database application process on a client connection, the software architecture comprising:
-
a server, wherein the server runs the distributed database application on a computer; a client, wherein the client interacts with the distributed database application by way of the client connection; and the client connection executes managed code hosted by the distributed database application; a debugger, wherein the debugger debugs the distributed database application process, and an application program interface (API), wherein the API receives a debugger request, via a call for a stored procedure from the debugger, to debug managed code, and causes the server to call a debugging component, and wherein the debugger debugs the managed code and wherein the API further detects a transition between Transact-Structured Query_Language (T-SQL) and managed code and calls a method to communicate the transition to the debugger. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A method of communicating between a server process, a client process and a debugger process in a distributed database environment, the method comprising:
-
receiving a first call for a stored procedure from the debugger process to debug managed code; returning an interface pointer to the debugger process responsive to the received first call; receiving a second call for a register method from the debugger process, wherein the second call comprises a machine name, a process ID and an interface pointer; detecting a client connection matching the machine name, process ID and interface pointer on the server process; halting execution of the client connection on the server process responsive to said detection; executing a third call, wherein the third call establishes operative communications between the debugger process and the client process; debugging the client process via an application program interface(API), wherein the API detects a transition between Transact-Structured Query_Language (T-SQL) and managed code on the client connection; and
calling a method to communicate the transition to the debugger process. - View Dependent Claims (8, 9, 10, 11, 12, 13)
-
-
14. A computer-readable storage medium having computer-executable instructions for performing a method of communicating between a server process, a client process and a debugger process in a distributed database environment, the method comprising:
-
receiving a first call from a computer for a stored procedure from the debugger process to debug managed code on a computer; returning an interface pointer to the debugger process responsive to the received first call; receiving a second call from a computer for a register method from the debugger process, wherein the second call comprises a machine name, a process ID and an interface pointer; detecting a client connection matching the machine name, process ID and interface pointer on the server process; halting execution of the client connection on the server process responsive to said detection; executing a third call, wherein the third call establishes operative communications between the debugger process and the client process; and debugging the client process via an application interface (API), wherein the API detects a transition between Transact-Structured Query_Language (T-SOL) and managed code on the client connection; and calling a method to communicate the transition to the debugger process. - View Dependent Claims (15, 16, 17, 18, 19, 20)
-
-
21. A method of initiating a debugging session between a debugger and a client connection on a server running a distributed database application, comprising:
-
specifying the client connection of managed code to be debugged by way of an API; returning an interface pointer to the debugger by way of the API; calling a register method, wherein the register method uses the interface pointer to detect the client connection associated with the interface pointer; halting execution of the client connection; enabling the debugger to debug the client connection by way of the server and the API wherein the API detects a transition between Transact-Structured Query_Language (T-SQL) and managed code on the client connection; and
calling a method to communicate the transition to the debugger. - View Dependent Claims (22, 23, 24, 25)
-
-
26. A computer-readable storage medium having computer-executable instructions for performing a method of initiating a debugging session between a debugger and a client connection on a server running a distributed database application, the method comprising:
-
specifying the client connection having managed code to be debugged by way of an API loaded on a computer; returning an interface pointer to the debugger by way of the API on the computer; calling a register method, wherein the register method uses the interface pointer to detect the client connection associated with the interface pointer; halting execution of the client connection; and enabling the debugger to debug the client connection by way of the server and the API, wherein the API detects a transition between Transact-Structured Query_Language (T-SQL) and managed code on the client connection; and calling a method to communicate the transition to the debugger process. - View Dependent Claims (27)
-
Specification