Mantis Bug Tracker

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0008054opensim[REGION] OpenSim Corepublic2016-11-09 20:352017-08-15 18:38
Reportermewtwo0641 
Assigned Tomewtwo0641 
PrioritynormalSeverityblockReproducibilityalways
StatusresolvedResolutionfixed 
PlatformOSOS Version
Product Versionmaster (dev code) 
Target VersionFixed in Version0.9.0 
Summary0008054: Link/Unlink prims take a long time and sometimes doesn't finish the operation
DescriptionAt commit d5f376a4b10ffdb5acc17d4e350a0a523ba0e9f5 up to and including master, linking and/or unlinking objects seem to take a measurably longer time in master than it does prior to this commit.

Prior to this commit (including release 0.8.x) the links and unlinks are quick, almost instant, in most cases.

The issue is relatively easily triggered, simply rez out a medium to high prim count object and try to unlink it. As the viewer shows the highlight updates of the object while its trying to unlink, it appears to unlink a few prims, stop for a few seconds, unlink a few more, stop for a few seconds, etc. until it's unlinked. In some cases it never finishes unlinking and in other cases the object can't be relinked once it has been unlinked... Or it can be relinked but it takes a lot of doing to get it to work (i.e. have to go out of edit mode, reselect the objects and try again; or simply spamming the CTRL + L keys until it finally takes it... and this method sometimes results in exceptions in the console)

The general rule of thumb to this issue seems to be that the more prims there are to unlink the worse it is and the more likely it is to stall while unlinking.
Steps To ReproduceThese tests were performed on several different viewers including latest Firestorm and latest Sinularity, and also tested under ubODE as well as BulletSim with same results.

1. Rez out a medium to high prim count object (I used an object consisting of appx 150 or so simple cubes for this test)

2. Unlink it

3. Try to link it back again
    a. Often times this will fail or will be hard to do at very least

4. Try rezzing two copies of the object and select them both and try to unlink it
    a. I have noticed that this resulted in about twice as worse performance due to double the amount of prims to unlink

5. It may be necessary to restart OpenSim in order to clean these objects up off the region since they sometimes get into a state where they can't be removed
Additional InformationGit bisect results:

d5f376a4b10ffdb5acc17d4e350a0a523ba0e9f5 is the first bad commit
commit d5f376a4b10ffdb5acc17d4e350a0a523ba0e9f5
Author: UbitUmarov <ajlduarte@sapo.pt>
Date: Thu Aug 25 09:51:34 2016 +0100

     send selected objects Proprieties udp part outside update queues and as a physics single caps message per selection request

:040000 040000 430263b225c9e159a0fe6259bd2850a828f8f451 9187b7a4eac90f1da19bb5d8947aad4ca582dee2 M OpenSim
TagsNo tags attached.
Git Revision or version numberMaster
Run Mode Standalone (Multiple Regions)
Physics EngineubODE
EnvironmentUnknown
Mono VersionNone
ViewerN/A
Attached Files

- Relationships

-  Notes
(0031267)
UbitUmarov (administrator)
2016-11-10 06:43

The select/Deselect viewers protocol as always been very bad, and got worse.
Each request can contain a list of unrelated prims and selection is done by prims, and expects responses for prims.
to make things worse, things like physics shape type, gravity etc. must be send via http, so each response has udp and http parts, both required.
what viewers do on unlink is surreal. per each prim unlinked, they unselect all and select all again. And on this they even forget that they do send unrelated prims lists so they send requests per linkset.
This does grow exponentially with the number of prims
That commit is part of fixing the missing http part of the responses with its respective performance cost on a already bad situation
(0031268)
UbitUmarov (administrator)
2016-11-10 10:01

ok think I improved it a bit on master
(0031269)
mewtwo0641 (reporter)
2016-11-10 16:57

Just tested master. This is actually quite a bit better than it was before. Tested linking and unlinking around the neighborhood of 300 prims; links and unlinks a lot smoother and very little to no stalling that I can observe.

Will leave this mantis open in case more testing is required?

Thank you!
(0032254)
mewtwo0641 (reporter)
2017-08-15 18:38

Haven't had an issue with this for a while so it seems to be resolved

- Issue History
Date Modified Username Field Change
2016-11-09 20:35 mewtwo0641 New Issue
2016-11-10 06:43 UbitUmarov Note Added: 0031267
2016-11-10 10:01 UbitUmarov Note Added: 0031268
2016-11-10 16:57 mewtwo0641 Note Added: 0031269
2017-08-15 18:38 mewtwo0641 Note Added: 0032254
2017-08-15 18:38 mewtwo0641 Status new => resolved
2017-08-15 18:38 mewtwo0641 Fixed in Version => 0.9.0
2017-08-15 18:38 mewtwo0641 Resolution open => fixed
2017-08-15 18:38 mewtwo0641 Assigned To => mewtwo0641


Copyright © 2000 - 2012 MantisBT Group
Powered by Mantis Bugtracker