SL projects updates 20/1: server, viewer, LSL and materials

Server Deployments, Week 20

There was no Main channel deployment or rolling restart on Tuesday May 13th, and neither the BlueSteel or the LeTigre RC channels will receive an update or should undergo a restart on Wednesday May 14th.

The Magnum RC should receive a new sever maintenance project on Wednesday May 14th, which includes a bug fix for a networking-related issue that sometimes affects busy sims.

SL Viewer Updates

The SL Maintenance viewer was updated on Monday May 12th to version 3.7.8.289922. This viewer includes multiple fixes to Mac viewer; fixes in Recent tab, Chat, LSL editor, land management, etc; GPU table updates; crash fixes & performance improvements.

LSL Functions for Materials

The subject of scripted control for materials was once again raised at the Simulator User Group meeting on Tuesday May 13th. Commenting on the matter, Simon Linden said:

I am looking at it but not promising anything. We’re trying to be really careful to understand how the server and viewers will react when stressed with a lot of material churn. From what I can tell, fast-moving material-based animation will not work well … that’s likely to be throttled or blocked somehow. But supporting something like a hud or other control that could adjust the look of an object … where it’s done rarely … is definitely possible.

As noted the last time this subject was raised, there are concerns over how LSL control of materials might impact system performance, either deliberately (via rapid and multiple flipping of maps, hence Simon’s comment on throttling the speed at which changes could be made), or unintentionally, such as using them with objects which may already have a large performance impact (such as animated mesh tails).

During the meeting, there was discussion on options for animating normal and diffuse maps, remembering that they can already be animated in lockstep with their attendant texture (diffuse) map. During this discussion, Simon commented on some of the difficulties in animating  materials independently of the texture map:

The materials LSL support would include changing the offset, repeat and rotation values for the two maps, just like for regular textures. The update problem hits if you look at the way materials have been optimised between the server and viewer and how updates are sent. Materials are referred to by a number ID … so you get updates that say “this face has material 1234” on it, the viewer, if it doesn’t know what 1234 is, has to ask the server.

Now, if you change the offset … you have a new material 34356, the viewer has to again find out what that is, but this time it already has the actual specular and normal maps, so no download there.  And when you switch back to 1234, it has all the info and can draw it faster.

Summing-up the situation in general, Simon concluded, “I hope there will be something to play with eventually on the beta grid … we’ll probably want to experiment there and figure out what kind of limits are effective.”

SL projects updates 18/1: miscellaneous items

Server Deployments Week 18

As always, please refer to the server deployment thread for the latest updates and news.

Main (SLS) Channel

On Tuesday April 29th, the Main channel received the server maintenance project that was on the Magnum RC in week 17, comprising:

Release Candidate Channels

On Wednesday April 30th, all three RCs should receive the same maintenance package. This comprises the same fixes as deployed to the Main channel and sees the Magnum RC rejoin BlueSteel and LeTigre with AIS v3 support, which requires the use of the Sunshine RC viewer.

SL Viewer

As per my recent post, the Lab have updated their SL system requirements page for Windows and Mac OSX to better reflect the public status of both operating systems.  There is an official blog post on the subject as well, which essentially confirms that Windows XP and OSX 10.6 are considered as no longer supported. While accessing SL from computers using these OS versions will not be blocked, users will no longer be able to obtain SL-related support should they encounter issues, and the Lab is advising people update wherever possible.

Additionally, the Lab is updating the Windows installer so that it will verify whether the latest service packs for Windows XP versions have been installed, otherwise viewer installation on XP will be blocked until such time as the relevant service packs have been installed.

The aim here is to help people enjoy improved stability in the SL experience. However, once these new requirements come into effect, they may cause some upset among those affected. How widespread this is liable to be is debatable; the Firestorm team have been running a similar process since the release of Firestorm 4.6.1, and they are reporting minimal complaints from among users.

Group Chat Optimisation

