SL projects update week 11/2: group bans, JIRA, Oculus Rift

Server Beta meeting, Thursday March 13th
Server Beta meeting, Thursday March 13th

Server Deployments: week 11 – recap

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

  • On Tuesday March 11th, the Main channel was updated with the server maintenance project deployed the BlueSteel and LeTigre channels  in week 10.
  • On Wednesday March 12th, BlueSteel and LeTigre joined Magnum in having support for a new version of the inventory service, AIS v3, enabled.  This service requires the use of the Project Sunshine RC viewer. The only changes compared to last week’s Magnum release was to include this week’s SLS changes.

Aditi Server Maintenance Package

A new server maintenance project arrived on Aditi in week 11, en route for a release on the main grid. This includes some bug fixes and some further work on the LSL syntax project  Ima Mechanic has been developing, and which is largely encapsulated in STORM-1831. The new project on Aditi specifically includes a new schema to fix STORM 2000, so expect this to be filtering through to the main grid in due course.

Group Ban Update

Not a lot to report here. Whirly Fizzle uncovered an awkward bug whereby a person granted the ability to ban others from a group could actually accidentally ban themselves. This proved a little hard for the Lab to initially pin down, prompting Maestro Linden to comment at the Server Beta meeting on Thursday March 13th, “We [he and Baker] both had problems earlier, because we were using a more manual method of just POSTing the data to the capability.” However, now the issue has been identified, a fix is being worked on.

JIRA Settings – Making Older BUG Reports Visible.

Following my note in part 1 of this report that users can opt to set their older BUG reports visible to the public, Maestro Linden said:

By the way, it’s possible to set the visibility of your past BUG issues by editing the ‘Security Level:’ setting. For the most part, we’re leaving that up to the reporters to change, if they’re willing to share their bug report issue more widely.

The reason we’re doing it that way is because people previously filed BUG reports with the expectation of only a few people being able to see it, and in some cases there are sensitive details like email addresses and conversations and whatnot.

On the matter of privacy, Maestro also indicated that new BUG reports can also be set for limited public viewing – that is, only to “Triagers and Reporter” should anyone have any concern over posting sensitive information in a new BUG report.

Oculus Rift

Not a lot to report here. The Lab has put out a call for beta testers for the Oculus Rift version of the viewer, as I reported here. commenting in broad terms about the project, Maestro Linden indicated that there is a slight drop in frame rate when using the headset, although he was uncertain as to the overall impact. He also described the revised UI as seen when in Riftlook as floating overhead, possibly in a toroidal form, and that the user needs to move their head to see it, so as not to have the UI invade the world view. He actually gave up trying to describe it, as he was without a headset when discussing it, and reported, “Marissa’s trying to explain it to me but it’s complicated :).”

Those fortunate enough to have a headset and who get into the beta programme will doubtless find out in due course!

SL projects updates week 11/1: server, viewer, group bans

Simulator User Group meeting (stock)
Simulator User Group meeting (stock)

Server Deployments: week 11

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

Main (SLS) Channel

On Tuesday March 11th, the Main channel was updated with the server maintenance project deployed the BlueSteel and LeTigre channels  in week 10. This contains the following bug fixes:

  • Fixed a bug in which the server release notes link in “About Second Life” would sometimes fail to appear
  • Fixed a bug in which certain objects had incorrect status when crossing between regions
  • Fixed a crash mode.

A question in the forum thread following the week 10 deployments  about the nature of the fix for “bug in which certain objects had incorrect status when crossing between regions” was responded to by Maestro Linden, who explained the fix was limited to what appears to be a single-case issue.

Release Candidate Channels

On Wednesday March 12th, BlueSteel and LeTigre should join Magnum in having support for a new version of the inventory service, AISv3, enabled.  This service requires the use of the Project Sunshine RC viewer.

SL Viewer Updates

On Monday March 10th, the Maintenance RC viewer was promoted to the de facto release viewer, version 3.7.3.287491 (download) – release notes are here.

A new hotfix release candidate appeared on Tuesday March 11th. The FmodEx Hotfix version 3.7.4.287875 (download and release notes) is intended to correct a suspected thread race crasher in the FmodEx audio streaming library.

Otherwise, all other viewers remain as listed in my Current Viewer Releases page.

Group Ban list

Baker Linden, ironing-out viewer-side issues with Group Bans
Baker Linden, ironing-out viewer-side issues with Group Bans

Baker Linden is working to fix issues which were picked-up on during some initial public testing of the Group Ban functionality on Aditi during the Server Beta User group meeting on Thursday March 6th. Those issues already identified with the viewer code can be found here.

Allowing for further testing and scheduling, the current plan is to have the server-side elements of the Group Ban functionality deployed across Agni prior to the viewer code being released in an RC viewer.

Until that happens, the viewer code will either remain as a direct download or may filter into a project viewer at some point once the server code is ready to start being deployed on Agni (there is currently no date as to when this will be).

