SL project updates 43/2: TPV Developer meeting

Belleck House; Inara Pey, Oct 2015, on FlickrBelleck House, Oct 2015 (Flickr) – blog post

The following notes are primarily taken from the TPV Developer (TPVD) meeting held on Friday, October 23rd, 2015. A video of the meeting is included at the end of this report, and time stamps to it are provided. My thanks as always to North for the video recording and providing it for embedding.

Deploys for Week #43  – Recap

There was no deployment to the Main (SLS) channel on Tuesday, October 20th. On Wednesday, October 21st, all three RCs should receive the same new server maintenance package, which include server-side improvements for delivering group notice attachments, together with some simulator crash fixes and code to prevent the uploading of “hacked” mesh content (e.g. mesh items which show a LI of 1 no matter what their actual complexity, or which spoof a creator’s name).

SL Viewers

[00:00] There have been no further updates to the SL viewer currently at RC or project status since the update to the Quick Graphics RC, which I covered in part 1 of this week’s report.

It still appears as if the next RC that will be promoted to a de facto release status will be the Notifications RC viewer (currently version 3.8.6.305981), although this won’t be confirmed until the start of week #44.

[00:37] As previously noted, the Quick Graphics and HTTP viewers still have some problems which need to be addressed before either one can proceed forward to release status. So except to see further RC updates to both of these in due course.

[00:54] The Chromium Embedded Framework project viewer is getting some good public testing, and is expected to get some “fairly frequent” updates.

[01:05] The Oculus Rift viewer currently isn’t being worked on, as attention is focused on the other viewers in the various pipelines. However, it is hoped work will resume “pretty soon”.

[01:20] There are further bug fixes and updates in progress, including some fixes for some minor regressions in the current release viewer, and these are getting fast-tracked and will be appearing in a further Maintenance RC in due course.

[15:00] It is likely that when the next release viewer promotion takes place (Notifications viewer), the Lab will block a series of much older versions of their viewer, but not the Obsolete Platforms viewer, version 3.7.28.300847, which they still plan to have available until such time as it simply stops working – although it should be remembered this viewer is already regarded as unsupported by the Lab.

Grid Status Page RSS Feed

[01:58]  In week #31 I reported that the Lab are working to update the Grid Status page RSS feed from RSS version 1 to RSS version 2. As existing web pages, etc., using the feed may need to be adjusted to accept the updated feed format, a proxy URL (http://beta.status.secondlifegrid.net/feed) has been available for testing purposes. It now appears that the switch will be thrown very soon to make the new version 2 RSS feed the default.

Inventory Updates

[02:15] As per  the Lab’s recent SL improvements blog post, the first set of viewer-side updates aimed at improving inventory reliability are being queued up ready to appear in the project viewer. however, these are unlikely to appear before the HTTP updates currently in RC reach a release status. Once the viewer-side changes appear, the Lab will start work on deprecating the outdated inventory messages which are no longer required on the simulator side.

Server-side Upload Checks  for Assets

[02:50] As a part of their overall work in trying to improve reliability within second Life, the Lab is looking to add further server-side checks to ensure viewers aren’t attempting to do anything the simulators aren’t equipped to handle, or which may cause unintended issues or outcomes, etc., for users.

This work will see the introduction of further validation checking on various asset types at upload. An example of this might be checks to ensure animations are what they say they are, further checking of mesh uploads to ensure they can be rendered correctly, etc.

[08:00] In particular with mesh, a simulator check is to be introduced to prevent the upload of mesh items weighted to all attachment points. There has been a viewer-side check designed to prevent such mesh items from being uploaded, which will in future be enforced simulator side. Existing content weighted in this way should not be “broken”, appearance-wise; but the simulator check will ensure such meshes cannot be uploaded (see FIRE-17144 for further details).

Attachment Point Validation

[04:20] Alongside the above, the Lab will be looking to introduce simulator-side attachment point validation checks. Right now, it is possible to have the viewer attach items to an avatar using points with are not correctly defined on the avatar skeleton.  This can result in other viewers showing the item randomly attached to the avatar (or possibly floating nearby – for those with long memories, think of the Emerald “attachment tail” which multiple attachments were introduced on that viewer without adequate simulator support).

