1. A method for determining whether a change affects results produced by a query, the method comprising: for a table referenced in the query, generating a filter condition based, at least in part, on a predicate of the query; determining whether the filter condition is satisfied by either (a) a before image of a row, wherein the before image reflects the state of the row before the row was modified by a transaction, or (b) an after image of the row, wherein the after image of the row reflects the state of the row after the row was modified by the transaction; if the filter condition is satisfied by either the before image or the after image, then adding the query to a first set of queries whose result sets may have been affected by the transaction; from among the first set of queries, determining a second set of queries that have result sets that were actually affected by the transaction; and sending notifications based on the second set of queries.