Currently, the development viewer is available for Windows or Mac OSX or Linux, but the group ban functions will only work on the Aditi test regions such as in Morris (at the Server Beta UG meeting area).

JIRA: Old BUG issues Can be Made Visible

The re-opening of the JIRA occurred in week 10, and at the time, only BUG issues raised after the re-opening would be available to public scrutiny. However, it now appears as if reporters have the option of re-opening their old issues to public viewing if they so wish. Callak Skytower, for example, has made BUG-4427 publicly viewable once more.

Other Items

Group Role Updates

An issue with group roles was raised at the Simulator User Group meeting on Tuesday March 11th. If a member of a group is assigned a new / additional role, the update occurs server-side, and is reflected in the Group floater for the owner / officer (or whoever is empowered to grant roles), but the change is not reflected in the Group floater of the person who has been granted the new / additional role until such it as they either re-log or are sent a re-invitation to join the group.

This has not been a cause of major concern, possibly because there is little in the way of role re-assignments occurring in groups on a daily basis. It is not currently clear as to whether the matter will be addressed, although there was general agreement that updates to role assignments should require something like a relog in order to be seen in the Group floater.

My thanks to mona Eberhardt and Rex Cronin for the meeting transcripts.

SL projects update 10/2: group ban preview

Server Deployments: week 10 – recap

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

  • On Tuesday March 4th, the Main channel was updated with the infrastructure update deployed the RC channels  in week 9.
    • On Wednesday March 5th, Magnum remained on the same server version as week 9, comprising the infrastructure update and enabled support for AIS v3.  BlueSteel and LeTigre were updated with a new server maintenance project which contains the following bug fixes:
      • Fixed a bug in which the server release notes link in “About Second Life” would sometimes fail to appear
      • Fixed a bug in which certain objects had incorrect status when crossing between regions
      • Fixed a crash mode

A question in the forum thread on the nature of the fix for “bug in which certain objects had incorrect status when crossing between regions” was responded to by Maestro Linden, who explained the fix was limited to what appears to be a single-case issue.

SL Viewer

The Sunshine project viewer moved to RC status on March 5th, with the release of version 3.7.3.287158 (download and release notes), and a new Voice viewer with Vivox updates entered the release channels as an RC viewer, version 3.7.3.287288 (download and release notes), both of which I previewed here.

The Maintenance RC viewer updated on March 6th to version 3.7.3.287491 (download and release notes). This view includes a range of LL-driven MAINT fixes, including crash fixes, updates to address CHUI-related issues, bug fixes and some localisation work – please refer to the release notes for details.

Group Bans

The Group Ban viewer is approaching a point where it will be appearing in a project viewer form, and it was put through its paces in a group test on Aditi (where some regions have the server-side support), during the Sever Beta meeting on Thursday March 6th.

I’ll be providing a complete overview of how this ability, which allows group own and those within the group assigned the group ban power, to eject and ban people – such as spammers – from a group. The capability is specifically aimed at groups with open enrolment, and those banned are unable to re-join it until such time as their ban has been lifted – although there is a maximum limit of 500 on the group ban list. Go beyond this, and attempts at further banning will fail until such time as one or more names are removed from the list.

I’ll be reviewing the capability in full once the viewer reaches a project viewer status, but in the meantime I’m including a couple of screen caps showing the some of the addition to the group floater which allow group bans to be managed but those empowered to do so.

Goup bans: the option to ban people from a group is available from the Members tab (l), and allws individual or multiple bans to be applied. Those banned are listed in Banned Agents tab (r), which include a button to unban names and a button to pre-actively add names to the ban list using the people picker
Group bans test viewer: the option to ban people from a group is available from the Members tab (l), and allows individual or multiple bans to be applied. Those banned are listed in Banned Agents tab (r), which include a button to unban names and a button to pre-actively add names to the ban list using the people picker

There’s still some work to be done on the viewer (there are some missing notifications, for example, and some issues were found in the when banning people, which need to be addressed). Also, the server-side code has yet to be deployed to the Main grid. So it may still be a little while before we see the group ban functionality progressing more towards more widespread use.

Other Items

Inventory Loss Issue

There are reports of some users experiencing inventory loss. It is said that around three JIRA reports have been filed on the matter, which started occurring on Magnum regions after the AIS v3 was enabled. However, whether or not the losses are linked to the code or not is unclear. The issues are being described as corrupt inventories, with all contents gone, and LL’s own inventory repair tools have failed to rectify matters. The situation is currently under investigation by the Lab, and it appears that the issue may be related to the use of “obscure” viewers.

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 news 6/1: Server, viewer, SSA and AIS project viewer

Simulator User Group meeting, Tuesday February 4th
Simulator User Group meeting, Tuesday February 4th

Server Deployments: week 6

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

Main (SLS) Channel

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.

Speaking at the Server Beta meeting on Thursday January 23rd, Maestro Linden described this fix thus:

For example, if a child prim is offset by <8,4,0> from the root prim, then calling that function in the child prim will try to modify the terrain at <8,4,0>  of the region,  which may or may not work depending on who owns the parcel.

