Yellow-Dog-Man / Resonite-Issues

Issue repository for Resonite.
https://resonite.com
118 stars 1 forks source link

contact list bugging out/appearing offline randomly #739

Open Pyroboy5000 opened 7 months ago

Pyroboy5000 commented 7 months ago

Describe the bug?

contact list will start shrinking and people stop showing online, or people will sporadicly be flipping offline and online again. additionally, people tell me i appear offline and im set to online status.

To Reproduce

random

Expected behavior

people should always show online when set to online status

Screenshots

No response

Resonite Version Number

current

What Platforms does this occur on?

Windows

What headset if any do you use?

No response

Log Files

n/a waiting for next occurrence

Additional Context

No response

Reporters

Pyroboy5000, Nexus Folfy, Drazion, Rawpie, Sox, 989onan

shiftyscales commented 6 months ago

Any update on this issue, @Pyroboy5000? We need log files that demonstrate this issue before we can look into it, please.

Pyroboy5000 commented 6 months ago

Well, I don't think it's related to the signal r bug. I kept an eye on my ip address and it never changed. The bug hasn't repeated yet where I'm noticing everyone going offline, but people have told me that they can't see me online.

On Wed, Nov 22, 2023 at 14:36 Shifty @.***> wrote:

Any update on this issue, @Pyroboy5000 https://github.com/Pyroboy5000? We need log files that demonstrate this issue before we can look into it, please.

— Reply to this email directly, view it on GitHub https://github.com/Yellow-Dog-Man/Resonite-Issues/issues/739#issuecomment-1823540421, or unsubscribe https://github.com/notifications/unsubscribe-auth/BEEOJMF7QI37VMMSPEMPTO3YFZV63AVCNFSM6AAAAAA7TRNJ6KVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQMRTGU2DANBSGE . You are receiving this because you were mentioned.Message ID: @.***>

Pyroboy5000 commented 6 months ago

DESKTOP-DT8DRM1 - 2023.11.18.1263 - 2023-11-22 20_52_31.log

liny-fox commented 6 months ago

image I also have a log file showing this happening, Pyro showed as online when I logged in, but then changed to offline for some reason. The screenshot show someone else in his home world showing that he is infact online and showing him in my contacts list showing as offline and not headless hosting. CHRIS-LAPTOP - 2023.11.25.49 - 2023-11-25 16_34_09.log

Nytra commented 6 months ago

I have noticed a lot of SignalR reconnections in my log file recently. I think for some reason clients are being disconnected from SignalR and then reconnecting later which is what causes them to temporarily appear offline in contacts. This happens regardless of mods being enabled.

12:09:01.634 ( 90 FPS)  SignalR Reconnecting (UserLogin: U-Nytra): System.Net.WebSockets.WebSocketException (0x80004005): The remote party closed the WebSocket connection without completing the close handshake. ---> System.Net.WebSockets.WebSocketException (0x80004005): An exception caused the WebSocket to enter the Aborted state. Please see the InnerException, if present, for more details.
  at System.Net.WebSockets.ManagedWebSocket+<CloseWithReceiveErrorAndThrowAsync>d__64.MoveNext () [0x000a3] in <ef151b6abb5d474cb2c1cb8906a8b5a4>:0 
--- End of stack trace from previous location where exception was thrown ---
  at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x0000c] in <9577ac7a62ef43179789031239ba8798>:0 
  at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Threading.Tasks.Task task) [0x0003e] in <9577ac7a62ef43179789031239ba8798>:0 
  at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Threading.Tasks.Task task) [0x00028] in <9577ac7a62ef43179789031239ba8798>:0 
  at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd (System.Threading.Tasks.Task task) [0x00008] in <9577ac7a62ef43179789031239ba8798>:0 
  at System.Runtime.CompilerServices.ConfiguredTaskAwaitable+ConfiguredTaskAwaiter.GetResult () [0x00000] in <9577ac7a62ef43179789031239ba8798>:0 
  at System.Net.WebSockets.ManagedWebSocket+<ReceiveAsyncPrivate>d__60.MoveNext () [0x005d7] in <ef151b6abb5d474cb2c1cb8906a8b5a4>:0 
  at System.Net.WebSockets.ManagedWebSocket+<ReceiveAsyncPrivate>d__60.MoveNext () [0x00654] in <ef151b6abb5d474cb2c1cb8906a8b5a4>:0 