To prevent this, the Lab are looking to enforce the recognised attachment points simulator-side, so that any attachments using an incorrect attach point will be mapped to a defined attachment point, and moved there. This work will be carried out incrementally, and will initially offer the changes to Aditi to allow for testing.

Other Items

Firestorm is now in Feature Freeze in preparation for the next release, which is now undergoing testing. Assuming no major blockers are uncovered, the next release should be available in November. This will be up-to-date with the Lab’s current release viewer (3.8.5.305531 – Maintenance release), and may included some additional items cherry-picked from upstream of that release. However, it is unlikely to have the new notifications updates, HTTP, Quick Graphics, etc.

SL project updates 43/1: server, viewer

WOD: Chateau Village; Inara Pey, October 2015, on Flickr WOD: Château Village (Flickr) – blog post

Deploys for Week #43

There was no deployment to the Main (SLS) channel on Tuesday, October 20th.

On Wednesday, October 21st, all three RCs should receive the same new server maintenance package, which include server-side improvements for delivering group notice attachments, which is hoped will provide some improvements to issues of trying to open such attachments from the group notice notifications.

The update also includes some simulator crash fixes, and while not advertised in the release notes, should also include simulator-side code to prevent the uploading of “hacked” mesh content (e.g. mesh items which show a LI of 1 no matter what their actual complexity, or which spoof a creator’s name).

As usual, updates can be found in the server deployment thread.

SL Viewer

The Quick Preferences RC viewer was updated to version 3.8.6.305942 on October 19th, most likely bringing it up to parity with the current release viewer.

Commenting on the status of the current RC viewers during the open Source Developer’s meeting on Monday, October 19th and in relation to any possible viewer promotion in week #44, Oz Linden said, “The Quick Graphics viewer has too many bugs to promote; mostly minor, but there’s no reason to go forward with it yet. HTTP has a couple of significant bugs to fix. So if I had to bet on the next promotion I’d guess the Notifications viewer.”

Expect more news on viewers following the TPVD meeting on Friday, October 23rd.

Other Items

A question was asked during the Simulator User Group meeting on Tuesday, October 20th about making script time for in-world objects in a parcel available to the parcel holder (e.g. an extension of the region-wide Top Scripts functionality available to region / estate owners / managers). The idea here being to help parcel owners better understand how in-world objects within their parcel might be impacting simulator resources (see this forum thread and SCR-60 as well).

Commenting on the idea, Simon Linden said:

Since we send it to the viewer already, you have access to the info … You can probably get some of that info by scanning but I can see it would be a lot easier to get that in a different format. One of the limits (I’m sure you all know) of LSL is it’s not good with large data sets, so I’m not sure how you can expose that info for a large number of items … so maybe the top 10 or 25 objects on a given parcel? I can totally see the need for that to manage land.

… HUDs and attachments add a twist to it … they would probably be lumped together with the AV as they are now. I wonder if it would be easy to add something like PARCEL_SCRIPT_TIME to llGetParcelDetials()? that doesn’t give you what you want, but is a higher level for finding the parcels with the most scripts.

Those looking for such a capability are advised to raise a JIRA feature request.

SL project updates 42/2: server, viewer

Crossing Sands; Inara Pey, October 2015, on Flickr Richmond Landing at Crossing Sands  – blog post

Server Deployments – Recap

As noted in part 1 of this week’s update, there were no deployments to either the Main (SLS) or RC channels in week #42. This means there will be no deployment to the Main channel in week #43 (week commencing Monday, October 19th).

The RC deployment planned for week #42 was ultimately postponed pending further work.

Week #43 RC Deployment

The deployment originally planned for week #42 is now targeted for deployment on Wednesday, October 21st. It will include the server-side updates intended to help prevent attachment links in group notifications from going stale. However, as per the first part of this week’s report (see link above), because it is also believed that there are some viewer-side issues causing these problems, the update might not fix all situation where an attachment to a group notice fails to open when viewed in the incoming notification.

The reason for the late postponement of the release in week #42 was because the Lab wasn’t entirely happy with aspects of the update, and as a result of recent issues in attempting to deploy some server-side improvements to inventory handling which lead to unanticipated side-effects, caution won the day.

