secondlife / jira-archive

2 stars 0 forks source link

[BUG-232776] At log in I see only a partial list of my friends online in local chat and in the console #9980

Closed sl-service-account closed 8 months ago

sl-service-account commented 2 years ago

What just happened?

Upon login after the SLS restarts to server 575585 the listof my friends online does not show as set in notifications. Subsequent logins and logouts of my friends show as normal. When I checked my Friends List it is populated as expected.

What were you doing when it happened?

On several Main Server regions, but inintially at my home region, Woods of Heaven

What were you expecting to happen instead?

At login I should see a list of my friends online as notification in local as set in Preferences

Other information

I have contacted several folk who report the same issue following today's restart. I would add that I have so far only seen this issue in the Firestorm Viewer 6.6.3 though others see the same in Linden Viewer 6.6.4.

Attachments

Original Jira Fields | Field | Value | | ------------- | ------------- | | Issue | BUG-232776 | | Summary | At log in I see only a partial list of my friends online in local chat and in the console | | Type | Bug | | Priority | Unset | | Status | Closed | | Resolution | Not Applicable | | Reporter | Aishagain (aishagain) | | Created at | 2022-10-18T22:04:40Z | | Updated at | 2023-01-27T19:57:59Z | ``` { 'Build Id': 'unset', 'Business Unit': ['Platform'], 'Date of First Response': '2022-10-19T11:39:12.773-0500', "Is there anything you'd like to add?": "I have contacted several folk who report the same issue following today's restart. I would add that I have so far only seen this issue in the Firestorm Viewer 6.6.3 though others see the same in Linden Viewer 6.6.4.", 'ReOpened Count': 0.0, 'Severity': 'Unset', 'System': 'SL Viewer', 'Target Viewer Version': 'viewer-development', 'What just happened?': 'Upon login after the SLS restarts to server 575585 the listof my friends online does not show as set in notifications. Subsequent logins and logouts of my friends show as normal. When I checked my Friends List it is populated as expected.', 'What were you doing when it happened?': 'On several Main Server regions, but inintially at my home region, Woods of Heaven', 'What were you expecting to happen instead?': 'At login I should see a list of my friends online as notification in local as set in Preferences', 'Where': 'http://maps.secondlife.com/secondlife/Woods%20of%20Heaven/91/26/23', } ```
sl-service-account commented 2 years ago

Maestro Linden commented at 2022-10-19T16:39:13Z

To see more details about why the viewer incorrectly shows some friends as offline, could you try the following?:

  1. Created a new file named logcontrol-dev.xml , located in the %APPDATA%\FireStorm_x64\user_settings folder, containing this text: ```Java default-level INFO print-location false log-always-flush true settings levelINFO functions classes files tags levelDEBUG functions processOnlineNotification processOfflineNotification processNotify setBuddyOnline classes files tags
    - With the Linden SL viewer, the user_settings folder would be located at `%APPDATA%\SecondLife\user_settings`
    - with this log configuration, the viewer's log should include messages like this whenever a friend appears offline or online: ```Java
     DEBUG # newview/llcallingcard.cpp(616) processOnlineNotification : LLAvatarTracker::processOnlineNotification
     DEBUG # newview/llcallingcard.cpp(684) processNotify : Received 1 online notifications ****
     DEBUG # newview/llcallingcard.cpp(334) setBuddyOnline : Set buddy 2c817cee-bcd4-4c1d-91c1-6d0bd528131a Online
  2. Log in to any region
  3. If the bug reproduces,
    1. Note an example friend who correctly appears online in your friends list
    2. Note an example friend who incorrectly appears offline in your friends list
    3. Report the exact login time, region name, and both friends' names in this jira
    4. Attach the viewer log from this session

      * With Firestorm, I believe the log file should be at %APPDATA%\FireStorm_x64\logs\Firestorm.log

      * With the Linden SL viewer, the correct location would be %APPDATA%\SecondLife\logs\SecondLife.log

With this information, we should hopefully be able to see what's going wrong with the presence lookup for the bugged friend.

sl-service-account commented 2 years ago

Aishagain commented at 2022-10-19T20:34:54Z

Maestro While I work out how to provide the info you want, it is important that I clarify what seems to be a significant misconception on your part. My friends list per se fully populates at login as expected. What does NOT occur is the reporting of that list in nearby chat. That is what SHOULD happen and always did prior to yesterday's roll. It is this failure of the notification that is new and unexpected behaviour.

sl-service-account commented 2 years ago

