SL projects update week 9/2: group bans update

Group Bans, or Group Ban Lists as I’ve tended to refer to them, as some people appeared confused by the term “group bans” and have taken it to mean banning groups from parcels or regions, is nearing a status where it will be ready for testing on Aditi.

“I’ve gotten the backend almost ready for release (I’m waiting on some builds at the moment),” Baker Linden said of the server-side element of his work, while speaking at the Server Beta Meeting on Thursday February 27th. Baker is hoping that the viewer code will be appearing in a project viewer in the course of the next week.

Recap on Functionality

Baker Linden has been working on the ability to ban people from groups for some 10 months
Baker Linden has been working on the ability to ban people from groups for some 10 months

While discussing the project status, Baker gave a recap of the new functionality:

I’ve talked many previous times about group bans, and now that it’s finally boarding the release train, I’d like to just do a quick overview of what known issues are and what it can do:

    • Group Ban provides the ability to permanently prevent a resident from joining your group.  Currently, the limit will be set to 500 bans per group
  • By default, only Owners will have this ability set
  • Owners must then grant the ability to the roles they want to have manage the ban list
  • You can ban members from the “Members” tab of the group panel, and pre-emptively ban residents through the new “Banned Agents” tab
  • The “Roles” tab will allow you to grant the “Manage Ban List” ability to a role.  when doing this, keep in mind that allowing this ability will also automatically grand the “Eject Members from the Group” and “Remove Roles from Members” ability
  • You will NOT be allowed to disable the “Eject” and “Remove Roles” ability while “Manage Ban List” is allowed
  • You will also be able to (hopefully) batch up bans in groups of 100 at a time (through the “Banned Agents” tab). [It’s the] same as inviting residents; it’s the same code, I just refactored it so I could use it for bans too.

In the initial release, group members can only be banned from within the group floater (right-click on a name and click the Ban button), it will not be possible to right-click on a name in group chat and ban the individual; however, this may be added in the future, as it is considered a relatively straightforward addition.

Group Ban will introduce a new tab to the Groups floater, called "Banned Agents"
Group Ban will introduce a new tab to the Groups floater, called “Banned Agents”, allowing group owners and designated roles to ban people from joining a group

A FAQ has been produced, purely for the purposes of testing on Aditi, but which also helps further explain the group ban functionality. This can be found here, but do note that:

  • The instructions apply to the yet-to-be-released project viewer
  • The final functionality of group bans may vary from that described in the FAQ as a result of bugs or issues arising during testing.

In order to function correctly, the ban ability requires that the Eject and Remove Roles are enabled, as Baker explained above. To make this clear, when a group owner grants a role the ability to ban people from the group, a pop-up will be displayed reminding them that Eject and Remove Roles will also be granted. Similarly, when the ban ability is revoked, a message is displayed confirming that both Eject and Remove Roles have also been revoked.

Known Issues / Initial limitations

  • There may be an initial issue with the new capability during initial deployment as the code starts to reach Agni, when there is the “new” and “old” server-side code running on different channels. This may result in someone being able to re-join a group after being banned, simply because the ban was executed on a simulator which does not have the new code. Obviously, once the code is fully deployed to Agni, this will no longer be a problem
  • There is a risk of some “overlapping” bans may not be processed as anticipated. For example, if two people have the ban role, and one bans users A,B, and C and the other C, D, and E at the same time, “C” should be banned, but there is a slight chance this may not be the case
  • If two (or more) people have the ban ability, then their own view of the group member list will not be updated to reflect bans made by others until such time as they refresh the list
  • The list will cap-out at 500 bans. When that limit is reached, someone with the ban ability must remove names from the list in order for new names to be added, otherwise further ban attempts will fail.

Group Bans represents some 10 months of work for Baker Linden, including a large amount of code refactoring on both the server and viewer sides. The capability still won’t be deployed to the main grid for a little while longer, but progress has now reached a point where more widespread testing should be taking place on Aditi, most likely starting in week 10 (week commencing Monday March 3rd). Deployment to the main grid will most likely remain a combination of resolving any unforeseen issues during the more widespread testing on Aditi and on how it takes for the viewer code to progress from project viewer to release candidate to release viewer.

SL projects update week 9/1: server releases, viewer updates

Server Deployments: week 9

As always, please refer to the server deployment thread in the forums for the latest updates / changes.

Main (SLS) Channel

On Tuesday February 25th, the Main channel was updated with the server maintenance package previously on all three RCs, which comprises the following:

  • Fix for BUG-5034 “If an EM restarts a region and then teleports out immediately, the EM will disconnect just after teleport”
  • Fixed a rare case in which e-mails read by LSL scripts immediately after rez or region change would sometimes be missing the message body
  • Fixed some crash modes

