Icon View Thread

The following is the text of the current message along with any replies.
Messages 1 to 4 of 4 total
Thread Lazy Change Detection clarification
Thu, Feb 15 2007 3:17 PMPermanent Link

Michael Fullerton
According to the help, with lazy change detection, changes are checked
only if "DBISAM cannot find the desired data locally in it's cache
buffers". When does that apply? When a table is empty? When Findkey
fails?

___
Free Project Time Tracker for Delphi Developers
http://www.cybermatrix.com/pcdelphi.html
Fri, Feb 16 2007 3:08 PMPermanent Link

Tim Young [Elevate Software]

Elevate Software, Inc.

Avatar

Email timyoung@elevatesoft.com

Michael,

<< According to the help, with lazy change detection, changes are checked
only if "DBISAM cannot find the desired data locally in it's cache buffers".
When does that apply? When a table is empty? When Findkey fails? >>

Any time DBISAM accesses the table data.

--
Tim Young
Elevate Software
www.elevatesoft.com

Fri, Feb 16 2007 5:27 PMPermanent Link

Michael Fullerton
On Fri, 16 Feb 2007 15:08:15 -0500, "Tim Young [Elevate Software]"
<timyoung@elevatesoft.com> wrote:

><< According to the help, with lazy change detection, changes are checked
>only if "DBISAM cannot find the desired data locally in it's cache buffers".
>When does that apply? When a table is empty? When Findkey fails? >>
>
>Any time DBISAM accesses the table data.

What I mean is when would DBISAM not be able to find the desired data
locally in it's cache buffers? I guess that would mean only when it
needs a record that would be beyond the beginning or end of the cache.
Suppose another person adds a new record. You do a FindKey on that
key. Since the key is not in the cache would the cache be refreshed or
would FindKey just fail?

___
Free Project Time Tracker for Delphi Developers
http://www.cybermatrix.com/pcdelphi.html
Mon, Feb 19 2007 6:53 AMPermanent Link

Tim Young [Elevate Software]

Elevate Software, Inc.

Avatar

Email timyoung@elevatesoft.com

Michael,

<< What I mean is when would DBISAM not be able to find the desired data
locally in it's cache buffers? >>

Such an event is possible at any time. The cache is limited in size, so it
can only contain the most recently referenced data.  Performing a search,
first, last, next, prior, etc. could all possibly require a read, and
subsequently, change detection.

<< Suppose another person adds a new record. You do a FindKey on that key.
Since the key is not in the cache would the cache be refreshed or would
FindKey just fail? >>

DBISAM would get the data from disk and the cache would be refreshed if the
data has changed in the table since the last read.

--
Tim Young
Elevate Software
www.elevatesoft.com

Image