Kbase P54684: What is a dirty read?
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  10/06/2009 |
|
Status: Unverified
GOAL:
What is a dirty read?
FIX:
A dirty read is any case where a query reads data from the database without lock protection, that is without a guarantee that the data is not changing during the time that the query is running.
One simple scenario of dirty reads is when one client changes a value in a record within a transaction, and a second client reads this value before the original change has been committed or rolled back; in this case it's possible that the first client rolls back the transaction, resulting in the second client having read an invalid value.
Dirty reads occur from an SQL client if a connection to the database is done with the isolation level READ UNCOMMITTED.
From a 4GL client, any time the NO-LOCK clause is used dirty reads can occur.