Commit Graph

391 Commits

Author SHA1 Message Date
Dahlia Trimble
00d042f3d1 Thanks Michelle Argus for Mantis #0003742: Terrain editor - Flatten tool lowers Land 2009-06-18 23:02:12 +00:00
Arthur Valadares
f243dddc04 * Corrected CAPS namespaces
* "luke, use the sed"
2009-06-18 14:33:35 +00:00
diva
ce7de3581c Implementation of a simple authentication service + in connector in route to making HGInventory (client access) work in standalone again. This is the refactoring of what was/is there, but done in the new model. Not complete yet, but key authentication works. It should be enough to make HGInventory work again soon. 2009-06-17 03:52:39 +00:00
diva
6cb7ecd99c Renamed two of the in connector modules, to make things consistent. 2009-06-15 00:29:37 +00:00
diva
54d44e370b Removing the OpenSim.SimulatorServices project. All of those region modules are now in CoreModules/ServiceConnectorsIn, where they belong. 2009-06-15 00:17:17 +00:00
diva
380f59d0ff Factoring out "land_data" / RequestLandData that was hanging off of IGridServices, erroneously. Not sure when this is used, but now it is implemented in the new model of service connectors. Hopefully it works. 2009-06-14 23:00:23 +00:00
Melanie Thielker
664dd58cd9 Fixes Mantis #3793 . Committing thomax/Snoopy's patch to allow deeding of objects, with changes:
- Set OwnerID = GroupID for deeded objects.
- Close a security loophole that would have allowed a user with deed rights in a group to deed ANY object to that group, even if it's not owned by them and/or not set to that group
- Set LastOwnerID correctly. Handle objects vs. prims correctly.
2009-06-14 21:44:34 +00:00
Jeff Ames
8d0eb3307f Update svn properties. 2009-06-14 21:37:50 +00:00
diva
6abffedab5 Renamed Region/CoreModules/ServiceConnectors to Region/CoreModules/ServiceConnectorsOut. No functional changes. 2009-06-14 19:44:56 +00:00
diva
a0b68178b8 Bug fix in remote neighbour connector. 2009-06-14 16:26:14 +00:00
diva
7a9c85526c Pulled out HelloNeighbour into its own service, INeighbourService, which may get more functions as we go along. It's a very simple service and service connectors, and it served primarily to establish the design of services that dependent on Scenes and that must always have a local connector. More refactoring coming, as this showed how to do it right. 2009-06-14 15:35:09 +00:00
Justin Clarke Casey
9f2ddfd167 * Temporarily resolve another problem in http://opensimulator.org/mantis/view.php?id=3741 by disabling the loading of OAR creation information 2009-06-12 20:00:26 +00:00
Justin Clarke Casey
f9782a1085 * minor: removing some logging stuff accidentally left in on the last commit 2009-06-12 15:45:38 +00:00
Justin Clarke Casey
45342067f5 * Move standalone login setup in LLStandaloneLoginmodule to RegionLoaded() from AddRegion()
* This is necessary to avoid a dependency problem where LLStandaloneLoginModule references IInventoryService before the LocalInventoryServiceConnector is registered
* Correct some copypasta log messages in LocalInventoryServiceConnector
2009-06-12 15:41:53 +00:00
Justin Clarke Casey
cb6baacc31 * minor: remove one mono warning 2009-06-12 14:29:42 +00:00
Justin Clarke Casey
874df490fb * fix build break: sigh, must remember to build before committing 2009-06-12 14:23:31 +00:00
Justin Clarke Casey
4e526778b7 * minor: make control file loading code consistent 2009-06-12 14:18:01 +00:00
Justin Clarke Casey
15b8641bef * minor: if OAR saving receives assets after timeout, just print warning, don't accidentally go on to process them 2009-06-12 14:00:50 +00:00
Justin Clarke Casey
86043c431f * minor: remove warning from unused field 2009-06-12 13:37:08 +00:00
Arthur Valadares
d4ed7b03af * Fixed a few more async calls. Still not uncommented, some asserts still failing 2009-06-11 20:50:23 +00:00
diva
2afd733229 Fixes mantis #3803. Thanks jhurliman. 2009-06-11 20:27:13 +00:00
diva
6c1d6283e6 Small improvement in the IAR tests, but these tests are still showing random behavior, so they are still commented out. 2009-06-11 19:12:20 +00:00
diva
156604e28e InterServiceInventoryService references *almost* completely removed from the simulator. Only a couple left, not important. Also updated the login tests -- Justin, this time I was able to fix this by myself :) 2009-06-11 03:00:25 +00:00
diva
6242b01ac8 Removing the default reading of AssetCaching on all cache modules. 2009-06-10 16:48:26 +00:00
Melanie Thielker
b465dd7eb3 Reverse the default setting in Flotsam Asset Cache. Nothing should be the default 2009-06-10 15:36:44 +00:00
diva
1874c635ea Commenting the IAR tests for now until we understand how to set up things in this new inventory model. 2009-06-10 15:18:07 +00:00
diva
0f367bd7bb Heart surgery no.2: the inventory service hooks.
Several improvements in the connectors themselves.
Several improvements in configurations.
Needed to add a hack in IUserService and UserManagerBase, to be removed when that service is refactored.
2009-06-10 13:18:32 +00:00
Jeff Ames
a23d64dec1 Formatting cleanup. 2009-06-10 04:28:56 +00:00
diva
ca52c3ef26 Letting the Flotsam cache be enabled even when [AssetCache] section is missing. Thank you mcortez! 2009-06-09 20:20:30 +00:00
Jeff Ames
a7fcacf8f3 Formatting cleanup. Ignore some generated files. 2009-06-09 18:07:35 +00:00
Jeff Ames
135ff63c3d Update svn properties. 2009-06-09 17:48:22 +00:00
Melanie Thielker
9c726fb178 Thank you Snoopy, for a patch that implements group permissions.
Applied with changes:
- removed spammy debug message
- corrected tab formatting
2009-06-09 08:15:34 +00:00
Dr Scofield
759636f37e From: Alan Webb <alan_webb@us.ibm.com>
This change addresses two issues:

  [1] It adds a flag field to the blendface call which allows the
      caller to indicate whether or not the generated asset is
      temporary, and whether or not the asset being replaced should
      be explicitly retired fromt the memory cache. The decimal
      values correspond to:
      0 - Permanent asset, do not expire old asset
      1 - Permanent asset, expire old asset
      2 - Temporary asset, do not expire old asset
      3 - Temporary asset, expire old asset
      '3' corresponds to the default behavior seen today, and is
          the continued behavior of the non-blendface calls.
  [2] The dynamic texture routines are highly-asynchronous and can
      be scheduled simultaneously on a multi-core machine. The nature
      of the texture management interfaece is such that updates may
      be lost, and the nature of asynchornous operation means that
      they may be processed out of order. A lock has been added to
      ensure that updates are at least atomic. No attempt has been
      made to enforce ordering. The lock applies to the SceneObjectPart
      being updated and is held for the lifetime of the TextureEntry
      used to carry texture updates (the one instance carries all
      faces supported by the prim).

   Users of these services should remember that the dynamic texture
   call is asynchronous and control will be returned *before* the
   texture update has actually occurred. As a result, a isubsequent
   GetTexture call may not return the expected asset id. A script
   must wait for the corresponding TEXTURE_CHANGED event before
   retrieving any texture information.
