> reliable.  However, you should be safe to use DmQueryRecord, as long as
you
> do that before every use of a record and don't store the MemHandle for
> later use.

I wrote about it many times. In case that DbCache is full (sooner or later
the DbCache gets filled on every device irrelevant from your app),
DmQueryRecord may return an error, while DmGetRecords works correctly. So
the statement should be modified:

"However, you should be safe to use DmQueryRecord, as long as
1. you do that before every use of a record,
2. DmQueryRecord succeeds,
3. don't store the MemHandle for later use. "

You may check also the older posts.

Looks like the newer NVFS releases are safer in this respect. It is quite
possible that this statement concerns only T5 devices and those T650's that
do not have applied Sprint patch. However, this is just my supposition.

Best regards,
    Jan Slodicka


----- Original Message ----- 
From: "Ben Combee" <[EMAIL PROTECTED]>
To: "Palm Developer Forum" <[email protected]>
Sent: Sunday, April 17, 2005 9:53 PM
Subject: Re: NVFS Question


> At 02:07 PM 4/17/2005, you wrote:
> >Ben,
> >
> >For the sake of NVFS compatibility, are you saying that we should stop
> >using DmQueryRecord in favor of DmGetRecord, even when in read-only
> >situations ?
> >
> >Can you elaborate ? thanks.
>
> On the current NVFS implementations, using DmGetRecord is more
> reliable.  However, you should be safe to use DmQueryRecord, as long as
you
> do that before every use of a record and don't store the MemHandle for
> later use.  When you use DmQueryRecord, the OS has to guess as to when it
> can release the record from the DBCache.
>
>  From talking with people both at palmOne and PalmSource, it looks likely
> that this will be fixed in a future version of NVFS; the architecture is
> changing to make cache loading dependent on the locking of the MemHandle,
> with the ability to reload a record when a lock attempt is made.  The
> original implementation was trying to avoid touching too many parts of the
> OS, so it only worked with Data Manager and didn't integrate into the
> Memory Manager code.  I do not have a timeline for when this updated NVFS
> code will start appearing on devices, but I may know more for my talk on
> NVFS at the DevCon next month.
>
> -- Ben Combee, Senior Software Engineer, palmOne, Inc.
>     "Combee on Palm OS" weblog: http://palmos.combee.net/
>     Developer Forum Archives:   http://news.palmos.com/read/all_forums/
>
>
> -- 
> For information on using the Palm Developer Forums, or to unsubscribe,
please see http://www.palmos.com/dev/support/forums/


-- 
For information on using the Palm Developer Forums, or to unsubscribe, please 
see http://www.palmos.com/dev/support/forums/

Reply via email to