This RC release may also incorporate a server-side update to prevent the uploading of “hacked” mesh content (e.g. mesh items which show a LI of 1 no matter what their actual complexity, or which spoof a creator’s name).

SL Viewer

The Notification RC viewer updated to version 3.8.6.305981 on Wednesday, October 14th, following the promotion of the Maintenance viewer to the de facto release viewer. This release adds a further set of fixes to the viewer:

  • MAINT-5370 [Notice] Hard to operate with notification window control
  • MAINT-5694 [Project Notice] Links on the 1st line of a group notice message are sometimes not clickable.
  • MAINT-5708 [Project Notice] Images shouldn’t be displayed in notification titles
  • MAINT-5730 [Project Notice] Text overlapping in group invites with non-default group role.
The notifications viewer update corrects four issues within the viewer
The notifications viewer update corrects four issues within the viewer relating to layout and control of notifications

European Connection Issues

Thursday, October 15th saw a DNS issue upstream of Second Life impact users in Europe, and notably The Netherlands, preventing people from logging-in to SL and from accessing web properties such as secondlife.com and the Marketplace, etc. The situation occurred as the Lab were also carrying out some unscheduled maintenance on the grid, prompting them to update the original Grid Status report with news on the DNS issue:

[Updated 4:27 PM PDT, 15 October 2015] We’ve received confirmation from our upstream provider that a widespread DNS outage is impacting parts of Europe, including the Netherlands, and possibly other regions. We’re monitoring the situation and will report on developments.

Second Life project updates 42/1: server, viewer, misc items

Hestium; Inara Pey, October 2015, on Flickr Hestium (Flickr) – October 2015 – blog post

SL Server Deployments Week 42

There was no deployment to the Main (SLS) channel on Tuesday, October 13th. Also, the server maintenance package planned for deployment to the three RC channels in week #42 did not pass final testing, and the deployment has been postponed as of LL CoB on Tuesday, October 13th.

SL Viewer Updates

The Maintenance viewer, version 3.8.5.305531, was promoted to the de facto release viewer on Tuesday, October 13th. The viewer has over 90 fixes, improvements and feature requests – please refer to the release notes (link above) for details.

Group Notice Attachments

The server maintenance package postponed from deployment in week #42 comprises a partial fix for  group notice attachments failing to respond when clicked, forcing recipients to open the Group floater, search the Notices tab for the relevant notice and retrieve the attachment from there.

This problem most frequently occurs as a result of some of the data relating to the notification and the original notification users open to access the attachment being lost to the simulator after about an hour, and the fix in question is geared to correcting this. However, there can be other circumstances where the attachment fails to respond, which might be either server-side issues, or viewer issues.

“I’m pretty sure there’s a viewer issue too,” Simon Linden said, discussing the matter during the Simulator User Group meeting on Tuesday, October 13th. “If you notice when you click on notice attachments, sometimes when it doesn’t work you see nothing at all; no UI feedback where that attachment shading changes or anything. I think in those cases the viewer is dropping the click and not doing anything at all, and it might work if it actually sent a request to the server.” He added that he hopes the RC deployment, once available, will at least improve matters.

Other Items

Accessing Crowded Regions

A question was asked at the Simulator group about whether repeated attempts to access a crowded region by repeatedly trying to cross to it from neighbouring region or constantly trying to teleport into the region, causes it any significant issues in terms of performance. There are already some HUDs on the marketplace which will automatically re-try teleports to a specific location, and the question was prompted by a feature request to Firestorm to make a similar capability within the viewer.

Simon Linden was understandably cautious in his response, pointing out that any attempts to move between regions will use up time and network traffic, but suggested that a retry system with a delay of around 5 seconds or so shouldn’t put any stress on the simulator (some of the available HUDs actually work on a faster retry cycle than this, so could be having more of an impact). It was also suggested – although not by a Linden –  that moving such a capability client-side might actually reduce a small load from the simulators when compared to using a scripted HUD.

This question prompted the idea of some kind of list managed queuing system for crowded regions, so that people attempting to reach it would be automatically teleported when there is room, and in the order they were added to the queue.

