Bug 116541 - Compress join/part messages during netsplit conditions
Summary: Compress join/part messages during netsplit conditions
Status: CONFIRMED
Alias: None
Product: konversation
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: openSUSE Linux
: NOR wishlist
Target Milestone: ---
Assignee: Konversation Developers
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-11-17 03:23 UTC by david powell
Modified: 2013-04-14 23:26 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
Irssi Netsplit Detection (3.94 KB, image/gif)
2007-01-02 20:47 UTC, Eric Pasnet
Details

Note You need to log in before you can comment on or make changes to this bug.
Description david powell 2005-11-17 03:23:56 UTC
Version:           0.19 (svn) (using KDE KDE 3.5.0)
Installed from:    SuSE RPMs
OS:                Linux

when a server split happens theres a large number of part and join messages displayed in chanel 

would it be possible to implement the following 

when a server split happens the part message uses the address of the server that has dropped not the users normal information 

if detecting this would it be possible to mark the name on the nick list in a different way ( new for this condition)
and flag it back when that user reconnects ( after split is fixed) 

on detecting a split only put one message in chan , and another when that server starts  to reconnect its users 

the end result is 
on a server split  a message is shown in chan to the effect that there is a server split 
all nicks that have left because of that are marked as (disconnected but still shown in nick list)
maybe say shaded with a new icon for the condition

when the server reconnects there is a message to say server 
reconnected , and the nicks list reenables them to normal state 

saving lots of channel flooding  with nick join / part events on a server split 

(needs to have a way so nicks that parted while on the disconnected server need to drop out somehow)   

Dave
Comment 1 Eric Pasnet 2007-01-02 20:47:00 UTC
Created attachment 19082 [details]
Irssi Netsplit Detection

Here is a screenshot of the irssi's implementation of this feature.
Comment 2 Richard 2007-01-11 06:39:20 UTC
I hate netsplits to, they are like a huge spam event that isn't really needed. 

There should be a simple notice containing "Netsplit event in action - network speed will be slowed for a while please be patient"

Thats all I need to know.
Comment 3 david powell 2007-01-11 10:50:24 UTC
yes , its bad when you are running text to speech via kttsd in irc 
you end up having to put up with it anouncing each individual nick part and join event , it takes kttsd quite a few mins to read them all out each time 
theres a net split 
Comment 4 Stuart Prescott 2008-09-10 11:34:27 UTC
In channels like #debian on freenode there are usually > 800 people in the channel. A netsplit then rejoin can completely fill the scrollback buffer (twice over!) with useless part and join messages.

A simple "Netsplit detected, suppressing join/part events" message if the part-rate is greater than a certain (configurable?) rate would be great.

Some added touches like comparing the list of channel members from before and after the netsplit to work out who left/joined during the netsplit so that those messages can be displayed afterwards would be a nice touch... but don't let implementing that distract you from the simple netsplit suppression stuff!
Comment 5 david powell 2008-09-10 12:41:44 UTC
seems i posted this some time back 
but heres what i spotted 

it should be possible to fix this as 

when a nick  joins ie 

 Join ChanServ has joined this channel (ChanServ@services.).

the bracketed section provides its "native server"
usualy that would also be the same on a quit
although  (remote closed connection ) is also valid for quit

but during a netsplit  all parties involved in the split  part with a 

Quit ChanServ has left this server (heinlein.freenode.net irc.freenode.net).

where the bracketed  data is indicating the server that has broken its connection 

given this i should be possible to check the parting server address 
compaire it to the server info that is associated with the nick 
and flag that nick in the list as  temp broken  rather than displaying it as 
parted ,, then re enabling it once a join of that nick is received 

although thinking about this  the following seems a better way to handle it 
when a nick parts  dew to a netsplit  detected by the above method 
dump the affected nicks into a (temp list (not displayed)) remove it from the nick list for the chan , announce a message >>netsplit (server.name)!!  or something to that effect 
when a nick then rejoins if its in the temp list just add it back to the main
chan nick list without generating any notification 
would guess that just a simple time stamp on the nicks in the temp list should be fine with say those in it over 2hrs just get removed , so that if they rejoin then it will announce there return as normal 

that would also  prevent it dumping the whole list if one of the users reconnects via a diferent server during a split
   

Dave
Comment 6 Eike Hein 2009-05-13 00:50:08 UTC
Renamed for clarity.