Icon View Thread

The following is the text of the current message along with any replies.
Messages 1 to 7 of 7 total
Thread EDBMgr 2.09 can't lock database for Shared Access
Tue, Aug 7 2012 11:23 AMPermanent Link

Barry

Last week I created a copy of my database "dbx" (I think I used EDBMgr's "Create Copy of Database" menu item-I'm not sure).

It created the copy of the database to "bu_dbx", but I can no longer access the original "dbx" database. When I click on it "dbx" in DbMgr it says "ElevateDb Error #300 Cannot lock the database dbx for shared access". That's ok, because I have the backup. But unfortunately I can't drop the database "dbx" either because it says "ElevateDb Error #300 Cannot lock the database dbx for exclusive access".

So how do I get rid of the dbx database? My Delphi application is looking for the database with the name "dbx". Do I rename the "bu_dbx" to "dbx2" and leave the "dbx" where it is?

I am the only one using the database (it is not in production) and Delphi is not running so it is NOT open in the IDE. Why dbx still locked is a mystery to me. Is there any way to forcibly unlock it? Rebooting doesn't help.

TIA

Barry
v2.09 XP
Tue, Aug 7 2012 11:28 AMPermanent Link

Raul

Team Elevate Team Elevate

Make sure your copy of the database is not open as i recall running into
this where both cannot be open at the same time and edbmanager
auto-opens the last session you had open.

Start edbmanager
- go to your bu_dbx
- if it's open (database name is bold in edbmanager) then use "close
database" command on the task list
- go to DBX and see if you can open it now


Raul


On 8/7/2012 11:23 AM, Barry wrote:
> Last week I created a copy of my database "dbx" (I think I used EDBMgr's "Create Copy of Database" menu item-I'm not sure).
>
> It created the copy of the database to "bu_dbx", but I can no longer access the original "dbx" database. When I click on it "dbx" in DbMgr it says "ElevateDb Error #300 Cannot lock the database dbx for shared access". That's ok, because I have the backup. But unfortunately I can't drop the database "dbx" either because it says "ElevateDb Error #300 Cannot lock the database dbx for exclusive access".
>
> So how do I get rid of the dbx database? My Delphi application is looking for the database with the name "dbx". Do I rename the "bu_dbx" to "dbx2" and leave the "dbx" where it is?
>
> I am the only one using the database (it is not in production) and Delphi is not running so it is NOT open in the IDE. Why dbx still locked is a mystery to me. Is there any way to forcibly unlock it? Rebooting doesn't help.
>
> TIA
>
> Barry
> v2.09 XP
>
Tue, Aug 7 2012 11:31 AMPermanent Link

Barry

It gets stranger.

I just used EDBMgr to rename "buDbx" to "Dbx2". Now the original database which I haven't been able to access in a week is now accessible. The lock has been removed.

But now my "Dbx2" database is locked and I can't get into it. This is the database I've been working on for the past week. Bummer.

It appears when a database is renamed by EdbMgr, the database stays locked. Can anyone else confirm this? Maybe you should make a backup first Smile

TIA
Barry
v2.09 & Win XP
Tue, Aug 7 2012 11:41 AMPermanent Link

Barry

Raul,
   You were right! I owe you a beer for this one. [VBG]
I thought restarting EDBMgr would have closed the databases, but I guess not.

I also noticed that I can't have both "dbx" and "dbx2" open at the same time in EDBMgr otherwise I get the "Cannot lock the database for Shared Access". I need to close the other database first, before I can open the other. Strange.

I'll recreate the database with SQL and blow the old databases away and that should solve the problem.

Thanks again.
Barry
Wed, Aug 8 2012 2:15 AMPermanent Link

Roy Lambert

NLH Associates

Team Elevate Team Elevate

Barry

<<I thought restarting EDBMgr would have closed the databases, but I guess not.>>


In EDBManager go File | Preferences and unset SaveTheState. Then everything is closed when you shut down. I'm pretty sure that's the one but its so long ago that I set it I can't remember.

<<I also noticed that I can't have both "dbx" and "dbx2" open at the same time in EDBMgr otherwise I get the "Cannot lock the database for Shared Access". I need to close the other database first, before I can open the other. Strange.>>

You probably have the config files set up badly. In my case I have live data (A) on the fileserver and development on my PC (B). I have separate  config files for each (one on LAN one local) and a third config file which points to both databases (C) so I can move bits between them.

I can use A and B at the same time but if I open C I can't open either A or B.

Roy Lambert [Team Elevate]
Wed, Aug 8 2012 10:24 AMPermanent Link

Fernando Dias

Team Elevate Team Elevate

Barry,

This is just a guess, but what you are saying makes me think you didn't really create a copy of the database but only a copy of it's register in the configuration file, but both pointing to the same physical database (the same folder).

--
Fernando Dias
[Team Elevate]
Wed, Sep 5 2012 8:40 PMPermanent Link

Tim Young [Elevate Software]

Elevate Software, Inc.

Avatar

Email timyoung@elevatesoft.com

Barry,

<< I also noticed that I can't have both "dbx" and "dbx2" open at the same
time in EDBMgr otherwise I get the "Cannot lock the database for Shared
Access". I need to close the other database first, before I can open the
other. Strange. >>

Do you have two different sessions defined in the EDB Manager ?  If so, then
you probably have two different configuration files/paths defined, but both
pointing to the same database:

http://www.elevatesoft.com/supportfaq?action=view&category=edb&question=cannot_lock_database

If you have any other questions, please let me know.

Tim Young
Elevate Software
www.elevatesoft.com
Image