Freaky Tech
f68a1a2218
XML should not contain any BOM. Disabled BOM generation in BaseHttpServer
...
Signed-off-by: BlueWall <jamesh@bluewallgroup.com>
2015-03-03 15:35:09 -05:00
Justin Clark-Casey (justincc)
686b22da6e
On shutdown (job engine stop), don't allow the ObjectDisposedException on BlockingCollection.Take() to propogate if the running thread checked IsRunning before the stop thread set it and disposed of the canellation source.
...
Looks to address http://opensimulator.org/mantis/view.php?id=7453
2015-02-25 20:04:53 +00:00
Melanie Thielker
fed566b8d3
Abbreviate the stats by removing unneeded and redundant elements. Human readability is overrated. Also add a (hardcoded) password.
2015-02-18 01:14:08 +01:00
dahlia
8b2af1071f
Add NaN and Infinity tests for SOP Velocity and Acceleration setters.
2015-02-16 23:51:37 -08:00
Justin Clark-Casey (justincc)
85f3380480
Add missing BSD headers to files in OpenSim/Framework/ServiceAuth
2015-02-13 21:00:10 +00:00
Justin Clark-Casey (justincc)
6834393821
Fix bug in JobEngine where an attempt to restart after stop would trigger an exception because the cancellation source was not recreated.
2015-02-04 00:10:44 +00:00
Justin Clark-Casey (justincc)
24ef043395
Make failures in PollServiceHttpRequest.DoHTTPGruntWork() actually log the exception on error
2015-01-19 23:52:34 +00:00
Justin Clark-Casey (justincc)
0c31eb0a5d
Add the missing deleted and re-added JobEngine class from the previous commit 8e1e8a0
2015-01-12 20:59:58 +00:00
Justin Clark-Casey (justincc)
8e1e8a0920
Make the performance controlling job processing threads introduced in conference code use a generic JobEngine class rather than 4 slightly different copy/pasted versions.
2015-01-12 20:56:37 +00:00
Diva Canto
9dc4b2c479
Commented out clear_registry_ because (1) it isn't clearing up anything anymore -- mono addins moved to suffix -002 at least since BlueWall updated it; (2) we shouldn't clear the registry, period. People who run many sims from the same bin folder need to configure each sim to use its own RegistryLocation, just like they configure them to use their own port.
2015-01-07 20:01:54 -08:00
Diva Canto
ce1a87b784
Added overloaded LoadArchSpecificWindowsDll, to help addins load native libraries.
2015-01-04 19:06:49 -08:00
Diva Canto
53c8318124
Added utility function that simplifies configuration loading of all addins.
2015-01-03 21:53:18 -08:00
Robert Adams
7c2aeb9e8e
Fix cut-and-paste error that made StatsManager web fetch queries
...
fail for container specification.
2015-01-01 09:39:07 -08:00
Diva Canto
998ef665a8
Commenting out the suppression of console warnings from Mono addins while we test this new model for the next couple of weeks.
2014-12-31 00:01:47 -08:00
Diva Canto
2138d5c7f8
Renamed VERSION_NUMBER to VersionNumber
2014-12-30 15:27:28 -08:00
Diva Canto
7466ef0525
This cleans up versioning. Specifically:
...
- It establishes 4 digits for opensim versions
- It uses the same number between opensim releases and mono addins versions
It also eliminates the last addin.xml files that were still there, for consistency.
2014-12-30 12:53:31 -08:00
Justin Clark-Casey (justincc)
7100475b90
Make sure we always dispose of disposables inside RestClient.Request()
2014-12-20 01:56:33 +00:00
Justin Clark-Casey (justincc)
e3d07bd0cc
minor: Correct propery doc RestClient._resource spelling mistake
2014-12-20 01:39:31 +00:00
Justin Clark-Casey (justincc)
2b9f0647de
Fix a regression where objects crossing regions in the same simulator (on their own or as attachments) with AppDomainLoading = false would create the new state in the source region area rather than the dest.
...
This was beause the code was finding the script DLL compiled for the source region as everything is in the same appdomain and using this as the location for the destination script state, etc.
This resolves the regression by passing the proper destination separately from the DLL retrieved.
Probably a regression since commit d7b92604
(11 July 2014).
Added regression test for this case.
At least partly addresses http://opensimulator.org/mantis/view.php?id=7278
2014-12-10 00:25:27 +00:00
Justin Clark-Casey (justincc)
73234e2098
Stop writing SizeZ config parameter for now when creating regions from console as it is unused/ignored, at least in core.
2014-11-28 00:04:10 +00:00
Justin Clark-Casey (justincc)
86367d7219
refactor: Move methods to start a monitored thread, start work in its own thread and run work in the jobengine from Watchdog to a WorkManager class.
...
This is to achieve a clean separation of concerns - the watchdog is an inappropriate place for work management.
Also adds a WorkManager.RunInThreadPool() class which feeds through to Util.FireAndForget.
Also switches around the name and obj arguments to the new RunInThread() and RunJob() methods so that the callback obj comes after the callback as seen in the SDK and elsewhere
2014-11-25 23:56:32 +00:00
Justin Clark-Casey (justincc)
4b45a1b6ad
Change jobengine logging command to "debug jobengine log <int>" rather than loglevel, in common with similar commands.
2014-11-25 23:23:11 +00:00
Justin Clark-Casey (justincc)
28d1dbfee4
Move conditionals which control whether a task is placed in the JobEngine inside Watchdog.RunJob() (renamed from RunWhenPossible) and generalize them.
2014-11-25 23:23:11 +00:00
Justin Clark-Casey (justincc)
f54c70741b
Add "show threadpool calls active" console debug command.
...
This shows named threadpool calls (excluding timer and network calls) that are currently queued or running.
Also shows total of labelled and any anonymous calls.
2014-11-25 23:23:10 +00:00
Justin Clark-Casey (justincc)
ec8d21c434
Label all threadpool calls being made in core OpenSimulator. This is to add problem diagnosis.
...
"show threadpool calls" now also returns named (labelled), anonymous (unlabelled) and total call stats.
2014-11-25 23:23:10 +00:00
Justin Clark-Casey (justincc)
72cb1cc7d6
Add "show threadpool calls" command to show count of all labelled smartthreadpool calls
2014-11-25 23:23:10 +00:00
Justin Clark-Casey (justincc)
6c043dd6ff
If an exception makes it to the top of a JobEngine request, catch and log instead of letting it terminate the simulator...
2014-11-25 23:21:38 +00:00
Justin Clark-Casey (justincc)
d33964222a
Fix an issue where specifying both max client and server outgoing UDP throttles would cause client throttles to be lower than expected when total requests exceeded the scene limit.
...
This was because specifying a max client throttle would always request the max from the parent server throttle, no matter the actual total requests on the client throttle.
This would lead to a lower server multiplier than expected.
This change also adds a 'target' column to the "show throttles" output that shows the target rate (as set by client) if adaptive throttles is active.
This commit also re-adds the functionality lost in recent 5c1a1458
to set a max client throttle when adaptive is active.
This commit also adds TestClientThrottlePerClientAndRegionLimited and TestClientThrottleAdaptiveNoLimit regression tests
2014-11-25 23:21:38 +00:00
Justin Clark-Casey (justincc)
07a7f941e5
minor: remove warning in BasicHttpAuthentication by commenting out unused remove_me parameter (which looks like it might still be potentially useful for logging)
2014-11-25 23:21:37 +00:00
Justin Clark-Casey (justincc)
fc878a33ed
refactor: consistently put all test classes in the OpenSim.Tests.Common package rather than some in OpenSim.Tests.Common.Mock
...
the separate mock package was not useful and was just another using line to always add
2014-11-25 23:21:37 +00:00
Justin Clark-Casey (justincc)
d3ed5de77d
Add loglevel to jobengine that can be controlled via "debug jobengine loglevel <level>".
...
Defaults to 0
Level 1 currently does verbose logging about every queued and processed job.
2014-11-25 23:18:38 +00:00
Justin Clark-Casey (justincc)
9fb3065d33
Temporarily add root agent rez attachments work to job engine if it is running rather than as a fire and forget.
...
Experiment to see if serializing attachment rez and send initial data jobs improves other parts of sim performance.
2014-11-25 23:18:38 +00:00
Justin Clark-Casey (justincc)
859b1c5ba4
Add experimental job engine to see if queueing some existing async work during root agent entry to a region improves perf rather than always attempting to execute everything concurrently
...
Job engine is controlled via "debug jobengine start|stop|status".
Can only currently be enabled and disabled dynamically at runtime.
Currently only applies to code sending initial region data (objects, other avatar data) to a client.
2014-11-25 23:18:37 +00:00
Melanie Thielker
bec456c2a5
Remove the Invisible stuff and add more baked caching. Refactor selection of textures to save to Bakes module.
2014-11-11 07:09:30 +01:00
Melanie Thielker
64deb6ae6f
Second part of invisible base avatar option
2014-11-10 19:49:58 +01:00
UbitUmarov
caddabb5c4
scale ChildAgentThrottles with distance (internal to child server and not
...
root as was done before )
2014-11-06 22:25:16 +00:00
UbitUmarov
377a8072dc
remove last debug msg
2014-11-01 16:04:22 +00:00
UbitUmarov
f2ea426453
debug msg
2014-11-01 15:52:05 +00:00
Justin Clark-Casey (justincc)
a05be7bd65
Add "region set" console command.
...
This current allows one to set two region parameters
agent-limit <int> will set the current root agent limit for the region, as also settable through the viewer, though some impose a max setting (e.g. 100).
max-agent-limit <int> will set the maximum allowed root agent limit. This can also be set via the MaxAgent parameter in region config.
2014-10-31 21:47:12 +00:00
BlueWall
b463870914
Add hypergrid teleporting support to user profiles picks
2014-10-27 17:27:42 -04:00
UbitUmarov
932b52f1bf
missing file
2014-10-26 18:22:46 +00:00
UbitUmarov
736490dcb6
dont send baked textures assets, but send cache information
2014-10-26 18:13:44 +00:00
UbitUmarov
4cbc13b52f
don't send pack baked texture assets into updates.
2014-10-24 19:50:51 +01:00
UbitUmarov
fd79f75ba6
TEST**** wingridproxy detection at grid login. Untested possible not
...
very reliable. Adds some load even on region servers because of code at
BaseHttpServer.
2014-10-24 02:12:30 +01:00
UbitUmarov
afa9b4a002
Assume childreen don't need to know caps seeds
2014-10-20 09:14:27 +01:00
UbitUmarov
f44c29effb
try to fix propagation of seeds to all relevante regions
2014-10-19 15:51:12 +01:00
UbitUmarov
2bea66ed27
send motion control state in update to childs. Reset CollisionPlane on
...
makechild
2014-10-17 14:07:11 +01:00
UbitUmarov
c643ff4cba
fix some errors when using http debug level > 4
2014-10-15 14:14:25 +01:00
UbitUmarov
a301bad8ad
on util thread pool reduce the min number of threads, increase the
...
maximum and increase the idle time before release to OS
2014-10-13 12:10:13 +01:00
UbitUmarov
cd87c4bec5
change/fix previus commits
2014-10-13 12:00:31 +01:00
UbitUmarov
8558e97a44
tune poll smartThreadpool use and give it a name
2014-10-13 11:38:51 +01:00
Melanie Thielker
93fa3777d2
Merge branch 'ubitworkmaster'
2014-10-03 18:27:27 +02:00
Melanie Thielker
c66e4eeb7d
Also store names of assets in the AnimationSet
2014-10-03 18:27:14 +02:00
UbitUmarov
cfb1a27300
Merge branch 'master' into ubitworkmaster
2014-09-29 20:36:03 +01:00
Melanie Thielker
3ea76e3131
Make changes to AnimationSet to allow indexing by names rather than indices. Add some debugging output and prepare for parsing an ascii-based format.
2014-09-27 02:30:01 +02:00
UbitUmarov
bb019945e8
change permitions again
2014-09-26 15:20:45 +01:00
UbitUmarov
46caea6987
change it again...
2014-09-26 15:03:33 +01:00
UbitUmarov
90cad82405
remove unnecessary argument ref
2014-09-26 14:22:54 +01:00
UbitUmarov
fcad64209c
make c# more happy
2014-09-26 14:17:01 +01:00
UbitUmarov
3e2242b4c4
change animset permitions to reflect no transfer nature
2014-09-26 14:06:16 +01:00
UbitUmarov
cce31b6638
add centerlized AnimationSet item permitions setting
2014-09-26 14:00:33 +01:00
Justin Clark-Casey (justincc)
23a0946e36
Fix long-lived thread name logging.
2014-09-26 01:10:49 +01:00
Melanie Thielker
546537c056
Rename = too generic
2014-09-25 21:54:32 +02:00
Melanie Thielker
2e6fd6536b
Add the AnimationSet skel
2014-09-25 21:53:32 +02:00
Melanie Thielker
80f3e8edbc
Fix stupid stuff.
2014-09-24 00:21:14 +02:00
Melanie Thielker
a6b27a7aa4
Add a link number field to ColliderArgs
2014-09-24 00:16:04 +02:00
Jak Daniels
bde60cc92e
Add persistent command history in console
...
Signed-off-by: BlueWall <jamesh@bluewallgroup.com>
2014-09-23 10:36:00 -04:00
Melanie Thielker
0bfba122f0
When a ghosted avatar is removed, also remove any remaining CAPS
2014-09-22 18:49:08 +02:00
Melanie Thielker
640f3f3074
A stab at brute force fixing the locking - one, make m_itemLock volatile, two,
...
reset the lock even if the write lock is not apparently held.
2014-09-21 19:24:15 +02:00
BlueWall
96a2449122
Undo "Revert "Small changes to threading to send thread names to unmanaged threads. Needs Mono 3.6+ to see thread names in utilities like top -H . Some formatting of the thread name to fin in the 16 byte limit on Linux. Please test on Windows to see if the work has any adverse effects.""
...
Fix for break in next commit
This reverts commit 376fab1402
.
2014-09-17 20:03:54 -04:00
BlueWall
376fab1402
Revert "Small changes to threading to send thread names to unmanaged threads. Needs Mono 3.6+ to see thread names in utilities like top -H . Some formatting of the thread name to fin in the 16 byte limit on Linux. Please test on Windows to see if the work has any adverse effects."
...
This reverts commit af286d5fcb
.
Issue with Jenkins builds
2014-09-17 18:11:41 -04:00
BlueWall
af286d5fcb
Small changes to threading to send thread names to unmanaged threads. Needs Mono 3.6+ to see thread names in utilities like top -H . Some formatting of the thread name to fin in the 16 byte limit on Linux. Please test on Windows to see if the work has any adverse effects.
2014-09-17 17:56:10 -04:00
UbitUmarov
df389dceb8
add some _response.close. RestClient still looks bad. It should be a
...
proper IDisposable object.
2014-09-17 16:19:00 +01:00
UbitUmarov
9bf3e2a257
dispose some tmp streams
2014-09-17 15:36:22 +01:00
UbitUmarov
016e58e354
*test*
2014-09-09 21:53:27 +01:00
Justin Clark-Casey (justincc)
b4ce71df1e
Make proper fix for last commit wrt Mantis 7317 by replacing disallowed c char and not literal 'c'
2014-09-09 18:57:02 +01:00
Justin Clark-Casey (justincc)
e271607bef
For stat names containing periods, replace with '#' rather than throw exception
...
In relation to http://opensimulator.org/mantis/view.php?id=7317
2014-09-09 18:56:58 +01:00
Justin Clark-Casey (justincc)
41f2f3132b
For monitoring purposes, start non-timeout tasks (which do not currently use a threadpool) via Watchdog.RunInThread() rather than Util.RunThreadNoTimeout()
...
The functionality is the same but this allow us to monitor such tasks via "show threads" and abort them for test purposes, etc.
Also extends thread names to provide more info (e.g. SendInitialDataToClient says what client the task is for).
2014-09-05 23:20:59 +01:00
Justin Clark-Casey (justincc)
1b75ec5647
Ignore whitespace when reading serialized XML objects.
...
This was previously effectively being done by XmlDocument in the multiple passes through the XML.
This change tells XmlReader to ignore whitespace. This also means changing arguments to use XmlReader instead of XmlTextReader (a descendent of XmlReader) directly.
XmlReader.Create() has been the recommend way to create XML readers since .NET 2.0 as per MS SDK and is the only way to specific ignore whitespace settings.
2014-08-29 19:08:23 +01:00
UbitUmarov
7351d92a76
add method to get a category throttle rate
2014-08-29 16:19:30 +01:00
UbitUmarov
63d1916f51
Remove entities from updates queues on kill. Do it sync so enqueues after
...
the kill work
2014-08-23 20:59:11 +01:00
UbitUmarov
5bf145a397
add a direct sendpartfullUpdate to send a full object update to a part,
...
optionally overriding its parentID. check what it does to attachments
2014-08-21 00:49:10 +01:00
UbitUmarov
88587b4e73
reserve updates priority queue 2 for attachments, send them by it on
...
BestAvatarResp scheme. Attachments cannot be sent on imediate queues,
since they will block everything. Changed distance to priority math,
keeping identical result, shifted to start at queue 3.
2014-08-20 21:41:16 +01:00
UbitUmarov
ff518e7cbb
make webutilmore verbose on PUT for avatar updates. Reduce LargeTime debug
...
level to 500ms from 3000ms
2014-08-17 02:12:45 +01:00
Justin Clark-Casey (justincc)
e0c6bfa81e
If a user moves back in sight of a child region before the agent has been closed on teleport, don't unnecessarily resend all avatar and object data about that region.
2014-08-15 21:47:34 +01:00
Justin Clark-Casey (justincc)
91e1aaa5d4
On teleport to a region that already has a child agent established (e.g. a neighbour) don't resend all the initial avatar and object data again.
...
This is unnecessary since it has been received (and data continues to be received) in the existing child connection.
2014-08-15 21:47:34 +01:00
UbitUmarov
447fd0850a
remove duplication of textures, wearables and attachments on crossings.
...
receiver checks old method if it doesnt get packed appeareace
2014-08-15 21:39:37 +01:00
UbitUmarov
8c657e4837
add a estimator of client ping time, and painfully make it visible in show
...
connections console command
2014-08-14 20:41:36 +01:00
UbitUmarov
395903d58f
*DANGER* dont send baked textures assets to Neighbours. Possible we could
...
send a lot less
2014-08-14 02:36:50 +01:00
UbitUmarov
a1cc218f10
*DANGER* make baked textures cross and make use of it * UNTESTED *
...
issue: alll this seems to be sent back to childs, need to stop that
2014-08-14 01:53:51 +01:00
Justin Clark-Casey (justincc)
f1f935ed95
Add 'server' stats information to pCampbot, as used elsewhere in OpenSimulator
...
This adds the "show stats", "stats record", etc. commands and information on available Threadpool threads, etc.
It also adds the Watchdog which logs warnings if time between executions is unexpectedly large.
2014-08-13 19:53:42 +01:00
UbitUmarov
3e7f475e58
fix the damm thing
2014-08-12 21:08:01 +01:00
Melanie Thielker
ddfb05e57a
Comment out stupid XEngine-bound message about script vs non-script startup, it's annoyed me for a long time. Comment out periodic stats as well, they've never been useful to us and just cause console spew.
2014-08-09 05:31:09 +02:00
UbitUmarov
998e3d435a
DANGER back to right current max number of wearables ( TP out of regions
...
with this may kill old regions)
2014-08-08 01:39:19 +01:00
UbitUmarov
16bcd86dfb
back to max 15 wearables until its safe ( and before i kill other grid
...
regions)
2014-08-08 00:01:49 +01:00
UbitUmarov
a8e49a4538
max 16 for testing
2014-08-07 23:33:48 +01:00
UbitUmarov
4ae0bb7df1
add limites checks on wearables size, revert to max 15 for
...
compatibility/testing
2014-08-07 23:29:31 +01:00
UbitUmarov
7486684436
update the max number of texture faces and wearables to current values.
...
This should be safe now..
2014-08-07 22:47:29 +01:00
UbitUmarov
c3f9c99fb3
DANGER... changed bakedtextures caching. Assuming grid baking is cache
...
only, reduced number of accesses to it. TESTING
2014-08-07 05:20:45 +01:00
UbitUmarov
6eca2475d4
dont assume that all zero folded perms are to ignore ( coerence with old
...
code in avn-current )
2014-08-05 17:55:30 +01:00
UbitUmarov
a5e9429f2b
MESS: changes in MakeRootAgent and CompleteMovement reordering things.
...
Added sending of land overlay and parcel information. This in order to
only send avatar related information after having its position well
defined and on the right parcel. THIS MAY STILL BE BAD :)
2014-07-31 03:10:50 +01:00
UbitUmarov
d6dbfd1687
missing file in commit 5fe1f87837
2014-07-30 15:43:54 +01:00
Melanie Thielker
0c2537bb24
Try to plumb the other half
2014-07-29 04:41:38 +02:00
Melanie Thielker
dfa9780c8c
Send new parcel permissions to activate viewer options - done right this time
2014-07-29 04:19:01 +02:00
Justin Clark-Casey (justincc)
f6f7585ec5
Add a "debug scene set child-repri <double>" command that allows child reprioritization distance to be changed on the fly.
...
This governs when child agent position changes are sent to neighbouring regions.
Corresponding config parameter is ChildReprioritizationDistance in [InterestManagement] in OpenSim.ini
For test purposes.
2014-07-29 00:13:29 +01:00
Justin Clark-Casey (justincc)
1e3027afb1
Temporary stop CAPS service points from being added to stats as this can be a huge number.
...
A stop gap solution - a better one may be to improve stats display on simulator-side.
Caps information is still accessible via the "show caps stats by user" and "show caps stats by cap" commands
2014-07-26 01:41:03 +01:00
Justin Clark-Casey (justincc)
8c5c9806d7
Add stats for service endpoints using existing data.
...
For each service endpoint (e.g. posts to the xinventory service), a stat is available which shows the number of requests received and moving average per second
The full name is "service.<http-method>:<path>.requests (e.g. service.POST:/xinventory.requests)
2014-07-25 23:00:41 +01:00
Justin Clark-Casey (justincc)
cc61681484
Revert "Write UDP statistics to the log, not just the console (e.g., "show queues")"
...
Fixes http://opensimulator.org/mantis/view.php?id=7280
It can't be done this way because the stats data needs to show up on the console at all log levels, not just debug.
But this means setting it to log at fatal, which is not appropriate for this stuff in the log.
I understand the desire but this has to be done some other way, perhaps by (yet another) config parameter.
Also, this was already being done with the ClientStatsReport but that also should be done in another way, I think.
This reverts commit 5d53412766
.
2014-07-25 01:56:41 +01:00
UbitUmarov
86a9710e77
change previus code, send a NoEvents response back to http server, even
...
if we know there is no one there, so that the server finishes handling
it.
2014-07-24 23:32:39 +01:00
UbitUmarov
05d071a430
let BlockingQueue timeout work as its suposed to and not wait for ever
2014-07-24 05:37:56 +01:00
UbitUmarov
f236b2e5d3
request.DoHTTPGruntWork(..) is now identical to our version, so use
...
those again, getting code closer to os
again
2014-07-23 02:14:15 +01:00
Justin Clark-Casey (justincc)
3355bedaeb
minor: Limit processor related stats to 3 decimal places instead of all the places.
...
Easier to read and analyze, and probably still too much detail (1 dp would probably be fine)
2014-07-21 23:08:15 +01:00
Justin Clark-Casey (justincc)
200dcee1b7
Fix CPU processor use reporting on Mono.
...
Despite the comments in the code, it appears that the issue where the .NET performance counter was wrongly idle time time on Mono was fixed in 2009.
https://bugzilla.novell.com/show_bug.cgi?id=468625
Which means that the workaround is no longer necessary and produces bad results instead.
2014-07-21 22:55:38 +01:00
Oren Hurvitz
712c50e0bf
Don't append attachments multiple times
2014-07-21 09:29:50 +01:00
Oren Hurvitz
6b57b61836
Log RestClient requests similarly to WebClient (e.g, "debug http all 6" logs the entire request and response)
2014-07-21 09:24:45 +01:00
Oren Hurvitz
af3498efdb
In "show throttles", show the maximum drip rate. This shows whether a client is being throttled due to past poor performance.
2014-07-21 09:10:50 +01:00
Oren Hurvitz
5d53412766
Write UDP statistics to the log, not just the console (e.g., "show queues")
2014-07-21 09:10:19 +01:00
Oren Hurvitz
48d1cca303
Better logging of threadpool activity in Overload mode: if we didn't log "Queue threadfunc" for a particular thread then don't log "Run threadfunc" or "End threadfunc" for that thread either.
2014-07-21 08:30:17 +01:00
Oren Hurvitz
99ac770abb
Close streams immediately when we finish using them
2014-07-21 08:30:03 +01:00
Melanie Thielker
e1b2ecdfdc
Merge branch 'avination-current'
...
Conflicts:
OpenSim/Region/CoreModules/Framework/InventoryAccess/InventoryAccessModule.cs
2014-07-19 22:32:07 +02:00
Justin Clark-Casey (justincc)
d1b7c2ece3
minor: remove long unused RegionInfo.ignoreIncomingConfiguration
2014-07-19 01:15:15 +01:00
Justin Clark-Casey (justincc)
29d5950838
minor: remove long unused RegionInfo.commFailTF
2014-07-19 01:10:53 +01:00
Justin Clark-Casey (justincc)
a26d1ffc66
minor: add method doc to ICommands.HasCommand()
2014-07-18 22:31:04 +01:00
Justin Clark-Casey (justincc)
9be935ac6d
Add ICommands.HasCommand() method so that we can detect whether a command has already been registered without needing to also run it
2014-07-18 22:27:39 +01:00
UbitUmarov
19d33c571d
Merge branch 'avination-current' into ubitwork
2014-07-16 16:22:32 +01:00
Justin Clark-Casey (justincc)
0c8f3dddd8
Use thread-safe version of .NET Random as the SDK class is not thread-safe.
...
As per http://msdn.microsoft.com/en-us/library/system.random%28v=vs.100%29.aspx , the .NET Random class is not thread-safe.
If called by multiple threads at once, methods may return 0.
Except for llRand(), other OpenSimulator code did not lock before calling a shared Random instance.
This commit adds a ThreadSafeRandom class that extends Random but does internal locking so that it is thread-safe.
This change is invisible to existing callers and the explicit locking in the llFrand() implementation is now redundant.
2014-07-14 20:08:11 +01:00
Justin Clark-Casey (justincc)
a8860d79d8
Turn RestClient.Request() logging down the debug and comment out for now.
2014-07-09 23:12:14 +01:00
Justin Clark-Casey (justincc)
8ae5ab809f
Fix issue with running "stats record start|stop" console command
...
In commit e6080a38
(Wed Mar 19 00:29:36 2014) I renamed this from "debug stats record start|stop"
Unfortunately, I didn't do this fully so before this commit "stats record start|stop" will report a usage failure with the old debug text.
Unfortunately this is in the 0.8 release. The workaround is to repeat the last command twice (e.g. "stats record start start")
2014-07-08 18:49:57 +01:00
Justin Clark-Casey (justincc)
889194db63
Actually call Close() for shared region modules when the simulator is being shutdown.
...
Adds regression test for this case.
2014-07-02 23:49:25 +01:00
Melanie Thielker
159fcbf150
Merge branch 'master' of ssh://3dhosting.de/var/git/careminster
...
Conflicts:
OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
2014-06-21 00:39:55 +02:00
Justin Clark-Casey (justincc)
5450b1b024
Change assembly versions to 0.8.1
2014-06-17 18:37:15 +01:00
Justin Clark-Casey (justincc)
602587b8d5
Update dev version to 0.8.1
2014-06-17 18:32:26 +01:00
Robert Adams
7f0adfd203
Add [Startup]LogShowStatsSeconds=n parameter which controls the interval
...
that simulator statistics is output to the console. Setting to zero turns
stats logging off.
2014-06-13 21:27:07 -07:00
Justin Clark-Casey (justincc)
31096fb1fe
Add rc3 flavour option
2014-06-10 20:19:19 +01:00
Diva Canto
14a31c3e9b
Correct minor bug regarding packing of estate bans
2014-06-01 12:01:49 -07:00
Diva Canto
2ff9ea3f80
Fixed a few things pertaining to interfacing with the estate service. Specifically, StoreEstateSettings was not being used anywhere; instead EstatSetting.Save was being called, but that method is a trigger to the DB-layer code directly, which, besides being wrong, was making it impossible to replace the service with a remote connector.
...
Also added more packing/unpacking code.
2014-06-01 10:06:26 -07:00
Diva Canto
eaf595c008
Fix a bug where estate not found would result in a dummy estate record with erroneous information.
...
Also, added conversion of EstateSettings from/to key-value pairs in preparation for robust net work connectors.
2014-05-31 11:40:54 -07:00
dahlia
9ced61fbc2
Add a 0 parameter overload for RestClient.Request() for use when no auth is required. This preserves API compatibility for external modules using this function.
2014-05-30 13:47:19 -07:00
Justin Clark-Casey (justincc)
8656b5e948
Fix bug where setting a parcel in a varregion for sale would make sale bitmap generation in WorldMapModule throw an exception on next startup.
...
This commit replaces the hardcoded region sizes in WorldMapModule.GenerateOverlay() with numbers pulled from m_scene.RegionInfo
2014-05-30 19:40:10 +01:00
Oren Hurvitz
33cc847c4a
When saving an OAR in "Publish" mode, also discard Group information
2014-05-26 15:33:13 +01:00
Diva Canto
227685bea4
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
2014-05-23 16:20:04 -07:00
Diva Canto
20f20895cf
Adds optional HTTP Basic Authentication to Robust service connectors.
2014-05-23 16:19:43 -07:00
Justin Clark-Casey (justincc)
f55e153636
Compile the regex that extract categories for colourization just once rather than on every single log.
...
Compiling every time is unnecessary since Regex is thread-safe.
2014-05-23 21:09:48 +01:00
Justin Clark-Casey (justincc)
fbcb76383d
Allow console output to be multiline by making colourization regex RegexOptions.SingleLine
2014-05-23 20:57:50 +01:00
Oren Hurvitz
251b93d97e
Store the Teleport Flags in the Circuit. This doesn't seem to be necessary, because everything has worked so far, but it's the right thing to do.
2014-05-22 13:16:06 +01:00
Oren Hurvitz
882af7195c
Better error-handling and logging in case User Profile requests fail
2014-05-19 11:11:06 +01:00
Justin Clark-Casey (justincc)
4569c595bf
Fix behaviour change in recent commit bbc1dc6
so that SynchronousRestObjectRequester.MakeRequest() calls with no timeout specified use the default HttpWebRequest timeout as previously.
...
I mistakenly thought that that default request timeout was inifite rather than 100 seconds, restoring previously behaviour.
As per http://msdn.microsoft.com/en-us/library/system.net.httpwebrequest.timeout%28v=vs.100%29.aspx
Relates to http://opensimulator.org/mantis/view.php?id=7165
2014-05-13 22:21:20 +01:00
Justin Clark-Casey (justincc)
bbc1dc6bce
Replace existing 0 timeout in internal overloaded SynchronousRestObjectRequester.MakeRequest() methods with proper Timeout.Infinite (-1) instead.
...
Triggered by recent faf9ba53
though this was wrong in the code before, it's just that we didn't actually try to set the timeout given.
2014-05-12 22:37:07 +01:00
Justin Clark-Casey (justincc)
7db4336f1c
minor: Add method doc to SynchronousRestObjectRequester.MakeRequest() methods
2014-05-12 22:05:02 +01:00
Justin Clark-Casey (justincc)
faf9ba53fc
In SynchronousRestObjectRequester.MakeRequest<TRequest, TResponse>(string verb, string requestUrl, TRequest obj, int pTimeout, int maxConnections) actually set timeout on WebRequest if given.
...
Previously, we were doing nothing with this parameter.
No effect on current code since none of the 6 callers attempt to use the timeout.
2014-05-12 19:20:00 +01:00
Oren Hurvitz
0fe08c8799
- When sending the "My Suitcase" folder to the client, always claim it has Folder Type 8. (Previously we had used Folder Type -1 in one place, and LLClientView didn't even bother changing Folder Type 100 to anything else.)
2014-05-06 07:16:37 +01:00
Justin Clark-Casey (justincc)
f0411dc128
minor: Use Vector2.Zero constant and only set in condition branch where it was missing in TryParseConsole2DVector(). xbuild still compiles.
2014-04-30 21:50:18 +01:00
BlueWall
44f533d95a
Assign value to 'vector' to fix building under xbuild and Monodevelop
2014-04-30 15:45:00 -04:00
Justin Clark-Casey (justincc)
253110293a
Add "terrain show" console command which outputs terrain height for a given region co-ordinate.
...
For debug purposes.
2014-04-30 18:04:47 +01:00
Oren Hurvitz
88f7a833dc
Improved HTTP logging
2014-04-29 07:59:17 +01:00
Melanie Thielker
1d1e444aed
Convert region loading to new format
2014-04-26 02:43:13 +02:00
Melanie Thielker
5c661baf6c
Allow opening a https port using only http so that nginx can be used for ssl
2014-04-26 02:42:30 +02:00
Justin Clark-Casey (justincc)
904baa6da6
Fix issue where terrain height values > 327 caused chaotic spiked terrain.
...
Per http://wiki.secondlife.com/wiki/Tips_for_Creating_Heightfields_and_Details_on_Terrain_RAW_Files#Notes_for_Creating_Height_Field_Maps_for_Second_Life
terrain heights up to 508 are possible on the LL grid (and were available on previous releases of OpenSimulator).
The obvious way to allow both this and equivalent -z values, is to rewiden the internal terrain height storage from short to int.
The memory tradeoff is most noticeable on the maximum 8192x8192 var region (equiv to 1024 normal regions), where it adds 128mb to resident use (128k on a normal region)
This is still better than the double used in previous releases.
This does not affect physics or data storage since they already use float and double respectively.
This may not be the final solution if we actually want to sacrifice -z, >327 or something else.
Relates to http://opensimulator.org/mantis/view.php?id=7076
2014-04-25 22:56:25 +01:00
Melanie
a108fcac95
Restore overload mode accidentally disabled in a prior commit. Add a new
...
config option, LogOverloads, to log when a thread pool overload occurs.
This option defaults to "True" because the logging data is useful for
diagnosing threading issues.
2014-04-25 21:34:29 +01:00
Oren Hurvitz
bc06db3df4
- Created a standard function to send XML-RPC requests, which logs them like we do for other types of HTTP activity.
...
- Changed OpenProfileClient to use the new XML-RPC sending function
- Improved logging in WebUtil
2014-04-24 15:58:43 +01:00
Oren Hurvitz
d15a3b10a3
When sending JSON-RPC calls (for UserProfile), use WebUtil instead of constructing the HTTP requests manually. This allows the calls to be logged when using "debug http all 6".
2014-04-24 15:58:41 +01:00
Melanie
5dc0298f83
Apply logging flag to a spammy message that may have been overlooked.
...
No one needs to see every thread launch.....
2014-04-24 01:44:11 +01:00
Oren Hurvitz
998d7009a6
Eliminated many warnings
2014-04-23 16:37:36 +03:00
Oren Hurvitz
93a9ed2a6d
Changed the maximum asset name and description lengths to constants. Also, pre-truncate the description of dynamic textures.
2014-04-22 12:18:54 +03:00
Melanie
574a11558d
Refactor: Rename GetOtherSetting to GetSetting and make SetOtherSetting private
2014-04-12 17:32:16 +01:00
Melanie
5d964a6424
Remove the old XML format parsing. Now additional region params can just be
...
added as they are already exposed through an API when using Nini. That will
remove the need to always edit RegioInfo just to add a region based setting.
2014-04-12 16:58:07 +01:00
Dev Random
f0998a9222
Add per-user checking to PrimLimitsModule
...
Signed-off-by: Melanie <melanie@t-data.com>
2014-04-12 09:28:29 +01:00
Oren Hurvitz
672bd9fc98
Reduced log levels for REST 404 errors to DEBUG
2014-04-03 15:04:26 +01:00
Oren Hurvitz
01daa74adf
Better error messages in RestClient
2014-04-03 14:13:22 +01:00
Oren Hurvitz
2051535ce1
String matching in REST handlers: must allow '-' as a separator, because the "/map" handler uses it
2014-04-02 15:11:54 +01:00
Oren Hurvitz
aa217cf90f
Better string matching when searching for REST handlers: must match an entire path component (ending with '/' or a similar character).
...
For example, these should match: "/assets" and "/assets/12345", but these shouldn't match: "/assets" and "/assets_exist".
2014-04-02 08:52:44 +03:00
Oren Hurvitz
bbfda8e19e
Fixed last-resort sending of error response (HTTP 500) when an error occurs while handling a request.
...
The previous code didn't actually send the response, so the caller was stuck until the timeout (100 seconds).
2014-04-02 06:32:41 +01:00
Oren Hurvitz
d1c3f8eef5
Added assets service method AssetsExist(), which returns whether the given list of assets exist.
...
This method is used to optimize sending assets with embedded assets: e.g., when a Hypergrid visitor takes an item into the inventory.
2014-04-02 06:30:57 +01:00
BlueWall
45ada5ca2d
Merge branch 'master' of /home/opensim/var/repo/opensim
2014-03-27 12:56:12 -04:00
BlueWall
a15282f023
Merge branch 'master' into m_test
2014-03-27 12:21:38 -04:00
Oren Hurvitz
161c827a44
Fixed a case where logging an HTTP response failed because the stream was non-seekable
2014-03-27 17:46:37 +02:00
Oren Hurvitz
76add0fdb0
Log errors in MakeRequest() as INFO, not ERROR. Some communications problems are benign (e.g., can't send Friend status update to a region that is down), so don't log them as ERROR so soon. We rethrow the exception, so the caller can still decide to log the error as an ERROR.
...
Resolves http://opensimulator.org/mantis/view.php?id=7077
2014-03-27 15:00:42 +01:00
Justin Clark-Casey (justincc)
b0bae62c30
refactor: Actually use MaptileStaticFile in RegionInfo rather than having both a public field and a get property
2014-03-26 20:58:58 +00:00
Oren Hurvitz
7a47c15edb
- Increased the threadpool timeout to 10 minutes
...
- Changed a few places that launch long-lasting threads to skip the timeout altogether
2014-03-26 20:34:55 +01:00
Oren Hurvitz
6d1d58b654
Use the "X-Content-Encoding" header to indicate gzipped data, because old OpenSims fail if they get an unknown "Content-Encoding"
2014-03-25 18:09:23 +01:00
BlueWall
9aec36156e
Sync code that has moved in development branch with changes in master
2014-03-25 11:09:27 -04:00
BlueWall
dba33fee39
Move from UserProfileModule for general availability
2014-03-25 11:08:11 -04:00
Oren Hurvitz
b1d8aa0b64
Use the "Content-Encoding" header to indicate gzipped streams
2014-03-25 15:36:59 +01:00
Oren Hurvitz
f90aee696a
Always throw an exception if MakeRequest (used for HTTP POST) fails. (Previously many exceptions were ignored)
...
Resolves http://opensimulator.org/mantis/view.php?id=6949
2014-03-25 09:37:10 +01:00
Oren Hurvitz
f901a38204
Improved logging of HTTP requests
...
- MemoryBuffer isn't seekable, so we can't log it. Log the string instead.
- Handle compressed streams
- Don't attempt to dump binary data. Either don't log it at all (if we know it's binary), or at least convert non-ASCII characters to ASCII.
- Log responses to HTTP requests
- Use the same log prefix for all of these log messages ("[LOGHTTP]"), to make them easy to see at a glance
- Increased the snippet length to 200 (80 doesn't show enough), and add "..." only if the message was actually truncated
Resolves http://opensimulator.org/mantis/view.php?id=6949
2014-03-25 09:36:53 +01:00
Oren Hurvitz
4289b71141
Fixed unit tests due to changes in the threadpool
2014-03-25 10:04:52 +02:00
Oren Hurvitz
e131e73652
Run slow operations in a separate thread, instead of using FireAndForget (which has a 1-minute timeout)
...
Resolves http://opensimulator.org/mantis/view.php?id=6945
2014-03-25 08:01:55 +01:00
Oren Hurvitz
84d7227dfd
Changed LogThreadPool to have 4 logging levels. Added console command "debug threadpool level" to set the logging level.
...
Resolves http://opensimulator.org/mantis/view.php?id=6945
2014-03-25 08:01:50 +01:00
Oren Hurvitz
b13214af27
Added a watchdog to abort slow threads in the main thread pool
...
If a task in the thread pool hangs then it will permanently take up
one of the threads. If this happens repeatedly then the thread pool will
become exhausted and OpenSim will fail. This watchdog terminates threads in the
thread pool that have been executing for over a minute (which probably
means they're hung).
Resolves http://opensimulator.org/mantis/view.php?id=6945
2014-03-25 08:01:45 +01:00
Oren Hurvitz
e735f76553
LogThreadPool: when the thread is for ProcessPacketMethod, also log the packet type
...
Resolves http://opensimulator.org/mantis/view.php?id=6945
2014-03-25 08:01:41 +01:00
Oren Hurvitz
4031933475
Refactored DebugFlagsEnum
...
Resolves http://opensimulator.org/mantis/view.php?id=6945
2014-03-25 08:01:37 +01:00
Oren Hurvitz
8555e54e22
Automatically start logging FireAndForget activity if the threadpool is full
...
Resolves http://opensimulator.org/mantis/view.php?id=6945
2014-03-25 08:01:32 +01:00
Oren Hurvitz
7c0ebcb984
Added debug flag: LogThreadPool. It makes us log every use of the main threadpool.
...
Resolves http://opensimulator.org/mantis/view.php?id=6945
2014-03-25 08:01:13 +01:00
Oren Hurvitz
89945f8829
Refactored: ExternalRepresentationUtils should be the only place where the "CreatorData" field is calculated, to ensure uniformity
...
Resolves http://opensimulator.org/mantis/view.php?id=6933
2014-03-24 18:00:59 +01:00
Oren Hurvitz
edc04d4184
When updating the CreatorId of an inventory item, automatically update the CreatorIdAsUuid field as well
...
Resolves http://opensimulator.org/mantis/view.php?id=6933
2014-03-24 18:00:39 +01:00
Oren Hurvitz
921f0052f4
Get the full viewer name even if it's (incorrectly) sent in the 'Channel' field
...
Recent versions of Firestorm and Singularity have started sending the viewer name in the 'Channel' field, leaving only their version number in the 'Viewer' field. So we need to search both of these fields for the viewer name.
This resolves http://opensimulator.org/mantis/view.php?id=6952
2014-03-24 12:26:52 +01:00
Dev Random
3d0778bcd6
Allow Mono Plugin Registry setting for Regions
...
Signed-off-by: Melanie <melanie@t-data.com>
2014-03-22 01:29:51 +00:00
Justin Clark-Casey (justincc)
47e7febebc
Add monitored thread last update times as stats in "show stats all"
...
These have the format server.thread.<thread-name>
2014-03-21 02:06:10 +00:00
Jak Daniels
61353dde80
Allow Region specific static maptiles to be loaded from file.
2014-03-18 22:18:50 -07:00
Justin Clark-Casey (justincc)
cf97535d9e
Revert "Simplify DoubleQueue to eliminate redundant sempahore work."
...
This reverts commit 52b7b40034
.
Got the semantics wrong - the sempahore is required so that the blocking thread waits for a signal.
2014-03-19 01:40:56 +00:00