"Если вдруг открылся люк, не пугайся, это глюк!" (с) Если что-то работает не так, вы нашли ошибку или опечатку в программе — вам в этот раздел
Аватара пользователя
ChimMAG
Постоянно вылетает клиент чата. Поработает минут 10, но при переписке почти сразу, причём не сама программа, а происходит дисконнект. Если в консоле (в чате) ввести команду repairdb, то программа вылетает в ошибкой на базу данных, но потом запускается нормально. На почту высылаю логи. Сам чат переустанавливал. Не помогает. Даже в своё время изменял UIN - всё тоже самое.
Аватара пользователя
Алексей Пикуров
Вылетает — это происходит ошибка, у вас же отключение от сервера. Я изменил название темы. Команды repairdb больше нет.

Пришлите полный файл mcserv.log, где видно, что клиент часто отключается от сервера, а не вырезанный кусочек.
Аватара пользователя
ChimMAG
Это не вырезанный кусок. Это весь. Я после переустановки удалил его, что бы заново всё писалось. И это всё.
На сервере в сетевых ошибках имеется следующее:


[09:32:02:588 100]: Ошибка #0085: сетевая ошибка (WINSOCK 10054) "Connection reset by peer", UIN: "223", IP: "192.168.11.44", ClientType: "win32", HWID: "4064167B0045F33096341945F40C41958413AC4116F201C2A68"

[10:47:37:788 183]: Ошибка #0085: сетевая ошибка (WINSOCK 10054) "Connection reset by peer", UIN: "223", IP: "192.168.11.44", ClientType: "win32", HWID: "4064167B0045F33096341945F40C41958413AC4116F201C2A68"

[11:10:00:454 184]: Ошибка #0085: сетевая ошибка (WINSOCK 10054) "Connection reset by peer", UIN: "223", IP: "192.168.11.44", ClientType: "win32", HWID: "4064167B0045F33096341945F40C41958413AC4116F201C2A68"

Серверные ошибки и прочее - пусто.
Аватара пользователя
Алексей Пикуров
Сервер видит, что клиент отключается сам. Либо что-то между ними отключает клиента.

Нужен лог клиента, что конкретно он пишет при отключении, по тому клиентскому кусочку, что вы прислали, непонятно.
Аватара пользователя
ChimMAG
Выслал сегодняшний.
Аватара пользователя
Алексей Пикуров
Кусок вашего лога:

Код: Выделить всё
[2019.05.31 08:42:15] [ERROR] Сетевая ошибка №10054: "Connection reset by peer"
[2019.05.31 08:42:17] [STOP] *** Пользователь отключен от сервера
[2019.05.31 08:42:27] [INFO] Поиск сервера MyChat...
[2019.05.31 08:42:27] [INFO] Подключение к серверу PDC (IP 192.168.28.2, порт 2004)...
[2019.05.31 08:42:34] [ERROR] Сетевая ошибка №10060: "Connection timed out"
[2019.05.31 08:42:34] [INFO] Подключение к альтернативному серверу PDC (IP pdc, порт 2004)...
[2019.05.31 08:43:01] [INFO] Подключение к серверу PDC (IP pdc, порт 2004)...
[2019.05.31 08:43:01] [ERROR] Сетевая ошибка №11001: "Host not found"
[2019.05.31 08:43:02] [STOP] *** Пользователь отключен от сервера
[2019.05.31 08:43:12] [INFO] Поиск сервера MyChat...
[2019.05.31 08:43:12] [INFO] Подключение к серверу PDC (IP 192.168.28.2, порт 2004)...
[2019.05.31 08:43:19] [ERROR] Сетевая ошибка №10060: "Connection timed out"

Клиент отключен от сервера, его что-то отключило со стороны сервера, это сетевая ошибка Windows. Затем клиент пробует альтернативный IP из настроек, вы вписали "pdc", но этот адрес не резолвится и вы получаете ошибку "host not found". Либо DNS имя некорректное, либо DNS сервер не работает в этот момент.

Затем клиент подставляет старый IP 192.168.28.2 и получает ошибку тайм-аута соединения. Если адрес правильный, проблема в вашей сети, разбирайтесь, почему нет коннекта на этот IP в этот момент времени.

Затем коннект всё же происходит:

Код: Выделить всё
[2019.05.31 08:48:38] [INFO] Подключение к серверу PDC (IP pdc, порт 2004)...
[2019.05.31 08:48:39] Добро пожаловать в чат ООО "Адверс"

Получается, сеть заработала и клиент законнектился.

Разбирайтесь, что у вас происходит с сетью на этом компьютере.
Аватара пользователя
ChimMAG
Получается, сеть заработала и клиент законнектился.

Разбирайтесь, что у вас происходит с сетью на этом компьютере.


В том-то и проблема, что сеть не рвётся, всё работает. Всё, кроме чата. Я удалённо подключаюсь и вижу, как чат не может подключиться раз за разом, потом почему-то начинает подключаться, а потом через пару минут (или при получении сообщения) опять ёк. Пинги ни разу не пропадают, на всех других машинах в этой подсети тоже всё хорошо. И почему он падал при попытке починить базу? Может всё дело в ней? Например приходит какое сообщение (или мы отправляем), идёт работа с базой, а там что-то не так в государстве Датском... В общем идей нет, что делать.
Аватара пользователя
Алексей Пикуров
Я не спорю с вами, а читаю, что написано в протоколах. Пинг и связь клиента с сервером по TCP — это не одно и тоже, вы же понимаете.
И почему он падал при попытке починить базу?

Потому что этой команды больше нет, а обработчик мы забыли убрать.