Following the last group chat tests on Aditi, Simon Linden reports that the optimised code has been deployed to a production server this week, but it is liable to be a little while longer before it is deployed to all of the chat servers, and time will be taken to see how it behaves with traffic on the server on which it is currently running.

Group Bans

Baker Linden is back on code merges for the viewer. It is thought he may have hit one or two problems, so assuming he makes the Server Beta meeting on Thursday May 1st, we may find out if this is the case and what is happening.

Experience Keys (/Permissions)

Expectations on what these are liable to be, how they will work, what limitations may be placed on them, and so on, is still running high, particularly after Danger Linden (Don Laabs, Linden Lab’s Senior Director of Product) mentioned them recently. As I’ve covered previously, the experience keys are essentially the culmination of a project which was initially prototyped with the Linden Realms game, and which have since been going through continued development, re-definition and enhancement and which should – hopefully – be appearing in the near future.

Other Items

URL Errors When Connecting to a Region

There is a known issue which can cause issues when the viewer is trying to connect to a region. In these circumstances, the viewer receives URLs containing the host name, but not the required “.agni.lindenlab.com” (e.g. to something like “https://sim10586:12043/cap/…” is received, rather than “https://sim10586.agni.lindenlab.com:12043/cap/…”).

This causes the viewer to fail to connect to the various capabilities using the URL calls, which in turn results in things like mesh load failures, inventory load failures,  L$ failures, and so on, as well as having bad URLs shown for http-in. See also BUG-4704.

Should this happen, the advice to region owners is to contact support, indicating the region where the issues are occurring. The problem can be identified in the viewer log file, which will contain entries similar to the following:

2014-04-29T16:44:05Z INFO: LLCurl::completedRaw: Failed to deserialize LLSD. https://sim10586:12043/cap/01a64236-9a2b-4008-bef0-46a0f7afecae [499]: STATUS_ERROR
2014-04-29T16:44:05Z WARNING: BaseCapabilitiesComplete::errorWithContent: [status:499:] {'reason':'STATUS_ERROR'}
2014-04-29T16:44:05Z INFO: failedSeedCapability: posting to seed https://sim10586:12043/cap/01a64236-9a2b-4008-bef0-46a0f7afecae (retry 23)
2014-04-29T16:44:05Z WARNING: LLURLRequest::smileytongue:rocess_impl: URLRequest Error: 6, Couldn't resolve host name, https://sim10586:12043/cap/01a64236-9a2b-4008-bef0-46a0f7afecae

 

SL projects updates 17/2: Group chat, group bans

Server Deployments week 17 – recap

There was only on server deployment in week 17, and that was to the Magnum RC. It comprised the same server maintenance package as deployed to it in week 16, but with an additional fix for BUG-5763 (“AGENT_MOUSELOOK flag is often incorrect when llGetAgentInfo() is called within control() event”). There have been no reports of further issues, so it is anticipated that this package will be deployed to the other channels in week 18 (week commencing Monday April 28th).

SL Viewer

Updates

On Thursday April 24th, the Sunshine / AIS v3 RC viewer updated to version 3.7.7.289441, (download and release notes), while the SL Share 2 project viewer updated to version 3.7.7.289468 (download and release notes).

LSL Support for Materials

This has been an oft-requested feature, and has been under informal review within the Lab. However, some confusion was caused when the release notes for the SL release viewer version 3.7.6.289164 (promoted on Monday April 21st, and formerly the VoiceMO RC), apparently listed MAINT-3531 (“Feature Request: LSL support for material texture maps”) as resolved.

However, this is an error. So far, there has still been no actual work on the capability.

Group Chat Optimisation

There was a further test of Simon Linden’s ongoing group chat optimisation work at the Server Beta meeting on Thursday April 24th. This followed the usual pattern of multiple messages being sent by those at the meeting across two chat groups, with people sending message from different regions as well as Morris, where the Server Beta meeting is held. From my own perspective, I had no noticeable issue in switching between local chat and one of the group chat sessions, even with a lot of messages passing through the latter, and didn’t appear to result in any message loss or significant delay.

However, the second group did cause the viewer to lock-up for up to 20-30 seconds at a time when switching to it, and appeared to be linked to the fact that one test participant was repeatedly pasted a veritable wall of text in to the group chat (which, while pushing the viewer, was probably not representative of how most people engage in group chat sessions). Both Simon and Maestro Linden believe the extended pauses were viewer-side, rather than anything in the back-end chat servers, with Maestro observing, “My guess is that the typesetting of all that text, profile icons, etc., is taking a lot of time.”

There’s still no news on when testing with larger groups will commence on Agni, although Simon hopes this will be “soon”.

Group Bans

Baker Linden, ironing-out the remaining issues with Group Bans
Baker Linden, ironing-out the remaining issues with Group Bans

Baker Linden has been working on the group ban functionality – notably the viewer-side code, although there have been some server-side updates as well. He had a new test viewer available for people to poke at during the Server Beta meeting, and which includes the latest updates found in the release viewer, as well a various fixes.

One of the latter is a fix for the issue whereby only the first name on a list of people being invited into a group would be checked to see if that person had been previously banned (and thus prevented from joining); anyone else further down the list would had been previously banned would be allowed to re-join on receiving the invitation.

Baker also noted a message has been added as well for these situations, “so you should get a notice saying some people in your invite list are banned from the group and weren’t sent an invite,” he said prior to testing. “I’ve noticed this to be a pretty sporadic thing, but I don’t think it’s something I can easily fix — the code showed that it was sending every time.”

While no formal testing was carried on with the latest updates to the viewer, it was noted that there appears to be an issue with the people picker option, in that it failed to locate people for banning – even when they were standing alongside the person with group ban powers. This will doubtless be looked into further.

Those wishing to test the group ban functionality can do so by downloading the test viewer and running it on Morris on Aditi.

SL projects update: 17/1: server, viewer

Running slightly behind in weekly updates due to the small matter of RL house decorating. I long for the day when I can take a colour swatch and simply drag my choice from the swatch onto the wall and see the wall instantly painted…

Server Deployments: week 17

The Main (SLS) channel and the LeTigre and BlueSteel RC channels all have no scheduled deployments for the week.

On Wednesday April 23rd the Magnum RC received the same server maintenance package as deployed to it in week 16, but with an additional fix for BUG-5763 (“AGENT_MOUSELOOK flag is often incorrect when llGetAgentInfo() is called within control() event”). This bug was a regression in the original update, and which affects certain guns that only allow some actions when they think the user is in Mouselook and certain vehicle that change control behaviour when in Mouselook. Early indications are that the fix has been successful.

SL Viewer Updates

On Monday April 21st, the VoiceMO release candidate viewer, version 3.7.6.289164 ((download page, release notes)  was promoted to the de facto release viewer. This viewer pulls in Vivox 4.6.x libraries instead of 4.5 for improved stability and to address Mac Mavericks issues as well as fixes for accurately detecting Merchant status and improves recovery for Merchant Outbox errors. It should also removes the Windows crash reporter pop-up notification.

The Maintenance RC updated on Tuesday April 22nd to version 3.7.7.289405 (download and release notes). This RC includes over 50 MAINT category fixes broadly covering:

  • Multiple fixes to Mac viewer
  • GPU table updates
  • Fixes in Recent tab, Chat, LSL editor, land management, etc.
  • Help system update
  • Crash fixes
  • Performance improvements

The interest list RC updated on Wednesday April 23rd to version 3.7.7.289461 (download and release notes).  I’ve still not found the time to have a play with this viewer.

The sunshine RC should update as well, most likely before the end of the week. Please refer to my current viewer releases page for updates on SL viewer versions and TPVs listed by LL.

STORM-1831: LSL Syntax Updates

STORM-1831 is the work mainly undertaken by Ima Mechanic (with assistance from Oz Linden and Cinder Roxley) to improve syntax highlighting in the viewer’s LSL editor by allowing the viewer to obtain the information required for syntax highlighting directly from the simulator the viewer is connected to. This should eliminate issues with the current manually updated files used to manage syntax highlighting falling out-of-synch with new LSL syntax as new functions and parameters, etc., are added. Folded-in to this work should also be a change to the source code text allowance in the viewer’s LSL editor, increasing it from the current 65,000 characters to around 256,000.

The server-side support for this commenced deployment in week 2, but the viewer work has been subject to delay for a variety of reasons (not the least of which has been the number of RC and project viewers in the release and various project channels). However, it is hoped that a project viewer with this work (and possibly other STORM contributions) will be appearing either this week or in week 18, and Oz hopes to see some testing carried out using it once it does so.

 Group Chat Optimisation

Little to report on this, other than the Lab is “working out some kinks”. Further details on the status of Agni testing may be available at the Server Beta meeting.

SL projects updates week 16/2: server update, misc items

Server Deployments – recap

There were no deployments to the Main (SLS) channel or the BlueSteel and LeTigre channels during week 16.

On Wednesday April 16th, the Magnum RC received a new server maintenance package, which included a fix for BUG-5533 (“llTeleportAgent() and llTeleportAgentGlobalCoords() can break any script in any attached object that contains a change event.”).

Commenting on the latter at the Server Beta User Group meeting on Thursday April 17th, Maestro Linden said:

Unfortunately, after the roll we discovered that there was a regression in the Magnum update,  which was BUG-5763 (“AGENT_MOUSELOOK flag is often incorrect when llGetAgentInfo() is called within control() event”), which apparently affects certain guns (which only allow some actions when they think you’re in Mouselook) and certain vehicles (which change control behaviour when they think you’re in Mouselook).

The good news is that Kelly [Linden] came up with a fix for it yesterday, which is out on Aditi now. I gave it a whirl, and it looks like this bug is fixed. But if you have content that was broken by that bug, I’d encourage you to test it out on Aditi, in case there are any additional problems.

Those wishing to test the fix can do so on the Aditi regions Ahern, GC Test 10, and Tehama.  GC Test 10 is probably the most convenient to test on, as it mostly allows anybody to build and run scripts.

Week 17 Deployments

While the final details of deployments for the week commencing Monday 21st April will not be determined until the start of that week, it currently looks as though there will again be no deployments to with the Main (SLS) channel or the BlueSteel and LeTigre RCs, while Magnum will gain the BUG-5763 fix.

Commenting on the lack of high-profile server updates of late, Maestro pointed to the fact that the Lab has been engaged in a series of “invisible updates” recently, notably infrastructure improvements.

Group Chat Update

There were no further tests on Simon Linden’s group chat work, and Maestro indicated that testing on Agni may commence in week 17. An idea initially discussed for testing these optimisations on the main grid had been to use a single large group (the Firestorm Support group, due to both its size and frequency of use). However, commenting on the work, Maestro Linden said, “since the group chat changes are in the backend service, this would mean that … around 1/16 of groups would be on the group chat stuff.”

Other Items

HTTP-in Failures

Some people are noticing an uptick in issues relating to in-world scripts acting as HTTP servers (notably with HTTP-in functions). There has been a known bug with these (non-public BUG-2564)  wherein all http-in URLs and all capability URLs for connected users are dropped simultaneously, all the connected users get logged out, and HTTP-in scripts cannot be contacted. However, some of the issues people are experiencing appear to be occurring since the most recent HTTP updates were made. Lucia Nightfire describes the problems as, “random URL loss and instability is common esp after the http changes.” she goes on to note that she has had to “change http protocol and add heartbeats to some apps since the HTTP changes.” She further goes on:

Sometimes after I crash then relog into a region, its like my caps are reset and re-evaled and  in-turn all my HTTP devices all of a sudden cannot request URLs until the caps are reset or it is [a] repeat URL request failure. Long story short, if your viewer crashes, don’t log into your home region if you have servers there, or you risk interruption.

Maestro’s thinking on the matter is that it may be linked to a server crash – particularly given Lucia confirms the problem does occur as a result of a region crash – as there is nothing specific to a viewer crash which should upset things like HTTP-in functions. Further testing has been suggested to see if a precise cause can be identified.

SL projects updates 16/1: Server and misc news

Server Deployments – Week 16

  • Main (SLS) channel: no deployment.
  • BlueSteel and LeTigre RCs: no deployments and remain with AIS v3 enabled
  • Maganum RC: should receive a new server maintenance package on Wednesday April 16th. This comprises a crash mode fix, and a fix for BUG-5533 (“llTeleportAgent() and llTeleportAgentGlobalCoords() can break any script in any attached object that contains a change event.”).

SL Viewer

The SL Share 2 project viewer, which includes the new options to upload text and snaps to Twitter and snaps to Flickr, complete with post-processing filter capabilities, and with the updated Facebook snapshot upload tab (also with the filters), was updated on Tuesday April 15th to version 3.7.6.288806.

Other Items

AIS v3 Inventory Outfit Links Issue

For those who use the Outfits folder in inventory, a useful option is that of being able to create links to no Copy items, allowing them to be “shared” among multiple outfits. This capability was originally introduced in Viewer 2, and has been popular among a number of TPVs.

While testing the new AIS v3 code, Henri Beauchamp noticed that when creating a new link in  inventory in an AIS v3 region and when using an AISv3 compatible viewer, the AIS server reply is not properly parsed, resulting in a failure to sync the viewer-side inventory (and its cached list) with the server-side inventory.

He has filed a JIRA (SUN-129) relating to the issue, although it is not clear if the issue is unique to Cool VL viewer, which uses a different algorithm to create the COF links, or whether it may affect other viewers still using links.

MAINT-535 Viewer URI Name Space

Viewer URI Name Space is a means of specifying URIs in a format the SL viewer can understand and use. For example, “secondlife///app/teleport” can be used to display a teleport link in local chat, IM or from a browser such that when the link is clicked, the user is automatically teleported to the destination. For example: “secondlife:///app/teleport/ThisPlaceHere/71/6/22” would display a link “Teleport to ThisPlaceHere” in chat / IM which when clicked, would teleport the user directly the destination.

However, because the capability can include an innocuous label, rather than displaying the actual SLurl, there have been concerns that the capability could be abused. For example “[secondlife:///app/teleport/GoHereAndGetBanned/3/4/56 CLICK FOR FREE STUFF!]” would be displayed in chat or IM as “CLICK FOR FREE STUFF!”

Because of this risk, Linden lab updated things such that the use of Viewer URI Name Space causes the official viewer to display a warning:

SLurl warning

A couple of side effects of this are that all SLurls which use Viewer URI Name Space can be impacted, and other uses of the capability can also be affected as well, as is the case with BUG-5702.

To address the issue with teleports, the Lab has introduced Maint-535 (currently in the Maintenance RC viewer, version 3.7.6.288799. This works by opening a dialogue box which displays the actual destination, together with button for the user to either teleport or ignore the offer, as shown in the example below.

tp-warn
MAINT-535 causes teleport links which use Viewer URI Name Space to generate a dialogue box displaying the destination, regardless of any label used to disguise it (click for full size)

Do note that all of this is only relevant to SLurl which use Viewer URI Name Space, Slurl from the map, landmarks, etc., do not see any change in behaviour.

Some concern was raised at the Simulator User Group meeting on Tuesday April 15th that because the dialogue box is displayed for all teleport offers using Viewer URI Name Space, even those that display the destination (e.g. “Teleport to ThisPlaceHere”, and that it might cause annoyance among people as a result of the need to confirm a teleport.

MAINT-535 also doesn’t address issues such as BUG-5702, where the “untrusted browser” message continues to be displayed.