SL project news week 5 (2): servers, issues, viewer, SSB, deformer

Server Deployments week 5

On Tuesday 29th January, the Main channel received the threaded region crossing code previously deployed to BlueSteel and LeTigre in week 4release notes.

On Wednesday 29th January, the following updates were deployed to the Release Candidate channels:

  • BlueSteel received the server-side materials processing code – release notes
  • LeTigre received the maint-server project originally deployed to Magnum in week 3. This deployment includes the bug fix for the places / search indexing issue which occurred following the original deployment of the code to Magnum – release notes
  • Magnum received a further update to the interest list code deployed in week 4, with fixes intended to deal with issues of high packet lossrelease notes.

Reported Issues

Main Channel

A number of initial problems were reported  in the forum discussion thread, Several of which  appeared to be related to initial region caching / capabilities problems which lead to some strange initial experiences for users, ranging from teleport failures / potential viewer crashes on region crossings (physical or teleport) and  out-of-range controlled flight (i.e. avatars could continue to fly under full control when apparently at coordinates well outside the region (e.g. 320, 128, 75). These issues seem to cease once regions were correctly caching following a (protracted) restart period.

There were also some reports in the forum discussion thread that use of the estate tools to eject / teleport home / ban an avatar can lead to a region cross. However, as the reports appear to be the same / similar to previously filed SEC JIRA (SEC-1215 and SEC-1204, neither of which are open to public viewing), and may be an isolated series of incidents (others are not reporting the same problems, so they have not been repro’d outside of the affected region), there is a reluctance within LL to attribute them directly to the region crossing code.

Magnum RC (Interest List Code)

The Interest List Code problem relates to the use of bots. Originally, it had been hoped that one of the fixes deployed this week would correct the issue; however this has not entirely been the case.

Following further investigation by Latif Khalifa and Andrew Linden, an explanation of the problem is provided in the deployment forum thread. The issue has its routes in the fact that the Second Life UDP protocol requires an acknowledgement (or “ACK”) for all messages sent to the viewer. However, rather than sending a distinct “message received” back to the server for each packet received, certain types of bot append the acknowledgement to other outgoing messages. A bug in the interest list code means these appended ACKs aren’t read. This results in original data been regarded as a packet loss, so it is repeatedly re-sent to the viewer controlling the bot, leading to the huge increases of bandwidth which have been witnessed. Andrew is currently working on a fix for this issue.

Deployments for Week 6

There is currently no clear news on deployment plans for the week commencing Monday 4th February. Currently, it appears that the main-server release re-deployed to LeTigre will most likely be promoted to the Main channel.

SL Viewer Updates

Issues relating to the beta viewer 3.4.5 code have been resolved, and an updated beta viewer (3.4.5.269698), was released on Thursday January 31st – see the release notes for updates. Also released on the 31st was a new version of the CHUI development viewer, 2.4.6.269797. The SL development viewer rolled to 3.4.6.703 on Wednesday January 30th.

An interesting issue has been noted recently by those using multiple versions of the SL viewer. When swapping between more recent versions of the SL development viewer and older versions of the code base, toolbar buttons can vanish from the viewer’s UI. The exact cause is unclear, and the problem appears intermittent (I’ve personally only encountered it once jumping between project and release versions of the viewer).

Mesh Deformer Project Viewer

Sovereign Engineer assisted with code merges for the parametric deformer project viewer with the result that the code is now merged-up to the 3.4.4 codebase with the latest release of the mesh project viewer (3.4.4.269558) on January 29th. There are apparently no functional changes to the deformer itself.

The updated shape selection options for mesh clothing and human shapes in the mesh upload floater
The mesh deformer project viewer has now been merged-up to the 3.4.4 viewer codebase. There are apparently no updates to the deformer itself with this release

This removes one of the three bottlenecks to the project as noted in the first part of this week’s reports. However, the issue of internal resources at the Lab remains a problem, although Oz Linden is attempting to address this and there may be further news in week 6.

Continue reading “SL project news week 5 (2): servers, issues, viewer, SSB, deformer”

SL project news: week 5 (1): servers, viewer, deformer

Server Deployments Week 5

There are a full set of deployments this week, Main channel and RCs.

On Tuesday 29th January, the Main channel received the threaded region crossing code deployed to BlueSteel and LeTigre in week 4. This project makes sim performance smoother when objects and avatars cross between regions. Please refer to the release notes for further information.

On Wednesday 29th January, the Release Candidate channels should receive the following deployments:

  • BlueSteel should receive the server-side materials processing code. This code will require a a project viewer in order to be used, As reported in week 4, there is no definitive timeframe as to when a viewer is liable to be available, but it would be reasonable to expect something in the next few weeks (possibly sooner) – release notes
  • LeTigre should receive the maint-server project originally deployed to Magnum in week 3. This deployment includes the bug fix for the places / search indexing issue which occurred following the original deployment of the code to Magnum – release notes
  • Magnum will receive a further update to the interest list code deployed in week 4. This update addresses high packet loss problems, leading to issues such as not seeing avatars or objects in-world, specifically:
    • A fix for bots which do not specify a valid draw distance in order to prevent them downloading huge amounts of unwanted data
    • A fix to keep ObjectUpdate packets within an ethernet MTU of 1500
    • Release notes.

Please check with the forum discussion thread for these deployments to keep abreast of updates / changes / issues.

Materials processing: server-side code to go to BluseSteel on Wednesday 30th January - but no project viewer yet
Materials processing: server-side code to go to BlueSteel on Wednesday 30th January – but no project viewer yet

SL Viewer News

Problems remain with the beta viewer code, but it is hoped a new beta will be appearing shortly. In te meantime, Kelly Linden has committed the viewer-side code for extending the maximum avatar animation length from 30 seconds to 60 seconds (MAINT-1492). This should be appearing in the 3.4.5 beta viewer, and should also be appearing in TPVs in the near future.

Mesh Deformer

Delays continue with the mesh deformer, which can be summarised as:

  • The Lab has limited internal resources for testing it – although attempts are being made to address this
  • There is concern that there is no clear way for a designer and a user to be sure that they are using the same avatar base model – and if they are not, then the deformer will very likely make things worse. While there are some provisions within the current deformer for the base model to be taken into consideration, there is apparently concern that it may not be sufficient
  • The project veiewer code is now significantly behind the current viewer release, although work is underway to merge it up (and I received a report that this has been done while preparing this update).

A further potential issue in progressing the deformer  – as Karl Stiefvater (Qarl Fizz), who wrote the original code points out – is there are a lot of expectations that the deformer will do a lot of things which were not in the original specification (or indeed, the code as originally written). Some of this scope creep has resulted in further updates to the code from other contributors. However, there appear to be concerns that if the Lab prematurely release if, there will be a risk that a) it breaks existing content, b) it is viewed as not addressing problems correctly.

