Commit Graph

5960 Commits

Author SHA1 Message Date
lbsa71
9b619043ce * Making sure we fail a bit earlier if we have no AssetService 2009-06-03 17:29:21 +00:00
Dr Scofield
717fd3b5b9 From: Chris Yeoh <yeohc@au1.ibm.com>
This patch adds oar file date and time (UTC) meta data to an oar file
when it is created.  It also adds a unique ID, though this id does not
in anyway identify the machine that the oar file was created on.

When an oar file with this meta data is loaded this extra information
is saved with the region settings and available via LSL through:

- osLoadedCreationDate()
- osLoadedCreationTime()
- osLoadedCreationID()

If there is no meta data these fields will be blank. Subsequent oar
file loads will erase the information for the previous oar file
load. Persistence has only been implemented for MySQL, the other
backends need updating.

Overall this allows us to much more easily identify the specific version of
software that clients are using. Its very straightforward to edit the oar file
to change the ID string to be something more human friendly.

Included in the patch is a new file OpenSim/Data/MySQL/Resources/030_RegionStore.sql
required for the MySQL DB migration.

btw I had a chat with justincc about this a few weeks ago since he
wrote the oar file import/export and he sounded happy to accept
something that included date/time information but didn't want anything
that would silently leak private information like machine names.
2009-06-03 12:48:04 +00:00
Dr Scofield
074b66ddcf From: Chris Yeoh <yeohc@au1.ibm.com>
- fixes wild swings in memory usage related to usage of GetDrawStringSize()

  We've been seeing wild swings in memory usage and a large chunk of
  memory leak. From analysing this it's pretty clear that the mono
  garbage collector is rather buggy! When exercised heavily it looks
  like it frees more than its meant to resulting in crashes.

  GetDrawStringSize() measures the size in pixels of text. To do this
  memory for an image is allocated and used to call the GDI text
  measure functions.  Although no reference to the temporary memory
  for the measuring is kept, it takes quite a while for the mono
  garbage collector to clean up - so if lots calls to
  GetDrawStringSize() are made at once there can be a spike in memory
  usage. If the garbage collector is not fast enough then the GDI
  layer runs out of memory. It also looks like the garbage collector
  is not always reclaiming all of the memory.

  I've attached an OpenSim patch which works around the garbage collector
  issues. Instead of dynamically allocating memory for measuring
  text sizes, it serialises (on a per region basis) access to a single
  block of memory. The effect of this is to be nicer to the garbage
  collector as it has a lot less work to do, at the cost of some
  theoretical loss in performance (nothing noticeable with our tests
  which hit it pretty hard).

  OpenSim still does leak memory slowly, but it is a lot more stable
  with this patch. I suspect that either the garbage collector misses
  bits of freed memory or the GDI/cairo layer leaks a bit each time a
  texture is created. Thats going to be a lot harder to hunt down, but
  for reference if someone has OpenSim running on Windows it would be
  interesting to see if it has the same problem as it would tell us if
  its a mono/GDI problem or an OpenSim problem.
2009-06-03 12:39:44 +00:00
Dr Scofield
25a0a56570 From: Alan Webb <alan_webb@us.ibm.com>
Modify dynamic texture handling so that an explicitly targetted
  face is not scheduled for immediate expiration. The requirement
  for precaching explicitly requires these assets to persist. They
  do however remain temporary.

  This approach leaves the legacy mode of operation (ALL_SIDES)
  unchanged in this respect.