Release Candidate Channels

On Wednesday February 26th, the Release Candidate channels should be updated as follows:

  • BlueSteel and LeTigre should receive an infrastructure update, with no functional changes
  • Magnum should also receive the infrastructure update, and in addition have the server-side AIS v3 code enabled (the code having already been rolled-out to the grid – see the AIS section of my week 7 report). This code requires viewer-side updates to work (currently available as a project viewer), and should Improve performance and reliability when changing outfits (see my AIS reports in this blog).

SL Viewer Updates

HTTP Viewer Promoted

The HTTP viewer, version 3.7.2.286707 was promoted to the de facto release viewer on February 25th. This currently leaves just two RC viewers in the release channel: the Maintenance RC (3.7.2.286708) and the Interest List viewer (3.6.14.285213), both of which should  be rebuilt using the HTTP viewer code base in due course.

Sunshine / AIS Viewer

With only two RCs in the release channel, it is possible the Sunshine / AIS viewer may be moved to release candidate status this week. Given that the server-side AIS code is starting to be enabled on the main grid, this viewer could be on course to reach a release status in week 11.

Group Ban Lists

Baker Linden is currently filing for the server-side code to be deployed to Aditi, which he hopes will happen by the end of the week. In the meantime, he describes the status of the Viewer code as, “testing it for compatibility with old viewers and such. Once that’s stable and I know I didn’t break anything, I’ll start filing for the viewer to become a release candidate.”

Other Items

Region Restart Oopsie

The new on-screen region restart warning, accompanied by a sound and camera shake
The new on-screen region restart warning, accompanied by a sound and camera shake

A slight issue has come to light with the recently implemented new region restart alert, now active in the SL viewer and in the most recent updates to a number of TPVs. Essentially, the sound accompanying the 5-minute countdown (and which is played alongside the camera shake at the top of each minute in the countdown) is actually played in-world rather than locally.

The result is that if there are several avatars close together who are using viewers with the new restart alert code, the noise can either be very loud or something of a mess (particularly if some of those users have opted to set custom warning sounds within their viewer).

The fix is relatively straightforward, and will doubtless be incorporated into an upcoming viewer release. In the meantime, the Firestorm team have implemented their own fix ready for the next release of that viewer due in early(ish) in March, which will be the first version of Firestorm to incorporate the new code.

Pocket Metaverse Users Inadvertently Blocked at Weekend

There were a number of reports over the weekend that users on the iOS Pocket Metaverse third-party client were unable to log-in to Second Life, as a result of their hardware being blocked. This caused a number of forum posts on the subject, such as this one and this one, and some upset on Twitter.

It turned out the client was apparently presenting the wrong information to LL’s servers, triggering the hardware block. On becoming aware of the problem, the Lab immediately set about reversing the blocks, and the matter appeared to be cleared-up by the end of the weekend.

The Pocket Metaverse issue caused some users to complain on Twitter, prompting a resonse from Ebbe Altberg
The Pocket Metaverse issue caused some users to complain on Twitter, prompting a response from Ebbe Altberg

SL projects news week 8/1: server, viewer and log-in issue PSA

My apologies for the late release of this update; things have been a little bit hectic, and I’ve been rushing to catch-up on posts and news.

Server Deployments: week 8 – recap

As always, please refer to the server deployment thread in the forums for the latest updates / changes.

  • As there was no update to the RC channels in week 7, there was no update to the Main channel on Tuesday February 18th.
  • On Wednesday February 19th, all three RCs received a new server maintenance package which comprised the following updates:
    • Fix for BUG-5034 “If an EM restarts a region and then teleports out immediately, the EM will disconnect just after teleport”
    • Fixed a rare case in which e-mails read by LSL scripts immediately after rez or region change would sometimes be missing the message body
    • Fixed some crash modes
Maestro Linden
Maestro Linden

The region restart issue (BUG-5034) was described in part 2 of my week 7 report.

Commenting on the e-mail issue during the Server Beta Meeting on Thursday February 20th, Maestro Linden said:

The other bug fix was for some obscure e-mail issue that Kelly found, where e-mails to LSL scripts would be missing their message bodies under very obscure circumstances. Nobody’s filed a bug report about that happening, so maybe nobody ever saw it regularly.

 In this case you’d see the e-mail, and see the subject but not the body. Or rather, I guess the body would be an empty string … I guess you’d only know if you had sent the e-mail yourself.

 According to Kelly, it would only happen during a very narrow time window as the sim was starting up, so I could imagine most people who saw it once just shrugging after the issue didn’t occur a second time.

