Commit Graph

58 Commits (1888e174cd9407003d544a8a3fad21ae53e8dcb4)

Author SHA1 Message Date
Melanie 6b5f3b49e7 Merge branch 'master' into careminster 2012-03-27 18:11:05 +01:00
Diva Canto 8131a24cde Send the config section name up to the service classes themselves (XInventory and Assets). 2012-03-27 10:08:13 -07:00
Melanie 5768a151ff Merge branch 'master' into careminster
Conflicts:
	OpenSim/Data/MySQL/MySQLXAssetData.cs
2012-03-20 02:48:11 +00:00
Justin Clark-Casey (justincc) ab54ce1907 Fix configuration problems where XAssetDatabasePlugin was picked up accidentally.
The asset data plugin now implements IXAssetData rather than IAssetData so the ordinary AssetService should no longer pick it up.
This replaces the changes in 92b1ade.  There is no longer any need to adjust your StandaloneCommon.ini/Robust.ini/Robust.HG.ini files.
This may explain very recent issues in the last few weeks where textures have been disappearing or turning white (as they were going to different places).
Unfortunately, you will need to rollback to an earlier database backup or reupload the textures.
2012-03-19 00:18:04 +00:00
Melanie ac577bf606 Merge branch 'master' into careminster 2012-03-09 00:56:52 +00:00
Justin Clark-Casey (justincc) dd63cd1656 Start by adding XAssetService as a copy of the existing AssetService.
This is the start of exploring the creation of a bundled OpenSimulator asset service that does de-duplication and possibly file storage of assets.
Along the lines of coyled's SRAS, but not intended to replace, merely to act as a more performant bundled default.
Might end up nicking stuff from kcozen's patch at http://opensimulator.org/mantis/view.php?id=5429
More details at http://opensimulator.org/wiki/Feature_Proposals/Deduplicating_Asset_Service
Feedback and discussion welcome as commits are made.
2012-03-02 02:23:35 +00:00
Melanie fdfc4ab2a8 Merge branch 'master' into careminster
Conflicts:
	OpenSim/Services/Connectors/Asset/AssetServiceConnector.cs
2012-01-06 00:08:18 +00:00
Justin Clark-Casey (justincc) f2ff6d5186 Move asset commands from AssetService to AssetServerConnector so that we can harmonise the same commands on the simulator side.
No functional change.
2012-01-05 20:33:44 +00:00
Melanie 51bad0f8ae Merge branch 'master' into bigmerge
Conflicts:
	OpenSim/Region/Framework/Scenes/Scene.cs
2011-11-06 20:12:57 +00:00
Snoopy Pfeffer dfbfc9826a Damaged assets, especially appearance textures, could crash the region server with a fatal exception.
Now, such excpetions are caught by an exception handler and just an error message is shown.
This was the kind of exception causing these fatal server crashes:

  APPLICATION EXCEPTION DETECTED: System.UnhandledExceptionEventArgs^M
  ^M
  Exception: System.ArgumentOutOfRangeException: Argument is out of range.
  Parameter name: offset exceeds the size of buffer
    at System.Net.Sockets.NetworkStream.BeginRead (System.Byte[] buffer, Int32 offset, Int32 size, System.AsyncCallback callback, System.Object state) [0x00000] in <filename unknown>:0
    at HttpServer.HttpClientContext.OnReceive (IAsyncResult ar) [0x00000] in <filename unknown>:0 ^M
  ^M
  Application is terminating: True^M
