ChatHistorySQL, История чата |
Здравствуйте, гость ( Вход | Регистрация )
ChatHistorySQL, История чата |
24.10.2011, 17:19
Сообщение
#21
|
|
Наруто на аваторке Группа: Пользователи Сообщений: 2 606 Регистрация: 11.10.2008 Из: Харькова Пользователь №: 771 Спасибо сказали: 774 раза |
sergius, нет, не ждать пока тебе дадут ссылку, а самому взять и в поиске на форуме найти.
|
|
|
24.10.2011, 18:43
Сообщение
#22
|
|
Начинающий Группа: Пользователи Сообщений: 23 Регистрация: 21.4.2009 Пользователь №: 3 131 Спасибо сказали: 0 раз |
|
|
|
24.10.2011, 18:48
Сообщение
#23
|
|
Наруто на аваторке Группа: Пользователи Сообщений: 2 606 Регистрация: 11.10.2008 Из: Харькова Пользователь №: 771 Спасибо сказали: 774 раза |
sergius, в полне нормальный, а я о ссылке на библиотеке к новой птоке, где скачал птоку там и библиотеки бери
|
|
|
24.10.2011, 23:07
Сообщение
#24
|
|
Начинающий Группа: Пользователи Сообщений: 23 Регистрация: 21.4.2009 Пользователь №: 3 131 Спасибо сказали: 0 раз |
Там где скачал птоку, там библиотек нет, а те что здесь пока не удалось запустить.
|
|
|
24.10.2011, 23:20
Сообщение
#25
|
|
Местная ТехПоддержка Группа: Администраторы Сообщений: 1 875 Регистрация: 18.7.2008 Из: Моск. Обл, г. королев, район Болшево Пользователь №: 221 Спасибо сказали: 220 раз |
и не удастся. Проси сетапера собрать либу, ибо ППК MySQL, помнится, не собирал.
|
|
|
28.11.2011, 12:59
Сообщение
#26
|
|
Site Reliability Engineer Группа: Модераторы Сообщений: 1 772 Регистрация: 27.6.2009 Из: Чувашия, г. Чебоксары Пользователь №: 3 719 Спасибо сказали: 479 раз |
Мб кому нужно будет, добавил возможность выбора через меню, получать чат лог при входе на хаб или нет.
+ багфикс из #9 поста.
Прикрепленные файлы
|
|
|
20.8.2012, 23:47
Сообщение
#27
|
|
Освоившийся участник Группа: Пользователи Сообщений: 276 Регистрация: 23.3.2010 Из: РФ Смоленск Пользователь №: 6 429 Спасибо сказали: 60 раз |
по какой-то магии, работающий энное время скрипт начал выдавать ошибку...
Код 21.08.2012 00:23:03 - /home/SmolHUB/ptokax/scripts/ChatHistorySQL.lua:402: LuaSQL: Error executing query. MySQL: MySQL server has gone away с завидной периодичностью, мускуль не падал, скрипт должен сам пере подключатся если конекта нет, но он этого не делает, скрипт не вылетает продолжает работать. 402 строчка Код local cur = assert(con:execute("SELECT `time` FROM `"..tDBCfg.Prefix.."correct_time` WHERE `nick`='"..nick:sqlescape().."' LIMIT 1")) функция целиком Код function GetCorrTime(nick)
local cur = assert(con:execute("SELECT `time` FROM `"..tDBCfg.Prefix.."correct_time` WHERE `nick`='"..nick:sqlescape().."' LIMIT 1")) if cur:numrows() > 0 then return tonumber(cur:fetch({},"a").time) end return 0 end |
|
|
3.10.2015, 13:45
Сообщение
#28
|
|
Начинающий Группа: Пользователи Сообщений: 10 Регистрация: 8.4.2014 Пользователь №: 12 382 Спасибо сказали: 0 раз |
по какой-то магии, работающий энное время скрипт начал выдавать ошибку... Код 21.08.2012 00:23:03 - /home/SmolHUB/ptokax/scripts/ChatHistorySQL.lua:402: LuaSQL: Error executing query. MySQL: MySQL server has gone away с завидной периодичностью, мускуль не падал, скрипт должен сам пере подключатся если конекта нет, но он этого не делает, скрипт не вылетает продолжает работать. 402 строчка Код local cur = assert(con:execute("SELECT `time` FROM `"..tDBCfg.Prefix.."correct_time` WHERE `nick`='"..nick:sqlescape().."' LIMIT 1")) функция целиком Код function GetCorrTime(nick) local cur = assert(con:execute("SELECT `time` FROM `"..tDBCfg.Prefix.."correct_time` WHERE `nick`='"..nick:sqlescape().."' LIMIT 1")) if cur:numrows() > 0 then return tonumber(cur:fetch({},"a").time) end return 0 end Такая же проблема, историю выдает только после запуска скрипта при первом подключении к mysql. Через время подключиться к mysql уже не может |
|
|
3.10.2015, 14:22
Сообщение
#29
|
|
Site Reliability Engineer Группа: Модераторы Сообщений: 1 772 Регистрация: 27.6.2009 Из: Чувашия, г. Чебоксары Пользователь №: 3 719 Спасибо сказали: 479 раз |
|
|
|
3.10.2015, 15:27
Сообщение
#30
|
|
Начинающий Группа: Пользователи Сообщений: 10 Регистрация: 8.4.2014 Пользователь №: 12 382 Спасибо сказали: 0 раз |
Saymon21, Это читал, просто я не силен в этом чтоб проанализировать код и понять причину
сначала в коде нашел 2 строчки с закрытием f:close() и cur:close() и удалил их чтоб не закрывали соединение. Не получилось. добавил в проблемную строчку cur:close() Код function GetCorrTime(nick) local cur = assert(con:execute("SELECT `time` FROM `"..tDBCfg.Prefix.."correct_time` WHERE `nick`='"..nick:sqlescape().."' LIMIT 1")) if cur:numrows() > 0 then return tonumber(cur:fetch({},"a").time) end cur:close() return 0 end вышла другая ошибка Lost connection to MySQL server during query |
|
|
3.10.2015, 16:04
Сообщение
#31
|
|
Site Reliability Engineer Группа: Модераторы Сообщений: 1 772 Регистрация: 27.6.2009 Из: Чувашия, г. Чебоксары Пользователь №: 3 719 Спасибо сказали: 479 раз |
Тогда прочитай ещё раз, пока не поймёшь, что там написано.
Не всегда дело только в скриптах. |
|
|
3.10.2015, 16:20
Сообщение
#32
|
|
Начинающий Группа: Пользователи Сообщений: 10 Регистрация: 8.4.2014 Пользователь №: 12 382 Спасибо сказали: 0 раз |
Saymon21, ну так там написано:
Если это получено в скрипте, то достаточно просто повторить запрос от клиента, чтобы соединение автоматически восстановилось. В инструкции прочитал как делать запрос Метод выполнения SQL запроса к базе данных: conn:execute("запрос") он в коде есть Код function GetCorrTime(nick) local cur = assert(con:execute("SELECT `time` FROM `"..tDBCfg.Prefix.."correct_time` WHERE `nick`='"..nick:sqlescape().."' LIMIT 1")) if cur:numrows() > 0 then return tonumber(cur:fetch({},"a").time) end cur:close() return 0 end Сам MySQL работает без проблем, помимо хаба на хостинге работает сайт с чатом |
|
|
3.10.2015, 16:27
Сообщение
#33
|
|
Site Reliability Engineer Группа: Модераторы Сообщений: 1 772 Регистрация: 27.6.2009 Из: Чувашия, г. Чебоксары Пользователь №: 3 719 Спасибо сказали: 479 раз |
Сайту, особенно если тот на пхп, может быть и пофиг на подобные вещи. Это раз. Два: Сделай условие на Check()
|
|
|
3.10.2015, 16:57
Сообщение
#34
|
|
Начинающий Группа: Пользователи Сообщений: 10 Регистрация: 8.4.2014 Пользователь №: 12 382 Спасибо сказали: 0 раз |
Saymon21, поставил wait_timeout 7200 (2 часа) в MYSQL
Т.е. будет работать если в течении 2-х часов будет запрос на историю Это конечно не решение, посмотрю на нагрузку. Минут 10 работает без проблем на данный момент UPD Проблема решена, нагрузка не возросла Saymon21 спасибо вам |
|
|
16.10.2017, 19:42
Сообщение
#35
|
|
Продвинутый участник Группа: Пользователи Сообщений: 176 Регистрация: 11.7.2008 Пользователь №: 171 Спасибо сказали: 182 раза |
Saymon21, поставил wait_timeout 7200 (2 часа) в MYSQL Т.е. будет работать если в течении 2-х часов будет запрос на историю Это конечно не решение, посмотрю на нагрузку. Минут 10 работает без проблем на данный момент UPD Проблема решена, нагрузка не возросла Saymon21 спасибо вам Я решил проблему проверкой функции Check() по таймеру (10 минут). Скрипт безусловно хорош, но я заметил некую странность (может у меня одного лыжи не едут?). При выводе запроса лога `Сообщения за указанную дату` скрипт выдавал лог с произвольного часа этого дня, захватывая следующий день. Решил проблему так: Заменил строку Код t = {year = tonumber(y),month = tonumber(m),day = tonumber(d)} На Код t = {year = tonumber(y),month = tonumber(m),day = tonumber(d),hour = 0,min = 0,sec = 0} Кстати, на Debian пришлось изменить строку Код require "luasql.mysql" На Код local luasql = require "luasql.mysql" P.S. Спасибо Kinsler за помощь. |
|
|
Похожие темы
Тема | Ответов | Автор | Просмотров | Последнее сообщение | |
---|---|---|---|---|---|
ChatHistorySQL История чата (MySQL) |
26 | Saymon21 | 31 740 | 24.6.2013, 15:02 Посл. сообщение: Saymon21 | |
ChatHistorySQL История чата |
18 | Vizunchik | 16 750 | 5.9.2012, 8:37 Посл. сообщение: ShadoWx | |
От: ChatHistorySQL От темы с ID: 3682 |
2 | Kingston | 5 416 | 9.11.2010, 12:08 Посл. сообщение: WINS |
|
Сейчас: 23.11.2024, 10:04 |