Ошибки базы данных - для Льюви

V

Viuga

#1
Помнится Льюви говорила, что коллекционирует ошибки базы данных :)
Так вот, при установке хака на денвере часто появляются ошибки, с некоторыми я даже справляться научилась:blush:
Может быть, она и ничем не примечательная, но такое я вижу впервые.:shok:

Код:
Ошибка базы данных в vBulletin 3.8.4:
Invalid SQL:	SELECT	post.*, post.username AS postusername, post.ipaddress AS ip, IF(post.visible = 2, 1, 0) AS isdeleted,	user.*, userfield.*, usertextfield.*,	icon.title as icontitle, icon.iconpath,	avatar.avatarpath, NOT ISNULL(customavatar.userid) AS hascustomavatar, customavatar.dateline AS avatardateline,customavatar.width AS avwidth,customavatar.height AS avheight,	spamlog.postid AS spamlog_postid,	deletionlog.userid AS del_userid, deletionlog.username AS del_username, deletionlog.reason AS del_reason,	editlog.userid AS edit_userid, editlog.username AS edit_username, editlog.dateline AS edit_dateline,	editlog.reason AS edit_reason, editlog.hashistory,	postparsed.pagetext_html, postparsed.hasimages,	sigparsed.signatureparsed, sigparsed.hasimages AS sighasimages,	sigpic.userid AS sigpic, sigpic.dateline AS sigpicdateline, sigpic.width AS sigpicwidth, sigpic.height AS sigpicheight,	IF(displaygroupid=0, user.usergroupid, displaygroupid) AS displaygroupid, infractiongroupid	, dbtech_thanks_statistics.*, post.userid, userban.userid AS is_banned, userban.bandate, userban.liftdate, userban.reason, user_who_banned.userid AS user_who_banned_userid, user_who_banned.username AS user_who_banned_username, GROUP_CONCAT(moderator_forum.title_clean ORDER BY moderator_forum.title_clean ASC SEPARATOR '#@_@#') AS moderator_in_forums_titles, GROUP_CONCAT(moderator.forumid ORDER BY moderator_forum.title_clean ASC SEPARATOR '#@_@#') AS moderator_in_forums_ids, last_infraction_level.warning, last_infraction.dateline AS infraction_dateline, last_infraction.expires AS infraction_expires, user_who_infracted.userid AS user_who_infracted_userid, user_who_infracted.username AS user_who_infracted_username, IF(ISNULL(last_infraction_level.points), last_infraction.points, last_infraction_level.points) AS last_infraction_level_points, last_infraction.customreason, last_infraction.infractionid, last_infraction_level.warning AS warning, last_infraction_level.infractionlevelid	FROM post AS post	LEFT JOIN user AS user ON(user.userid = post.userid)	LEFT JOIN userfield AS userfield ON(userfield.userid = user.userid)	LEFT JOIN usertextfield AS usertextfield ON(usertextfield.userid = user.userid)	LEFT JOIN icon AS icon ON(icon.iconid = post.iconid)	LEFT JOIN avatar AS avatar ON(avatar.avatarid = user.avatarid) LEFT JOIN customavatar AS customavatar ON(customavatar.userid = user.userid)	LEFT JOIN spamlog AS spamlog ON(spamlog.postid = post.postid)	LEFT JOIN deletionlog AS deletionlog ON(post.postid = deletionlog.primaryid AND deletionlog.type = 'post')	LEFT JOIN editlog AS editlog ON(editlog.postid = post.postid)	LEFT JOIN postparsed AS postparsed ON(postparsed.postid = post.postid AND postparsed.styleid = 3 AND postparsed.languageid = 7)	LEFT JOIN sigparsed AS sigparsed ON(sigparsed.userid = user.userid AND sigparsed.styleid = 3 AND sigparsed.languageid = 7)	LEFT JOIN sigpic AS sigpic ON(sigpic.userid = post.userid) LEFT JOIN dbtech_thanks_statistics AS dbtech_thanks_statistics ON(dbtech_thanks_statistics.userid = post.userid) LEFT JOIN userban AS userban ON (userban.userid = post.userid)
LEFT JOIN user AS user_who_banned ON (user_who_banned.userid = userban.adminid)
LEFT JOIN moderator AS moderator ON (moderator.userid = post.userid AND moderator.forumid != -1)
LEFT JOIN forum AS moderator_forum ON (moderator_forum.forumid = moderator.forumid)
LEFT JOIN infraction AS last_infraction ON (last_infraction.userid = post.userid)
LEFT JOIN infractionlevel AS last_infraction_level ON (last_infraction_level.infractionlevelid = last_infraction.infractionlevelid)
LEFT JOIN user AS user_who_infracted ON (user_who_infracted.userid = last_infraction.whoadded)	WHERE post.postid IN (0,38,39,40,41,42,43)
GROUP BY post.postid	ORDER BY post.dateline , last_infraction.infractionid DESC;
Ошибка MySQL : Column 'displaygroupid' in field list is ambiguous
Номер ошибки : 1052
Дата запроса : Monday, July 21st 2014 @ 05:59:49 PM
Дата ошибки : Monday, July 21st 2014 @ 05:59:49 PM
Скрипт : http://localka/showthread.php?t=6
Реферер : http://localka/forumdisplay.php?f=5
IP адрес : 127.0.0.1
Имя пользователя : Sue
Имя класса : vB_Database
Версия MySQL : 5.5.25