2009-06-09 06:39:27 +00:00
Melanie Thielker
0356fef9ab Updating the flotsam asset cache. Thank you, mcortez!
Fixes Mantis #3784
2009-06-08 20:09:49 +00:00
diva
b87f982a7e Bug fix. Adding the asset to the cache after a DB get. 2009-06-08 19:35:36 +00:00
diva
16d5003274 Added more functions to IInventoryService. Unsure about whether all of these are really necessary. 2009-06-08 03:09:24 +00:00
diva
1ad237a8a7 First draft of inventory service connectors, and service implementation. No handlers yet, this is just the OUT part for now. It's not active and nothing in the simulator uses this yet. Just checking it in to start sharing with others. There are a couple of interesting software design points that could use other devs opinions.
Hopefully I added all needed files.
2009-06-07 19:00:55 +00:00
Justin Clarke Casey
593942b195 * Fix problem where known missing assets would stop save oar ever completing
* Issue was that region server was silently dropping an XmlException caused by trying to deserialize the blank asset service response
* So make asset service return http status NOT FOUND rather than OK in accordance with REST
* and interpret this correctly in the async response so that a null object is sent back
* This means that this fix won't be active until both region simulator and server reach this revision
2009-06-05 16:14:22 +00:00
Justin Clarke Casey
bfea077508 * Add oar saving timeout
* If an oar save fails to get responses to all asset requests to the asset service then timeout after 60 seconds
* Timeout executes abort, since missing assets in an OAR seems bad
* This means that oar saves won't permanently hang and instead can be retried if something goes wrong with the asset service
* This is not a solution to mantis 3714.  Hopefully a fix will be along shortly since I can now consistently reproduce that problem
2009-06-05 13:48:43 +00:00
Melanie Thielker
9f932a4205 Thank you, thomax, for a patch to provide finer-grained access control to
scripting.
Fixes Mantis #2862
2009-06-05 09:47:42 +00:00
Melanie Thielker
f992db6807 Committing mcortez's FlotsamAssetCache after several positive reviews.
Thank you, mcortez!
2009-06-05 04:58:55 +00:00
diva
ffac6f94f0 Changed a comment to reflect changes in config. 2009-06-04 18:41:19 +00:00
Jeff Ames
c6cef4bad5 Comment out unused variables / private fields to avoid compiler warnings. 2009-06-04 03:58:04 +00:00
Jeff Ames
5f923f0632 Add copyright headers. 2009-06-04 01:09:18 +00:00
Jeff Ames
007016ecd2 Update svn properties. 2009-06-04 00:51:02 +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
528db43326 revert r9765 due to too many errors on some compilers. Affects Mantis #3759 2009-06-03 02:03:11 +00:00