Systems and methods for cancelling a query
First Claim
1. A method for querying a database, comprising:
- receiving, by a server computing device, a first query input from a client computing device over a network connection;
establishing a first non-blocking socket for the first query between the client computing device and the server computing device wherein the first non-blocking socket automatically returns an error code when the client computing device fails to transmit data to the server computing device over the network connection;
generating a first database query based on the first query input;
causing the first database query to begin executing against one or more databases;
receiving, by the server computing device, a second query input from the client computing device over the network connection and establishing a second non-blocking socket for the second query between the client computing device and the server computing device;
responsive to receiving the second query, performing, by the server computing device, a read request on the first non-blocking socket wherein the read request is an automated request to determine if the network connection exists between the client computing device and the server computing device for the first non-blocking socket;
receiving the error code in response to the read request on the first non-blocking socket;
determining whether the network connection exists between the client device and the server device based on the received error code for the first non-blocking socket;
executing a database instruction against the one or more databases, which causes the first database query to be cancelled when the server determines that the network connection does not exist between the client device and the server device for the first non-blocking socket; and
responsive to cancelling the first database query, generating a second database query based on the second query input and causing the second database query to begin executing against one or more databases.
2 Assignments
0 Petitions
Accused Products
Abstract
Systems and methods for querying a database are disclosed. A server computing device includes a processor and a memory storing instructions that, when executed by the processor, cause the server computing device to: receive a query input from a client device over a network connection; establish a non-blocking socket between the client computing device and the server computing device; generate a database query based on the query input; cause the database query to begin executing against one or more databases; perform a read request on the non-blocking socket; receive a code in response to the read request on the non-blocking socket; determine whether the network connection exists between the client device and the server device based on the received code; and cause the database query to be cancelled when the server determines that the network connection does not exist between the client device and the server device.
20 Citations
18 Claims
-
1. A method for querying a database, comprising:
-
receiving, by a server computing device, a first query input from a client computing device over a network connection; establishing a first non-blocking socket for the first query between the client computing device and the server computing device wherein the first non-blocking socket automatically returns an error code when the client computing device fails to transmit data to the server computing device over the network connection; generating a first database query based on the first query input; causing the first database query to begin executing against one or more databases; receiving, by the server computing device, a second query input from the client computing device over the network connection and establishing a second non-blocking socket for the second query between the client computing device and the server computing device; responsive to receiving the second query, performing, by the server computing device, a read request on the first non-blocking socket wherein the read request is an automated request to determine if the network connection exists between the client computing device and the server computing device for the first non-blocking socket; receiving the error code in response to the read request on the first non-blocking socket; determining whether the network connection exists between the client device and the server device based on the received error code for the first non-blocking socket; executing a database instruction against the one or more databases, which causes the first database query to be cancelled when the server determines that the network connection does not exist between the client device and the server device for the first non-blocking socket; and responsive to cancelling the first database query, generating a second database query based on the second query input and causing the second database query to begin executing against one or more databases. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A server computing device for querying a database, comprising:
-
a processor; and a memory storing instructions that, when executed by the processor, cause the server computing device to; receive a first query input from a client computing device over a network connection; establish a first non-blocking socket for the first query between the client computing device and the server computing device wherein the first non-blocking socket automatically returns an error code when the client computing device fails to transmit data to the server computing device over the network connection; generate a first database query based on the first query input; cause the first database query to begin executing against one or more databases; receive a second query input from the client computing device over the network connection; establish a second non-blocking socket for the second query between the client computing device and the server computing device; responsive to receiving the second query, perform a read request on the first non-blocking socket wherein the read request is an automated request to determine if the network connection exists between the client computing device and the server computing device for the first non-blocking socket; receive the error code in response to the read request on the first non-blocking socket; determine whether the network connection exists between the client device and the server device based on the received error code for the first non-blocking socket; execute a database instruction against the one or more databases, which causes the first database query to be cancelled when the server determines that the network connection does not exist between the client device and the server device for the first non-blocking socket; and responsive to cancelling the first database query, generate a second database query based on the second query input and cause the second database query to begin executing against one or more databases. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. A client computing device for querying a database, comprising:
-
a processor; and a memory storing instructions that, when executed by the processor, cause the client computing device to; transmit a first query input to a server computing device over a network connection, wherein a first non-blocking socket is established for the first query between the client computing device and the server computing device, wherein the first non-blocking socket automatically returns an error code when the client computing device fails to transmit data to the server computing device over the network connection, and wherein a first database query is generated and executed against one or more database based on the first query input; transmit a second query input to the server computing device over the network connection wherein a second non-blocking socket is established for the second query between the client computing device and the server computing device; responsive to transmitting the second query, receive a read request from the server computing device on the first non-blocking socket wherein the read request is an automated request to determine if the network connection exists between the client computing device and the server computing device for the first non-blocking socket; and transmit the error code to the server computing device in response to the read request on the first non-blocking socket, wherein the error code allows the server computing device to determine whether the network connection still exists between the client device and the server computing device for the first non-blocking socket based on the received error code, wherein the server computing device is able to execute a database instruction against the one or more databases, which causes the first database query to be cancelled when the server computing device determines that the network connection does not exist between the client device and the server computing device for the first non-blocking socket, and wherein the server computing device, responsive to cancelling the first database query, is able to generate a second database query based on the second query input and cause the second database query to begin executing against one or more databases. - View Dependent Claims (14, 15, 16, 17, 18)
-
Specification