2009-06-03 12:21:14 +00:00
Dahlia Trimble
9e3b592fa3 Thank you Imaze Rhiano for a patch that implements Cenome Memory Asset Cache (Mantis #3759)
See the files: bin/config-include/GridCommon.ini.example and bin/config-include/StandaloneCommon.ini.example to configure and enable this caching method.
2009-06-03 08:41:08 +00:00
Dahlia Trimble
b64c484d26 Thanks aduffy70 for Mantis #3762: A patch to fix llGround, llGroundNormal, and llGroundSlope 2009-06-03 05:31:53 +00:00
Dahlia Trimble
528db43326 revert r9765 due to too many errors on some compilers. Affects Mantis #3759 2009-06-03 02:03:11 +00:00
Dahlia Trimble
b38be1a7fd Thank you Imaze Rhiano for a patch that implements Cenome Memory Asset Cache (Mantis #3759)
See the files: bin/config-include/GridCommon.ini.example and bin/config-include/StandaloneCommon.ini.example to configure and enable this caching method.
2009-06-02 22:42:47 +00:00
Charles Krinke
23bf1bf6e0 Thank you kindly, MattSetzer, for a patch that solves a Mantis:
This appears to be due to the fact that no asset cache has been 
configured, possibly as a result of the configuration changes that 
have been made recently. I've attached a patch to display a message 
to that effect rather than throwing an error.
2009-06-02 21:13:29 +00:00
lbsa71
6f37fd8399 * Pried apart the ODE tests. This fixes mantis #3212 2009-06-02 18:12:34 +00:00
Justin Clarke Casey
5c42143a7b * Add simple original xml serialization test 2009-06-02 15:24:29 +00:00
Melanie Thielker
aec5dc677d Explicitly set the changed status of the prim groups affected in a delink
Mantis #2484
2009-06-02 08:19:32 +00:00
Arthur Valadares
63a499c569 * Allow for lowercase searching in standalone mode, when case sensitive
search fails. This allows compability to libOMV bots, that always lowercase
region names.
* Uncertain if this should/could propagate to grids
2009-06-01 20:51:40 +00:00
Jeff Ames
c6f616049c Only save crashes to disk if save_crashes in OpenSim.ini is true (false by default). 2009-06-01 18:45:36 +00:00
Justin Clarke Casey
412295ccde * Add simple original sog xml serialization test 2009-06-01 18:03:51 +00:00
Justin Clarke Casey
f6badc528b * minor: change the name of one serialization method to match its counterpart 2009-06-01 17:38:11 +00:00
Justin Clarke Casey
ecbeb5cea1 * Fix race condition in save oar 2009-06-01 16:00:46 +00:00
Jeff Ames
840de6c036 Minor: Change OpenSim to OpenSimulator in older copyright headers and LICENSE.txt. 2009-06-01 06:37:14 +00:00
Dahlia Trimble
be41a2cb7e reduce verbosity of sculpt map cache messages to reporting cache failures only 2009-05-31 23:57:52 +00:00
Jeff Ames
35b450d41d Add copyright headers, formatting cleanup, ignore some generated files. 2009-05-31 18:35:00 +00:00
Jeff Ames
db2c4ab94c Update svn properties. 2009-05-31 16:26:18 +00:00
Adam Frisby
dc15190365 * Adds MRM scripting commands, World.Objects.Create(Vector3 position) and World.Objects.Create(Vector3 position, Quaternion rotation). These rez a 'default box' object at the specified coordinates, and return the associated IObject. 2009-05-31 12:53:05 +00:00
Mike Mazur
07a94fdf89 Fix IRCd init check for config section
The IRCStackModule used Nini.Config.ConfigCollection.Contains() to
determine whether the "IRCd" section was present in the config. This
ConfigCollection, however, stores an ArrayList of IConfig objects, not
strings, so calling Contains("IRCd") always returns false since "IRCd"
is a string, not an IConfig object.
2009-05-31 11:50:42 +00:00
diva
822c2176df Forgot to add this to my last commit 2 days ago. Async in the HGBroker too. 2009-05-30 16:22:15 +00:00
Adam Frisby
e70910c3e3 * Tweaks to /WHO listings. 2009-05-30 09:37:11 +00:00
Adam Frisby
449e167dce * You are likely to be eaten by a grue.
* Enable with [IRCd] Enabled=true (will listen on port 6666).
2009-05-30 07:02:38 +00:00
Adam Frisby
1bb98a1eb0 * More Tweaks 2009-05-30 04:07:58 +00:00
Adam Frisby
29bc2962ad * More IRCClientView fiddling. Now implements IClientAPI & IClientCore. 2009-05-30 03:53:04 +00:00
Adam Frisby
ac80b6539f * May partially implement a C# IRCd & IRCClientStack. 2009-05-30 03:18:09 +00:00
Adam Frisby
c30b5ee014 * Adds World.Audio.* to MRM
* This includes methods such as PlaySound which take a Position as an argument, allowing you to trigger sounds arbitrarily across the scene without needing a parent object in the position.
2009-05-29 23:49:48 +00:00
Adam Frisby
433ee75775 * Protip: When you click 'make public' in resharper, note to save before committing. 2009-05-29 22:48:34 +00:00
Adam Frisby
78bec42225 * Implements Sound on Objects for IObject in MRM
* Method: IObject.Sound.Play(UUID sound, double volume)
* More feature-packed API to come soon. (I want a World.Sound with arbitrary positioning)
2009-05-29 22:44:49 +00:00
Arthur Valadares
8545621d9b * Bug fix: Fixes an exception when Scene.RemoveClient is called to remove on a
non-existing ScenePresence avatar. Also removed trailing white spaces.
2009-05-29 21:12:55 +00:00
Justin Clarke Casey
95643971be * refactor: little tweaks to trigger another build 2009-05-29 21:10:17 +00:00
Justin Clarke Casey
4aad6a07ff * refactor: Remove redundent prim id attribute on Scene.AddSceneObject() 2009-05-29 21:01:18 +00:00
Justin Clarke Casey
6eb191c87b * Add save xml2 serialization test 2009-05-29 20:20:47 +00:00
Justin Clarke Casey
9021bb231c * minor: move common serialization test code into fixture setup 2009-05-29 16:27:43 +00:00
Justin Clarke Casey
fa04937a82 * Add xml2 load test 2009-05-29 16:11:33 +00:00
Dahlia Trimble
179724b4fc some clean up of sculpt map caching code
remove a redundant debug message
2009-05-29 08:57:10 +00:00
Dahlia Trimble
05cbf0b502 reinstate a hopefully more robust experimental decoded sculpt map caching scheme 2009-05-29 06:50:15 +00:00
Dahlia Trimble
1609e7eac0 disable sculpt map caching until a better method of avoiding asset requests can be found 2009-05-29 05:11:50 +00:00
Dahlia Trimble
9493de7f4e null test for texture assets when using cached sculpt map
addresses mantis #3735
2009-05-29 04:29:55 +00:00
Dahlia Trimble
db4f8d1298 Experimental decoded sculpt map caching 2009-05-29 02:46:35 +00:00
diva
1e9cb2f8fc Making the delegate handlers async in async Get, to make things consistent. Them being synchronous in certain cases (asset in cache, for example) may account for slowness reported by folks in osgrid when they have the cache module on. Turns out that some of the provided handlers do non-trivial processing (the ones coming from J2KImage, for example), which means that the several asset requests that hit the cache end up being synchronous. The jury is still out on this. 2009-05-29 01:26:53 +00:00
diva
0094556d04 Instrumenting GlynnTuckerCache to find out the hit rate. 2009-05-28 21:04:10 +00:00
Adam Frisby
5db649538a * Tweak to above 2009-05-28 19:20:49 +00:00
Adam Frisby
2feb218817 * Makes grid announcements more prominent. 2009-05-28 19:19:10 +00:00
Adam Frisby
4b151b83a8 * Oops. Forgot Initialise needs tweaking between IRegionModule and ISharedRegionModule. 2009-05-28 19:03:27 +00:00
Adam Frisby
561d6c1cdc * Converts recently added OGSRadmin to IRegionModule because I cant be arsed figuring out Mono.Addins. 2009-05-28 18:59:18 +00:00
Adam Frisby
940b5567a0 * Adds OGS RAdmin class. Adds primitive remote admin functions for gridservers to perform on region servers. Used for grid-wide announcements, etc. 2009-05-28 18:27:08 +00:00