Thanks for your response. Unfortunately we don't use HotSync on the PC side
so there was no backup. Fortunately, I do use a library version of JackFlash
and had a back up in flash memory. So I did that hard reset, got my database
and make another customer happy. Go JackFlash! I had a feeling that the db
was hosed. I also was looking through the palm os source code to get a
better idea of what the problem was. I don't think I can fix it in the
future if it happens again but I wish I need what happened.

again, thanks
Ralph Krausse
Expo International, Inc.
110 Shawmut Road
Canton, MA 02021
telephone (781) 821-6653
www.expo-intl.com

        



When my application calls DmOpenDatabase,
>it get "MemoryMgrNew.c, Line:4164, Invalid handle".
>
>This is what I see on the stack....
>
>0x10C192A6( DmOpenDatabase )
>0x10C19426( DmResetRecordStates )
>0x10C14F5C( MemLocalIDToLockedPtr )
>0x10C14B24( MemHandleLock )
>0x10C15AB8( PrvHandleCheck )
>0x10C15AB8( PrvHandleCheck )
>0x10C1FAF0( ErrDisplayFileLineMsg )
>
>... I think somehow the
>database is hosed....

You're probably right.  When a database is opened, if it wasn't closed
properly last time, the system goes through and marks each record as not
being busy.  While doing so, it is finding that one of the records is bad
(that's what PrvHandleCheck does - verifies that the handle to the record
is OK).

So your memory got hosed somehow; there's a messed up record entry, and
quite possibly that's just the first thing that's wrong of a set of things.
Totally depends on what corrupted the memory and how.  The HotSync process
isn't necessarily at fault; it probably happened earlier and could have
been anything at all, even the fault of trying one of those apps which
overclock the CPU.  Sort of like a hard drive failure... the data is bad
and trying to open that database won't work, unless the damage is repaired.
(This is of course quite a rare thing to have happen, though that's little
comfort for you.)

Depending on how long it was since you did the last successful HotSync
operation, you might just want to clear the device's memory (i.e. a hard
reset, holding the power button, which will erase all memory) and restore
from the backup.  Or find someone really skilled who could try to repair
the damage by hand, twiddling bits.

-David Fedor
Palm, Inc.

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

Reply via email to