SL Viewer Updates

  • The Maintenance release RC was updated on Tuesday February 18th to version 3.7.2.286708
  • The HTTP RC was updated on Wednesday, February 19th to version 3.7.2.286707
  • The Google Breakpad RC has been removed from the release channel, having completed this round of tests.

Group Ban Lists

There’s not much more to report here than last week. Commenting on the overall status of the work at the Simulator User Group meeting on Tuesday February 18th, Baker Linden said:

I’m in the last stages of code cleanup and ensuring there aren’t any major bugs (which QA will surely find) and I’m wrapping everything up for deployment to Aditi this week (server-side stuff only right now).

 It’s not clear if the server code did reach Aditi, or whether it may appear in week 9. Commenting on the status at the Server Beta meeting later in the week, Maestro Linden indicated the code was “inching closer to Aditi”, and will be available “as soon as we’re confident that the backend host and simulators are playing nicely. If there’s a bug which is definitely viewer-only, that’s not a blocker for Aditi at all.”

Materials Handling

Scripted Control

The ability to control materials (normal and specular maps) via scripts has been an oft-discussed topic in User Group meetings and the subject of MATBUG-359.  The subject was again raised at the Simulator User Group Meeting on Tuesday February 18th, to which Simon replied, “I’ve been looking into that, and hope to get to it soon, but it keeps getting pushed back with other more immediate issues cropping up.”

One of the concerns with scripted control of materials maps in that if manual changes are made to materials too quickly in the build floater, they will often revert, as if the server is unhappy in receiving  too many quick updates. Commenting on this, Simon added:

That’s an interesting point and something we’ll have to look at after doing the basic scripting change.   If it’s somehow worse than the current scripted texture changes, we’ll have to have some sort of throttle to slow it down.

The question was raised on why normal and specular maps appear to work different to diffuse (texture maps), with the server better able to handle fast changes to textures when compared to normal and specular maps. Simon indicated that both normal and specular maps are handled differently in order to minimise the impact of multiple usage.  Expanding on this is terms of scripted control, he went on:

I was just looking at the materials code, and the complication this has compared to regular textures is how materials have their own layer of special data packaging instead of a just a UUID on a face.  I’m not sure yet how script access is going to thrash that data or not.

There also may be something of a cost / benefit issue within the Lab when it comes to adding scripted control to materials – would the potential uses be broad enough to justify the time required to avoid issues of data thrashing, introducing throttles on updates, etc. Hence Simon asked for some specific examples of where scripted control of materials would be beneficial, so he could carry them back to the Lab’s product managers.

Continue reading “SL projects news week 8/1: server, viewer and log-in issue PSA”

SL projects update 7/2: server and viewer

Ther Server Beta UG meeting, Thursday February 13th, 2014
The Server Beta UG meeting, Thursday February 13th, 2014

Server Deployments: week 7 – recap

As always, please refer to the server deployment thread in the forums for the latest updates / changes.

  • On Tuesday February 11th, the Main channel received the server maintenance package previously deployed to the RC channels in week 6, which includes a crash fix.
  • There  were no updates to the RC channels.

Upcoming Deployments – week 8

As there was no deployment to the RC channels this week, there is nothing to be promoted to the Main channel in week 8 (week commencing Monday 17th February). However, according to Maestro Linden, speaking at the Server Beta meeting on Thursday February 13th, there will a new maintenance package deployed to the RCs on Wednesday February 19th.

This will include a fix for an issue reported in BUG-5034, whereby if an Estate Manager restarts a region and then immediately teleports out when there are no other avatars in the region, the Estate Manager will be logged out of Second Life just after the teleport completes.

That Estate Managers tend to encounter the issue may be purely down to the fact they are the last to leave a region on a manual restart; there are reports of some being disconnected when teleporting out of a region during a rolling restart.

The issue has been problematic for the Lab to reproduce, and is possibly related to users with higher ping times. The thinking is that the restart is occurring before the avatar is properly reported as having left the region (there is still a child agent present), so the viewer ends up disconnecting. The fix being implemented is to adjust the restart process so the simulator waits just a little longer prior to the actual restart being initiated.

SL Viewer Updates

HTTP RC

Following the promotion of the Fitted Mesh viewer to the de facto release viewer on February 10th, The HTTP RC became the first of the existing RC viewer to be updated to include the Fitted Mesh code and was updated to version 3.7.1.286567 on February 13th.

Facebook Hotfix RC

