That's what I was implying by my question. -----Ursprüngliche Nachricht----- Von: John Stanton [mailto:[EMAIL PROTECTED] Gesendet: Freitag, 13. April 2007 20:56 An: [EMAIL PROTECTED] Betreff: Re: [sqlite] Still getting "Insertion failed because database is full." errors
Regular flash memory has a limited number of write cycles before it fails. Are you hitting this problem by using it for general processing? Joel Cochran wrote: > First, to answer John's question: the CF Card is a 1GB card, and the > only thing on the card is the SQLite Database (currently 509KB), so I > really don't think it is a space problem. Unless you mean something > else by Flash memory? > > Michael, > > Yes, I am doing Selects, and using DataAdapters to fill DataTables > (which are then used to populate instances of objects). > > Interesting question about the CF Card. I have 2 devices right now, > one in house for development and one in the field for testing, so I > suppose it could be the memory card's problem. But if it was bad > sector space, wouldn't it happen on the same record every time? As it > is, the problem occurs sporadically and unpredictably. I used the > field device here in the office and opened over a hundred records with > no error (hence my thinking I had fixed the problem). The field > tester took the device to the field and the first record threw the error. > > And I'm still hung up on why it reports an insertion error when there > is no insertion occurring (unless it is some sort of internal > mechanism used by the database itself). > > For Mike's last question, and I hope this doesn't sound too > newbie-ish, but do you run Select statements in a Transaction? The > short ansewr is no, they are not. And actually, now that I think > about it, I don't think any of the updates/inserts on the device > itself are either. The software that creates the database runs on a > PC, and I know all those are in transactions, but on the device I do > not think they are. (This program was originally written for > SqlServerCE and was recently converted to SQLite). Could that have > anything to do with it? Could these database changes build up over > time or something like that? I admit I am not very knowledgeable > about Transactions. I will gladly go and put all the updates into > transactions, but would I do the same for Select statements? > > Thanks for the responses, > > Joel > > On 4/13/07, Michael Ruck <[EMAIL PROTECTED]> wrote: > >> >> Hi, >> >> Is this the only device seeing this error or are *all* devices seeing >> this error? Have you checked the CF card? May be its just the card, >> which is corrupt and you're hitting these bugs at points, where the >> file system is hitting a bad sector. >> >> Is this running in a transaction? >> >> Mike >> >> -----Ursprüngliche Nachricht----- >> Von: Joel Cochran [mailto:[EMAIL PROTECTED] >> Gesendet: Freitag, 13. April 2007 17:46 >> An: [EMAIL PROTECTED] >> Betreff: [sqlite] Still getting "Insertion failed because database is >> full." >> errors >> >> Hi folks, >> >> I had sent this message out a couple of weeks ago, and I am still >> searching for a solution. I looked at the application design and >> made a modest >> change: I now create a single SQLiteConnection and use it from start >> to finish of the application. Previously I was creating multiple >> connections (and disconnecting, disposing them and then running GC), >> but all that has been replaced with the single connection approach. >> >> At first I thought this had solved the problem, because all in house >> testing runs beautifully. However, as soon as the device is sent to >> the field, the error starts again. Unfortunately, it means that I >> have never been able to catch this in debug. I did, however, change >> the error reporting a little and got some more information. The >> SQLiteException I am not getting includes this information: >> >> Insertion failed because the database is full database or disk is >> full >> >> at System.Data.SQLite.SQLite3.Reset() >> at System.Data.SQLite.SQLite3.Step() >> at System.Data.SQLite.SQLiteDataReader.NextResult() >> at System.Data.SQLite.SQLiteDataReader.ctor() >> at System.Data.SQLite.SQLiteCommand.ExecuteReader() >> at System.Data.SQLite.SQLiteCommand.ExecuteDbDataReader() >> at ... etc etc >> >> >> I downloaded the C source and tried to read through it, but honestly >> I am not a C programmer and didn't get very far. >> >> Other than a possible bug, the only thing I can think of is that >> there is something fundamentally wrong with my architecture. What I >> can't get, is why the message has anything to do with inserting. >> While there are several actions in my product that Insert into the >> database, the error never occurs at those points. If I understood >> what was being inserted, perhaps I could figure out a soultion. >> >> If anyone can help, I'd greatly appreciate it. The original message >> is included below this one. >> >> TIA, >> >> Joel >> >> >> ---------- Original message ---------- Hi all, >> >> I have searched the web, the newsgroups, and the archives, but all I >> can find is one reference to someone having this trouble with Python >> and a bunch of references that list this as predefined error #13 >> according to http://www.sqlite.org/capi3.html. >> >> What I can't find is any help in determining why a program might >> receive this error. The database is only 203KB and has 6 tables >> (maybe 1,000 rows in all the tables combined) running off a 1GB >> CompactFlash card on a Windows Mobile 5 device with 256MB of onboard >> RAM: 50MB of that is dedicated to programs and the rest is storage. >> The only app running on the device is the one in question. The error >> occurs at seemingly random times and forces the user to end the >> application and start over. >> >> At this point I don't know much else: the user is in the field and I >> will have the device back late this afternoon for debugging. I was >> hoping to have a head start before I get the device, because as it is >> I have no idea what the cause could be. >> ---------- End Original message ---------- >> >> >> >> --------------------------------------------------------------------- >> -------- >> >> To unsubscribe, send email to [EMAIL PROTECTED] >> >> --------------------------------------------------------------------- >> -------- >> >> >> > ---------------------------------------------------------------------------- - To unsubscribe, send email to [EMAIL PROTECTED] ---------------------------------------------------------------------------- - ----------------------------------------------------------------------------- To unsubscribe, send email to [EMAIL PROTECTED] -----------------------------------------------------------------------------