This latter aspect was also commented upon by Oz Linden, when speaking Open-source Development meeting on Monday 28th January. He said, “We are often (and frequently with justification) accused of throwing things out that are not really finished enough… indeed, the lack of some solution for the problem the deformer is trying to solve is one of the more prominent recent examples, but I don’t want to make the situation even worse by putting out a ‘solution’ that turns out not to solve enough of the problem and/or creates bigger ones down the road.”

Avatar Baking (SSB)

A set of code updates for the viewer are in progress. However, an issue with the Mac build means they have not been pushed as an update to the project viewer as yet. It is hoped that the updates will reach all three versions of the viewer (Windows, Linux and Mac) once the Mac build problem has been resolved.

SL project news: week 4 (3): viewer, CHUI, SSB, more materials, oh my!

SL Viewer Beta

Issues within the 3.4.5 code have prevented viewer releases progressing through beta, with the code stuck in QA while LL tackled them. However, it appears the majority are now either fixed or on their way to being fixed, and an updated beta viewer should be appearing next week, which should see the beta viewer come pretty close to alignment with code in the development viewer, with the latter only having “a couple” of things not added to the beta branch.

Communications Hub User Interface (CHUI) Project

There have been a rapid series of merges between the CHUI project viewer code and the development viewer recently (as seen in my Viewer Round-up Page and weekly summaries), helping the former to keep pace with the latter, with the most recent CHUI development release (3.4.4.269464) being made on January 25th.