A new RC appeared on February 12th, with the release of version 3.7.1.286557 on February 12th. This again includes the Fitted Mesh code, but the release is actually to fix a problem in the viewer’s built-in web browser which makes it impossible to login correctly into Facebook.

This puts the total count of current RC cohorts in the viewer release channel at 5, so it is unlikely there will be further RC viewers appearing until this list has been thinned down a little (which does not mean there will be no releases of any project viewers waiting in the works).

Avatar Physics

The arrival of fitted Mesh, which works with most avatar physics (except belly), has led to renewed discussion over issues around problems with avatar physics being so dependent upon viewer frame rates, with the result that lower frame rates can result in wildly exaggerated movement (see both  VWR-25545 (publicly viewable) and FIRE-12386. for details).

Whether or not the issue will be addressed (or can be reasonably addressed) remains to be seen; how many people actually use avatar physics is unclear. However, the fact that avatar physics can be used with fitted Mesh may see a wider use of the former as the latter gains more of a foothold, in turn increasing calls for the issue to be dealt with.

SL projects update week 7/1: server / viewer

News is a little light at the moment., although there are a number of things in the works and yet to be opened to public viewing.

Server Deployments: week 7

As always, please refer to the server deployment thread in the forums for the latest updates / changes.

  • On Tuesday February 11th, the Main channel received the server maintenance package previously on the three RC channels which includes a crash fix.
  • There will be no RC channel deployments, and it is not anticipated that the RC regions will not be subject to a rolling restart.

This means there will be no Main channel deployment in week 8 (week commencing Monday February 17th. However, there should be a new server maintenance package deployed that week.

SL Viewer Updates

Fitted Mesh

The Fitted Mesh RC version: 3.7.0.286015 was promoted to the de facto release viewer on Monday February 10th, complete with a video from Torley Linden.

See my coverage here, and my Fitted Mesh preview article (now slightly dated).

As a result of this, the remaining RC viewers will be updated in due course to match the current release build.

Group Ban Lists

The work on group ban list functionality is going through a further round of internal testing at LL. It is still anticipated that a project viewer will be emerging for testing on Aditi (the Beta grid) in the very near future.

SL projects updates 6/2: server, Fitted Mesh, misc items

Server Deployments: week 6 – recap

As always, please refer to the server deployment thread in the forums for the latest updates / changes.

  • On Tuesday February 4th, the Main channel received the server maintenance package previously on the three RC channels, which includes a crash mode fix and a fix for llModifyLand() modifying the wrong location in region, when called in a child prim. See part 1 of this report for further details
  • On Wednesday February 5th, all three RCs received a new server maintenance package, which includes a crash fix.

It seems there may not be any RC deployment in week 7. A number of things are being worked on, but there’s nothing ready for release as yet, but that could change between now and Wednesday next.

SL Viewer Updates

Fitted Mesh

As expected, the Fitted Mesh RC received a further update on Wednesday February 5th, with the release of version 3.7.0.286015. This update was to incorporate a further fix for issues relating to FITMESH-6 and FITMESH-20, after Latif Khalifa of the Singularity team spotted a coding error in the original fix.

Other Items

SL log-in Servers Redeployment

Coyot Linden: SL log-in server updates
Coyot Linden: SL log-in server updates

On Thursday February 6th, Linden Lab redeployed the log-in servers. The aim of this work was to bring them up to a current operating system version (the one they have been running on being some two years old). There was no change in functionality, and as the work was seamless from a user perspective, there was no blog post on the matter.  Commenting on the work at the Server Beta meeting on Thursday February 6th, Coyot Linden said the work involved

Newer versions of standard apps like webserver, caching app, etc., and all of the better functionality and security fixes that go with that. But nothing has changed about the login code or process.

This work was actually the reason log-ins on Aditi were broken ahead of the Server Beta meeting on Thursday January 30th: Aditi only has the one log-in server (as opposed to the 15 available to Agni, the main grid), and that was being used to test the update. The plan is for a second log-in server to be added to Aditi in order to avoid situation where the loss of a server prevents anyone from access the beta grid.

Vivox Work

As many are aware, there have been a number of Vivox issues (as well as FmodEx issues) affecting voice in SL.

On Tuesday February 4th, maintenance was performed on the Vivox backend which were mostly for quality enhancements for people using a recent version of the voice SDK. The changes didn’t involve any changes to the simulators, but as the updates are for a “recent” version of the voice SDK, it is questionable whether the enhancements will affect those TPVs using “older” versions of the SDK (e.g. Firestorm 4.4.2 is using an older version of the SDK, although upcoming releases will be on a par with the LL viewer).