Whirly Fizzle commented at 2022-10-20T18:14:41Z, updated at 2022-10-20T18:25:22Z

This appears different from BUG-232037 I just reproduced this on Firestorm 6.6.3 (67470) Aug 27 2022 18:30:00 (64bit / SSE2) (Firestorm-Releasex64) with Havok support

Logged in at http://maps.secondlife.com/secondlife/Testylvania%20Sandbox/90/115/22 Second Life Server 2022-10-07.575585 50+ friends are showing online in my friends list in the viewer, but only one friend is chatted as online in local chat: https://prnt.sc/U5YN50gcxO57 All my online friends at login should be chatted to local chat. Firestorm prefs setting: https://prnt.sc/l4aYmYofRhxr

I will test on the LL viewer now & do the debug logging Maestro requested.

sl-service-account commented 2 years ago

Whirly Fizzle commented at 2022-10-20T18:30:48Z

Hmmm, was this feature request implemented on the quiet? https://jira.secondlife.com/browse/BUG-231656

sl-service-account commented 2 years ago

Whirly Fizzle commented at 2022-10-20T18:50:29Z, updated at 2022-10-20T18:51:02Z

This also reproduces on the LL Viewer: Second Life Release 6.6.5.575749 (64bit) every login. LL Viewer preferences setting: https://prnt.sc/tz4LXo-Kqsad I'm pretty sure the LL Viewer used to show a notification toast at login for every friend who was online when you logged in, didn't it??

Now, logging into http://maps.secondlife.com/secondlife/Testylvania%20Sandbox/90/115/22 on Second Life Release 6.6.5.575749 (64bit), you get no online friend notification toasts at all. You should get one notification toast for each friend logged in when you login.

The LL Viewer shows zero online friend notifications at login - repros 100% of the time. Firestorm viewer shows one and only one online friend notification at login - repros 100% of the time. The behaviour change is definitely new on Firestorm and the LL Viewer, if I'm correct in remembering that the LL Viewer used to show a toast for each friend online at login.

There is also a report of this exact same behaviour on the forum: https://community.secondlife.com/forums/topic/492358-second-life-firestorm-friends-list-nearby-chat-issue I'm guessing you don't need the debug logs because this is 100% reproducible. Also note that your friends list in the viewer correctly shows your friends as online, this is different bug to BUG-232037


Second Life Release 6.6.5.575749 (64bit)
Release Notes

You are at 90.0, 115.0, 22.0 in Testylvania Sandbox located at simhost-0464018d65602555d.agni
SLURL: http://maps.secondlife.com/secondlife/Testylvania%20Sandbox/90/115/22
(global coordinates 332,122.0, 305,779.0, 22.0)
Second Life Server 2022-10-07.575585
Release Notes

CPU: Intel(R) Core(TM) i7-4770K CPU @ 3.50GHz (3491.91 MHz)
Memory: 16268 MB
OS Version: Microsoft Windows 10 64-bit (Build 19044.2130)
Graphics Card Vendor: NVIDIA Corporation
Graphics Card: NVIDIA GeForce GTX 750/PCIe/SSE2

Windows Graphics Driver Version: 31.0.15.1694
OpenGL Version: 4.6.0 NVIDIA 516.94

Window size: 1920x1027
Font Size Adjustment: 96pt
UI Scaling: 1
Draw distance: 128m
Bandwidth: 3000kbit/s
LOD factor: 1.125
Render quality: 5
Advanced Lighting Model: Enabled
Texture memory: 512MB
Disk cache: Max size 409.6 MB (49.8% used)

J2C Decoder Version: KDU v7.10.4
Audio Driver Version: FMOD Studio 2.02.06
Dullahan: 1.12.4.202209142021
  CEF: 91.1.21+g9dd45fe+chromium-91.0.4472.114
  Chromium: 91.0.4472.114
LibVLC Version: 3.0.16
Voice Server Version: Vivox 4.10.0000.32327.5fc3fe7c.571099

Packets Lost: 6/12,209 (0.0%)
October 20 2022 11:49:11
sl-service-account commented 2 years ago

Maestro Linden commented at 2022-10-20T19:19:45Z

[~whirly.fizzle] could you try the same debug log config?

I believe there's just a single message from the simulator to indicate a friend coming online, which is OnlineNotification. The viewer should be acting appropriately, updating friend online status in the People panel, and optionally presenting the status in other ways, depending on the preferencess. If the viewer is receiving the OnlineNotification message properly and is only acting in some of the ways it should be, that would be a viewer bug.