Speaking at the TPV Developer’s Meeting on Friday 25th January, Oz Linden indicated that a formal merge of the CHUI project viewer code with the development viewer code branch “pretty soon” (possibly in the next two weeks, putting it ahead of the server-side baking project). However, according to Nyx Linden, the plan will be to not merge CHUI with the server-side baking project for as long as possible, so that TPVs have the choice of deciding whether they wish to integrate both projects into their own code at the same time or not.

CHUI is viewed as potentially the more problematic implementation for some TPVs to undertake as it involves more widespread changes to the UI, and, and project lead Merov Linden pointed out, the need to refactor a number of areas within the viewer to work with the CHUI elements. As some TPVs have already made substantial changes to the communications floater and other aspects of the communications elements of the UI, there is also a need for these TPVs to work through the code and see how it works with / impacts / breaks / undoes the changes they have made, in order for them to make a proper determination as to which code to adopt / maintain, and which code to ignore / discard.

Avatar Baking (Server-side Baking or SSB)

Work in progressing on all sides of this project, with the various TPVs working on integrating the initial code release from LL into experimental versions of their viewers (with varying degrees of success) and LL working on “bug stomping” and fixes. As commented on in my week 3 project report, there are concerns over the speed of releases for updated code from LL and general visibility of JIRA items.

Nyx Linden was on-hand at the TPV Developer Meeting on the 25th January to provide an update and field questions.

Nyx linden discusses server-side baking at the TPV Developer meeting (stock)
Nyx linden discusses server-side baking at the TPV Developer meeting (stock)

In terms of the server-side code, there have been a number of fixes which should have rolled-out to Aditi on Thursday 24th January, although the status of these had yet to be confirmed at the time of the meeting. Various issues are still to be fixed, such as some avatars being reported with heights which don’t match LL’s computations (particularly very small / petite avatars and very big avatars), which may be down to a mis-match between the way some viewers are calculating avatar height and what the server is anticipating receiving in terms of a value range.

The viewer code has also been receiving a number of updates and fixes, which should be available for use by TPVs and in an updated version of the project viewer in the next day or so. These updates include a required fix for an issue whereby edits make to a wearable item are not saved unless the user also changes something else they are wearing (for example, edits made to a blouse are not saved unless the user swaps the pants they are wearing).

Currently, and so far as I’m aware at the time of writing, Cool VL viewer, Singularity and Radegast all have experimental builds of their viewers / clients which incorporate the code and which are being used purely for testing purposes, with Exodus planning to start merging the code shortly. Niran’s viewer has reported issues with the new code “breaking” RLV/a which (so far) haven’t been reported by other TPVs.

Given the overall pace at which things are progressing on LL’s side, particularly with CHUI and dealing with issues uncovered within SSB itself, it is likely the original eight-week window for TPVs to integrate the SSB will be extended inasmuch as the deployment of SBB to the main grid is now likely to be slightly later than LL may have originally anticipated.

Continue reading “SL project news: week 4 (3): viewer, CHUI, SSB, more materials, oh my!”

SL project news: week 3 (1): Servers, Materials, Baking and more

