* The reason why pending downloads tick ever upwards is because missing assets are never signalled to the TextureSender
* Rectifying this is not straightfoward, but this will constitute the next patch.
* This does not explain the memory leak.
In his own words:
If a prim becomes a listener or remote channel and the script is deleted, it cannot become a listener or channel again with a new script.
This patch fixes that.
* Converted all instances of "256" spotted to use RegionSize instead. Some approximations used for border crossings (ie 255.9f) are still using that value, but should be updated to use something based on RegionSize.
* Moving Terrain to a RegionModule, implemented ITerrainChannel and TerrainModule - nonfunctional, but will be soon.
appearance in the TryGetAvatarAppearance() method. Moving off Add will mean the second replaces the first instead of throwing the exception. This may still not be a good
permanent solution - more extensively locking or a code rearrangement could be better. I'm going to leave this in MW's much more familiar hands now.
all TerrainEngine.LoadFromFileX(string filename) methods don't set the dirty bits in heightmap.diff[,] in contrast to the TerrainEngine.LoadFromFileX(string filename, int dimensionX, int dimensionY, int lowerboundX, int lowerboundY) cousins. this has the unpleasant drawback that the Scene.SendTerrainUpdate(bool) will not send layer data to the client.
the attached patch fixes all LoadFromFileX(.) methods.
Thanks!
* Also small build fix for AvatarFactoryModule
* However, I'm no longer sure they were even a big contributory factor (to this particular leak, there are other causes of other leaks). I need better measurement techniques
* Removed most of my debugging gawp
To use, see the appearance section in opensim.ini.example, set "persist = true", then add the correct connection string for your database.(see mysql-AvatarAppearance.sql in share folder for a example of the table mysql table structure).
This could possible be used in a very small grid, but would mean each region server would need to connect to the same mysql database.
But the work to move the code to one of the grid servers shouldn't be too much.
* We're only missing, the script related sim stats counters and the Images time counter and the Pending Uploads counter. The rest of them are actually implemented now.
* Cleaned up copyright notices in AssemblyInfo.cs's
* Added Copyright headers to a bunch of files missing them
* Replaced several common string instances with a static constant to prevent reallocation of the same strings thousands of times. "" -> String.Empty is the first such candidate.
300 msecs can be too slow and cause a timeout to occur. This is reported when
llHTTPRequest times out but may not be reported for other functions like
osSetDynamicTextureURL. This sets the time out to 30 seconds. It appears
that the value affects not just llHTTPRequest's.
* The BlockingQueue exposes Contains so we can make sure we don't add a TextureSender to the queue if there's already one present
* introduced some TryGetValue and various code convention stuff