However, as was pointed out in the meeting, such an approach would require a considerable amount of work in terms of just managing the list (keeping track of who is on the list, who joins the list, who opts to log-out before a space becomes available, forcing an update to the entire list, removing people who are teleported from the list, and so on).  As such, Simon indicated he’d rather work on improving simulator performance to allow more avatars into a region, and have the viewer improved so it can better handle large numbers of avatars.

Special Events Regions

In a similar vein, there have been rumours of large events getting dedicated servers to handle the load more effectively. Commenting on this, Simon said, “We’ve talked about that, and I don’t know what might happen; but we’ve discussed the short-term need people have for regions or better performance. It’s now more in the product folks lap … they need to figure out how we would offer something like that.”

Temp Attach from Object Inventory

A question was asked at the meeting about whether anyone at the Lab was working on a means to allow a temporary attachment directly from an object’s inventory (contents). Simon noted that while no-one is currently working on this, it is on the Lab’s feature list, adding, “it’s just an idea; but the current attach process used by experiences is rez the thing, then attach. It would be better to just directly attach.”

It’ll be interesting to see if this comes about.

SL project updates 41/2: TPVD meeting, attachments & Interest List issues

Ironwood Hills; Inara Pey, October 2015, on Flickr Ironwood Hills (Flickr) – blog post

The following notes are primarily taken from the TPV Developer (TPVD) meeting held on Friday, October 9th, 2015. A video of the meeting is included at the end of this report, although the opening few minutes of the meeting are missing. Because of this, I’ve included an audio file as well to cover the opening of the meeting.  Time stamps to both the audio and the video are provided, and my thanks as always to North for the video recording and providing it for embedding.

Please note that any extraneous noises on either the audio or the video are the result of an open mic in the meeting itself, and not from myself or North

Server Deployments: Week 41 – Recap

As per the server deployment thread, there were no scheduled deployments / restarts for the three RC channels during the week, while the Main (SLS) channel received the same server maintenance package deployed to the RCs in week #40.

SL Viewer Updates

 

[00:00 – 02:10 on audio]

CEF Project Viewer

On Wednesday, October 7th, the Lab issued the long-awaited project viewer utilises the Chromium Embedded Framework (CEF) for media handling – and more – in Second Life. Version 4.0.0.305703 sees CEF replace the ageing llqtwebkit functionality for media management in Second Life (also see my separate update).

[13:25 video] The emphasis from the Lab is that if you use web media in-world test your products / projects / uses thoroughly with the CEF project viewer, and make sure you continue to test as the project viewer is updated, in order that specific issues encountered can be reported and looked at while the lab is still developing the viewer.

It also appears that QuickTime media may still work on this viewer, rather than being disabled, as had been indicated in my last TPVD update. However, this should not be taken to mean either QuickTime or Flash will be supported by the Lab going forward, or that media using them will be viewable by all users. CEF, HTML 5, etc., are the future of media in SL.

Other Viewer Updates

On Friday, October 9th the HTTP updates viewer (project Azumarill) was promoted to release Candidate status with the release of version 3.8.5.305771. This viewer provides improved performance and stability. Impacts include: asset uploads, AISv3 inventory manipulation, VMM, Experience management, LSL compilation, Simhost event polling, etc.

Currently, it appears as though the Maintenance RC viewer, version 3.8.5.305531, is in line to be promoted to the de facto release viewer in week #42 (week commencing Monday, October 12th).

An update for the Oculus Rift project viewer (currently version 3.7.18.295296, and now almost a year old), is still expected, but it is subject to other work being undertaken at this point in time.

Attachment Loss on Region Crossings

[03:44 audio;  00:00 video]

The Lab recently carried out extensive work to reduce the number of attachment loss issues occurring as a result of issues caused directly within the viewer itself (project Big Bird). However, while this work fixed a lot of issues, some still remain, particularly during region crossings, whether physical or via teleport (see BUG-7761 as an example).

