Icon View Thread

The following is the text of the current message along with any replies.
Messages 11 to 15 of 15 total
Thread Exclusive lock problem
Tue, Dec 23 2014 9:24 AMPermanent Link

Jeff Gallant

Hi Roy

Thanks for this. For most of our applications, we can expect small workgroups of 2-5 people. It's probably safe to warn users to get everyone else logged of and then try to get exclusive access of a specimen table when we need them to perform maintenance functions.

The key problem was me not understanding the effect of setting <EDBtable>.exclusive to true. I am thinking about having a token of some sort (maybe a value in a table) that indicates that another user is performing tasks that need exclusive use. All access to our databases goes through our own, higher level,open database code so it's easy to make such a check and deny access (with a polite message) when necessary.

I did look for UserAppLock in the extensions forum but couldn't find it.

Anyway, I've got my immediate fix and have learned something about the exclusive property so I am grateful to you and Raul for your help.

Best wishes and have a good holiday

Jeff


Roy Lambert wrote:

Jeff


When wanting to alter tables you have two problems:

1. Get everyone else off
2. Keep them off

Neither is easy. Raul's solution of just try and alter the table and if it works great, if not let the user know to try again later is pretty good.

Addressing the two problems individually:

1. Best approach is to run around like a headless chicken screaming "fire, run for your lives" and then after they've all left walk calmly around and log everyone out.

2. There are a few different ways. I elected to have a separate lock table based on UserAppLock (copy in the extensions) but you could also, whilst people are still logged on (I think) alter access permissions so that once logged out no one can log back in, you can also have a table that is used for no other purpose and open it exclusively after everyone else has logged out. If this table has to be opened as part of the login process then that will fail until you release the exclusivity.

If you can use the try and hope approach then that is probably the best one.

Roy Lambert
Jeff Gallant
Technical Manager
Computing for Labour
United Kingdom
Tue, Dec 23 2014 9:36 AMPermanent Link

Raul

Team Elevate Team Elevate

On 12/23/2014 9:14 AM, Matthew Jones wrote:
> Strikes me that what I'd want in my "ideal database server" is the
> ability to give it "startup scripts" to run, with a "once only" flag
> too. So I could pass in the script to add columns or whatever, then
> have the service restarted, and it would start up, run the script, and
> then allow connections. Guaranteed safe time for changes.

That would definitely be a good feature to have.

If server also had a "db maintenance" flag that is automatically honored
by edb client side code then it would be even better (and maybe a
special maintenance session that is allowed in in that case). And of
course messaging layer to notify client before/after. I think many of
these things are on the v3 list.

In our case for example we'd still need something for longer running
tasks as well as cases where we want this to be supervised.

Ability to access data with local access (in addition to c/s) means our
upgrade app can shut down db servers (and we have our own messaging
capability so can even force clients off), locally perform all tasks on
the db (with logging and user UI if needed) and then restart the servers.

Raul

Tue, Dec 23 2014 10:04 AMPermanent Link

Roy Lambert

NLH Associates

Team Elevate Team Elevate

Matthew


>Guaranteed safe time for changes.

Ever heard of file/server <vbg>

Roy
Tue, Dec 23 2014 10:11 AMPermanent Link

Roy Lambert

NLH Associates

Team Elevate Team Elevate

Jeff


Age and memory effect

This is the thread you want

Path: news.elevatesoft.com
Message-ID: <7B571930-F516-4A6E-B535-669D7B330DFD@news.elevatesoft.com>
From: "Terry Swiers" <millennium@1000years.com>
Newsgroups: elevatesoft.public.elevatedb.extensions
Subject: EDB User Count
Date: Wed, 5 Nov 2008 11:58:04 -0800
Lines: 213
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2900.3138
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.3350
X-RFC2646: Format=Flowed; Original

However, I've just posted my mods to it so you can find the new stuff there.


Roy Lambert
Tue, Dec 23 2014 10:31 AMPermanent Link

Matthew Jones

Roy Lambert wrote:

> > Guaranteed safe time for changes.
>
> Ever heard of file/server <vbg>

Only a madman would mix them. 8-)

Actually, I do like your "shut down service, apply updates direct".
That has a certainty to it.

FWIW, my own services have a control thread that starts up and does the
database modifications as needed, and then starts up the workers and
opens the door for the world to make requests. But I'm not using the
database server, so it is "easier" for me.

--

Matthew Jones
« Previous PagePage 2 of 2
Jump to Page:  1 2
Image