sl-service-account commented 2 years ago

Whirly Fizzle commented at 2022-10-20T19:27:52Z, updated at 2022-10-20T19:28:53Z

Whirly_log_1.log attached from Firestorm with the debug logging.

Note 44 of my friends showed online in the viewer friends list at login. However, I only received the online chat notification for one friend in local chat. The friend I received the online notification for was Marissa "Marissa Orlova (MarissaOrloff) is online."

sl-service-account commented 2 years ago

Whirly Fizzle commented at 2022-10-20T19:32:25Z

I am 99% sure this is not a viewer bug, because we only started getting reports of it yesterday and I can reproduce it going back 3 Firestorm releases.

sl-service-account commented 2 years ago

Maestro Linden commented at 2022-10-20T20:08:23Z

I followed my own advice and enabled the debug logging. I'm using Second Life Release 6.6.5.575749 (64bit) on Second Life Server 2022-10-07.575585.

My viewer has Preferences->Notifications->"Notify me .. when my friends log in or out" enabled (i.e. ChatOnlineNotification = TRUE in debug settings).

  1. At login time, the viewer logs this: ```Java % tail -f ../logs/SecondLife.log | egrep 'processOnlineNotification|processOfflineNotification|processNotify|setBuddyOnline' 2022-10-20T19:44:56Z DEBUG # newview/llcallingcard.cpp(620) processOnlineNotification : LLAvatarTracker::processOnlineNotification() 2022-10-20T19:44:56Z DEBUG # newview/llcallingcard.cpp(691) processNotify : Received 7 online notifications **** 2022-10-20T19:44:56Z DEBUG # newview/llcallingcard.cpp(337) setBuddyOnline : Set buddy 1799b39b-d6a3-4fec-baf6-0f7c8cc715a0 Online 2022-10-20T19:44:56Z DEBUG # newview/llcallingcard.cpp(337) setBuddyOnline : Set buddy 1b49e12d-d273-455e-b86f-833dff0694e0 Online 2022-10-20T19:44:56Z DEBUG # newview/llcallingcard.cpp(337) setBuddyOnline : Set buddy 7d5aa3d0-5944-4100-a966-5cddc16c4a60 Online 2022-10-20T19:44:56Z DEBUG # newview/llcallingcard.cpp(337) setBuddyOnline : Set buddy b0e567a5-2e0a-47de-a1ef-42660571c742 Online 2022-10-20T19:44:56Z DEBUG # newview/llcallingcard.cpp(337) setBuddyOnline : Set buddy b18f5a05-bf6f-4457-b26d-a4d8e659dcf6 Online 2022-10-20T19:44:56Z DEBUG # newview/llcallingcard.cpp(337) setBuddyOnline : Set buddy bf9650a0-dcf9-4d8d-99d9-fa7f537786a1 Online 2022-10-20T19:44:56Z DEBUG # newview/llcallingcard.cpp(337) setBuddyOnline : Set buddy c5a07167-9bbe-4944-a7b0-a9677afa134d Online
    
    - the People-> Friends panel indicates that 7 friends are online - matching the setBuddyOnline message counts: 
    - No nearby chat messages are shown, and no notifications about friends are shown.  I believe this is expected, as all 7 agents were previously online - they didn't just login.
  2. Later on, another friend logs in. The viewer shows: ```Java 2022-10-20T19:51:28Z DEBUG # newview/llcallingcard.cpp(620) processOnlineNotification : LLAvatarTracker::processOnlineNotification() 2022-10-20T19:51:28Z DEBUG # newview/llcallingcard.cpp(691) processNotify : Received 1 online notifications **** 2022-10-20T19:51:28Z DEBUG # newview/llcallingcard.cpp(337) setBuddyOnline : Set buddy 70243b06-a65e-4e2b-b419-4844fbc3ea11 Online
    
    - There is a 'Litmus Tester is online' notification in the viewer
    - The People panel shows the friend as online
    - There is no nearby chat about the friend status message - I think this might just be a Firestorm thing?
sl-service-account commented 2 years ago

Maestro Linden commented at 2022-10-20T20:18:57Z, updated at 2022-10-20T20:22:15Z

On Aditi, the SLS channel (which Ahern is on, for example) is still running 2022-10-07.575585. When I place 2 alts online on aditi and then login to Ahern, I see the same results as on agni:

sl-service-account commented 2 years ago

Whirly Fizzle commented at 2022-10-20T20:28:54Z

