Moodle2.1がリリースされましたね

Moodle2.1がリリースされましたね

- Minoru Akiyama の投稿
返信数: 5

秋山です

moodle2.1がリリースされたので、早速、気になっていたmoodle2.1ならではの機能を試してみました。

1.moodle1.9のバックアップファイルをリストアできる
これは日本語名のファイルがあるとだめでした。
2.同じコース内のモジュールインスタンスをインポートできる
これはうまく行くようですが、すべての活動モジュールで試したわけではありません
3.課題の一括ダウンロードができる
zipファイルの名前は活動名(日本語)になり、問題ないのですが、個々の学生の提出物は学生の姓名が付けられ、これが文字化けします。簡単に直せると思います。

このほかにもスマートフォンでmobileができるようですがまだ試していません。

評点平均:有益(Useful) (2)
Minoru Akiyama への返信

Re: Moodle2.1がリリースされましたね

- Tatsuya Shirai の投稿

ご報告ありがとうございます。

Moodle1.9のコースのバックアップがリストアできるというのはいい話ですね。万が一、Moodle1.9からのマイグレーションに失敗していたとしても復旧できる可能性が出ますね。すこしマイグレーションに対する恐怖心が薄れました。ただし、しっかりとバックアップが取れていることが前提ですが。

課題の一括ダウンロード自体は助かる機能ですね。河野さんのパッチで三重大版やfs_moodleは対応していたのですが、Moodle2.0からは本家で対応。これで仕事がひとつ片付いた感じです。

Minoru Akiyama への返信

Re: Moodle2.1がリリースされましたね

- T N の投稿

試みに、2.0.3から2.1にアップグレードしてみて、気になったところを挙げます。

1. quiz attemptのアップグレードに10時間以上かかる上、以下のエラーメッセージが出力される。

Coding error detected, it must be fixed by a programmer

2. 小テストにおいて「得点」、「送信」等の表示が日本語化されない。

3. 穴埋め問題でMULTICHOICEを作り、保存すると、「データベースの書き込み中にエラーが発生しました。」となり、正しく問題を作れない。

4. 既存の、MULTICHOCEのある穴埋め問題を受験しようとしたり、表示しようとするとフリーズする。

環境は、Fedora 14, PHP5.3.5, Apache2.1.7です。

T N への返信

Re: Moodle2.1がリリースされましたね

- T N の投稿

本格的に、2.0.3から2.1.1+にアップグレードしました。少し、状況を列挙します。

1. quiz attemptのアップグレード時に以下のメッセージが表示され、終了までに30時間以上驚き掛かった。
コーディングエラーが検出されました。プログラマによって修正される必要があります: Two inconsistent open states for question session 430. !!
PHP Notice:  Undefined offset: 234 in /var/www/html/moodle/question/type/multianswer/db/upgradelib.php on line 106
PHP Notice:  Undefined offset: 234 in /var/www/html/moodle/question/type/multianswer/db/upgradelib.php on line 96
以下省略

2. 相変わらず、小テストにおいて「得点」、「送信」等の表示が日本語化されない。アップグレードのみならず、新規インストールでも同様悲しい

3. 穴埋め問題におけるペナルティの設定が無くなった。ペナルティが無くなったにも拘わらず、アダプティブモードで以前設定したペナルティが適用される。しかも、穴毎に適用されるのではなく、一つでも間違えると全問に適用されるので、ちょっと間違えただけで大きな減点となる。ただし、アダプティブモード(ペナルティなし)という設定が新設された。



T N への返信

Re: Moodle2.1がリリースされましたね

- Minoru Akiyama の投稿

秋山です

昨日,2.0.3から2.1.1+にアップグレードした某サイトでは,10時間かかったことはかかりましたが,900弱のquizの受験データを無事コンバートできました.

T Nさんがおっしゃるような問題は起きておりません.某サイトでは,CentOS5.6で標準のapacheとMySQLにPHPでなくPHP53をインストールしています.

moodle2.1の問題ではなく,何か他の』問題があるのではないでしょうか?ApacheやMySQL,PHPのバージョンはどうなっていますでしょうか?

Minoru Akiyama への返信

Re: Moodle2.1がリリースされましたね

- T N の投稿

バージョンは以下の様になっています。
Apache: httpd-2.2.17-1.fc14.x86_64
MySQL: mysql-5.1.58-1.fc14.x86_64
PHP: php-5.3.6-1.fc14.x86_64

アップグレード後にMySQLのslow-queriesのログを取ってみますと、10秒以上かかるquizがらみのqueryがごろごろ出てきました。アップグレードの際は、ログを取っていなかったのですが、根は同じところにあるのではないかと思い、自分なりに調べているところでした。いずれご相談申し上げようと思っていましたが、とりあえず、ログの一部をご覧ください。

# Time: 110812  9:20:01
# User@Host: XXXXX[YYYYY] @ localhost []
# Query_time: 57.798241  Lock_time: 0.000184 Rows_sent: 500  Rows_examined: 3276
SET timestamp=1313108401;
SELECT
                CONCAT(u.id, '#', COALESCE(quiza.attempt, 0)) AS uniqueid,
(CASE WHEN quiza.id = (
                    SELECT MIN(qa2.id)
                    FROM mdl_quiz_attempts qa2
                    WHERE qa2.quiz = quiza.quiz AND
                        qa2.userid = quiza.userid AND
                        COALESCE(qa2.sumgrades, 0) = (
                            SELECT MAX(COALESCE(qa3.sumgrades, 0))
                            FROM mdl_quiz_attempts qa3
                            WHERE qa3.quiz = quiza.quiz AND
                                qa3.userid = quiza.userid
                        )
                    ) THEN 1 ELSE 0 END) AS gradedattempt,
                quiza.uniqueid AS usageid,
                quiza.id AS attempt,
                u.id AS userid,
                u.idnumber,
                u.firstname,
                u.lastname,
                u.picture,
                u.imagealt,
                u.institution,
                u.department,
                u.email,
                quiza.sumgrades,
                quiza.timefinish,
                quiza.timestart,
                CASE WHEN quiza.timefinish = 0 THEN null
                     WHEN quiza.timefinish > quiza.timestart THEN quiza.timefinish - quiza.timestart
                     ELSE 0 END AS duration, COALESCE((
                                SELECT MAX(qqr.regraded)
                                  FROM mdl_quiz_overview_regrades qqr
                                 WHERE qqr.questionusageid = quiza.uniqueid
                          ), -1) AS regraded
                FROM
mdl_user u
LEFT JOIN mdl_quiz_attempts quiza ON
                                    quiza.userid = u.id AND quiza.quiz = '1350'
                WHERE quiza.id IS NOT NULL AND quiza.preview = 0
                ORDER BY timefinish DESC, quiza.id ASC LIMIT 0, 500;


この記事が参考になりました。ありがとうございました。