Claims
- 1. A method for validating an update to a record in a remote database over a network, the update including at least one event, comprising:
comparing the record in the remote database with a corresponding record in a local database; generating an exception that describes a discrepancy between the remote database record and the local database record, for each discrepancy; associating an exception identifier with each exception, wherein each exception identifier is associated with an identifier of the record; associating an event identifier with each event in the update, wherein each event identifier is associated with an identifier of the record; and determining whether the update is valid by comparing the events and exceptions that correspond to the record.
- 2. The method of claim 1, wherein the update to the record is valid if every exception corresponding to the record is justified by an event corresponding to the record.
- 3. The method of claim 2, wherein the types of exceptions include:
a first exception type in which the record is in the remote database and not in the local database; a second exception type in which the record is in the local database and not in the remote database; and a third exception type in which the record is in the local database and the remote database and a value of a field of the record in the local database is different than the value of the same field of the record in the remote database.
- 4. The method of claim 3, wherein the event justifies the exception if:
the event is a deletion of the record from the local database and the exception is the first exception type, the event is an addition of the record to the local database and the exception is the second exception type, the event is a modification of the record in the local database and the exception is the third exception type, or the event is a deletion from followed by an addition of the record to the local database and the exception is the third exception type.
- 5. The method of claim 1, further comprising:
repeating the method for validating the update a given amount of time after the update was determined to be invalid, if the update is determined to be invalid.
- 6. The method of claim 1, wherein the comparing includes:
comparing the entire local database against the entire remote database.
- 7. A method for validating a remote database, comprising:
sending to the remote database a plurality of periodic updates based on incremental changes to a local database, each of the plurality of periodic updates having at least one transaction; sending to the remote database an initialization update including a version of the local database as the local database existed at a start time, wherein the initialization update is applied to the remote database; identifying discrepancies between the local database and the remote database; determining whether the discrepancies are valid; and notifying the remote database to apply the periodic updates that have a start time later than the start time of the initialization update.
- 8. The method of claim 7, further comprising:
repeating the method for validating the update a given amount of time after the update was determined to be invalid, if the update is determined to be invalid.
- 9. The method of claim 7, wherein the discrepancies include:
a first discrepancy type in which a record is in the remote database and not in the local database; a second discrepancy type in which a record is in the local database and not in the remote database; and a third discrepancy type in which the record is in the local database and the remote database and a value of a field of the record in the local database is different than the value of the same field of the record in the remote database.
- 10. A system for validating an update to a record in a remote database over a network, wherein the update includes at least one event, the system, comprising:
at least one processor coupled to the network; and a memory coupled to the processor, the memory including a database and instructions adapted to be executed by the processor to implement a method for validating the update of the record in the remote database over the network, the method including:
comparing the record in the remote database with a corresponding record in a local database, generating an exception that describes a discrepancy between the remote database record and the local database record, for each discrepancy, associating an exception identifier with each exception, wherein each exception identifier is associated with an identifier of the record, associating an event identifier with each event in the update, wherein each event identifier is associated with an identifier of the record, and determining whether the update is valid by comparing the events and exceptions that correspond to the record.
- 11. The system of claim 10, wherein the update to the record is valid if every exception corresponding to the record is justified by an event corresponding to the record.
- 12. The system of claim 11, wherein the types of exceptions include:
a first exception type in which the record is in the remote database and not in the local database; a second exception type in which the record is in the local database and not in the remote database; and a third exception type in which the record is in the local database and the remote database and a value of a field of the record in the local database is different than the value of the same field of the record in the remote database.
- 13. The system of claim 12, wherein the event justifies the exception if:
the event is a deletion of the record from the local database and the exception is the first exception type, the event is an addition of the record to the local database and the exception is the second exception type, the event is a modification of the record in the local database and the exception is the third exception type, or the event is a deletion from followed by an addition of the record to the local database and the exception is the third exception type.
- 14. The system of claim 10, wherein, if the update is determined to be invalid, the processor repeats the method for validating the update a given amount of time after the update was determined to be invalid.
- 15. The system of claim 11, wherein the processor compares the entire local database against the entire remote database.
- 16. A machine readable medium including program instructions adapted to be executed by a processor to implement a method for validating an update to a record in a remote database over a network, wherein the update includes at least one event, the method comprising:
comparing the record in the remote database with a corresponding record in a local database; generating an exception that describes a discrepancy between the remote database record and the local database record, for each discrepancy; associating an exception identifier with each exception, wherein each exception identifier is associated with an identifier of the record; associating an event identifier with each event in the update, wherein each event identifier is associated with an identifier of the record; and determining whether the update is valid by comparing the events and exceptions that correspond to the record.
- 17. The machine readable medium of claim 16, wherein, if the update is determined to be invalid, the processor repeats the method for validating the update a given amount of time after the update was determined to be invalid.
- 18. The machine readable medium of claim 16, wherein the update to the record is valid if every exception corresponding to the record is justified by an event corresponding to the record.
- 19. The machine readable medium of claim 16, wherein the types of exceptions include:
a first exception type in which the record is in the remote database and not in the local database; a second exception type in which the record is in the local database and not in the remote database; and a third exception type in which the record is in the local database and the remote database and a value of a field of the record in the local database is different than the value of the same field of the record in the remote database.
- 20. A method for validating a data transmission over a network, comprising:
identifying data discrepancies between a source and a destination; identifying data changes at the source that were included in the transmission; and comparing the discrepancies with the changes to determine if the transmission is valid.
- 21. The method of claim 20, wherein the source and destination are domain name servers.
- 22. The method of claim 20, wherein the discrepancies include:
a domain name that is in the source and not in the destination; a domain name that is in the destination and not in the source; and corresponding domain names that are different in the source and the destination.
- 23. The method of claim 20, wherein the changes include at least one of addition of a domain name to a domain name server, deletion of a domain name from a domain name server, and modification of a domain name in a domain name server.
- 24. A validator, comprising:
means for identifying data discrepancies between a source and a destination; means for identifying data changes at the source that were included in the transmission; and means for comparing the discrepancies with the changes to determine if the transmission is valid.
- 25. The system of claim 10, further comprising:
at least one remote processor coupled to the network; and a remote memory coupled to the remote processor, the remote memory storing the remote database and instructions adapted to be executed by the remote processor to:
create a new element based on new information received from the database over the network, and without restricting search access to the remote database, write a pointer to the new element to the remote database using a single uninterruptible operation.
- 26. The system of claim 25, wherein the instructions are further adapted to:
physically delete an existing element after the pointer is written to the database.
- 27. The system of claim 25, wherein the single uninterruptible operation is a store instruction.
- 28. The system of claim 27, wherein the remote processor has a word size of at least n-bytes, the remote memory has a width of at least n-bytes and the store instruction writes n-bytes to a remote memory address located on an n-byte boundary.
CLAIM FOR PRIORITY/CROSS REFERENCE TO RELATED APPLICATIONS
[0001] This non-provisional application claims the benefit of U.S. Provisional Patent Application No. 60/330,842, filed Nov. 1, 2001, which is incorporated by reference in its entirety, and U.S. Provisional Patent Application No. 60/365,169, filed Mar. 19, 2002, which is incorporated by reference in its entirety. This application is related to U.S. Non-Provisional patent application Ser. Nos. [Att'y Dkt 12307/100178], [Att'y Dkt 12307/100179], [Att'y Dkt 12307/100180] and [Att'y Dkt 12307/100181].
Provisional Applications (2)
|
Number |
Date |
Country |
|
60330842 |
Nov 2001 |
US |
|
60365169 |
Mar 2002 |
US |