Re: [sqlite] error message: [FireDAC][Phys][SQLite] Database is locked
> For the record, "delete the journal file" is terrible advice Agreed. In normal production environment, I wouldn't suggest that. The user was testing a database, and in my own developemtn cycle, its common when developing for a database to be in all manners of chaos states. It was purely a 'gotcha' that has caught me out before - a journal file lingers and locks the system. On Mon, Oct 15, 2018 at 4:03 AM Rowan Worth wrote: > On Sat, 13 Oct 2018 at 00:21, Chris Locke > wrote: > > > > Database is locked > > > > Close your application. Is there a xxx-journal file in the same > directory > > as the database? (where xxx is the name of the database) > > Try deleting this file. > > > > For the record, "delete the journal file" is terrible advice and a great > way to corrupt a database. In the case where a program crashes > mid-transaction, the journal contains information which is crucial for > recovering to a correct database state. And in non-crash scenarios, the > journal should be cleaned up¹. So when you can see a journal file it's > likely that either: > > 1. some program is currently using the DB, or > 2. there was a crash mid-transaction > > Either way, deleting the journal is a wrong move. > > ¹ unless the DB is configured with PRAGMA journal_mode set to TRUNCATE or > PERSIST, in which case you've asked for the rollback journal to linger > around. > > -Rowan > ___ > sqlite-users mailing list > sqlite-users@mailinglists.sqlite.org > http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users > ___ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
Re: [sqlite] error message: [FireDAC][Phys][SQLite] Database is locked
On 2018/10/15 5:05 AM, Rowan Worth wrote: On Sat, 13 Oct 2018 at 02:20, Lars Frederiksen wrote: Any ideas? Not sure if this got resolved off-list, but based on the code you've posted I wonder if there is an "fdqGloser" as well as an "fdqGloser2", and if so what state it is in. Update: This was indeed resolved off-list. Thanks for the added thoughts. The problem turned out to be related to FireDAC automagic and moving some DB connecting/opening code out of the form's OnCreate and into a more sensible event call did the trick. SQLite was innocent. :) ___ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
Re: [sqlite] error message: [FireDAC][Phys][SQLite] Database is locked
On Sat, 13 Oct 2018 at 02:20, Lars Frederiksen wrote: > I type info into some labeledits and by pressing "Append to DB" button > this code is executed (fdqGoser2 is a FDQuery) > > fdqGloser2.Open; > fdqGloser2.Append; > fdqGloser2.FieldByName('Graesk').AsString:= ledGræsk.Text; > ... > fdqGloser2.FieldByName('Graesk_ren').AsString:= > Trykløs_SmåBogstaver(fdqGloser2.FieldByName('Graesk').AsString); > fdqGloser2.Post; [ here the error is triggered] > > I wonder if some kind of property i fdqGloser2 is set wrong. I think the > only thing I have set i SQL ('SELECT * FROM Gloser2'). > > Any ideas? > Not sure if this got resolved off-list, but based on the code you've posted I wonder if there is an "fdqGloser" as well as an "fdqGloser2", and if so what state it is in. It reads like you're trying to update the database with fdqGloser2 - another reason this would fail with "database is locked" is if you're holding a separate read transaction open. -Rowan ___ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
Re: [sqlite] error message: [FireDAC][Phys][SQLite] Database is locked
On Sat, 13 Oct 2018 at 00:21, Chris Locke wrote: > > Database is locked > > Close your application. Is there a xxx-journal file in the same directory > as the database? (where xxx is the name of the database) > Try deleting this file. > For the record, "delete the journal file" is terrible advice and a great way to corrupt a database. In the case where a program crashes mid-transaction, the journal contains information which is crucial for recovering to a correct database state. And in non-crash scenarios, the journal should be cleaned up¹. So when you can see a journal file it's likely that either: 1. some program is currently using the DB, or 2. there was a crash mid-transaction Either way, deleting the journal is a wrong move. ¹ unless the DB is configured with PRAGMA journal_mode set to TRUNCATE or PERSIST, in which case you've asked for the rollback journal to linger around. -Rowan ___ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
Re: [sqlite] error message: [FireDAC][Phys][SQLite] Database is locked
On 2018/10/12 8:19 PM, Lars Frederiksen wrote: I type info into some labeledits and by pressing "Append to DB" button this code is executed (fdqGoser2 is a FDQuery) fdqGloser2.Open; fdqGloser2.Append; fdqGloser2.FieldByName('Graesk').AsString:= ledGræsk.Text; fdqGloser2.FieldByName('Dansk').AsString:= ledDansk.Text; fdqGloser2.FieldByName('Lektion').AsString:= ledLektion.Text; fdqGloser2.FieldByName('Note').AsString:= ledNote.Text; fdqGloser2.FieldByName('Kategori').AsString:= ledKategori.Text; fdqGloser2.FieldByName('Langenscheidt').AsString:= ledLangenscheidt.Text; fdqGloser2.FieldByName('Ordtype').AsString:= ledOrdtype.Text; fdqGloser2.FieldByName('Boejning').AsString:= ledBøjning.Text; fdqGloser2.FieldByName('Graesk_ren').AsString:= Trykløs_SmåBogstaver(fdqGloser2.FieldByName('Graesk').AsString); fdqGloser2.Post; [ here the error is triggered] I wonder if some kind of property i fdqGloser2 is set wrong. I think the only thing I have set i SQL ('SELECT * FROM Gloser2'). Any ideas? This is a kind of novice way to do it, but should work fine (I'm not judging, it's just that I'm not 100% sure if Append starts a transaction or not, or if there is another command to follow Append after the field values are set, like AddRecord or CloseRecord or some such, before Post can be called - Prefer doing these lower down and have some control over it, but happy to do a little trouble-shooting). What is fdqGloser2? I mean what is its Delphi Type? (T..something... ) I'm guessing fdq is for Fire-DAC-Query, which makes it seem like this is from some tutorial. Actually, this question is veering further and further away from an SQLite question - perhaps we should not spam everyone and move off-list (along with whomever wish to join). Send me off-list the entire Unit perhaps and the DB file (at least the schema if the content is sensitive), then I can have a look at what goes wrong. If someone else is interested in contributing to this, send me a mail too to include in the reply chain. ___ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
Re: [sqlite] error message: [FireDAC][Phys][SQLite] Database is locked
I type info into some labeledits and by pressing "Append to DB" button this code is executed (fdqGoser2 is a FDQuery) fdqGloser2.Open; fdqGloser2.Append; fdqGloser2.FieldByName('Graesk').AsString:= ledGræsk.Text; fdqGloser2.FieldByName('Dansk').AsString:= ledDansk.Text; fdqGloser2.FieldByName('Lektion').AsString:= ledLektion.Text; fdqGloser2.FieldByName('Note').AsString:= ledNote.Text; fdqGloser2.FieldByName('Kategori').AsString:= ledKategori.Text; fdqGloser2.FieldByName('Langenscheidt').AsString:= ledLangenscheidt.Text; fdqGloser2.FieldByName('Ordtype').AsString:= ledOrdtype.Text; fdqGloser2.FieldByName('Boejning').AsString:= ledBøjning.Text; fdqGloser2.FieldByName('Graesk_ren').AsString:= Trykløs_SmåBogstaver(fdqGloser2.FieldByName('Graesk').AsString); fdqGloser2.Post; [ here the error is triggered] I wonder if some kind of property i fdqGloser2 is set wrong. I think the only thing I have set i SQL ('SELECT * FROM Gloser2'). Any ideas? /Lars -Oprindelig meddelelse- Fra: sqlite-users [mailto:sqlite-users-boun...@mailinglists.sqlite.org] På vegne af Stephen Chrzanowski Sendt: 12. oktober 2018 19:47 Til: General Discussion of SQLite Database Emne: Re: [sqlite] error message: [FireDAC][Phys][SQLite] Database is locked FSCK is File System ChecK, so the equivalent in Windows Scandisk. Trace through the code to find out when exactly the SQLite is reporting the lock. Is it at a query, on opening, is it multi-thread or multi-application access? Is the query taking too long? If you're debugging and everything is working through the transactions, I'd look at how you're setting the timeout and maybe it isn't being passed through correctly. As mentioned, depending on the size of the DB, your AV may be holding on and doing a scan of the file that is much longer than the 5 seconds. Set breakpoints at every point where you do something with SQL, then first step-over the break point to validate that specific function isn't causing the lock, then resume until the next break point. When/if you do hit a break point that causes a lock, restart the app, then step-into the function and see where the lock is happening. Transactions may also cause some grief, but I defer to those with more experience on that. I know that there are blocks in play for writes, not 100% sure if you open a transaction if you'll get a locked message from another call. Another thing you could do is, again depending on the size of your database and memory constraints, is "backup" the database to memory, if you're only using a single-thread & single-application, this should be valid. For a short bit, turn off all your AV software, or, get an AV free OS up and running to test your application on. Disconnect your Ethernet if you're truly paranoid about getting a rogue application hitting your machine while you've got AV off. (Been there with Melissa Virus) Another option is start up a new application and just have it do some data massaging on a scrap database. SQLite Expert I think has a demo DB you can play with, or, just start from scratch with a single file, single table database. If your new application can do work without your AV having a problem, then I'd be looking at what exactly your code is doing. I'm sure there's a SQLite3 Northwind database here: https://github.com/jpwhite3/northwind-SQLite3 I use the free version of Berlin and Tokyo, and I've never had a lock issue that couldn't be explained by another process taking too long with the data. I typically write single-threaded applications, but sometimes there are multiple applications touching the database. (IE: SQLite Expert; sqlite3.exe, my applications, etc). I've only ever run into database locked issues is when my app is writing the data pretty quickly to the DB and SQLite Expert runs a query. I'll get a timeout somewhere, but its easily explained. Expanding the timeout on both applications usually fixes the locked issue. On Fri, Oct 12, 2018 at 1:20 PM Lars Frederiksen wrote: > Thank you for your response. To answer your questions: > ___ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users ___ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
Re: [sqlite] error message: [FireDAC][Phys][SQLite] Database is locked
This would seem to imply that BitDefender is not the cause of your woes. Do you have write permission on the database file? --- The fact that there's a Highway to Hell but only a Stairway to Heaven says a lot about anticipated traffic volume. >-Original Message- >From: sqlite-users [mailto:sqlite-users- >boun...@mailinglists.sqlite.org] On Behalf Of Lars Frederiksen >Sent: Friday, 12 October, 2018 06:26 >To: 'SQLite mailing list' >Subject: Re: [sqlite] error message: [FireDAC][Phys][SQLite] Database >is locked > >That is: I have disabled ALL protecting parameters in BitDefender to >find the culprit module - without luck. > >-Oprindelig meddelelse- >Fra: sqlite-users [mailto:sqlite-users- >boun...@mailinglists.sqlite.org] På vegne af Radovan Antloga >Sendt: 12. oktober 2018 10:10 >Til: sqlite-users@mailinglists.sqlite.org >Emne: Re: [sqlite] error message: [FireDAC][Phys][SQLite] Database is >locked > >Try to change database name (extension). > >For example: >mydb.sqlite >mydb.sdb >mydb.db3 > >I would use .sqlite extension and exclude that >files from antivirus check. > >Regards > >Lars Frederiksen je 12.10.2018 ob 9:11 napisal: >> Hello, >> >> I have made (in Delphi) a program that writes to a sqlite database. >This is >> a simple stand-alone solution. Now something is blocking for the >programs >> attempt to writing to the databse. There is a an error message: >> [FireDAC][Phys][SQLite] Database is locked. >> >> A friend of mine has analysed the scenario and tells me that >BitDefender is >> the Problem. In BitDefender "Application Access" I have given my >program >> permission to "Work". >> >> Any solution on how to "tell" BitDefender that it is OK to make >changes in >> my database? (I have tried BitDefender support - but no ticket >answer!) >> >> Maybe also somebody knows an antivirus/anti-malware solution which >are not >> so "hard" as BitDefender? (and with a userfriendly GUI). >> >> Thank you so much for any help. I am rather "desperate" for some >help! >> >> Best Regards >> >> Lars >> >> >> >> >> >> ___ >> sqlite-users mailing list >> sqlite-users@mailinglists.sqlite.org >> http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite- >users > >___ >sqlite-users mailing list >sqlite-users@mailinglists.sqlite.org >http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users > >___ >sqlite-users mailing list >sqlite-users@mailinglists.sqlite.org >http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users ___ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
Re: [sqlite] error message: [FireDAC][Phys][SQLite] Database is locked
FSCK is File System ChecK, so the equivalent in Windows Scandisk. Trace through the code to find out when exactly the SQLite is reporting the lock. Is it at a query, on opening, is it multi-thread or multi-application access? Is the query taking too long? If you're debugging and everything is working through the transactions, I'd look at how you're setting the timeout and maybe it isn't being passed through correctly. As mentioned, depending on the size of the DB, your AV may be holding on and doing a scan of the file that is much longer than the 5 seconds. Set breakpoints at every point where you do something with SQL, then first step-over the break point to validate that specific function isn't causing the lock, then resume until the next break point. When/if you do hit a break point that causes a lock, restart the app, then step-into the function and see where the lock is happening. Transactions may also cause some grief, but I defer to those with more experience on that. I know that there are blocks in play for writes, not 100% sure if you open a transaction if you'll get a locked message from another call. Another thing you could do is, again depending on the size of your database and memory constraints, is "backup" the database to memory, if you're only using a single-thread & single-application, this should be valid. For a short bit, turn off all your AV software, or, get an AV free OS up and running to test your application on. Disconnect your Ethernet if you're truly paranoid about getting a rogue application hitting your machine while you've got AV off. (Been there with Melissa Virus) Another option is start up a new application and just have it do some data massaging on a scrap database. SQLite Expert I think has a demo DB you can play with, or, just start from scratch with a single file, single table database. If your new application can do work without your AV having a problem, then I'd be looking at what exactly your code is doing. I'm sure there's a SQLite3 Northwind database here: https://github.com/jpwhite3/northwind-SQLite3 I use the free version of Berlin and Tokyo, and I've never had a lock issue that couldn't be explained by another process taking too long with the data. I typically write single-threaded applications, but sometimes there are multiple applications touching the database. (IE: SQLite Expert; sqlite3.exe, my applications, etc). I've only ever run into database locked issues is when my app is writing the data pretty quickly to the DB and SQLite Expert runs a query. I'll get a timeout somewhere, but its easily explained. Expanding the timeout on both applications usually fixes the locked issue. On Fri, Oct 12, 2018 at 1:20 PM Lars Frederiksen wrote: > Thank you for your response. To answer your questions: > ___ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
Re: [sqlite] error message: [FireDAC][Phys][SQLite] Database is locked
Thank you for your response. To answer your questions: Ryan: It's sad to see someone get dismayed with what is usually a flawless working system. It's not the database that's tricky, it's the reason the file is locked. This would be a problem with a string based file too. - I agree Ryan, but I get SO totally frustrated [and locked myself :-)] not being able to go on with my favorite hobby!!! Do you have it open in any DB manager or other CLI or such? - I have just tried SQLite Manager and in fact I am able to edit in the db through this program What's the actual path of the folder containing the file on your drive? - My database (called flashcard.db) is placed in a subfolder to %programdata% (c:\programdata\my name\flashcard_data This leaves other possible culprits as Windows Virtualization - Personally I do not know much about Windows Virtualization. I will try a search!! and possible other programs/processes on your machine locking the DB file. - I am totally empty about what kind of program that might be?? Thomas: Could the problem arise due to filesystem corruption? Have you tried an fsck? - no I have not tried an fsck [is this not a Linux prg that checks the files?] Chris: Close your application. Is there a xxx-journal file in the same directory as the database? (where xxx is the name of the database) Try deleting this file. - there is no such file in the database directory Best Regards Lars -Oprindelig meddelelse- Fra: sqlite-users [mailto:sqlite-users-boun...@mailinglists.sqlite.org] På vegne af Chris Locke Sendt: 12. oktober 2018 18:22 Til: SQLite mailing list Emne: Re: [sqlite] error message: [FireDAC][Phys][SQLite] Database is locked > Database is locked Close your application. Is there a xxx-journal file in the same directory as the database? (where xxx is the name of the database) Try deleting this file. Thanks, Chris On Fri, Oct 12, 2018 at 4:54 PM Thomas Kurz wrote: > >> Could the problem arise due to filesystem corruption? Have you tried an >> fsck? >> >> >> - Original Message - >> From: R Smith >> To: sqlite-users@mailinglists.sqlite.org < >> sqlite-users@mailinglists.sqlite.org> >> Sent: Friday, October 12, 2018, 17:35:28 >> Subject: [sqlite] error message: [FireDAC][Phys][SQLite] Database is >> locked >> >> On 2018/10/12 2:44 PM, Lars Frederiksen wrote: >> > I have tried that too! - I must admit that right now I am turning to a >> KISS solution: String-based database with functions and procedures in a >> class that handles the different jobs you do on a table. After all these >> old-fashioned DB's are not so picky :-) >> >> It's sad to see someone get dismayed with what is usually a flawless >> working system. >> It's not the database that's tricky, it's the reason the file is locked. >> This would be a problem with a string based file too. >> >> Reading the above, I'm no longer convinced it's your anti-virus' fault >> either. >> >> Using Delphi FireDAC quite a bit, I can promise you that its SQLite >> connectivity is working just fine, and while an Antivirus can lock a >> file for the time it takes to check it, unless your database is >> Gigabytes in size, that lock should be released within milliseconds, >> unless found to be unsafe - but then the log should speak of it (which I >> assume it doesn't). >> >> This leaves other possible culprits as Windows Virtualization and >> possible other programs/processes on your machine locking the DB file. >> Do you have it open in any DB manager or other CLI or such? >> What's the actual path of the folder containing the file on your drive? >> >> >> Cheers, >> Ryan >> >> ___ >> sqlite-users mailing list >> sqlite-users@mailinglists.sqlite.org >> http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users >> >> ___ >> sqlite-users mailing list >> sqlite-users@mailinglists.sqlite.org >> http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users >> > ___ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users ___ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
Re: [sqlite] error message: [FireDAC][Phys][SQLite] Database is locked
> Database is locked Close your application. Is there a xxx-journal file in the same directory as the database? (where xxx is the name of the database) Try deleting this file. Thanks, Chris On Fri, Oct 12, 2018 at 4:54 PM Thomas Kurz wrote: > >> Could the problem arise due to filesystem corruption? Have you tried an >> fsck? >> >> >> - Original Message - >> From: R Smith >> To: sqlite-users@mailinglists.sqlite.org < >> sqlite-users@mailinglists.sqlite.org> >> Sent: Friday, October 12, 2018, 17:35:28 >> Subject: [sqlite] error message: [FireDAC][Phys][SQLite] Database is >> locked >> >> On 2018/10/12 2:44 PM, Lars Frederiksen wrote: >> > I have tried that too! - I must admit that right now I am turning to a >> KISS solution: String-based database with functions and procedures in a >> class that handles the different jobs you do on a table. After all these >> old-fashioned DB's are not so picky :-) >> >> It's sad to see someone get dismayed with what is usually a flawless >> working system. >> It's not the database that's tricky, it's the reason the file is locked. >> This would be a problem with a string based file too. >> >> Reading the above, I'm no longer convinced it's your anti-virus' fault >> either. >> >> Using Delphi FireDAC quite a bit, I can promise you that its SQLite >> connectivity is working just fine, and while an Antivirus can lock a >> file for the time it takes to check it, unless your database is >> Gigabytes in size, that lock should be released within milliseconds, >> unless found to be unsafe - but then the log should speak of it (which I >> assume it doesn't). >> >> This leaves other possible culprits as Windows Virtualization and >> possible other programs/processes on your machine locking the DB file. >> Do you have it open in any DB manager or other CLI or such? >> What's the actual path of the folder containing the file on your drive? >> >> >> Cheers, >> Ryan >> >> ___ >> sqlite-users mailing list >> sqlite-users@mailinglists.sqlite.org >> http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users >> >> ___ >> sqlite-users mailing list >> sqlite-users@mailinglists.sqlite.org >> http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users >> > ___ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
Re: [sqlite] error message: [FireDAC][Phys][SQLite] Database is locked
Could the problem arise due to filesystem corruption? Have you tried an fsck? - Original Message - From: R Smith To: sqlite-users@mailinglists.sqlite.org Sent: Friday, October 12, 2018, 17:35:28 Subject: [sqlite] error message: [FireDAC][Phys][SQLite] Database is locked On 2018/10/12 2:44 PM, Lars Frederiksen wrote: > I have tried that too! - I must admit that right now I am turning to a KISS > solution: String-based database with functions and procedures in a class that > handles the different jobs you do on a table. After all these old-fashioned > DB's are not so picky :-) It's sad to see someone get dismayed with what is usually a flawless working system. It's not the database that's tricky, it's the reason the file is locked. This would be a problem with a string based file too. Reading the above, I'm no longer convinced it's your anti-virus' fault either. Using Delphi FireDAC quite a bit, I can promise you that its SQLite connectivity is working just fine, and while an Antivirus can lock a file for the time it takes to check it, unless your database is Gigabytes in size, that lock should be released within milliseconds, unless found to be unsafe - but then the log should speak of it (which I assume it doesn't). This leaves other possible culprits as Windows Virtualization and possible other programs/processes on your machine locking the DB file. Do you have it open in any DB manager or other CLI or such? What's the actual path of the folder containing the file on your drive? Cheers, Ryan ___ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users ___ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
Re: [sqlite] error message: [FireDAC][Phys][SQLite] Database is locked
On 2018/10/12 2:44 PM, Lars Frederiksen wrote: I have tried that too! - I must admit that right now I am turning to a KISS solution: String-based database with functions and procedures in a class that handles the different jobs you do on a table. After all these old-fashioned DB's are not so picky :-) It's sad to see someone get dismayed with what is usually a flawless working system. It's not the database that's tricky, it's the reason the file is locked. This would be a problem with a string based file too. Reading the above, I'm no longer convinced it's your anti-virus' fault either. Using Delphi FireDAC quite a bit, I can promise you that its SQLite connectivity is working just fine, and while an Antivirus can lock a file for the time it takes to check it, unless your database is Gigabytes in size, that lock should be released within milliseconds, unless found to be unsafe - but then the log should speak of it (which I assume it doesn't). This leaves other possible culprits as Windows Virtualization and possible other programs/processes on your machine locking the DB file. Do you have it open in any DB manager or other CLI or such? What's the actual path of the folder containing the file on your drive? Cheers, Ryan ___ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
Re: [sqlite] error message: [FireDAC][Phys][SQLite] Database is locked
Try this: 1. check file atribute if it is not read only maybe is not BitDefender 2. copy your database to some test database in same folder. Try to edit with simple editor and save that file to see if is possible. R.A. Lars Frederiksen je 12.10.2018 ob 14:23 napisal: I have tried this, unfortunately without any luck. I think the problem might be in the sqlite DB-system. I have disabled ALL protecting parameters to find the culprit module - without luck. My sqlite version is: SQLite version 3.19.3 2017-06-08 14:26:16 There might be a newer and better version without this error? /Lars -Oprindelig meddelelse- Fra: sqlite-users [mailto:sqlite-users-boun...@mailinglists.sqlite.org] På vegne af Radovan Antloga Sendt: 12. oktober 2018 10:10 Til: sqlite-users@mailinglists.sqlite.org Emne: Re: [sqlite] error message: [FireDAC][Phys][SQLite] Database is locked Try to change database name (extension). For example: mydb.sqlite mydb.sdb mydb.db3 I would use .sqlite extension and exclude that files from antivirus check. Regards Lars Frederiksen je 12.10.2018 ob 9:11 napisal: Hello, I have made (in Delphi) a program that writes to a sqlite database. This is a simple stand-alone solution. Now something is blocking for the programs attempt to writing to the databse. There is a an error message: [FireDAC][Phys][SQLite] Database is locked. A friend of mine has analysed the scenario and tells me that BitDefender is the Problem. In BitDefender "Application Access" I have given my program permission to "Work". Any solution on how to "tell" BitDefender that it is OK to make changes in my database? (I have tried BitDefender support - but no ticket answer!) Maybe also somebody knows an antivirus/anti-malware solution which are not so "hard" as BitDefender? (and with a userfriendly GUI). Thank you so much for any help. I am rather "desperate" for some help! Best Regards Lars ___ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users ___ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users ___ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users ___ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
Re: [sqlite] error message: [FireDAC][Phys][SQLite] Database is locked
I have tried that too! - I must admit that right now I am turning to a KISS solution: String-based database with functions and procedures in a class that handles the different jobs you do on a table. After all these old-fashioned DB's are not so picky :-) -Oprindelig meddelelse- Fra: sqlite-users [mailto:sqlite-users-boun...@mailinglists.sqlite.org] På vegne af Stephen Chrzanowski Sendt: 12. oktober 2018 14:37 Til: General Discussion of SQLite Database Emne: Re: [sqlite] error message: [FireDAC][Phys][SQLite] Database is locked How about moving the databases elsewhere? Sometimes applications are picky when it comes where files are being written to (IE: Program Files). On Fri, Oct 12, 2018 at 8:30 AM Lars Frederiksen wrote: > Setting the Busy Timeout (in FireDAC) to 5000 ms does not solve the > problem - unfortunately! > > -Oprindelig meddelelse- > Fra: sqlite-users [mailto:sqlite-users-boun...@mailinglists.sqlite.org] > På vegne af Stephen Chrzanowski > Sendt: 12. oktober 2018 14:25 > Til: General Discussion of SQLite Database > Emne: Re: [sqlite] error message: [FireDAC][Phys][SQLite] Database is > locked > > Change the timeout value on the connection to 5 seconds or so. The DB will > retry. The AV has its grip on it, doing a scan, and won't let anything > else touch it until its done. > > On Fri, Oct 12, 2018 at 3:11 AM Lars Frederiksen > wrote: > > > Hello, > > > > I have made (in Delphi) a program that writes to a sqlite database. This > is > > a simple stand-alone solution. Now something is blocking for the programs > > attempt to writing to the databse. There is a an error message: > > [FireDAC][Phys][SQLite] Database is locked. > > > > A friend of mine has analysed the scenario and tells me that BitDefender > is > > the Problem. In BitDefender "Application Access" I have given my program > > permission to "Work". > > > > Any solution on how to "tell" BitDefender that it is OK to make changes > in > > my database? (I have tried BitDefender support - but no ticket answer!) > > > > Maybe also somebody knows an antivirus/anti-malware solution which are > not > > so "hard" as BitDefender? (and with a userfriendly GUI). > > > > Thank you so much for any help. I am rather "desperate" for some help! > > > > Best Regards > > > > Lars > > > > > > > > > > > > ___ > > sqlite-users mailing list > > sqlite-users@mailinglists.sqlite.org > > http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users > > > ___ > sqlite-users mailing list > sqlite-users@mailinglists.sqlite.org > http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users > > ___ > sqlite-users mailing list > sqlite-users@mailinglists.sqlite.org > http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users > ___ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users ___ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
Re: [sqlite] error message: [FireDAC][Phys][SQLite] Database is locked
How about moving the databases elsewhere? Sometimes applications are picky when it comes where files are being written to (IE: Program Files). On Fri, Oct 12, 2018 at 8:30 AM Lars Frederiksen wrote: > Setting the Busy Timeout (in FireDAC) to 5000 ms does not solve the > problem - unfortunately! > > -Oprindelig meddelelse- > Fra: sqlite-users [mailto:sqlite-users-boun...@mailinglists.sqlite.org] > På vegne af Stephen Chrzanowski > Sendt: 12. oktober 2018 14:25 > Til: General Discussion of SQLite Database > Emne: Re: [sqlite] error message: [FireDAC][Phys][SQLite] Database is > locked > > Change the timeout value on the connection to 5 seconds or so. The DB will > retry. The AV has its grip on it, doing a scan, and won't let anything > else touch it until its done. > > On Fri, Oct 12, 2018 at 3:11 AM Lars Frederiksen > wrote: > > > Hello, > > > > I have made (in Delphi) a program that writes to a sqlite database. This > is > > a simple stand-alone solution. Now something is blocking for the programs > > attempt to writing to the databse. There is a an error message: > > [FireDAC][Phys][SQLite] Database is locked. > > > > A friend of mine has analysed the scenario and tells me that BitDefender > is > > the Problem. In BitDefender "Application Access" I have given my program > > permission to "Work". > > > > Any solution on how to "tell" BitDefender that it is OK to make changes > in > > my database? (I have tried BitDefender support - but no ticket answer!) > > > > Maybe also somebody knows an antivirus/anti-malware solution which are > not > > so "hard" as BitDefender? (and with a userfriendly GUI). > > > > Thank you so much for any help. I am rather "desperate" for some help! > > > > Best Regards > > > > Lars > > > > > > > > > > > > ___ > > sqlite-users mailing list > > sqlite-users@mailinglists.sqlite.org > > http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users > > > ___ > sqlite-users mailing list > sqlite-users@mailinglists.sqlite.org > http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users > > ___ > sqlite-users mailing list > sqlite-users@mailinglists.sqlite.org > http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users > ___ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
Re: [sqlite] error message: [FireDAC][Phys][SQLite] Database is locked
Setting the Busy Timeout (in FireDAC) to 5000 ms does not solve the problem - unfortunately! -Oprindelig meddelelse- Fra: sqlite-users [mailto:sqlite-users-boun...@mailinglists.sqlite.org] På vegne af Stephen Chrzanowski Sendt: 12. oktober 2018 14:25 Til: General Discussion of SQLite Database Emne: Re: [sqlite] error message: [FireDAC][Phys][SQLite] Database is locked Change the timeout value on the connection to 5 seconds or so. The DB will retry. The AV has its grip on it, doing a scan, and won't let anything else touch it until its done. On Fri, Oct 12, 2018 at 3:11 AM Lars Frederiksen wrote: > Hello, > > I have made (in Delphi) a program that writes to a sqlite database. This is > a simple stand-alone solution. Now something is blocking for the programs > attempt to writing to the databse. There is a an error message: > [FireDAC][Phys][SQLite] Database is locked. > > A friend of mine has analysed the scenario and tells me that BitDefender is > the Problem. In BitDefender "Application Access" I have given my program > permission to "Work". > > Any solution on how to "tell" BitDefender that it is OK to make changes in > my database? (I have tried BitDefender support - but no ticket answer!) > > Maybe also somebody knows an antivirus/anti-malware solution which are not > so "hard" as BitDefender? (and with a userfriendly GUI). > > Thank you so much for any help. I am rather "desperate" for some help! > > Best Regards > > Lars > > > > > > ___ > sqlite-users mailing list > sqlite-users@mailinglists.sqlite.org > http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users > ___ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users ___ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
Re: [sqlite] error message: [FireDAC][Phys][SQLite] Database is locked
That is: I have disabled ALL protecting parameters in BitDefender to find the culprit module - without luck. -Oprindelig meddelelse- Fra: sqlite-users [mailto:sqlite-users-boun...@mailinglists.sqlite.org] På vegne af Radovan Antloga Sendt: 12. oktober 2018 10:10 Til: sqlite-users@mailinglists.sqlite.org Emne: Re: [sqlite] error message: [FireDAC][Phys][SQLite] Database is locked Try to change database name (extension). For example: mydb.sqlite mydb.sdb mydb.db3 I would use .sqlite extension and exclude that files from antivirus check. Regards Lars Frederiksen je 12.10.2018 ob 9:11 napisal: > Hello, > > I have made (in Delphi) a program that writes to a sqlite database. This is > a simple stand-alone solution. Now something is blocking for the programs > attempt to writing to the databse. There is a an error message: > [FireDAC][Phys][SQLite] Database is locked. > > A friend of mine has analysed the scenario and tells me that BitDefender is > the Problem. In BitDefender "Application Access" I have given my program > permission to "Work". > > Any solution on how to "tell" BitDefender that it is OK to make changes in > my database? (I have tried BitDefender support - but no ticket answer!) > > Maybe also somebody knows an antivirus/anti-malware solution which are not > so "hard" as BitDefender? (and with a userfriendly GUI). > > Thank you so much for any help. I am rather "desperate" for some help! > > Best Regards > > Lars > > > > > > ___ > sqlite-users mailing list > sqlite-users@mailinglists.sqlite.org > http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users ___ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users ___ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
Re: [sqlite] error message: [FireDAC][Phys][SQLite] Database is locked
Change the timeout value on the connection to 5 seconds or so. The DB will retry. The AV has its grip on it, doing a scan, and won't let anything else touch it until its done. On Fri, Oct 12, 2018 at 3:11 AM Lars Frederiksen wrote: > Hello, > > I have made (in Delphi) a program that writes to a sqlite database. This is > a simple stand-alone solution. Now something is blocking for the programs > attempt to writing to the databse. There is a an error message: > [FireDAC][Phys][SQLite] Database is locked. > > A friend of mine has analysed the scenario and tells me that BitDefender is > the Problem. In BitDefender "Application Access" I have given my program > permission to "Work". > > Any solution on how to "tell" BitDefender that it is OK to make changes in > my database? (I have tried BitDefender support - but no ticket answer!) > > Maybe also somebody knows an antivirus/anti-malware solution which are not > so "hard" as BitDefender? (and with a userfriendly GUI). > > Thank you so much for any help. I am rather "desperate" for some help! > > Best Regards > > Lars > > > > > > ___ > sqlite-users mailing list > sqlite-users@mailinglists.sqlite.org > http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users > ___ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
Re: [sqlite] error message: [FireDAC][Phys][SQLite] Database is locked
I have tried this, unfortunately without any luck. I think the problem might be in the sqlite DB-system. I have disabled ALL protecting parameters to find the culprit module - without luck. My sqlite version is: SQLite version 3.19.3 2017-06-08 14:26:16 There might be a newer and better version without this error? /Lars -Oprindelig meddelelse- Fra: sqlite-users [mailto:sqlite-users-boun...@mailinglists.sqlite.org] På vegne af Radovan Antloga Sendt: 12. oktober 2018 10:10 Til: sqlite-users@mailinglists.sqlite.org Emne: Re: [sqlite] error message: [FireDAC][Phys][SQLite] Database is locked Try to change database name (extension). For example: mydb.sqlite mydb.sdb mydb.db3 I would use .sqlite extension and exclude that files from antivirus check. Regards Lars Frederiksen je 12.10.2018 ob 9:11 napisal: > Hello, > > I have made (in Delphi) a program that writes to a sqlite database. This is > a simple stand-alone solution. Now something is blocking for the programs > attempt to writing to the databse. There is a an error message: > [FireDAC][Phys][SQLite] Database is locked. > > A friend of mine has analysed the scenario and tells me that BitDefender is > the Problem. In BitDefender "Application Access" I have given my program > permission to "Work". > > Any solution on how to "tell" BitDefender that it is OK to make changes in > my database? (I have tried BitDefender support - but no ticket answer!) > > Maybe also somebody knows an antivirus/anti-malware solution which are not > so "hard" as BitDefender? (and with a userfriendly GUI). > > Thank you so much for any help. I am rather "desperate" for some help! > > Best Regards > > Lars > > > > > > ___ > sqlite-users mailing list > sqlite-users@mailinglists.sqlite.org > http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users ___ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users ___ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
Re: [sqlite] error message: [FireDAC][Phys][SQLite] Database is locked
Try to change database name (extension). For example: mydb.sqlite mydb.sdb mydb.db3 I would use .sqlite extension and exclude that files from antivirus check. Regards Lars Frederiksen je 12.10.2018 ob 9:11 napisal: Hello, I have made (in Delphi) a program that writes to a sqlite database. This is a simple stand-alone solution. Now something is blocking for the programs attempt to writing to the databse. There is a an error message: [FireDAC][Phys][SQLite] Database is locked. A friend of mine has analysed the scenario and tells me that BitDefender is the Problem. In BitDefender "Application Access" I have given my program permission to "Work". Any solution on how to "tell" BitDefender that it is OK to make changes in my database? (I have tried BitDefender support - but no ticket answer!) Maybe also somebody knows an antivirus/anti-malware solution which are not so "hard" as BitDefender? (and with a userfriendly GUI). Thank you so much for any help. I am rather "desperate" for some help! Best Regards Lars ___ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users ___ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users