tel8618217223380 / oasychev-moodle-plugins

Automatically exported from code.google.com/p/oasychev-moodle-plugins
0 stars 0 forks source link

Зависание при построение потока лексем #336

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
Данный код вызывает зависания сервера:
require_once($CFG->dirroot.'/question/type/correctwriting/enum_analyzer.php');
require_once($CFG->dirroot.'/question/type/correctwriting/string_pair.php');
require_once($CFG->dirroot.'/blocks/formal_langs/language_base.php');
require_once($CFG->dirroot.'/question/type/correctwriting/processed_string.php')
;
require_once($CFG->dirroot.'/blocks/formal_langs/language_simple_english.php');

$lang = new block_formal_langs_language_simple_english;
$string = 'Today I meet some friends and my neighbors , with their three 
children : Victoria , Carry and Tom .';
$correctanswer = $lang->create_from_string($string, 
'qtype_correctwriting_proccesedstring');
var_dump($correctanswer->stream);

mamontovdp-mariabirvg-correctwriting2 + mamontovdp-mariabirvg-formallangs.

Original issue reported on code.google.com by vad23k...@gmail.com on 10 Mar 2015 at 5:10

GoogleCodeExporter commented 9 years ago

Original comment by vad23k...@gmail.com on 10 Mar 2015 at 6:44

GoogleCodeExporter commented 9 years ago
У меня в репозитории нет ни enum_analyzer.php ни 
processed_string.php. Если убрать ненужное и 
оставить просто $lang->create_from_string($string);, то у 
меня все работает. Скорее всего, что-то у 
тебя.

Сделай дебаг с логированием, где виснет.

Original comment by mamontov...@gmail.com on 12 Mar 2015 at 7:41

GoogleCodeExporter commented 9 years ago
[deleted comment]
GoogleCodeExporter commented 9 years ago
Последняя строка виснет 

Moodle 2.9dev (Build: 20150305), mariadb, 
b90f98dadee06535fce23cb865690f4f9da15271
PHPUnit 3.7.38 by Sebastian Bergmann.

Configuration read from /var/www/moodle/phpunit.xml

PHP Fatal error:  Allowed memory size of 2147483648 bytes exhausted (tried to 
allocate 77 bytes) in 
/var/www/moodle/vendor/phpunit/phpunit/PHPUnit/Util/ErrorHandler.php on line 130

Fatal error: Allowed memory size of 2147483648 bytes exhausted (tried to 
allocate 77 bytes) in 
/var/www/moodle/vendor/phpunit/phpunit/PHPUnit/Util/ErrorHandler.php on line 130

Original comment by vad23k...@gmail.com on 12 Mar 2015 at 9:25

GoogleCodeExporter commented 9 years ago
Вадим, этот баг ко мне не относится. Я 
воспроизвел в точности твой случай, за 
исключением использования 
qtype_correctwriting_proccesedstring на своем клоне. У меня 
ничего не виснет. Если не веришь- подойди в 
понедельник.  У тебя вообще по сообщению 
оно падает в PHPUnit, что не верно. 

Разбирайся, дебажь глубже. 

Тем более, что судя по всему, у тебя мог 
съесть память кто-то до этого. Попробуй 
вставить перед вызовом gc_collect_cycles().

Также сообщи мне версию PHP. Валерий недавно 
нашел баг, который ломает 
лексер:https://bugs.php.net/bug.php?id=68057 в PHP 5.6 .

Original comment by mamontov...@gmail.com on 13 Mar 2015 at 5:58

GoogleCodeExporter commented 9 years ago
Я пошел дебажить. Версия PHP 5.6. Функция 
вернула 0.

Original comment by vad23k...@gmail.com on 13 Mar 2015 at 6:59

GoogleCodeExporter commented 9 years ago
Сделай даунгрейд у себя до версии 5.5 для 
начала. Проблема, описанная Валерием до сих 
пор не решена.

Original comment by mamontov...@gmail.com on 13 Mar 2015 at 7:04

GoogleCodeExporter commented 9 years ago
после дайнгрейда виснет только 1 тест. 
gc_collect_cycles() вернул 19308. Буду искать проблему 
в тесте.

Original comment by vad23k...@gmail.com on 16 Mar 2015 at 8:51

GoogleCodeExporter commented 9 years ago
Какой прогресс по этой проблеме? Может её 
вообще лучше закрыть, раз проблема не в 
зависании.

Original comment by mamontov...@gmail.com on 6 May 2015 at 6:25

GoogleCodeExporter commented 9 years ago

Original comment by vad23k...@gmail.com on 6 May 2015 at 6:31

GoogleCodeExporter commented 9 years ago

Original comment by oasyc...@gmail.com on 24 May 2015 at 9:54