[OFF]Ветер, переименуй тему, если что не так. Специально для Льюви только потому что она говорила о коллекции ошибок БД.[/OFF]


Хак во вложении
 
Л

Льюви

#3
:D
если срочно - пиши в ЛС

Column 'displaygroupid' in field list is ambiguous
ambiguous - двусмысленный, неясный, неоднозначный
строка
IF(displaygroupid=0, user.usergroupid, displaygroupid) AS displaygroupid, infractiongroupid
слово displaygroupid в продукте нЕ фигурирует, такого запроса в хаке нет
 
W

Wmboard

#4
В копилку темы :)

Код:
Ошибка базы данных в vBulletin 3.8.1:
Invalid SQL:
SELECT * FROM post_thanks WHERE postid IN () ORDER BY username ASC;
Ошибка MySQL : You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ') ORDER BY username ASC' at line 1
Номер ошибки : 1064
Дата запроса : Tuesday, July 22nd 2014 @ 02:05:39 AM
Дата ошибки : Tuesday, July 22nd 2014 @ 02:05:39 AM
Скрипт : http://мойсайт.ru/post_thanks.php
Реферрер :
IP адрес : 208.43.252.203
Имя пользователя : Незарегистрированный
Имя класса : vB_Database
Версия MySQL :
 
Л

Льюви

#5
Veter, интересно...
как это гостя занесло напрямую в /post_thanks.php без параметров (и без реферрера)?
ошибка стабильна?
 
W

Wmboard

#6
Ошибка появляется периодически на новом хосте, и была стабильна на старом. По-моему даже с некоторыми вариациями... Точно не помню если честно... Как увижу, скину.
 
W

Wmboard

#8
Да, версия спасиб древняя :)
Надо бы обновить.

Вот еще разновидность этой ошибки

Код:
Ошибка базы данных в vBulletin 3.8.1:
Invalid SQL:
SELECT * FROM post_thanks WHERE postid IN () ORDER BY username ASC;
Ошибка MySQL : You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ') ORDER BY username ASC' at line 1
Номер ошибки : 1064
Дата запроса : Monday, August 11th 2014 @ 03:04:56 PM
Дата ошибки : Monday, August 11th 2014 @ 03:04:56 PM
Скрипт : http://www.мойсайт.ru/post_thanks.php
Реферрер : http://www.мойсайт.ru/post_thanks.php?do=findthanks&u=1800
IP адрес : 31.28.38.124
Имя пользователя : Незарегистрированный
Имя класса : vB_Database
Версия MySQL :
 
Л

Льюви

#9
Вот еще разновидность этой ошибки
о...
ты пробовал повторить? зайти гостем в профиль к этому u=1800 (или любому, у кого есть спасибы) и тыкнуть "найти сообщения с благодарностями"?
и второй вопрос: u=1800 физически существует?
 
W

Wmboard

#10
Не помню... но тыкать пробовал. Показывает даже у новых юзеров 10 постов со спасибками :D Хотя спасибок вообще нет.
Если перейти по ссылке, на post_thanks.php то ошибка БД появляется.


и второй вопрос: u=1800 физически существует?
Да. Это старый форум, там много юзеров.
 
Л

Льюви

