|Anonymous | Login | Signup for a new account||2013-05-25 17:44 WAT|
|Main | My View | View Issues | Change Log | Roadmap | My Account|
|View Issue Details|
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0001126||Denora||[All Projects] General||public||2010-01-11 00:31||2012-07-23 04:36|
|Priority||normal||Severity||minor||Reproducibility||have not tried|
|Target Version||1.5.1-git||Fixed in Version|
|Summary||0001126: Denora doesn't hold connection for longer than about 2 minutes|
|Description||For some reason, I can no longer get Denora to maintain a connection for longer than two minutes and some seconds. I can somehow manage to get a backtrace: http://pastebin.ca/1411544 [^]|
(bt full produces http://pastebin.ca/1411542 [^])
I'm not sure which side the problem is on. I am receiving this error with InspIRCd 1.2-rc3 on kubuntu 9.04.
A ping timeout appears to be involved (from IRCd in a log channel, network name removed in case it has to be):
LINK: Received end of netburst from stats.* (burst time: 5599 msecs)
STATS: Remote stats 'u' requested by StatServ (stats@services.*)
STATS: Remote stats 'U' requested by StatServ (stats@services.*)
LINK: Server stats.* has not responded to PING for 15 seconds, high latency.
LINK: Sent ERROR to stats.*: Ping timeout
LINK: Server stats.* split: Ping timeout
REMOTEOPER: User StatServ de-opered (by StatServ)
LINK: Netsplit complete, lost 1 users on 1 servers.
LINK: Connection to 'stats.*' failed.
LINK: Connection to 'stats.*' was established for 2m8s
This appears to be caused by Denora's complete lack of ability to pong the server while it does other stuff. :S
Worked around (read: not "fixed" or at least I wouldn't call it fixed) by adjusting serverpingfreq.
<circles.alchemyirc.net> LINK: Received end of netburst from stats.alchemyirc.net (burst time: 13 secs)
<circles.alchemyirc.net> LINK: Received end of netburst from stats.alchemyirc.net (burst time: 84 msecs)
It appears the problem is it trying to dump MySQL all at once WHILE it's connecting. (The MySQL server appears to have gone down between those, as evidenced by <StatServ> [seen] SQL needs to be enabled to load this module. and that site not loading.) I don't know if the server is slow, or what... when I can manage to keep it connected it generally doesn't disconnect later. Maybe stop trying to dump stuff while it's bursting, etc.?
|Additional Information||This was issue 544 in our old BT, reported by ElementAlchemist|
|Tags||No tags attached.|
|I did some coding... try if it works now :)|
denora IS threaded, IF you enable it also in the config:
(the threadcount arg makes things not working btw, so I might rip it out)
edited on: 2011-05-07 08:33
Just wanted to confirm this issue here.. I'm using the latest stable Denora (v1.4.5(February 7th, 2011)), and this is still an issue. I believe it has to do with MySQL, and the fact that Denora refuses to respond to ping while requesting stats and sending CTCP versions to all the connected clients. This issue seems to arise when the MySQL server has some latency (e.g. in another data center) and Denora can't keep up with the ircd ping requirements. One possible way of tackling this bug is to make Denora more thread-friendly.. Perhaps have a thread that handles ircd commands, and another to handle the database side. Just a thought..
tl;dr: Denora is kinda broken, and needs a bit of work to fix it 'properly'..
Another thing to think about is command priority.. perhaps have ircd functions > mysql functions. that could help.. but as far as I can see as of right now, Denora isn't multi-threaded, and it really /should/ be.
even by setting the inspircd link option: serverpingfreq, it still has issues with ping time outs. This tells me that Denora is not responding to the initial pings from the servers. Therefore, a possible work around is to delay the loading of the mysql module, until after a reliable connection has been established (perhaps after the two minute mark) and then have Denora do its fancy mysql work.
|2010-01-11 00:31||Hal9000||New Issue|
|2011-02-03 22:05||Hal9000||Target Version||1.4.5 => 1.5.0-git|
|2011-05-07 08:22||neobear||Note Added: 0005823|
|2011-05-07 08:33||neobear||Note Edited: 0005823||View Revisions|
|2012-07-06 11:54||OUTsider||Note Added: 0006179|
|2012-07-06 11:54||OUTsider||Assigned To||=> OUTsider|
|2012-07-06 11:54||OUTsider||Status||new => feedback|
|2012-07-17 16:43||OUTsider||Status||feedback => acknowledged|
|2012-07-18 13:39||OUTsider||Target Version||1.5.0-git => 1.5.1-git|
|2012-07-18 13:39||OUTsider||Note Deleted: 0006179|
|2012-07-22 06:06||OUTsider||Note Added: 0006230|
|2012-07-22 06:06||OUTsider||Status||acknowledged => feedback|
|2012-07-23 04:36||OUTsider||Note Added: 0006231|
|Copyright © 2000 - 2012 MantisBT Group|