Open jackpoz opened 9 years ago
@Frytiks : as asked quite a few times, post the lfg log set to "debug" level, anything else is useless
nvm, last player missing solved.
[19:04:22] (1|2|3|4): Compatibles (Not enough players)
into
[19:04:22] (1 dps/tank|2 dps/heal|3 heal|4 dps): Compatibles (Not enough players)
what does it mean in logs2015-04-11_00:04:29 Guids: (2256303413312619923|2256303413312620559) Too much players (6)
As you don't log the logger name you don't figure where that comes from but still sound pretty clear to me. That message appears in debug mode while trying to match 2 groups, but total player count of both groups exceeds 5
I'm getting all day messages for some players queqing normally, but some are still in queue forever > 1 hour in queue and not matched group ... Here is debug log https://onedrive.live.com/redir?resid=41FEF50A040FE1C4!490&authkey=!AODZ7-OoPwUXeFg&ithint=file%2czip
@jackpoz Without Double Side group on server, queue works normally, there is problem when u have mixed groups, it's not joining correctly
is that "Double Side group" a feature enabled through worldserver.conf ?
i have never enabled it, but:
#
# AllowTwoSide.Interaction.Group
# Description: Allow group joining between factions.
# Default: 0 - (Disabled)
# 1 - (Enabled)
AllowTwoSide.Interaction.Group = 0
Ye i think that @ccrs !
If a player joins lfg queue,then alt+f4 the game,he remains in queue,but on next join from other player/group it gets removed..so this is ok more or less...
Now..can we atleast port this kind of behaviour to groups also?As in if a member of a queued group is offline,remove the whole group from queue.This bug breaks lfg queue system very fast.
Any news about this. I try what you say and Yes, it's bugging queue. Maybe we can remove groups with 0 players in FindGroups() function ? @jackpoz
On retail offline players don't get removed from the queue. At least, not at 6.x. There's a delay before they're removed after being logged off (just leaving this as a note for @w1sht0l1v3 )
When i restart server queue works good like 2 hours, but after 2 hours it's not queue, all is in log what i posted upside. Like @w1sht0l1v3 say, it causing bug.
as @Frytiks says every 2 o 3 hours lfg freeze.
I can post debug log again, but jackpoz not trust me
@jackpoz Summoning, i have 1GB of LFG.log should i upload it ?
You don't know rar you dont?
@Aokromes Like you want, in zip, link: https://mega.nz/#!ylpVzTpa!sQujKqSfCgUz44Q6SK_va1dN5NEPEXakSvaVCitFDAc
Luck of the Draw (http://www.wowhead.com/spell=72221) is given to all players in group
@ccrs please state the current behavior and the correct behavior so one doesn't have to wonder about what to fix
TC> lfg queue debug Number of Queues: 1 Queued Players: 2 (in group: 4) Groups: 1 Compatible Map size: 6 (18): Compatibles (Not enough players) (18|2256303413312618500): Incompatible dungeons (18|79): Compatibles (Not enough players) (18|79|2256303413312618500): Incompatible dungeons (2256303413312618500): Compatibles (Not enough players) (79): Compatibles (Not enough players)
https://github.com/TrinityCore/TrinityCore/commit/b7f9836d223925802115f45ad2c2c7eeb9bb00a4 fixed quite some issues, please check if it improves lfg queue
Not enough players to test
lfg estop work every 30 min aprox.
lfg guid was on some cases incorrect, example:
2015-10-26_03:32:19 [lfg.queue.match.compatibility.check] Guids: (167855|339518|369242|2256303413312622541) Group MATCH but can't create proposal!
2015-10-26_03:32:19 [lfg.queue.match.compatibility.check] Guids: (136300|167855|369242|2256303413312622541) Group MATCH but can't create proposal!
2015-10-26_03:32:19 [lfg.queue.match.compatibility.check] Guids: (167855|369242|385616|2256303413312622541) Group MATCH but can't create proposal!
2015-10-26_03:32:19 [lfg.queue.match.compatibility.check] Guids: (167855|2256303413312622541|2256303413312624458) Group MATCH but can't create proposal!
2015-10-26_03:32:34 [lfg.queue.match.compatibility.check] Guids: (167855|406136|406166|2256303413312622541) Group MATCH but can't create proposal!
2015-10-26_03:32:34 [lfg.queue.match.compatibility.check] Guids: (167855|319936|406136|2256303413312622541) Group MATCH but can't create proposal!
2015-10-26_03:32:34 [lfg.queue.match.compatibility.check] Guids: (167855|2256303413312622541|2256303413312624688) Group MATCH but can't create proposal!
2015-10-26_03:32:34 [lfg.queue.match.compatibility.check] Guids: (167855|339518|406136|2256303413312622541) Group MATCH but can't create proposal!
2015-10-26_03:32:34 [lfg.queue.match.compatibility.check] Guids: (136300|167855|406136|2256303413312622541) Group MATCH but can't create proposal!
2015-10-26_03:32:34 [lfg.queue.match.compatibility.check] Guids: (167855|385616|406136|2256303413312622541) Group MATCH but can't create proposal!
2015-10-26_03:32:34 [lfg.queue.match.compatibility.check] Guids: (167855|2256303413312622541|2256303413312624458) Group MATCH but can't create proposal!
2015-10-26_03:42:56 [lfg.queue.match.compatibility.check] Guids: (201236|214834|257640|302470|407524) MATCH! Group formed
2015-10-26_03:43:10 [lfg.queue.match.compatibility.check] Guids: (113432|356717|398091|2256303413312618658) MATCH! Group formed
2015-10-26_03:45:38 [lfg.queue.match.compatibility.check] Guids: (52722|118828|335274|401785|411757) MATCH! Group formed
2015-10-26_03:45:53 [lfg.queue.match.compatibility.check] Guids: (1246|99950|2256303413312618714) MATCH! Group formed
2015-10-26_03:46:33 [lfg.queue.match.compatibility.check] Guids: (68554|141187|368117|376511|390970) MATCH! Group formed
2015-10-26_03:47:19 [lfg.queue.match.compatibility.check] Guids: (127536|153661|359642|375721|376511) MATCH! Group formed
2015-10-26_03:47:49 [lfg.queue.match.compatibility.check] Guids: (136300|249895|319936|394920|398914) MATCH! Group formed
2015-10-26_03:48:02 [lfg.queue.match.compatibility.check] Guids: (337859|390970|405595|2256303413312619121) MATCH! Group formed
2015-10-26_03:48:05 [lfg.queue.match.compatibility.check] Guids: (40360|153661|376511|406029|419377) MATCH! Group formed
2015-10-26_03:48:12 [lfg.queue.match.compatibility.check] Guids: (11713|30274|422612|2256303413312619155) MATCH! Group formed
2015-10-26_03:48:51 [lfg.queue.match.compatibility.check] Guids: (108595|368117|376511|385769|390970) MATCH! Group formed
2015-10-26_03:48:58 [lfg.queue.match.compatibility.check] Guids: (43410|238493|407776|2256303413312619155) MATCH! Group formed
2015-10-26_03:48:59 [lfg.queue.match.compatibility.check] Guids: (91049|131192|160044|418472|423055) MATCH! Group formed
2015-10-26_03:49:00 [lfg.queue.match.compatibility.check] Guids: (127536|153661|337859|390937|405595) MATCH! Group formed
2015-10-26_03:49:31 [lfg.queue.match.compatibility.check] Guids: (2256303413312619163) MATCH! Group formed
2015-10-26_03:49:34 [lfg.queue.match.compatibility.check] Guids: (11713|414155|422612|2256303413312619130) MATCH! Group formed
I have guids like 2256303413312619130 but no one player has dat guid.
2256303413312619130 is group. it's perfect valid.
Apply this patch and enable lfg.allqueued DEBUG log. It will give more detailed info.
diff --git a/src/server/game/DungeonFinding/LFGMgr.cpp b/src/server/game/DungeonFinding/LFGMgr.cpp
index 250f6e0..b5e1ffe 100644
--- a/src/server/game/DungeonFinding/LFGMgr.cpp
+++ b/src/server/game/DungeonFinding/LFGMgr.cpp
@@ -1900,8 +1900,16 @@ bool LFGMgr::AllQueued(GuidList const& check)
return false;
for (GuidList::const_iterator it = check.begin(); it != check.end(); ++it)
- if (GetState(*it) != LFG_STATE_QUEUED)
- return false;
+ {
+ LfgState state = GetState(*it);
+ if (state != LFG_STATE_QUEUED)
+ {
+ if (state != LFG_STATE_PROPOSAL)
+ TC_LOG_DEBUG("lfg.allqueued", "Unexpected state found while trying to form new group. Guid: %s, State: %s", (*it).ToString().c_str(), GetStateString(state).c_str());
+
+ return false;
+ }
+ }
return true;
}
http://pastebin.com/N9wNCZUW So much Unexpected state found.
kay i updated this mainticket a bit to get a better overview, corrently i cannot find more issues to it
I have no way to test it for certain, but a few months ago I was playing on a TC 3.3.5 server and one issue that appeared somewhat regularly was seemingly losing your place in the queue. It happened under the following circumstances.
I believe it should keep the tank in your group, and try to find a dps or healer as a replacement. If the tank was put into your group, I am pretty sure that meant you were at the top of the list (server had very few tanks queueing). It seems what was happening was you would lose your place in queue after a player misses the queue, regardless if you queued together or not.
Once again, this was a few months ago, and I do not know how I could test this without running numerous instances of the game.
I do not know how I could test this without running numerous instances of the game.
what's the problem with running numerous instances of the game ?
It seems what was happening was you would lose your place in queue after a player misses the queue, regardless if you queued together or not.
if someone does not accept the queue your are thrown back to the last place of the queue. normally everyone should be in the first place of the queue again, that's why you need to wait so long currently
@rushor so you agree that if what I said is true, it is currently not functioning, correct?.
The reason I can't do multiple instances of the game is because I am on holiday and only have my netbook. Once I get back this weekend I will test it out and report back how it appears to be functioning.
added https://github.com/TrinityCore/TrinityCore/issues/14705 to the list
@Rushor @jackpoz Check this http://s26.postimg.org/tm31tzu15/Wo_WScrn_Shot_050216_113514.jpg on branch 3.3.5
queued as a healer and healer missing
queued as a healer and healer missing
maybe because of https://github.com/TrinityCore/TrinityCore/issues/16241 ?
No. I blocked multiple roles on code.
Guys, pls test this. @Rushor @jackpoz
something is wrong with that, dungeon finder data is not being cleared at logout???
No. I blocked multiple roles on code.
I have no idea what custom changes you applied
@jackpoz you tested what i said? No costum changes were made on that test. I just blocked multiple roles before to check if they were the cause, then i removed it. I'm using clean TC core.
@Jackpoz i have clean core and i can confirm that too, also this bug is on every server.
i can even click on "find group" without choosing any roles because it has already my roles saved or something like that, not sure. cant understand why
Well, no news about this? Maybe i will try a fix myself.
I think https://github.com/TrinityCore/TrinityCore/blob/3.3.5/src/server/game/DungeonFinding/LFGMgr.cpp#L432 something here is the culpit of lfd queue unable to requeue on someone leaves. I blame https://github.com/TrinityCore/TrinityCore/pull/22321 @Ovahlord :troll:
requeue fixed by 7fb5233
@jackpoz Is there any need for detailed information on the "queue stuck" issue? (I seem to remember you had a patch to get more logs, but couldnt find it) If it helps, I can try to get those logs.. still can't force it to happen, but here it happens naturally pretty much everyday ^^
Example of "queue stuck" with additional information (this is all for the same dungeonId)
In every case there is someone queued as "None" role.
I haven't really put that much time into it:
diff --git a/src/server/game/DungeonFinding/LFGMgr.cpp b/src/server/game/DungeonFinding/LFGMgr.cpp
index ecfadaed0..0d85895bd 100644
--- a/src/server/game/DungeonFinding/LFGMgr.cpp
+++ b/src/server/game/DungeonFinding/LFGMgr.cpp
@@ -820,8 +820,9 @@ bool LFGMgr::CheckGroupRoles(LfgRolesMap& groles)
for (LfgRolesMap::iterator it = groles.begin(); it != groles.end(); ++it)
{
uint8 role = it->second & ~PLAYER_ROLE_LEADER;
+ // @robinsch: TODO: Debug why this is happening. For now every player can be a DPS
if (role == PLAYER_ROLE_NONE)
- return false;
+ role = PLAYER_ROLE_DAMAGE;
if (role & PLAYER_ROLE_DAMAGE)
{
roles are not validated at all for joining solo queue - they come from client and must not be trusted to be always valid (you could modify packet to send no role or something invalid like mage tank)
[17:21:40] One or more dungeons was not valid. Repo: queue with 4, a separate member alone, queues as tank. vote kick tank. requeue. find you forgot to change role of one member to be tank, stop queue. with someone who want to be the tank try to requeue changing role to tank
There are also other parts where I added fallbacks from queueing as NONE. I also removed players from selection queue if they outlevel the dungeon. I had players with level 25+ in RFC queue.
Will check the next day if I still experience this issue otherwise I can post a full diff.
Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.