Essentially, what happens when moving from one region to another is that all of the attachments on your avatar must get new IDs from the simulator to which you are moving. The viewer then has to associate these new IDs with the attachments you are wearing, and the locations where those item as actually attached. In doing so, it attempts to preserve continuity  by keeping things where they were according to the region you’re leaving, and then updating them with the information it receives from the new region.

A problem I sometimes encounter when flying / boating is returning home and finding one of my scripted mesh shoes has been detached at some point during the trip
A problem I sometimes encounter when flying / boating is returning home and finding one of my scripted mesh shoes has been detached at some point during the trip

This obviously involves a lot of messages being passed back and forth between server and viewer – and the more attachments you have, the greater the number of messages being passed back and forth.

Additionally, if the attachments are scripted, further messages relating to script states, etc., also need to be passed relating to their state, etc., which adds to the load. Finally, all of these messages may use different transport mechanisms to pass between server and viewer.

This means there are many opportunities for messages to arrive out-of order due to race conditions, etc., or to be dropped and lost because of possible network issues and some messaging mechanisms not having a retry option, etc. It is these problems which tend to result in issues with attachments being removed, etc.

The Lab is interested in trying to eliminate as many of these problems as they can (allowing for the fact some might be related to your network connection, and possibly outside of their ability to control). However, in order to do so, they first need to identify exactly what is going on, and this requires examples of attachment losses, etc., that are consistently reproducible (e.g. attachment type X will always detach when crossing between regions Y and Z, for example). It is these kinds of consistent examples which are proving hard to find – so if you do know of one, please raise a JIRA outlining it step-by-step.

Continue reading “SL project updates 41/2: TPVD meeting, attachments & Interest List issues”

Second Life project updates 41/1: server, viewer

The Trace too; Inara Pey, September 2015, on Flickr The Trace Tooblog post

Server Deployments, Week 41

A light week this week. As per the server deployment thread, there will be no scheduled deployments / restarts for the three RC channels during the week. The Main (SLS) channel will, however, receive the same server maintenance package deployed to the RCs in week #40.

SL Viewer Updates – Quick Graphics Viewer

The Quick Graphics viewer reached release candidate status on Friday, October 2nd with the release of version 3.8.5.305528. This is the view which provides the new Avatar Complexity options and the new graphics preset capabilities for setting, saving and restoring graphic settings for use in difference environments / circumstances.

The revised Advanced Graphics floater for the RC, first seen in later iterations of the project viewer
The revised Advanced Graphics floater for the RC, first seen in later iterations of the project viewer

One of the more visible changes within this RC for those who may have used the initial project releases of this viewer, but not the more recent iterations, is that the Advanced Graphics floater has undergone further changes, and is now presented as a two column floater, rather than the single huge floater seen in the first releases of the viewer.

In terms of the graphic presets as well, it should be noted that this RC update does not appear to resolve BUG-10398 “Graphics preset changes to None each time the Advanced Graphics floater is opened, even when no changes are made”.

The colours used for "Jelly Baby" avatars exceeding a user's complexity limit have been further toned down in the Quick Graphics RC update
The colours used for “Jelly Baby” avatars exceeding a user’s complexity limit have been further toned down in the Quick Graphics RC update

For Avatar complexity, the RC update sees further tweaks to the default Complexity value you will see displayed in the Advanced Graphics floater, which is based on your system’s capabilities. The colours used for avatars which are “Jelly Babied” for exceeding your Complexity setting have also been further toned down so that they are not quite so glaring.

However, a number of Avatar complexity issues still appear to be unresolved with this release, and which appear to be related to avatars with very high attachment byte sizes (the 4th value displayed over avatar heads by the viewer when showing Avatar Complexity information):

  • BUG-9962 – Avatars often permanently stuck as jelly babies even when Max complexity = No Limit
  • BUG-10401 – Blocked avatars are always fully rendered when imposters are disabled & other odd new behaviour with blocked avatars
  • BUG-10330 – Some avatars remain invisible until imposters are disabled.

Note: I’ve seen a couple of comments in some group IMs and elsewhere suggesting some people are under the impression this viewer should produce faster in-world rendering (presumably because of the”quick graphics” project title). This isn’t actually the case; however, and depending on variables outside of the Lab’s control, much improved rendering should be seen when using the project Azumarill viewer.