はじめまして。
伊藤と申します。

kono@ie.u-ryukyu.ac.jp (Shinji KONO) writes:

> In article <nXixh.516$m22.260@news-virt.s-kddi1.home.ne.jp>, Masahiko Ito <m-ito@mbox.kyoto-inet.or.jp> writes
> >  o デッドロック状態をタイムアウト等に頼ること無く瞬時に判断し、クライ
> >  アントに通知します。
> 
> 共通で比較可能な resoruce id を持っているんだから、ユーザ側が、
> 必ず、その順序で lock すれば、デッドロック自体を避けることが
> できますよね。

仰る通りです。ただ、実際の運用の場面では、全てのユーザにロックの順序を
意識させるのは困難な状況も有り得るのと、あえてデッドロックを避けずに、
たまたま運悪くデッドロックを検知したプロセスにロールバックとリソースの
解放をさせる運用をした方がトランザクションの粒度が小さくなる場合もある
ように感じます。

> resource id 自体は、どうやって取って来るんでしょう?

クライアントがgrmdにロックを依頼する際にパラメータとして通知します。