Update 19th January: As is being reported in the deployment thread in the forums, further issues are arising with search, and also problems with scripted vehicles (as Wolf also nones in the comments for this article. Those using regions running on Magnum are advised to keep an eye on the deployment thread for news on issues as they are investigated by other users / feedback from the Lab.

Update 18th January: An issue has ben reported with Magnum regions no longer being listed in the main search floater, although shops, etc, within a Magnum region are still listed. The problem does not extend to the world map search. Maestro Linden has filed a bug report. A rolling restart of all LeTigre and BlueSteel regions commenced at 10:00 SLT due to instablility issues being reported with the regions. The restart will comprise a roll-back of server code on BlueSteel and LeTigre to 12.12.18.268345.

Deployments for Week 3

After the issues encountered last, week, there was no main channel release on Tuesday 15th January, 2013.

Changes also occurred with the RC channel deployments. As fixes for the threaded region crossing problems were not ready for release, this was removed from the schedule and replaced by a maint-server release. Then, a network hardware error forced the RC deployments to be postponed until Thursday 17th January.

The roll-outs duly took place on the 17th, and comprise:

BlueSteel and LeTigre received the interest list improvement project. Originally scheduled for Magnum in week 2, but was held up due to a last-minute bugs, this  update should reduce the bandwidth usage of viewers due to object updates, and should improve simulator performance, especially in sims with many connected avatars – release notes here (BlueSteel).

This release received an additional bug fix, related to seated avatars temporarily vanishing from other avatars’ view when  crossing between regions. This fix may have led to the server release notes as reported and wiki pages for BlueSteel and LeTigre slipping out of sync with the actual code release (this has now been corrected subsequent to my pointing it out to Maestro Linden).

Magnum received a new server maintenance project, which mostly contains bug fixes, together with the following:

  • Server-side code to support “neck” and “center” attach points, which didn’t get rolled out when these were added to the viewer (but which now also require a minor change to the viewer, which is forthcoming)
  • An update to improve the effectiveness of estate bans (i.e. preventing banned avatars returning)
  • An update for builders, which covers SVC-7996 and as a part of STORM-68 (ensuring all created items have the default permissions set within the viewer). This particular fix ensures that scripts created using the New Script button in the build floater inherit the permissions set within the viewer, rather than server-defined defaults
  • An update to how abandoned mainland is handled, as the automated buy-back option for abandoned land is being eliminated (see: Abandoned Land in the Knowledge Base)
  • Release notes here.

Deployments for Week 4 (Commencing Monday 21st January)

There is no major news on releases for week 4, other than the threaded region crossing code now has fixes for the last-minute issues which prevented its roll-out in week 2, so this should be on one of the RC channels for deployment on Wednesday 23rd January.

SL Viewer

The release version of the SL viewer rolled to the 3.4.4 codebase on Tuesday January 15th, with the release of 3.4.4.268864. See the release notes for details of updates and fixes.The development viewer is rapidly progressing through a series of releases, with 3.4.6.269073 released on January 15th, followed by 3.4.6.269108 on January 17th.

After a series of development version releases, the CHUI project viewer also moved to the 3.4.4 codebase with the release of version 3.4.4.268981, also on January 15th. The Development version of CHUI continues to keep pace with releases from viewer-development.

Server-side Baking

Work is continuing on avatar baking (otherwise know as server-side baking or Project Sunshine), with Nyx Linden reporting at the Content Creation User Group on Monday 14th January that the team has, “Been a bit heads-down focusing on some bug-stomping.”

Concern is growing that, since the initial release of the Sunshine Project viewer a month ago, there have been no further updates to the viewer-side code, despite extensive feedback from TPVs, which  – in the words of one developer – is not conducive to enabling everyone to adopt the latest code and get ready for the baking service within anticipated time frames (i.e. mid-to-late February).

Nyx has acknowledged the problem, and hopes that the Sunshine code will be merged-up to the latest viewer development code soon, together with verification that nothing has been broken as a result. In the meantime, and away from the SL viewer itself, Henri Beauchamp reported that he has server-side baking working in the experimental branch of his Cool VL viewer.

A further concern with the project is the manner in which JIRAs are being handled since last year’s changes to the system. Raised issues are effectively being cloned, with one version sitting internally to LL and “hidden” from general viewing, with the cloned version available for public viewing and update. This has resulted in worries that cooperation between TPVs and LL in resolving issues related to the Sunshine project could be hampered if the cloned public JIRA are not properly updated whenever LL update the internal versions of the same issues. Nyx Linden has promised to work to ensure that all cloned public JIRA are kept up-to-date.

Materials Processing

The server-side code for this is “inching towards” a point where it will be ready for deployment to an RC channel. When this will be is unclear, but it is likely to be ahead of any project viewer emerging from the Lab.

Concern is still being raised over the need to run the viewer in deferred mode in order to see materials processing in action once it has been rolled-out onto the grid. Some of this concern may be down to the confusing way in which deferred mode is labelled in the Graphics tab of the viewer preferences (“Lighting and Shadows”), with people thinking they must have shadows running in order to be in deferred mode (i.e. with the Shadows drop-down set to either Sun/Mon or Sun/Moon + Projectors). However, the viewer is running in deferred mode even with the drop-down set to None.

Continue reading “SL project news: week 3 (1): Servers, Materials, Baking and more”

SL project news week 2 / 1, 2013: avatar baking, materials processing, CHUI and more

SL Beta Viewer

There have been some rendering issues with the last release of the beta viewer (3.4.4.268497, December 20, 2012) which had caused the Lab a slight headache in that not all tests are giving the same results. However, a further 3.4.4 release is anticipated for either Monday 7th or Tuesday 8th January, 2013, which includes various fixes. Whether these are related to the rendering issues is unclear. However, they have not as yet been merged into the Sunshine Project (Avatar baking – see below).

CHUI – Communications Hub User Interface

As reported over the holiday period, the CHUI project is moving forward, with a further update of the project viewer and several updates to the development version of the viewer, possibly the result of code refactoring work which had been indicated as being required prior to the holidays. However, as of the TPV Developer Meeting of Friday 4th January, 2013, it was unclear as to whether this refactoring work has been completed.

CHUI: TPVs may cherry-pick from the code
CHUI: TPVs may cherry-pick from the code

Currently, the code has yet to be made available to TPVs, and concerns have been raised by some TPV developers that integrating the CHUI code could be as much a headache as the Avatar Baking code. Given the work some have put into the communications elements of their own viewers, it is also possible that some might opt to cherry-pick which elements of the CHUI code they will adopt. Whether CHUI is liable to be deployed before or after the Avatar Baking project remains to be seen, as the Lab has yet to make a decision either way.

Server-side Avatar Baking

Avatar bake fail
Avatar bake fail

Project Sunshine, the work to implement a new server-side baking process, kicked-off (as far as  TPVs are concerned) just before Christmas. This represents a substantial code merge for TPVs, and one which is going to take TPVs a while to handle as a result, hence the reason why LL have given TPVs a long lead-time on the project, with around an eight-week window available for them to work on the code, provide feedback and assist with testing.

As mentioned in my detailed look at the new service (see link above), any deployment of the server code will be dependant upon further and significant load tests, which are viewed as essential in ensuring the new compositing service has sufficient hardware for it to support avatar baking across the entire grid. At the time that article was written, Nyx indicated that details on how the load tests would be handed had not been finalised.

Speaking at the TPV Developer Meeting, Oz indicated that these tests are still under consideration, and as such, much in the project is still up in the air in terms of unknowns. Obviously, on way in which load tests can be carried out is to have more test / development viewers available to enable greater testing of the server-side code, so overall implementation of the new service is somewhat symbiotic, and it is unlikely there will be a large-scale deployment of the service prior to TPVs being sufficiently comfortable / up-to-speed with integrating the code into their viewers.

As such, it is unlikely that there will be any major move on the Lab’s part to push the project forward much before the end of February. With regards to this, Oz commented, “Obviously, what we’d like to know is that we’ve got at least one version of all the third-party viewers that are prepared to cope with it, and that certainly getting an affirmative on as many of those as possible before we make a final call on what our target dates are would be really great. So that’s why we’re keeping the pressure on you to do that testing, as we’d rather you were ready before we were.”

Materials Processing

The materials processing project continues to move forward, although there are growing concerns over the fact that the viewer will be required to run in deferred mode (i.e. with shadows & lighting active) in order for the new capabilities to be properly rendered. This means that computers which do not have sufficient processing capabilities to run in deferred mode will not be able to render the effects of normal and specular maps, and so will not see the effects of materials processing.

When life gives you lemons, map them: on the left, a normal map, on the right, a normal and a specular map together (credit: Mind Teat Studios)
When life gives you lemons, map them: on the left, a normal map, on the right, a normal and a specular map together (credit: Mind Teat Studios)

However, this does not mean that those unable to run SL reliably or reasonably with deferred rendering enabled will have their SL experience negatively impacted. The expectation is that users on such system will continue to see SL as we all see it today, regardless as to whether or not in-world objects and avatar attachments (prim, sculpt or mesh) are using the new materials capabilities.

However, this is also conditional on content creators understanding how to correctly make use of materials process as it will apply to Second Life (especially those trying to leverage the new capabilities, but who may not themselves be able to run the viewer in deferred mode), and ensuring they use underpinning diffuse maps (textures) of a suitable quality. To help ensure this, Oz Linden has stated he will give those at the Lab responsible for the Good Building Practices guide on the wiki a nudge so that it is expanded to cover materials processing.

That materials processing does require running the viewer in deferred mode has given rise to concerns as to how widely the capability will be adopted. However, the Lab has no plans to try to implement materials processing in a way which does not require deferred rendering (assuming this could be done). This is not to exclude anyone from experiencing it, but rather because the capability simply requires deferred rendering to be enabled. Whether or not the capability will introduce an additional overheads to running in deferred has yet to be fully determined.

In the meantime, the repro for the viewer-side code required for materials processing will be officially made available (it was accidentally exposed just before Christmas), some time in the next two weeks or so, and a project viewer should appear shortly thereafter. The server-side code is thought to be in, “Pretty good shape.”

Continue reading “SL project news week 2 / 1, 2013: avatar baking, materials processing, CHUI and more”

SL project news: week 51

Server Deployments week 51

Tuesday 18th December saw the Main Release channel get the maint-server release as deployed to Magnum in week 50, as Maestro Linden indicated might be the case during the Server Beta meeting on the 13th December. There have been some reports of teleport issues following the deployment, but these are thought to be a network-side issue, rather than a problem with the server code itself.

Release notes.

All three RC channels should be receiving the same package on Wednesday 19th December, 2012 which is also the Magnum deployment from week 50, with a single additional bug fix.

Release notes (for Magnum, but applicable to all three RC channels)

Forum thread for the deployments.

This is the last set of server-side deployments for 2012.

A low-key Simulator User Group meeting on 18th December, the last for 2012
A low-key Simulator User Group meeting on 18th December, the last for 2012

SL Viewer Updates

The release version of the official SL viewer rolled to the 3.4.3 code on Tuesday 18th December, with the release of 3.4.3.268262. Among a range of updates, this release include the major GPU table updates seen in recent beta viewer releases, the additional graphics settings and the tiling fix for high-resolution snapshot (MAINT-638). This release also sees the return of JIRA numbers to the release notes, matching the recent beta viewer release notes update.

The new "intermediary" graphics settings intended to better represent the capabilities of different GPU classes
The new “intermediary” graphics settings intended to better represent the default SL capabilities of different GPU classes

The beta viewer should be moving to the 3.4.4 code with the next release, although it is not clear whether this will be before or after the holiday period.

Interest List Update

Andrew Linden has been tweaking and optimising his Interest list code. The first phase of the new interest list code is aimed at reducing the amount of information being sent to the viewer by the server. Speaking at the Simulator User Group meeting on the 18th December, Andrew commented, “Last week I managed to find an optimisation opportunity in my Interest List project, which shaves a few hundred usec off of some cases where there are a lot of Full Object Updates. So this would translate to better server FPS when in large groups of avatars or when in the presence of stuff that is generating lots of full updates.”

As I reported last time, object updates take three forms, Full, Terse and Delete. Full updates are generated when an object is seen for the first time, or which is undergoing a constant change in appearance / position. Terse updates are sent only when an object changes its appearance / position. Under the current Interest list system, both types of update are sent to the viewer, regardless as to where the viewer actually needs to process them. A primary part of Andrew’s work has been reworking the code so that updates – particularly terse updates – are only sent to the viewer when the object generating them is in the camera’s field-of view. This new optimisation work should further help reduce the number of updates being sent to the viewer regardless as to whether or not it has to process them.

Continue reading “SL project news: week 51”