Re: Lock record

Поиск
Список
Период
Сортировка
От JanWieck@t-online.de (Jan Wieck)
Тема Re: Lock record
Дата
Msg-id 200006142245.AAA08309@hot.jw.home
обсуждение исходный текст
Ответ на Lock record  ("Andrea Aime" <aaime@comune.modena.it>)
Ответы Re: Lock record
Список pgsql-general
Andrea Aime wrote:
> Hi people. I'm writing a client application in Visual Basic,
> and I need to lock certain records (a read lock) for
> a long period of time (well, from the start just to
> the stop of my application) so that no one can modify
> them. I've seen a lock command, but it seem only capable
> to lock an entire table. I'm using ADO, and it seem possible
> to lock a record by opening a recordset on it (with a
> proper query) and keeping that recordset open (I think
> that it's the cursor that keeps the lock on the db).
> Anyone knows a different/better method?

    Skip  and  forget  about  anything below if your app isn't an
    interactive one, waiting sometimes for user input.

    Back in the late 80's,  I  remember  that  a  customer  payed
    millions  to  Siemens just that they add a "hold DB lock over
    interaction step" feature to their BS2000  UTM  (system  like
    CICS  on  IBM).  All that money was wasted because they never
    really used that feature -  after  it  was  implemented  they
    discovered that all Siemens warnings about "that is extremely
    dangerous" where true.

    Believe  it  or  not,  but  holding  pure   DB   locks   over
    "interaction"  in  an  interactive application isn't what you
    really want! The user might go for coffee, and such long time
    locks  are  not  what  the  locking mechanism of databases is
    intended for - so it's not optimized for this kind of  abuse!

    I've used a generic "lock-object" table in the past, and used
    a LISTEN/NOTIFY mechanism along with lookup in pg_listener to
    identify  dead  object locks with success. Need to dig out my
    old 4.2 works - tell me if you need  some  details  and  I'll
    strart to dig.


Jan

--

#======================================================================#
# It's easier to get forgiveness for being wrong than for being right. #
# Let's break this rule - forgive me.                                  #
#================================================== JanWieck@Yahoo.com #



В списке pgsql-general по дате отправления:

Предыдущее
От: JanWieck@t-online.de (Jan Wieck)
Дата:
Сообщение: Re: large text fields?
Следующее
От: Mark Stier
Дата:
Сообщение: optimization by removing the file system layer?