#11
Показывает даже у новых юзеров 10 постов со спасибками :D Хотя спасибок вообще нет.
я бы уже всё перерыла, но эту ерунду исправила :D

Если перейти по ссылке, на post_thanks.php то ошибка БД появляется.
обновляй продукт
никакой запрос из адресной строки не должен вызывать ошибку БД

Да. Это старый форум, там много юзеров.
не-не... вопрос не в том, много ли юзеров
юзер с таким ИДом мог быть удалён (а запрос выполняется не по ссылке из профиля, а просто из адресной строки, например, по какой-то старой закладке, по проиндексированной ссылке... или просто бот перебирает все ссылки подряд, бывает)
запрос несуществующего ИДа, при отсутствии в продукте нужных проверок, может приводить именно к таким ошибкам
у тебя ведь явно не передаётся ИД юзера

а можешь закинуть мне на мыло дистрибутив своей версии "спасиб"?
 
W

Wmboard

#13
Льюви презент :)

Код:
Ошибка базы данных в vBulletin 4.2.0:
Invalid SQL: INSERT INTO postlog (postid, useragent, ip, dateline) VALUES (4, 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:17.0) Gecko/20100101 Firefox/17.0', 1315944973, 1421102478);
Ошибка MySQL : Duplicate entry '4' for key 'PRIMARY'
Номер ошибки : 1062
Дата запроса : Tuesday, January 13th 2015 @ 12:41:18 AM
Дата ошибки : Tuesday, January 13th 2015 @ 12:41:19 AM
Скрипт : http://мойфорум/newthread.php?do=postthread&f=9
Реферер : http://мойфорум/newthread.php?do=postthread&f=9
IP адрес : удалено
Имя пользователя : удалено
Имя класса : vB_Database
Версия MySQL :
 
Л

Льюви

#14
Veter, если тебе срочно - стукнул бы на мыло или в ЛС...
да, есть такой грешок, почему-то именно в 4.2.0, как правило, возникает после физического удаления постов
решение: зайти в ПМА и очистить таблицу postlog, там нет ничего ценного, она сама периодически чистится по крону
НО! при такой ошибке могут быть ещё глючки, а именно:
- пост, который не записался в postlog, не попадает в "Ленту активности", глобально (ни в общую форумную, ни в профиль автора поста)
- этот пост не попадает в таблицу searchcore_text, поэтому не будет выдаваться поиском
если такой пост один, то можно пренебречь... если несколько - надо принимать меры

но, вижу, ИД поста 4, это совсем нулёвый форум? можно пренебречь
 
W

Wmboard

#15
Veter, если тебе срочно - стукнул бы на мыло или в ЛС...

Льюви, мне по фиг, если честно :)
Я добавил в коллекцию. Спасибо за разъяснение.
Лента меня не интересует, внутренний поиск тоже.
Ошибка пришла 4 раза после запуска форума в работу, когда там зарегистрировался юзер и пытался чего-то написать :)

Форум да, нулевый :)
Теперь у меня две четверки :D
 
W

Wmboard

#16
Еще одна в коллекцию

Ошибка базы данных в vBulletin :

mysql_connect(): User 'dgsdgd' has exceeded the 'max_user_connections' resource (current value: 20)
/тут полный путь форума/includes/class_core.php on line 317

Ошибка MySQL :
Номер ошибки :
Дата запроса : Tuesday, March 17th 2015 @ 03:34:16 PM
Дата ошибки : Tuesday, March 17th 2015 @ 03:34:16 PM
РЎРєСЂРёРїС‚ : http://адрес форума/threads/270-урл темы
Р*еферер :
IP адрес : 54.174.196.106
Имя пользователя :
Имя класса : vB_Database
Версия MySQL :

Форум четверка. Подобная ошибка была ну... раза четыре :)
 
Л

Льюви

#17
Veter, сама по себе ошибка - не интересная, это просто превышение max_user_connections
большой наплыв посетителей? или длинные/залипнувшие запросы?
какое вообще выставлено значение для max_user_connections?

почему кодировка в письме не взялась... отдельный вопрос
 
W

Wmboard

#20
У меня на этом форуме пока тарифная планка ниже. Пока посещалки нет. Может быть из-за этого...
 
Get involved!

Here you can only see a limited number of comments. On СЕО Форум Вебмастеров you see all comments and all functions are available to you. To the thread