The fix is to make it modify the land underneath the child prim (which of course follows the same permissions rules – you can only modify land owned by the script owner.

Release Candidate Channels

On Wednesday February 5th, all three RCs should receive a new server maintenance package, which includes a crash fix.

SL Viewer Updates

Google Breakpad

Google Breakpad reappeared in the viewer release channel as an RC (version 3.6.14.285686, dated January 29th) on February 4th. As per usual, the RC does not contain any functional changes or updates, but contains a Google Breakpad updates and restructures the crash reporting mechanism to support out of process crash reporting. These changes will give the development team more call stacks from crashes more frequently, to improve the triaging and debugging of issues.

HTTP Viewer

The HTTP RC gained a further update on Monday, February 3rd, with the release of  version 3.6.14.286010, although it had been anticipated this viewer might update to the de facto release viewer this week.

AIS v3

The Server-side Appearance “polish” and AIS v3 project viewer, version 3.6.14.285190 was released on Tuesday February 4th. In terms of SSA This includes:

  • Stability and performance improvements for SSA: retry logic, removing redundant requests, detecting various appearance stuck conditions.
  • Code cleanup with the removal of a lot of code related to the old client-side baking framework.
  • Bug fixes, mostly appearance-related
  • Support for AIS v3 (which requires server-side updates.

For more information, see my announcement of the release.

Group Ban Lists

Baker Linden continues to work on Group Ban Lists, commenting at the Simulator User Group meeting on Tuesday February 4th that, “I’m finally finished with (what I think is) the major viewer side changes, so I’ll be getting everything ready this week for a deploy hopefully in the next upcoming weeks, so be ready to test the crap out of group bans on Aditi soon!”

SL projects updates 5/2: viewer, GPU table, Rift, Leap Motion

Server Deployments: week 5 recap

  • On Tuesday January 28th, the Main channel received the server maintenance project previously on the three RC channels, which contains a single fix for a crash mode.
  • On Wednesday January 29th, all three RC channels received a new server maintenance project, 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 one of this report for further details.

SL Viewer Updates

The following notes are taken from the TPV Developer meeting of Friday January 31st, a video of which is included below. My thanks, as ever, to North for the latter.

Fitted Mesh

As noted in part one of this report, a new version of the Fitted Mesh viewer arrived in the release channel as an RC on Monday January 27th. Version 3.7.0.285669 includes a number of fixes, included a hoped-for resolution for FITMESH-6 and FITMESH-20. However, there is an issue with the fix, as reported by Latif Khalifa of the Singularity team, and which the Lab has confirmed.  The viewer will therefore have a further RC update in week 6 (week commencing Monday 3rd February).  If the new RC proves stable and reliable, then the Fitted Mesh viewer will be looked at as a contender to go to release status.

Interest List

Despite having been reported as having a much improved crash rate, the Interest List RC, version: 3.6.14.285213 released on January 14th, still appears to be reporting higher than expected crashes. The Lab is not 100% convinced the crash measurements are correct, and they may be measuring high. This is being poked at, but means in the interim the viewer will remain an RC.

HTTP Viewer

The HTTP RC viewer, version 3.6.14.285253 released on January 16th, is performing well and now stands as the strongest contender for the next promotion to the de facto release viewer.

Maintenance Viewer and GPU Table

The Maintenance viewer, version 3.6.14.285499 released on January 23rd has generated interest due to the inclusion of MAINT-3131 “Death to GPU Table”.

Essentially, the GPU table is used to define your graphics card to the viewer and the default graphics settings which are applied as a result when you first start the viewer. As many will be aware, the GPU table is manually maintained, and as a result is not a very effective mechanism for managing GPU evolution.

MAINT-3131 is part of ongoing work which the Lab hopes will eventually eliminate the GPU table. Discussing the work, Oz said:

The idea is to do two things: ask the [graphics] driver [on a local system] what version of OpenGL it supports, and use whatever capabilities that can be relied on to find that out;  and then to measure the performance of the GPU by doing a series of memory bandwidth tests. Basically copying big blocks of video memory back and forth a few times and seeing how long it takes. The theory is that it ends up being at least as good a predictor of what the GPU is capable of as we’re currently getting by the guesses in the GPU table, and maybe better.

The code linked to MAINT-3131 is believed to be the code needed to carry out the memory bandwidth tests (and likely recording the results), the idea being that it can be monitored to note how well it measures the performance of things the Lab believe they understand, and see if it handles them more effectively / efficiently. Should this work proceed the way the Lab hopes, then the hope is the GPU table can be removed from the viewer in the future.  It is thought that the bandwidth testing, which will likely only take place when or shortly after the viewer has launched (and then only after the GPU identifier string has changed), will be a “pretty good proxy” for measuring a GPU’s performance a GPU compared to just asking the OpenGL driver what it can do.

Continue reading “SL projects updates 5/2: viewer, GPU table, Rift, Leap Motion”