[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[cvs-ml 794] Re: cvs のプロセスが止まってkill できない
はらぐちです。
At 03 Oct 2000 14:31:29 +0900,
Tanaka Akira <akr@m17n.org> wrote:
> D というと NFS がらみという印象があるのですが、もし、checkout 先の
> directory が NFS なら、試しに local disk 上に checkout してみる、とい
> うのはいかがでしょうか?
local disk に checkout しても発生しています。
At Tue, 3 Oct 2000 13:48:11 +0900,
KOIE Hidetaka <hide@koie.org> wrote:
> vmstatl 1などで仮想メモリの活動を観測してみないことには
> 足りているかどうかはわかりません。
> 目安としてpageの欄の数字が恒常的に4ケタになってたら危険。
server: Solaris2.5.1, client: SunOS 4.1.4 で試してみたところ、
ps -alxw の出力は以下のようになっています。
server:
F UID PID PPID CP PRI NI SZ RSS WCHAN S TT TIME COMMAND
8 556 995 977 0 24 20 1904 1416 lofsfsty S ? 0:00 tcsh -c cvs server
8 556 998 995 0 58 2053440 7304 tmp_mdev S ? 0:45 cvs server
client:
F UID PID PPID CP PRI NI SZ RSS WCHAN STAT TT TIME COMMAND
20008000 556 9326 9294147 -1 01712 0 kernelmap DW p0 3:44 cvs -t -d :ext:forza:/sbr co -d harag
20008000 556 9335 9326 75 1 0 320 0 select IW p0 2:16 ssh forza cvs server
止まってしまった状態での server/client の vmstat 1 の出力は
以下のとおり。
server:
procs memory page disk faults cpu
r b w swap free re mf pi po fr de sr s0 s1 s6 -- in sy cs us sy id
0 0 0 3824 14160 0 29 13 0 1 0 0 1 0 0 0 129 223 55 2 1 97
0 0 0 252568 12320 0 2 0 0 0 0 0 0 0 0 0 108 70 31 0 0 100
0 0 0 252568 12320 0 0 0 0 0 0 0 0 0 0 0 108 57 26 0 0 100
0 0 0 252568 12320 0 0 0 0 0 0 0 0 0 0 0 119 70 39 0 1 99
0 0 0 252568 12320 0 0 0 0 0 0 0 7 0 0 0 149 71 47 0 0 100
0 0 0 252568 12320 0 0 0 0 0 0 0 0 0 0 0 109 63 36 0 0 100
0 0 0 252568 12320 0 0 0 0 0 0 0 0 0 0 0 116 83 36 0 0 100
0 0 0 252568 12320 0 0 0 0 0 0 0 0 0 0 0 107 63 30 0 0 100
0 0 0 252568 12320 0 0 0 0 0 0 0 0 0 0 0 110 72 33 0 0 100
0 0 0 252568 12320 0 0 0 0 0 0 0 0 0 0 0 112 67 35 0 0 100
0 0 0 252568 12320 0 0 0 0 0 0 0 0 0 0 0 109 63 36 0 0 100
0 0 0 252568 12320 0 0 0 0 0 0 0 0 0 0 0 107 57 28 0 0 100
0 0 0 252568 12320 0 0 0 0 0 0 0 0 0 0 0 112 63 33 0 0 100
0 0 0 252568 12320 0 0 0 0 0 0 0 0 0 0 0 111 64 39 0 0 100
0 0 0 252568 12320 0 0 0 0 0 0 0 0 0 0 0 128 193 61 0 0 100
0 0 0 252568 12320 0 0 0 0 0 0 0 9 0 0 0 181 73 46 0 0 100
0 0 0 252568 12320 0 0 0 0 0 0 0 17 0 0 0 207 87 37 0 2 98
0 0 0 252568 12320 0 0 0 0 0 0 0 0 0 0 0 107 67 29 0 0 100
0 0 0 252568 12320 0 0 0 0 0 0 0 0 0 0 0 115 58 32 0 0 100
client:
procs memory page disk faults cpu
r b w avm fre re at pi po fr de sr d0 d1 d2 d3 in sy cs us sy id
0 0 0 0 71388 0 3 3 0 0 0 0 1 0 1 1 103 565 60 7 2 91
0 0 0 0 71388 0 0 0 0 0 0 0 0 0 0 0 6 110 11 0 0 100
0 0 0 0 71388 0 12 0 0 0 0 0 27 0 0 0 34 96 18 8 2 90
0 0 0 0 71328 0 9 0 0 0 0 0 0 0 0 0 34 86 18 0 0 100
0 0 0 0 71328 0 7 0 0 0 0 0 0 0 0 0 27 76 16 0 0 100
0 0 0 0 71328 0 5 0 0 0 0 0 0 0 0 0 23 73 15 0 0 100
0 0 0 0 71328 0 4 0 0 0 0 0 0 0 0 0 19 68 14 0 0 100
0 0 0 0 71328 0 3 0 0 0 0 0 0 0 0 0 16 63 13 0 0 100
0 0 0 0 71284 0 2 0 0 0 0 0 0 0 0 0 13 58 12 0 0 100
0 0 0 0 71284 0 1 0 0 0 0 0 0 0 0 0 11 55 11 0 0 100
0 0 0 0 71284 0 0 0 0 0 0 0 0 0 0 0 9 52 10 0 0 100
0 0 0 0 71284 0 0 0 0 0 0 0 0 0 0 0 9 49 9 0 0 100
0 0 0 0 71284 0 0 0 0 0 0 0 0 0 0 0 8 47 8 0 0 100
0 0 0 0 71268 0 0 0 0 0 0 0 0 0 0 0 8 46 8 0 0 100
0 0 0 0 71268 0 0 0 0 0 0 0 0 0 0 0 7 44 8 0 0 100
0 0 0 0 71268 0 0 0 0 0 0 0 0 0 0 0 6 43 8 0 0 100
0 0 0 0 71268 0 0 0 0 0 0 0 0 0 0 0 6 42 8 0 0 100
0 0 0 0 71268 0 0 0 0 0 0 0 0 0 0 0 5 41 8 0 0 100
0 0 0 0 71268 0 0 0 0 0 0 0 0 0 0 0 4 40 8 0 0 100
> クライアントがメモリ不足だとすると
> 2MBのプロセスがswap outされるのは
> メモリがかなり逼迫していると考えられます。
vmstat の出力を見るかぎり、特にメモリ不足が発生しているとは
思えないのですが、いかがでしょうか。また、swap についても、
server:
total: 96248k bytes allocated + 7720k reserved = 103968k used, 252576k available
client:
13292k allocated + 1768k reserved = 15060k used, 258536k available
となっており、充分余裕がありそうです。
ちなみに -t オプションを付けて checkout を実行したのですが、
トレースを見ると
-> unlink_file_dir(some_path/some_directory)
-> rename(CVS/Entries.Backup,CVS/Entries)
-> unlink(CVS/Entries.Log)
-> rename(CVS/Entries.Backup,CVS/Entries)
-> unlink(CVS/Entries.Log)
-> rename(CVS/Entries.Backup,CVS/Entries)
-> unlink(CVS/Entries.Log)
...
というのを延々と繰り返している途中で止まっています。
> サーバで/tmpにtmpfs(memory based filesystem)をつかっていると
> 余計にメモリを喰うので/tmp用のディスクを与えるか、
> サーバ側cvsの設定で/tmp以外のパーティションをつかうようにするかします。
とりあえず -T オプションを付けて試してみることにします。
--
原口 秀剛