Either add a trace-log which shows the flow of the program (entering,
exiting methods, database commands accessed).

It's not so simple that when you send the program to him in the field, it's
a release build and when you test you are using a debug build?

On 4/17/07, Joel Cochran <[EMAIL PROTECTED]> wrote:

I've had him sit beside my in my office and attempt to recreate it, both
using his device and mine, but it never happens.  Actually, I did get it
to
happen once on his machine, but I was not connected to my PC, so I
connected
and tried to recreate it through DEBUG but could not.  The last time it
happened in the field, I had him stop using the device and bring it to me
so
that I could see the Stack Trace (which I sent to the list).  With neither
his device nor mine can I recreate the problem in DEBUG.  It is very
frustrating.

Thanks,

Joel


On 4/17/07, Jonas Sandman <[EMAIL PROTECTED]> wrote:
>
> What is the guy on in the field doing that you are not? Are you using
his
> device for the testing?
> Since it takes minutes for him to encounter the error it can't be that
> hard
> to recreate. Follow him around for an hour or so and see how he uses the
> program. It could easily be something he's doing that you aren't...
>
> On 4/17/07, Joel Cochran <[EMAIL PROTECTED]> wrote:
> >
> > The saga continues...
> >
> > I was very excited by the idea that there was something wrong with the
> CF
> > Card.  The theory fits all the facts: it explains why the original
> > database
> > threw unspecified errors, it explains why now SQLite is throwing
errors,
> > it
> > explains why I can't reproduce the problem in house or on my
> machine.  It
> > just seemed to explain everything, so yesterday I went out and bought
a
> > brand-spankin' new SanDisk CF card.  I loaded it up with the database,
> > installed it on my tester's machine, and this morning it went back out
> to
> > the field for testing.
> >
> > Within minutes, he encountered the same error.
> >
> > Now I just don't believe the problem is with the card, so I feel that
I
> am
> > right back at square one.  I'm really at my wits end and don't know
what
> > to
> > do next.  I am going to go ahead and install the database on the
device
> > memory instead of removable media, just to test it out, but I have no
> > faith
> > that it will change anything.  When that fails, I will send the tester
> out
> > with another device entirely, but again I expect the same results.
> >
> > I'm convinced now that the problem is with the application
architecture,
> > but
> > I have no idea what to look at anymore.  I've stared and fiddled with
> this
> > code so much that I'm ready to throw in the towel.  But since I'd like
> to
> > keep my job that isn't an option.  If I had hair, I'd pull it out.
> >
> > Any help at all would be appreciated.
> >
> > --
> > Joel Cochran
> >
> >
> >
> > On 4/13/07, Michael Ruck <[EMAIL PROTECTED]> wrote:
> > >
> > > Unless things have changed recently, the following should still be
> valid
> > > for
> > >
> > > Windows Mobile/Windows CE devices: Usually these devices do not
power
> > off,
> > > but
> > > stay in a standby state where the memory is always powered. Check if
> > > that's
> > > the
> > > case with your system and move as much as possible into RAM or a RAM
> > disk,
> > > if that
> > > feature is provided by the windows mobile kernel built for your
> device.
> > >
> > > If that's not possible, I'd suggest replacing CF cards with micro
> drives
> > -
> > > these
> > > are regular hard drives in a CF card format. I'm not up to date on
> > storage
> > > space,
> > > but should be sufficient for your needs.
> > >
> > > To test the cards I'd put them in a card reader format it and fill
it
> > > completely
> > > up with zeros. When a flash card erases a byte, it sets all bits to
> ones
> > > and
> > > upon
> > > write clears those, which need to be zero. So to test all bits you
> > really
> > > need to
> > > zero out the entire card. This will also give the controller in the
> card
> > a
> > > chance
> > > to remap bad sectors with spares. Finally you determine the file
size
> of
> > > the
> > > card,
> > > when you receive the first write error. This is (approximately) the
> > number
> > > of bytes
> > > the card can store (at that point in time) and falling.
> > >
> > > It seems some cards even return "read errors", when they hit a
> defective
> > > sector
> > > upon read. Maybe the actual error code just gets lost/mangled on the
> way
> > > up
> > > and the
> > > actual error is just a simple read error ;) I've seen reports about
> this
> > > with some
> > > digital cameras, which would not even let people view the pictures
> taken
> > a
> > > minute
> > > ago.
> > >
> > > Mike
> > >
> > > -----Ursprüngliche Nachricht-----
> > > Von: John Stanton [mailto:[EMAIL PROTECTED]
> > > Gesendet: Freitag, 13. April 2007 23:44
> > > An: sqlite-users@sqlite.org
> > > Betreff: Re: [sqlite] Still getting "Insertion failed because
database
> > is
> > > full." errors
> > >
> > > You might find some joy in the baby disk drives such as installed in
> the
> > > original ipods.
> > >
> > > Can you substitute RAM with a battery backup if the memory card is
> > always
> > > in
> > > the device?
> > >
> > > Joel Cochran wrote:
> > > > Thanks John and Dennis,
> > > > At least now I have something to look at.  I will look into the CF
> > > > problem next.
> > > >
> > > > The database itself gets generated on a PC and then transferred to
> the
> > > > CF Card.  During testing and development, this could have been
20-30
> > > > times a day, constantly erasing and recreating the existing
DB.  We
> > > > have also sent large numbers of JPGs along with the database in
the
> > > > past (there are none now, but have been before).  So these cards
> have
> > > > been written over a lot, perhaps that is the problem.
> > > >
> > > > I think to test this, I will send the device back to the field
with
> a
> > > > brand new card and see if the problem persists.  If the user can
go
> > > > several days of normal use without the problem, then I'll be
> convinced
> > > > that it is the card.  Out of curiosity I just checked the CF cards
> > > > we've been using: on the development machine (which has NEVER
shown
> > > > the error) I have a SanDisk CF Card.  On the Testing machine that
is
> > > > having the problem, there is a PNY Technologies CF Card.  I
wouldn't
> > > > be surprised if the SanDisk card isn't simply better than the PNY
> > > > card, so there is something else to consider.
> > > >
> > > > Once actual field use begins, the database will be replaced every
> week
> > > > or so, along with a fair number of images (like 100-300 a
> week).  The
> > > > purpose of the application would have every record in the database
> > > > being updated and some new ones created.  And it would be that way
> > > > week in and week out, essentially forever.  We may eventually port
> it
> > > > over to very small Tablet PCs, but right now it is all Windows
> Mobile
> > > > 5.  This is one of the reasons I went with SQLite, so that down
the
> > > > road I wouldn;t have to reinvent the database piece of the
software
> > > > for a different platform.
> > > >
> > > > Given all this, I will definitely look into the link Dennis
> sent.  The
> > > > company is not going to be happy replacing CF cards all the time,
so
> > > > if that can extend the wear then it will be welcome.
> > > >
> > > > Thanks a lot,
> > > >
> > > > Joel
> > > >
> > > > On 4/13/07, Dennis Cote <[EMAIL PROTECTED]> wrote:
> > > >
> > > >>
> > > >> Joel Cochran wrote:
> > > >> >
> > > >> > Or do you mean over the course of the lifetime of a CF card it
> can
> > > >> > only be used so much?  That might apply to this scenario, these
> > > >> > cards have been written over continuously for the last 6
months.
> > > >> >
> > > >> Joel,
> > > >>
> > > >> Yes, that is exactly the problem. You should look at using a
flash
> > > >> file system such as http://sourceware.org/jffs2/ that uses "wear
> > > leveling"
> > > >> algorithms to spread the writes over all the flash devices blocks
> if
> > > >> you are writing often.
> > > >>
> > > >> HTH
> > > >> Dennis Cote
> > > >>
> > > >>
> > >
> >
>

Reply via email to