ふたつの川うるおう日記
2007-06-10 (Sun)
_ [Seasar][Admin] JIRAのライセンス切れてた
JIRAをバージョンアップしようと思ったら2006/05/26でライセンスが切れてた。更新の案内が来てたかもしれないけど、見つからないので更新手続きを問い合わせてます。。
[追記] 更新完了
_ [Server][Admin] mod_python 3.3.1 + ViewVC 1.0.4を動かすためのhandler修正
mod_python 3.3.1になってからViewVCがうまく動いてくれません。こんなエラーが出ちゃいます。
Phase: 'PythonHandler'
Handler: 'handler'
Traceback (most recent call last):
File "/usr/lib/python2.3/site-packages/mod_python/importer.py", line 1537, in HandlerDispatch
default=default_handler, arg=req, silent=hlist.silent)
File "/usr/lib/python2.3/site-packages/mod_python/importer.py", line 1229, in _process_target
result = _execute_target(config, req, object, arg)
File "/usr/lib/python2.3/site-packages/mod_python/importer.py", line 1128, in _execute_target
result = object(arg)
File "/_some_path_/viewvc/bin/mod_python/handler.py", line 24, in handler
module = apache.import_module(module_name, path=[path])
File "/usr/lib/python2.3/site-packages/mod_python/importer.py", line 296, in import_module
log, import_path)
File "/usr/lib/python2.3/site-packages/mod_python/importer.py", line 680, in import_module
execfile(file, module.__dict__)
File "/_some_path_/viewvc/bin/mod_python/viewvc.py", line 45, in ?
import viewvc
File "/usr/lib/python2.3/site-packages/mod_python/importer.py", line 991, in load_module
return _global_modules_cache.import_module(self.__file)
File "/usr/lib/python2.3/site-packages/mod_python/importer.py", line 488, in import_module
assert(file != parent_info.file), "Import cycle in %s." % file
AssertionError: Import cycle in /_some_path_/viewvc/bin/mod_python/viewvc.py.
これを解決するには/_some_path_/viewvc/bin/mod_python/handler.pyのモジュール検索部分を次のように修正。
try:
#module = apache.import_module(module_name, path=[path])
module = apache.import_module(module_name, path)
これで動きます。参考までに /viewvc で見れるようにするためのApache + mod_pythonの設定例は次のとおりです。
<IfModule mod_python.c>
ScriptAlias /viewvc "/_some_path_/viewvc/bin/mod_python/viewvc.py"
<Location /viewvc>
AddHandler mod_python .py
PythonPath "[r'/_some_path_/viewvc/bin/mod_python']+sys.path"
PythonHandler handler
PythonDebug On
AddDefaultCharset UTF-8
Options +Includes
</Location>
</IfModule>
- 動作確認環境
- CentOS 4.5
- Python 2.3.4
- Apache 2.2.0
- mod_python 3.3.1
- ViewVC 1.0.4
- Subversion 1.4.4
[2008/0510追記] ViewVC 1.0.5でも同じ修正が必要でした。
_ [Server][Admin] mod_python: Failed to create global mutexへの対応
mod_python絡みでもう1個。mod_pythonを組み込んでApacheを再起動するとerror_logに次のようなエラーメッセージが出る場合があります。
[error] (28)No space left on device: mod_python: Failed to create global mutex 5 of 8 (/tmp/mpmtx44815). [error] mod_python: We can probably continue, but with diminished ability to process session locks. [error] mod_python: Hint: On Linux, the problem may be the number of available semaphores, check 'sysctl kernel.sem' [notice] Apache/2.2.4 (Unix) mod_ssl/2.2.4 OpenSSL/0.9.8e DAV/2 mod_python/3.3.1 Python/2.3.4 SVN/1.4.3 configured -- resuming normal operations
メッセージに書かれているようにKernelのセマフォが足りないためです。
- 現在値の確認
- sysctl kernel.sem
kernel.sem = 250 32000 32 128
- 増やして反映
- 値は適当
cat << 'HERE_EOF' >> /etc/sysctl.conf # /proc/sys/kernel/sem kernel.sem = 512 32000 100 256 HERE_EOF sysctl -p
これでApacheを再起動してエラーが出なくなればOKです。エラーがまだ出るようなら値をもっと増やしてください。Oracleとか入れる時は結構でかい値に設定するようにドキュメントに書かれてたりします。
[]



> iozone<br>おぉ、すばやいです。結果期待してます。
「mod_python 3.3.1 + ViewVC 1.0.4を動かすためのhandler修正」の投稿は感謝です。Windows+Apache2.x+Python2.5+ViewVC1.0.5では動いている。<br>Thanks!