--- End of stack trace from previous location where exception was thrown ---
  at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x0000c] in <9577ac7a62ef43179789031239ba8798>:0 
  at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Threading.Tasks.Task task) [0x0003e] in <9577ac7a62ef43179789031239ba8798>:0 
  at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Threading.Tasks.Task task) [0x00028] in <9577ac7a62ef43179789031239ba8798>:0 
  at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd (System.Threading.Tasks.Task task) [0x00008] in <9577ac7a62ef43179789031239ba8798>:0 
  at System.Runtime.CompilerServices.ConfiguredTaskAwaitable`1+ConfiguredTaskAwaiter[TResult].GetResult () [0x00000] in <9577ac7a62ef43179789031239ba8798>:0 
  at Microsoft.AspNetCore.Http.Connections.Client.Internal.WebSocketsTransport+<StartReceiving>d__26.MoveNext () [0x000ad] in <b86e372a36f94a7681186d453686ab30>:0 
--- End of stack trace from previous location where exception was thrown ---
  at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x0000c] in <9577ac7a62ef43179789031239ba8798>:0 
  at System.IO.Pipelines.Pipe.GetReadResult (System.IO.Pipelines.ReadResult& result) [0x00000] in <ae1559954f08488594b9aae0d6fa9756>:0 
  at System.IO.Pipelines.Pipe.GetReadAsyncResult () [0x00042] in <ae1559954f08488594b9aae0d6fa9756>:0 
  at System.IO.Pipelines.Pipe+DefaultPipeReader.GetResult (System.Int16 token) [0x00000] in <ae1559954f08488594b9aae0d6fa9756>:0 
  at Microsoft.AspNetCore.SignalR.Client.HubConnection+<ReceiveLoop>d__82.MoveNext () [0x0019a] in <2776478ca50a4b55959516a809ad1935>:0 
12:09:01.917 ( 90 FPS)  SignalR Reconnected (UserLogin: U-Nytra): EvQ4y8KAe7daxUJmz54uBQ

  at System.Environment.get_StackTrace () [0x00000] in <9577ac7a62ef43179789031239ba8798>:0 
  at Elements.Core.UniLog.Warning (System.String message, System.Boolean stackTrace) [0x00000] in <fde91e37a09f4b15ac96136011f003b7>:0 
  at SkyFrost.Base.SkyFrostInterface+<>c__DisplayClass153_0+<<ConnectToHub>b__2>d.MoveNext () [0x00000] in <12e0c14387e243dd92571876ee1fedf8>:0 
  at System.Runtime.CompilerServices.AsyncTaskMethodBuilder.Start[TStateMachine] (TStateMachine& stateMachine) [0x00000] in <9577ac7a62ef43179789031239ba8798>:0 
  at SkyFrost.Base.SkyFrostInterface+<>c__DisplayClass153_0.<ConnectToHub>b__2 (System.String message) [0x00000] in <12e0c14387e243dd92571876ee1fedf8>:0 
  at Microsoft.AspNetCore.SignalR.Client.HubConnection+<>c__DisplayClass92_0+<<RunReconnectedEvent>g__RunReconnectedEventAsync|0>d.MoveNext () [0x00000] in <2776478ca50a4b55959516a809ad1935>:0 
  at System.Runtime.CompilerServices.AsyncMethodBuilderCore+MoveNextRunner.InvokeMoveNext (System.Object stateMachine) [0x00000] in <9577ac7a62ef43179789031239ba8798>:0 
  at System.Threading.ExecutionContext.RunInternal (System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, System.Object state, System.Boolean preserveSyncCtx) [0x00000] in <9577ac7a62ef43179789031239ba8798>:0 
  at System.Threading.ExecutionContext.Run (System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, System.Object state, System.Boolean preserveSyncCtx) [0x00000] in <9577ac7a62ef43179789031239ba8798>:0 
  at System.Runtime.CompilerServices.AsyncMethodBuilderCore+MoveNextRunner.Run () [0x00000] in <9577ac7a62ef43179789031239ba8798>:0 
  at System.Threading.Tasks.Task.InnerInvoke () [0x00000] in <9577ac7a62ef43179789031239ba8798>:0 
  at System.Threading.Tasks.Task.Execute () [0x00000] in <9577ac7a62ef43179789031239ba8798>:0 
  at System.Threading.Tasks.Task.ExecutionContextCallback (System.Object obj) [0x00000] in <9577ac7a62ef43179789031239ba8798>:0 
  at System.Threading.ExecutionContext.RunInternal (System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, System.Object state, System.Boolean preserveSyncCtx) [0x00000] in <9577ac7a62ef43179789031239ba8798>:0 
  at System.Threading.ExecutionContext.Run (System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, System.Object state, System.Boolean preserveSyncCtx) [0x00000] in <9577ac7a62ef43179789031239ba8798>:0 
  at System.Threading.Tasks.Task.ExecuteWithThreadLocal (System.Threading.Tasks.Task& currentTaskSlot) [0x00000] in <9577ac7a62ef43179789031239ba8798>:0 
  at System.Threading.Tasks.Task.ExecuteEntry (System.Boolean bPreventDoubleExecution) [0x00000] in <9577ac7a62ef43179789031239ba8798>:0 
  at System.Threading.Tasks.Task.System.Threading.IThreadPoolWorkItem.ExecuteWorkItem () [0x00000] in <9577ac7a62ef43179789031239ba8798>:0 
  at System.Threading.ThreadPoolWorkQueue.Dispatch () [0x00000] in <9577ac7a62ef43179789031239ba8798>:0 
  at System.Threading._ThreadPoolWaitCallback.PerformWaitCallback () [0x00000] in <9577ac7a62ef43179789031239ba8798>:0
FlameSoulis commented 6 months ago

Just occurred to me as reported by another person. Unfortunately, I didn't get the log file in time, so it's a mess to wade through, as much importing was occurring at the same time.

However, I can vouch this is still an issue.

skywindkitsune commented 6 months ago

I keep encountering this issue as well, and is also keeping worlds from showing up in Active Sessions, as a work around people have to toggle their status from online to offline and back.

shadowpanther commented 6 months ago

Just a couple of days ago, I saw one user shown as offline, even though I saw them playing Resonite on Steam. When I asked them, they said they are online, and after changing the online status on their side, I saw them as online for some period of time. They went showing offline later in the same day too, even though at that sesond time I was in the same session with them.

shiftyscales commented 6 months ago

Do the log files provided above give any further clarification/indication on where the issue might lie, @Frooxius? This functionality is pretty important/core to the platform's day to day functionality- and while the feature isn't broken outright, it does hinder this functionality considerably.

There seem to be other related issues around session visibility, e.g. #164.

Frooxius commented 6 months ago

I'll try to look into this soon.

win189 commented 4 months ago

thies issues seem to have started being more visible since the .net changes but that is just my personal observations

Frooxius commented 4 months ago

Which .NET changes do you mean?

shiftyscales commented 4 months ago

Perhaps they are referring to 2023.11.18.1263, @Frooxius.

Mostly small build, I spent quite a bit of time updating our dependencies and cloud to .NET 8 which released recently.

  • Updated cloud infrastructure to .NET 8 from .NET 7

This issue was opened two days following that change- so the timing works out if it is relevant at all.

Can you please clarify if this is what you meant, @win189?

Frooxius commented 4 months ago

@shiftyscales It could be, but I'd rather them clarify, than speculate and make assumptions here.

Frooxius commented 4 months ago

Hmm, it's a bit difficult to narrow this down from the logs, specifically since it seems to affect only some people and not the entire contacts list.

I will add some diagnostics in the next build to help narrow this down.

Frooxius commented 4 months ago

I've added more diagnostics in 2024.1.30.731

zahndy commented 4 months ago

I noticed half my contacts list popping back online but it took me a moment(<20s) to get up and figure out what key to press HORIZON7 - 2024.1.30.731 - 2024-01-31 08_09_17.log

Frooxius commented 4 months ago

Thanks! I've added some more diagnostics in 2024.1.31.744

If you see users being offline when they shouldn't, please send logs again. If you can, please take a note of name of the user who is offline when they shouldn't too, so I can match them to the log data.

zahndy commented 4 months ago

I started up another client with a different account on a separate computer so i could specifically watch that account and be 100% certain its online. The account is named "U-PolyLabs". When i noticed it was no longer online i made a marker, but that one may be a bit late. When I noticed it pop back online i made a marker that was almost on point. HORIZON7 - 2024.1.31.744 - 2024-01-31 18_14_42.log

Frooxius commented 4 months ago

@zahndy Thank you! Would you actually be able to get me log from the U-PolyLabs too on that one?

I think I now have a hunch on what it is. I wonder if their SignalR session disconnected, which resulted in the cloud forcing them offline.

I'll try to add a fix for that and see if that helps.

Frooxius commented 4 months ago

I've pushed out an update 2024.2.12.1430, which might fix this issue. I'll leave this open for a bit so we can validate and see if the problem pops away.

One thing to keep in mind - for this fix to work, the user who is appearing offline is the one who needs to be on the new version. If you update and other users don't, they will still pop offline.

zahndy commented 4 months ago

Instead of figuring out what machine i used I logged both of my headlesses in (U-PolyLabs and U-PolyLabs-EU) to retest because they have a lot less contacts and its easier to observe. "U-PolyLabs" went offline after ~25min, I hit F3 on both clients but there may be a 1min delay between it happening and me pressing. I waited for it to come back but it seemed it wasnt going to but as soon as i focused back to the homeworld it popped back online. I pressed F3 again. HORIZON7 - 2024.2.12.1430 - 2024-02-13 01_17_26.log DESKTOP-8I3J2IP - 2024.2.12.1430 - 2024-02-13 01_15_41.log The horizon log also contains me switching accounts because I forgot to restart the client before testing..

shiftyscales commented 4 months ago

Confirmed that both of the above logs were on the most recent version of the app- so it sounds that this is still an issue, @Frooxius.

zahndy commented 4 months ago

I got some cleaner logs since its easily reproducible. Fired up two instances(U-PolyLabs-EU & U-PolyLabs) at the same time with cloud home disabled. There is a DEBUG_TEST in both when U-PolyLabs goes offline and one when it comes back. 2024.2.12.1430 - 2024-02-16 15_41_09-U-PolyLabs.log 2024.2.12.1430 - 2024-02-16 15_41_09-U-PolyLabs-EU.log Even the local "My Account" appears offline

Local Offline

FlameSoulis commented 1 month ago

Confirming, as of Beta 2024.4.18.1398, this is still occurring. I will provide logs when available.

AlanMoonbase commented 1 month ago

On latest Beta 2024.4.30.495, this issue is still occurring rather commonly. Here is my log file.

ALAN-VNMBLZR - 2024.4.30.495 - 2024-04-30 17_00_48.log

shiftyscales commented 1 month ago

Seeking input from @Frooxius - is anything else needed from this issue? Or is it just a matter or looking into things when you have the time to?

This is one of the issues predominantly associated with the log spam discussed in our last sync due to diagnostics that were added to try and resolve this issue.

Frooxius commented 1 month ago

I don't know, I need to look into it to figure out if more will be needed.

FlameSoulis commented 1 month ago

It just occurred again of me (appearing offline) to MajorK. I am running mods, but they aren't. I've asked if they could provide logs of what they are seeing if they get a chance. DEMONDOGGO-PC - 2024.5.4.678 - 2024-05-07 03_57_19.log (By the time I uploaded the log, I then appeared online, so maybe it will help?)

EDIT: At no point did MajorK appear offline to me. In fact, I sent them the invite to me, then they noticed I went offline upon joining... with me clearly standing in front of them.

Frooxius commented 2 weeks ago

I think this should be fixed with 2024.5.30.68 now. But keep a lookout on it.

I'm going to close it now. If it still occurs, we'll reopen.

Frooxius commented 2 weeks ago

Also thanks for the info and logs everyone! Especially @zahndy, that repro helped a fair bit.

shiftyscales commented 1 week ago

@Krzeszny has reported this issue still occurring for them as of 2024.5.31.202 in #2234 - so it seems like it might still possibly be a problem in some circumstances, @Frooxius. Re-opening for now, but unfortunately they did not provide any logs or other information corroborating specific details.

AlanMoonbase commented 1 week ago

I can confirm this is still happening, will try to get unmodifed logs now.

AlanMoonbase commented 1 week ago

I didn't really see the issue occur with my own eyes while testing, however in the logs I see a bunch of expired contact status errors so this could still be useful.

ALAN-VNMBLZR - 2024.5.31.202 - 2024-06-04 13_28_19.log

Frooxius commented 1 week ago

The expired contact status errors are completely normal, that's just a normal diagnostic and it will happen at all the times.

Please don't make reports if you don't actually see the report occurring.

It can be a time consuming process to sift and analyze the logs and if the bug has possibly not even occurred, then it's essentially just wasted time.

For this to be helpful, we need as much information as possible. Specifically:

Without this info, there's not much that we can do here.

AlanMoonbase commented 1 week ago

Apologies, decided that I will just run my game unmodified tonight when I pop on for real, that way when someone does go randomly offline I can pin point the exact points in the logs and just send the useful parts.

shiftyscales commented 1 week ago

As mentioned above- this would need to be coordinated with that other user so that we could get their timestamped logs as well, @AlanMoonbase.

FlameSoulis commented 1 week ago

I'll have to try getting my logs as well. I can confirm this is still going on, and the larger issue is getting BOTH my own logs unmodified and someone else's logs unmodified.

I may try running a spare gaming laptop on a VPN to simulate a separate connection and see if I can't wait until it just occurs again.