The LL Viewer definitely used to show a notification toast at login for every friend who was logged in when you logged in - you used to get a long stream of the online notifications down the right side of the screen. However, I do not know if the LL viewer made a change to remove showing all the online notifications at login. I don't think it did but I can't be certain. However however, Firestorm Viewer always had the ability to display notifications (or chat) at login for all your friends who were online when you logged in. This is now broken and only one notification is received for one friend who is online when you login. This bug now reproduces in all older builds of Firestorm too, so it wasn't caused by a change in the viewer. We only started getting complaints about this yesterday.

Are you sure nothing could have changed serverside or with some other backend service that could have caused this?

Also please can you check with Kyle - he remembers the LL Viewer showing online notifications for all your online friends at login.

sl-service-account commented 2 years ago

Maestro Linden commented at 2022-10-20T22:08:14Z, updated at 2022-10-20T22:12:39Z

[~whirly.fizzle] one change that did happen recently with the simulator was to fetch the presence data of an an avatar's friends using a faster bulk lookup request. Since the viewer is showing the correct set of online friends, including at login time, I think we can say it is working properly.

However, I think this change has exposed a bug the viewer - when multiple agents' presence updates are received in the same message, the viewer's handler in LLAvatarTracker::processNotify() doesn't trigger the toast/etc. notifications properly in the UI. The bug is that the if(chat_notify)) clause at https://bitbucket.org/lindenlab/viewer/src/e45b6159666b3aa271eaaa366fb4bcade2c2a28b/indra/newview/llcallingcard.cpp#lines-723 is not inside the for loop immediately above it. This causes the UI notifications to not be pushed when the agent count is >1, even when ChatOnlineNotification is set to True in settings. I haven't seen what LLAvatarTracker::processNotify() looks like in Firestorm, but I bet it's inherited the same bug.

When I repeat my test with debug tags enabled on aditi (logging into mainland region 'Toroge', running SLS 2022-08-24.574550 from a few builds back), I see the following updates about my online alts:

2022-10-20T21:27:29Z DEBUG # newview/llcallingcard.cpp(620) processOnlineNotification : LLAvatarTracker::processOnlineNotification()
2022-10-20T21:27:29Z DEBUG # newview/llcallingcard.cpp(691) processNotify : Received 1 online notifications **** 
2022-10-20T21:27:29Z DEBUG # newview/llcallingcard.cpp(337) setBuddyOnline : Set buddy 70243b06-a65e-4e2b-b419-4844fbc3ea11 Online
2022-10-20T21:27:29Z DEBUG # newview/llcallingcard.cpp(620) processOnlineNotification : LLAvatarTracker::processOnlineNotification()
2022-10-20T21:27:29Z DEBUG # newview/llcallingcard.cpp(691) processNotify : Received 1 online notifications **** 
2022-10-20T21:27:29Z DEBUG # newview/llcallingcard.cpp(337) setBuddyOnline : Set buddy 39b44919-512a-40a5-8347-90f9125937e4 Online

Rather than processNotify being called once, with status updates for multiple agents, this older build on aditi is triggering processNotify once for each agent. This avoids the bug in the viewer.

While this issue doesn't seem to affect the current SL viewer at login time (no friend-online notifications are sent at login time, even when on SLS 2022-08-24.574550), I think it would the bug would trigger in the SL viewer if 2 friends happened to log in or out simultaneously.

sl-service-account commented 2 years ago

Whirly Fizzle commented at 2022-10-20T22:24:04Z

Awesome, you are a star Maestro.

I can confirm that this bug does not reproduce on Firestorm at secondlife://Aditi/secondlife/Toroge/128/128/73, running Second Life Server 2022-08-24.574550 On this region I get the expected notifications for each friends online when I login there.

sl-service-account commented 2 years ago

Whirly Fizzle commented at 2022-10-20T22:29:40Z

So just to confirm, this needs a viewer-side fix?

sl-service-account commented 2 years ago

Whirly Fizzle commented at 2022-10-20T22:55:20Z

Aishagain, I filed this bug against Firestorm at https://jira.firestormviewer.org/browse/FIRE-32324

sl-service-account commented 2 years ago

Aishagain commented at 2022-10-22T16:52:20Z

Understood Whirly and thank for the explanation, Maestro.

sl-service-account commented 1 year ago

Dan Linden commented at 2023-01-07T21:08:40Z

This bug should be fixed in Maintenance-Q - 6.6.9.577418 available on https://releasenotes.secondlife.com/viewer.html

Can anyone confirm this is fixed?