Subject RE: [firebird-support] disconnecting users
Author Werner Cloete
Hi...

<hypothetical situation>

You can create a table, called UserSession, in the database.

When the user logs in, an entry, containing the Session/Process ID, the
Username, the IP Address and the Last Activity Date and Time, is written
into the UserSession table.

When the client disconnects, all the user's entries are deleted from the
table (or it could be kept for audit trails, etc.). If the client crashes
(network failure, machine failure, etc.) this entry's Last Activity Date and
Time can, for instance, have a Valid Time Period so that the entry becomes
invalid/removed after a certain time of "inactivity".

This Valid Time Period could also be used to cause an "auto disconnect"
from the front-end side - if the front-end, for example, has a timer running
that checks these entries...

</hypothetical situation>

My questions:
1) Is this a viable solution..?
2) If so, how would you determine the Session/Process ID, from the
front-end, so that the entry can be written to the table..?
3) Can this information be determined by the back-end and written into the
table (so that the front-end does not have to do it)..?
4) Can you determine, from the back-end, which user executed a query, etc.
on the database and when this was done (this could make (3) possible)..?

-----Original Message-----
From: Martijn Tonies [mailto:m.tonies@...]
Sent: 23 June 2004 14:25
To: firebird-support@yahoogroups.com
Subject: Re: [firebird-support] disconnecting users


Hi,

> Does Firebird 1.5 have the functionality like IB7's tmp$ tables? I

No, it doesn't.

> need away to disconnect a user that has left an app open overnight or
> disconnect a user when maintenance is done on the db.

If you're using "classic" I believe you can kill the process, that is,
if you know which one it is.

As for the rest: no luck.

With regards,

Martijn Tonies
Database Workbench - developer tool for InterBase, Firebird, MySQL & MS SQL
Server.
Upscene Productions
http://www.upscene.com





Yahoo! Groups Links






This e-mail message is confidential and intended solely for the person to whom or the entity to which it is addressed. All the contents and any attachments remain the property of VR Services (Pty) Ltd unless so stated by contract.
If you are not the intended recipient, you are prohibited from reading, copying, using or disclosing this message to others.
If you received this message in error, please notify the sender immediately by replying to this e-mail or by telephoning +27 21 430 9300 and thereafter delete the message. VR Services (Pty) Ltd does not accept liability for any personal views expressed in this message.