Method and system for processing query messages over a network
First Claim
1. A computer-implemented method, performed by a computer system comprising one or more processors and computer memory, for modifying information in a database stored in volatile memory, comprising:
- receiving a modification request including a search string and modification data;
assigning the modification request to an update thread for processing, the processing comprising;
using a search engine, retrieving a first pointer to a first record corresponding to the search string;
using the first pointer, copying the first record into a second record;
modifying data in the second record based on the modification data;
determining a second pointer for the second record; and
in an uninterruptable process and without locking read access to the database, updating the search engine with the second pointer;
writing both the second record to a snapshot file and information based on the modification data to another file stored in non-volatile memory; and
purging the first record from the database stored in volatile memory, the snapshot file maintaining the first and the second record,wherein the writing occurs after at least two different modification requests update the pointer contained in the search engine.
0 Assignments
0 Petitions
Accused Products
Abstract
Embodiments of the present invention provide a method and system for processing query messages over a network. Specifically, a plurality of queries may be extracted from a plurality of query messages received from a plurality of users over a network. A number of queries, included in the plurality of queries, may be determined, and a current sequence number may be associated with the plurality of queries. A request message may be created including the plurality of queries, a first sequence number equal to the current sequence number and a first message count equal to the number of queries. The request message may be sent to a search engine and a response message may be received from the search engine. The response message may include a plurality of replies, a second sequence number, a second message count, a third sequence number and a third message count. A plurality of reply messages may be created from the plurality of replies and sent to the plurality of users over the network.
85 Citations
17 Claims
-
1. A computer-implemented method, performed by a computer system comprising one or more processors and computer memory, for modifying information in a database stored in volatile memory, comprising:
-
receiving a modification request including a search string and modification data; assigning the modification request to an update thread for processing, the processing comprising; using a search engine, retrieving a first pointer to a first record corresponding to the search string; using the first pointer, copying the first record into a second record; modifying data in the second record based on the modification data; determining a second pointer for the second record; and in an uninterruptable process and without locking read access to the database, updating the search engine with the second pointer; writing both the second record to a snapshot file and information based on the modification data to another file stored in non-volatile memory; and purging the first record from the database stored in volatile memory, the snapshot file maintaining the first and the second record, wherein the writing occurs after at least two different modification requests update the pointer contained in the search engine. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A system for modifying information in a database stored in volatile memory comprising:
-
a non-transitory memory storing instructions; and a processor executing the instructions to cause the system to perform a method comprising; receiving a modification request including a search string and modification data; assigning the modification request to an update thread for processing, the processing comprising; using a search engine, retrieving a first pointer to a first record corresponding to the search string; using the first pointer, copying the record into a second record; modifying data in the second record based on the modification data; determining a second pointer for the second record; and in an uninterruptable process and without locking read access to the database, updating the search engine with the second pointer; writing both the second record to a snapshot file and information based on the modification data to another file stored in non-volatile memory; and purging the first record from the database stored in volatile memory, the snapshot file maintaining the first and the second record, wherein the writing occurs after at least two different modification requests update the pointer contained in the search engine. - View Dependent Claims (7, 8, 9, 10)
-
-
11. A non-transitory computer-readable storage medium containing instructions which, when executed on a processor, perform a method comprising:
-
receiving a modification request including a search string and modification data; assigning the modification request to an update thread for processing, the processing comprising; using a search engine, retrieving a first pointer to a first record corresponding to the search string; using the first pointer, copying the record into a second record; modifying data in the second record based on the modification data; determining a second pointer for the second record; and in an uninterruptable process and without locking read access to the database, updating the search engine with the second pointer; writing both the second record to a snapshot file and information based on the modification data to another file stored in non-volatile memory; and purging the first record from the database stored in volatile memory, the snapshot file maintaining the first and the second record, wherein the writing occurs after at least two different modification requests update the pointer contained in the search engine. - View Dependent Claims (12, 13, 14, 15)
-
-
16. A computer-implemented method, performed by a computer system comprising one or more processors and computer memory, for modifying information in a database stored in volatile memory, comprising:
-
receiving a modification request including a search string and modification data; assigning the modification request to an update thread for processing; retrieving a first pointer to a first record corresponding to the search string using a search engine; copying the first record into a second record using the first pointer; modifying data in the second record based on the modification data; determining a second pointer for the second record; and updating the search engine with the second pointer in an uninterruptable process and without locking read access to the database; writing both the second record to a snapshot file and information based on the modification data to another file stored in non-volatile memory; and purging the first record from the database stored in volatile memory, the snapshot file maintaining the first and the second record, wherein the writing occurs after at least two different modification requests update the pointer contained in the search engine. - View Dependent Claims (17)
-
Specification