Форум пользователей Impera CMS
Impera CMS - отличный движок для лёгкого создания интернет магазина.
Обладает невероятным количеством функций, необходимых в онлайн торговле.

Следить
Главная
19:52
28 авг
#
?
написал:

После написания твита через модуль ShopTweets сайт перестал открываться. Долго грузится, потом браузер пишет, что данные не получены. Не грузится ни клиентская сторона, ни админка.

До нажатия кнопки "Опубликовать" сайт работал нормально.

Подскажите, что случилось и как устранить?

09:54
29 авг
#
?
написал:

На утро уже не работал ни один из 4-х сайтов на хостинг пакете. После обращения к поставщику хостирнга выяснилось:

- Это происходит из-за файла сайт/files/ShopTweets/main.tdb, который занимает 20GB.

После удаления этого фала проблема исчезала, как и модуль ShopTweets.

Это уже наверняка вопрос к разработчику, почему возникла такя ситуация, как избегать ее в будующем?

10:06
29 авг
#
?
написал:

Подтверждаю. У меня тоже было. После нового твита сайт затупил.

Написал хостеру, он ответил, на моём сайте файл /********.com/public_html/files/ShopTweets/main.tdb занимает всё место дисковой квоты. Посоветовал удалить его из личного кабинета через менеджер файлов. Так и сделал, сайт перестал тупить, твиты все пропали, написал заново.

Отчего так, не знаю. Файл main.tdb это походу база данных твитов. Думаю в ShopTweets есть баг бесконечной записи твита, если в это время открыты твиты из другого окна.

12:53
16 сен
#
?
написал:
Андрей написал: До нажатия кнопки "Опубликовать" сайт работал нормально.
Подскажите, что случилось и как устранить?

Такой же баг как с вывеской технических работ. Неправильный анализ файлового хендла. Смотри objects\.any-models\Textdb.php на строке 340.

$handle = @ fopen($dbname, 'wb');
if (!$handle) return FALSE;

Исправь так.

$handle = @ fopen($dbname, 'ab');
if ($handle === false) return FALSE;

Строка 391.

if ($handle) {

Исправь так.

if ($handle !== false) {

Строка 469.

$handle = @ fopen($dbname, !is_file($dbname) ? 'wb' : 'rb+');
if ($handle) {

Исправь так.

$handle = @ fopen($dbname, !is_file($dbname) ? 'ab' : 'rb+');
if ($handle !== false) {

При конкурирующих обращениях файл надо создавать в режиме 'ab', чтобы предохранить результат опередившего конкурента.

Хендл надо проверять на соответствие типу, так как fopen возвращает resource, который в принципе может быть идентифицирован нолём.

Написание ответа

Перед публикацией рекомендуется использовать Предпросмотр, чтобы увидеть конечный вид сообщения.


Обратите внимание! Для противодействия спаму новые посты форума проявляются с задержкой от нескольких минут, пока не пройдут модерацию.