2011-11-06 15:05:19 +01:00
Tom 66dec3b874 Resolve merge commits, stage 1 2011-09-04 07:06:36 -07:00
Justin Clark-Casey (justincc) be357f8fee Fix bug in persisting saved appearances for npcs
Assets have to be marked non-local as well as non-temporary to persist.  This is now done.
Hopefully addresses http://opensimulator.org/mantis/view.php?id=5660
2011-08-30 01:58:32 +01:00
Justin Clark-Casey (justincc) 6b51d8a10e In the asset service, check that an asset exists before attempting to store it. 2011-08-17 23:24:41 +01:00
root c920ff9d1d Merge branch 'master' into careminster-presence-refactor 2011-07-09 01:06:46 +01:00
Justin Clark-Casey (justincc) c3d82bdcb1 When loading library asset set, only store an asset if it's different from an existing one with the same id.
We compare existing and loaded asset by doing an SHA1 on both, so that a changed library asset will still update the store.
This cuts asset library load time from 10 seconds to <1 sec.
Note, a fix on the previous commit revealed a bug where a library script cannot be copied except on the first login after a cache clear.
This is unrelated to this commit and needs to be fixed at some subsequent time.
2011-07-08 22:53:19 +01:00
Melanie b451cc1ebb Merge branch 'master' into careminster-presence-refactor 2011-05-08 20:23:06 +01:00
Justin Clark-Casey (justincc) 913e6b70c6 minor: slightly shorten "show digest" printing code 2011-05-06 22:13:56 +01:00
Justin Clark-Casey (justincc) 621279e498 on asset "show digest" command, print out the asset type name (e.g. texture) as well as its number 2011-05-06 22:04:26 +01:00
Justin Clark-Casey (justincc) 9ff94a3a44 Say which filename an asset has been dumped to on a successful dump 2011-05-06 21:58:41 +01:00
Justin Clark-Casey (justincc) 46baadbb65 remove the NDesk.Options using since didn't end up needing it 2011-05-06 00:22:19 +01:00
Justin Clark-Casey (justincc) bc49a0bc5d Add "dump asset" command to the asset service for debugging purposes.
This command dumps the asset with the given id to a file with the same name.
2011-05-06 00:09:08 +01:00
Melanie 474910c9d6 Merge branch 'master' into careminster-presence-refactor 2011-04-17 18:48:53 +01:00
Justin Clark-Casey (justincc) a0d80140f2 Make all the objects in a coalescence reappears after being loaded from an IAR. This still doesn't work proprerly since some required textures/contained item assets might be missing.
From pure code inspection, it looks like the uuid gatherer may get most asset uuids because the scene object serializer naively pulls non-root parts from all contained scene objects into one mega-object.  However, root part uuids may well still be missing, and there may be other odd artifacts from this bug.
It appears that storing the size of the coalescence and the offsets is redundant, since one can work out this information from the position data already in the scene object groups.
2011-04-15 00:42:06 +01:00
Melanie ccd6e5d071 Merge branch 'master' into careminster-presence-refactor 2011-02-16 02:41:49 +00:00
Diva Canto c169a62f55 Typo 2011-02-12 18:05:25 -08:00
Melanie 342dc532ec Merge branch 'master' into careminster-presence-refactor
Also prevent god takes from ending up in Lost and Found
2010-12-03 02:36:13 +00:00
Diva Canto ae4b02e115 WARNING: LOTS OF CONFIGURATION CHANGES AFFECTING PRIMARILY HG CONFIGS. Added capability to preserve creator information on HG asset transfers. Added a new HGAssetService that is intended to be the one outside the firewall. It processes and filters the assets that go out of the grid. Also fixed the normal AssetService to do special things for the main instance (console commands, etc). Moved HGInventoryService to OpenSim.Services.HypergridService. Changed the way the login service gets the ServiceURL configs. 2010-11-25 11:14:16 -08:00
Tom Grimshaw 06fa038875 Return a UUID.Zero if the asset fails to upload 2010-06-28 07:09:05 -07:00
Diva Canto b233a4b2ca * Fixed spamming the assets table with map tiles. The tile image ID is now stored in regionsettings. Upon generation of a new tile image, the old one is deleted. Tested for SQLite and MySql standalone.
* Fixed small bug with map search where the local sim regions weren't found.
2010-05-09 13:39:56 -07:00
Melanie 60357d3778 Implement the "delete" path for assets. Adds a new option to allow remote asset deletion in robust handler. 2010-05-09 17:56:52 +01:00
Melanie 9b22393cf3 Add a field asset_flags and a corresponding enum to the asset database. This
CHANGES THE ASSET SERVER PROTOCOL and means you CAN NOT MIX PRIOR VERSIONS
WITH LATER ONES. It may also eat your babies, yada, yada, yada.
The usual cautions for migrations to the assets table apply.
Coding: Can not guarantee nut free.
2010-05-09 17:02:22 +01:00
John Hurliman e838776920 * Thanks cmickeyb, for a patch that sanity checks if the response from m_Database.GetAsset(assetID) is null in AssetService.cs 2010-04-27 17:13:54 -07:00
John Hurliman 3f6c4c150e * Adds IAssetService.GetCached() to allow asset fetching from the local cache only
* Adds GetTextureModule that implements the "GetTexture" capability, aka HTTP texture fetching. This is a significantly optimized path that does not require any server-side JPEG2000 decoding, texture priority queue, or UDP file transfer
* Sanity check for null reference in LLClientView.RefreshGroupMembership()
2010-04-08 12:31:44 -07:00
Jeff Ames af265e001d Formatting cleanup. 2010-02-15 19:21:56 +09:00
Justin Clark-Casey (justincc) 802a969267 Fix http://opensimulator.org/mantis/view.php?id=4224
This resolves the problem where eyes and hair would turn white on standalone configurations
When a client receives body part information, for some insane reason or other it always ends up uploading this back to the server and then immediately re-requesting it.
This should have been okay since we stored that asset in cache.  However, the standalone asset service connector was not checking this cache properly, so every time the client made the request for the asset it has just loaded it would get a big fat null back in the face, causing it to make clothes and hair white.
This bug did not affect grids since they use a different service connector.
2010-02-12 21:32:03 +00:00
John Hurliman 0d2e6463d7 * Minimized the number of times textures are pulled off the priority queue
* OnQueueEmpty is still called async, but will not be called for a given category if the previous callback for that category is still running. This is the most balanced behavior I could find, and seems to work well
* Added support for the old [ClientStack.LindenUDP] settings (including setting the receive buffer size) and added the new token bucket and global throttle settings
* Added the AssetLoaderEnabled config variable to optionally disable loading assets from XML every startup. This gives a dramatic improvement in startup times for those who don't need the functionality every startup
2009-10-14 11:43:31 -07:00
Jeff Ames ee205e7e81 Formatting cleanup. 2009-10-01 01:17:47 +09:00
Kunnis f1287cc7af * Switching IAssetData to follow the new naming schema, removing the separate insert and update methods. 2009-08-19 23:45:22 +01:00
Melanie 430cc0a24a Add "show digest <id>" console commdn to the ROBUST asset handler
R.O.B.U.S.T.# show digest b8d3965a-ad78-bf43-699b-bff8eca6c975
Name: Terrain Dirt
Description:
Type: 0
Content-type: image/jp2
0000: FF-4F-FF-51-00-2F-00-00-00-00-00-80-00-00-00-80
2009-08-09 23:22:59 +01:00
Melanie Thielker 7f4a3392fc Fix the AssetServiceBase bug I introduced by reordering configuration load
order. Thanks, Grumly57, for pointing it out.
The point of the original change was to let the more specific setting override
the less specific one, actually, I disabled the use of the less specific one.
2009-06-23 08:37:12 +00:00
Melanie Thielker 044446821b Committing the meat of the user server interface and the bones of the service implementation 2009-06-22 12:18:04 +00:00
diva e1fd76ace6 Moving these nice HG connectors to their homes. 2009-06-15 23:29:00 +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 840de6c036 Minor: Change OpenSim to OpenSimulator in older copyright headers and LICENSE.txt. 2009-06-01 06:37:14 +00:00
diva fb6d314d4d This should make HG asset transfers work much better. It now uses HGUuidGatherer, which is a subclass of UuidGatherer. Hence, on-line HG asset transfers use exactly the same UUID collection code as save oar/xml. If it doesn't work, it's Justin's fault :D 2009-05-23 17:51:13 +00:00
diva 6d6d8445b9 Bug fix in HGAssetService. POSTs back home (standalone) should now work. 2009-05-22 18:02:49 +00:00
Dr Scofield 1d02636c27 cleaning out warnings.
NOTE: we currently have a gazillion warnings caused stuff flagged as
"obsolete" (OGS1 stuff) --- what's up with that?
2009-05-22 14:57:00 +00:00
diva 13da5a9fba Finished HG Service Store. Not fully functional because of problems with asset.ID insisting on being a UUID string. 2009-05-18 20:04:59 +00:00
Melanie Thielker cb2ce61876 Move the connectors under services for reasons of application logic. Remove
the user server skeleton in preparation for introducing a generic server
2009-05-18 11:43:37 +00:00
diva 720e2bc5d9 Renaming [ServiceConnectors] back to [Modules]. 2009-05-17 15:37:50 +00:00