Commit Graph

173 Commits (6a1d95420d5fd7f083293168c43b4ef5600d9648)

Author SHA1 Message Date
Justin Clarke Casey c9a983a85e * minor: A few miscellaneous doc comments before I break and start on something else 2008-06-14 20:52:42 +00:00
Justin Clarke Casey 34746f5485 * Double timeout on region registration XMLRPC call to the grid service 2008-06-13 16:32:32 +00:00
Jeff Ames 4ec4e16c80 Formatting cleanup, minor refactoring, svn properties. 2008-06-04 09:59:27 +00:00
Teravus Ovares 3991908db5 * This update enables grid wide presence updates.
* You'll need to start-up the MessageingServer and set it up.   It sets up like any of the other grid servers.
* All user presence data is kept in memory for speed, while the agent is online.   That means if you shutdown the messaging server or the messaging server crashes, it forgets who's online/offline.
* Occasionally the region-cache will get stale if regions move around a lot. if it gets stale, run clear-cache on the messaging server console to clear the region cache.
2008-06-02 16:16:07 +00:00
Teravus Ovares febe78d062 * Implements UserServer logoff in a few situations
* User tries to log-in but is already logged in.  Userserver will send message to simulator user was in to log the user out there.
* From the UserServer, admin types 'logoff-user firstname lastname message'.
* Some regions may not get the message because they're not updated yet.
2008-05-31 12:18:29 +00:00
Jeff Ames 0462510956 Update svn properties. Formatting cleanup. 2008-05-30 08:35:57 +00:00
Charles Krinke a84456c239 Mantis#1411. Thank you kindly for Dataserver.cs and a patch
that adds function stub to request region info by name and
adds llRequestSimulatorData() and the dataserver event
2008-05-29 13:55:02 +00:00
Jeff Ames 65c5efe43b Formatting cleanup. 2008-05-16 01:22:11 +00:00
Justin Clarke Casey 8fe9943293 From: Dr Schofield <hud@zurich.ibm.com>
Rename SearializableRegionInfo to SerializableRegionInfo (class was already named correctly)
2008-05-14 17:03:25 +00:00
Justin Clarke Casey d3fb6039ca * If a region running in grid mode fails to login to the grid service, startup will now terminate instead of carrying on (and thus burying the error message) 2008-05-12 16:57:56 +00:00
Adam Frisby fef3b36894 * Optimised using statements and namespace references across entire project (this took a while to run). 2008-04-21 07:09:17 +00:00
Teravus Ovares 244bfcde5b * Implements 'Set Home to Here'
* Implements 'Teleport Home'
* User Server has to be updated for it to save your home in grid mode
* home position accuracy is in int because the grid comms ExpectUser method tries to convert to Uint and crashes if it gets a float.  Added a convert to decimal in ExpectUser but to avoid a breaking change with old revisions, kept the save value in int for now.   Eventually it needs to be a float, but lets release another incremental version before doing that.
2008-04-17 05:07:14 +00:00
MW 770c395e86 moved the Thread.Sleep(500), to the correct side of the ar.AsyncWaitHandle.WaitOne(timeOut*1000, false); call. 2008-04-16 16:28:02 +00:00
MW 54eaadeb82 added a thread.Sleep(500) to OGS1GridServices.CheckRegion() , to try to help avoid a potential race condition. As IAsyncResult.AsyncWaitHandle.WaitOne before a AsyncCallback is called. So in this case, its a race to see who sets or reads the bool m_bAvailable first. 2008-04-16 15:49:28 +00:00
Teravus Ovares be93c0f29a * Fix a bug in the friends module that causes a friend not to appear online when they were.
* A few things for testing.
* This makes a modification to the region registration with the grid server so that the region can send it a chosen password to identify itself.  It will not cause any errors, if either one are not updated.
2008-04-13 22:47:12 +00:00
Teravus Ovares fd2caf5f16 This update has good news and bad news, first the bad.
* This update breaks inter-region communications, sorry.
* You will need to run prebuild.
Next, the good;
* This update solves the unexpected binary element when Linux simulators inform windows simulators and vice versa.  So Linux Simulators and Windows simulators are 100% compatible again.
* This update introduces an Integer in the prim crossing method to tell the receiving simulator which XML method to use to load the prim that crossed the border.   If the receiving prim doesn't support the method, the prim crossing fails and no prims are lost.
That being said, it's best to update all your simulators to this revision at once.
2008-03-30 08:01:47 +00:00
Justin Clarke Casey c538ea5024 * Increase timeout for initial simulator login from 16 to 30 seconds
* Comments, capitalization
2008-03-26 17:21:46 +00:00
Justin Clarke Casey bcd68fb6c4 * More log messages in the region registration process for debug purposes. Some of these may be temporary 2008-03-26 12:44:43 +00:00
Justin Clarke Casey c00e56d3ee * Increase information in simulator_login log messages 2008-03-26 12:34:02 +00:00
Justin Clarke Casey 35b1cae593 * Start printing the region simulator_login exception to the log 2008-03-26 12:28:59 +00:00
Justin Clarke Casey ad808579a2 * Print out the exception stacks of resolution failures, temporarily 2008-03-25 20:05:02 +00:00
Justin Clarke Casey ed9cdbe99f * Temporary hack to swallow neighbour contact problems on startup (in response to osgrid issues)
* Not sure what the effect will be, but can't be any worse than the current constant sim crashes.
2008-03-25 19:39:41 +00:00
Justin Clarke Casey da531fa9e1 * Start passing around a region server's http port in RegionInfo.
* This means that caps methods (editing scripts, poss map functions, etc) on non-home regions should now work with servers which are listening for http ports on a non default 
(9000) port.  
* If you are running a region server, this may only work properly once your grid server upgrades to this revision
* PLEASE NOTE: This shouldn't cause inter-region problems if one end of the connection hasn't upgraded to this revision.  However if it does, the instability will persist until 
the grid and region (and possibly all the region's neighbours) have upgraded to this revision.
* This revision also adds extra login related messages, both for success and failure conditions
2008-03-23 21:21:39 +00:00
Justin Clarke Casey 61ae75f364 * Catch the occasional resolution exception that comes out of SceneCommunicationService.EnableChildAgents so we can see what hostname is failing 2008-03-22 20:44:15 +00:00
Justin Clarke Casey 45ea156804 * If a client session requests the same texture more than n times (currently n=5), we now drop the subsequent requests
* This may improve region memory usage
* This is a short-term response to a problem whereby some clients keep requesting the same texture even after we've sent it
* This treats the symptom rather than the cause.
* n can be adjusted by changing the constant at the top of UserTextureDownloadService if necessary
2008-03-21 19:16:29 +00:00
Jeff Ames e5b9144282 Formatting cleanup. 2008-03-18 15:30:38 +00:00
Jeff Ames bf8b5844f2 Formatting cleanup. Minor refactoring. 2008-03-18 14:51:42 +00:00
Teravus Ovares 42857fe4e9 * Added the ability to type the partial name of a region in the start location box and go to that region if it's there. If no close match was found, it sends you home. This is tested on mySQL. There's untested code on grids that are based on sqlite and MSSQL. The SQL statements *should* be right, but your results may very.
* Ex, if you want to go to Wright Plaza, you simply need to type Wright Plaza in the start location in the client when you log-in.
2008-03-18 05:44:25 +00:00
Jeff Ames 47180080f0 Formatting cleanup. 2008-03-18 05:16:43 +00:00
Jeff Ames 825c89e7ac Replaced some Console.WriteLine calls with writes to log. 2008-03-17 17:10:53 +00:00
Justin Clarke Casey 5160733ba1 * Remove uninformative exception traces from remoting errors
* Indulge in my fetish for console message conformity
2008-03-17 16:55:12 +00:00
Justin Clarke Casey c310f2ab24 * Since remoting exceptions occur quite often in some cases (e.g. when a neighbouring region is down), put out only the source and message of the RemotingException (not the stack trace) to the console.
* It doesn't appear that the remoting stack trace yields any useful information anyway
2008-03-12 17:37:00 +00:00
Johan Berntsson 279e0061c5 Merged 3Di code that provides scene and avatar serialization, and plugin support for region move/split/merge. See ThirdParty/3Di/README.txt. Unless the new modules are used there should be no noticeable changes when running OpenSim. 2008-03-04 05:31:54 +00:00
Adam Frisby 415fc22e5e * Removed a bunch of compiler warnings. 2008-03-03 09:54:39 +00:00
Jeff Ames a8cfbbe963 Minor cleanup. 2008-02-20 18:38:20 +00:00
Justin Clarke Casey 359f84ee43 * Output XmlRpc error message if user server gets a fault response from the region server on login
* This will make it more obvious if one accidentally starts one's region server in standalone rather than grid mode but then tries to login to a grid (as I am wont to do)
* We are now sending back a fault code (-32601) if no xmlrpc method is found rather than an ordinary message
2008-02-18 18:48:55 +00:00
Justin Clarke Casey b37b71b273 * Make RegionProfileData.RequestSimProfileData static
* Minor documentation bits
2008-02-18 17:31:05 +00:00
Tedd Hansen 169032b4a4 Fixed ScriptEngine config in OpenSim.ini.example that was out of place.
Added some info to failure on GridServices listening port so people can see what actually went wrong.
Moved most of the function/event execution module to a baseclass so other execution methods (instead of reflection) can be used with custom script modules run by ScriptEngine.Common.
+ some accumulated patches
2008-02-16 07:53:02 +00:00
Teravus Ovares 0d14c47c28 * Bigisn ODE Stability update 2 2008-02-14 00:39:08 +00:00
Teravus Ovares 3588d89b2c * Bigish ODE stability Update. Run Prebuild 2008-02-13 23:14:41 +00:00
Teravus Ovares a56664cf59 * um, Prim crossings? Experimental.
* Backup your database just in case.
2008-02-11 01:43:54 +00:00
Adam Frisby a637473f80 * Adding console spam to help track 'The Steve Bug'. 2008-02-08 17:49:53 +00:00
Teravus Ovares 9d6ea497e2 * Added the ability to start and stop all scripts in the simulator using the debug tab on the estate tools. This along with the disable physics via the debug tab are persistant across reboots. That means that if it's disabled when you shut down the simulator, the simulator will come up again when you start it up without loading the scripts. Turning them back on is as simple as unchecking 'disable scripts' in the debug tab of the estate tools. 2008-02-06 09:38:14 +00:00
Teravus Ovares 9cd9e90e7f * Added Active Scripts to report the number of scripts running to Sim Stats
* Added Script Performance to report the number of functions run per second to Sim Stats.
* Removed a few warnings (@.@ up to 50 now)
2008-02-06 08:03:22 +00:00
Jeff Ames 6ed5283bc0 Converted logging to use log4net.
Changed LogBase to ConsoleBase, which handles console I/O.
This is mostly an in-place conversion, so lots of refactoring can still be done.
2008-02-05 19:44:27 +00:00
Charles Krinke 6a1d9e8da1 Thank you very much daTwitch for your first contribution to the C# simulator.
This is the beginnings of support for storage of region owner in the MySQLManager
table and the use of "owner_uuid".
2008-02-02 16:43:57 +00:00
Teravus Ovares 5cf96daaf2 * Enabled dead region tracking for ChildAgentDataUpdates
** If the region fails 3 times, then ChildAgentDataUpdates no longer get sent to that region
* Enabled Child_Get_Tasks in grid mode.   
* When Child_Get_Tasks is enabled on neighbor regions, the neighbor region uses the client's draw distance to send out prim.   This is a lot less likely to flood the client now since the ChildAgentDataUpdate contains both the throttle settings and the draw distance.   This means that with this enabled, you can see prim in other regions in grid mode.   Very experimental.
2008-01-22 08:52:51 +00:00
Teravus Ovares f22b8b6f04 * Added an army of exception handlers to the InterRegion logoff message 2008-01-21 23:28:38 +00:00
Teravus Ovares 3fe6b2280d * Shutting down child agents properly in neighbor regions. 2008-01-21 23:04:42 +00:00
Teravus Ovares a3851b3812 * Added hooks for logout to all IUserService and all that implement it.
* Added a Logout message with a name on the console
* Added a *fixme* message to figure out why the current agent session is null
* After updating you may notice that there's a login <user> and also a logout<user>
2008-01-20 23:08:50 +00:00
Brian McBee 59d7165f40 Graceful failure of teleport to unavailable regions might actually work now.
I blame all bugs on the age of my brain cells.
2008-01-20 21:11:55 +00:00
Brian McBee 730e2d6d7c Check if remote simulator is up before attempting teleport. Teleport to a remote region should now fail gracefully if remote simulator is down. 2008-01-20 19:12:00 +00:00
Adam Frisby b25f9f322c * Mother of all commits:
* 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.
2008-01-15 02:09:55 +00:00
Adam Frisby 0b0df333dc * In the interests of making life difficult for everyone, the Grid Server now actually checks your authentication keys rather than ignoring them. 2008-01-12 19:23:56 +00:00
Tedd Hansen 966f639ad6 Changes to ScriptServer to (hopefully) make it compile on both .Net and Mono.
Some debug info for startup added to find bugs. ++
2008-01-05 15:48:02 +00:00
Tedd Hansen 53793db182 Added errorhandler+tip that grid server might not be running on grid registration failure on opensim startup. 2008-01-05 15:10:22 +00:00
lbsa71 efd90b56b7 * Optimized usings
* shortened references
* Removed redundant 'this'
* Normalized EOF
2007-12-27 21:41:48 +00:00
Charles Krinke f28f917c61 Revert most of the regionName message stuff. 2007-12-24 19:27:52 +00:00
Charles Krinke edf6f9e573 Go back to displaying the X,Y and not the regionName until
SearializableRegionInfo is a bit more understood. This is
only a mainlog message.
2007-12-24 19:13:01 +00:00
Charles Krinke 60b5130cff Add regionName to OGS1 regionUp report. 2007-12-24 17:21:07 +00:00
Teravus Ovares 8aae909412 * Added a configuration parameter on the Grid Server to disallow forceful banlists.
* Added a way for Grid based configuration parameters to (generally used in overriding functionality) to get to the regions on Registration.
2007-12-20 06:31:03 +00:00
Jeff Ames be2ad79e52 Added patch from Johan. First attempt to solve the LibSL.Packet GC problem. Works with LibSL rev>1532 2007-12-20 05:43:02 +00:00
Teravus Ovares e595f82489 * Hooked up the GridComm event ChildDataUpdate to the scene.
* Added List<RegionInfo> m_neighbours to Scene 
* Hooked up the OnRegionUp event to m_neighbours list 
* Modified RegionInfo to have a bool commFailTF value so that we can skip neighbors that fail.  (when the region comes up, this gets reset to false and the region will try again.
* Added SetChildAgentThrottle(byte[]) to IClientAPI 
* Several other insignificant changes related to passing child pertanant agent data from sim to sim.
2007-12-10 00:46:56 +00:00
Teravus Ovares f2b175ef08 * Added some inter-region comms glue for allowing sims to chat amongst themsevles about an agent behind the agent's back.
* Will be using this glue Tomorrow/today to tell other regions what the agent's draw distance is and what region they're actually in so the region can make decisions on what prim to send, if any.
2007-12-09 05:59:49 +00:00
Teravus Ovares 5f516c9fb2 * All remoting calls are now using Serializable values
* There's still goofyness though, because other regions are denying child agent avatar.
* Still more debugging required.
2007-12-07 23:21:32 +00:00
Teravus Ovares 25ec01311d * Serialized data properly for the InterRegionSingleton InformRegionChild method
* This isn't really that big of a deal(worth lots of commits) doing this, however I'm doing it in small chunks because I'm multi-tasking.
2007-12-07 18:20:34 +00:00
Jeff Ames 4bde56457f removed some duplicate hard-coded port numbers. changed ports to uint. 2007-12-06 01:41:41 +00:00
Adam Frisby 91c1e8a734 * Fixed a whole bunch of console messages. 2007-12-04 10:13:13 +00:00
Adam Frisby be7ae3dd3e * Removed 12 compiler warnings. 2007-12-04 08:18:09 +00:00
Teravus Ovares 0619451ea6 *Added more information about the sim that you're connecting to in remoting during the sim, regionup message.
*Added the main cause for the remoting error to the console display.
*This will make it easier to debug future remoting issues.
2007-11-29 14:08:34 +00:00
Teravus Ovares 81ba94fde8 * Fixed about 7 issues with restarting sims and resolved interRegion comms issues. This includes the issue that MW described this morning.
There's a lot of little nit picky changes that make a world of difference.
2007-11-29 02:07:19 +00:00
Teravus Ovares b7d596a6af * Restaring the sim works fine in grid mode now. Sims announce themselves to their neighbors when they start up. Neighbors get this message and tell their agents that there's a new sim up.
* Certain unrecoverable physics based crashes in ODE are now hooked up to the 'restart the sim' routine.
2007-11-28 06:18:07 +00:00
Teravus Ovares 082f2baebe Fixed an event in the events chain in inter-region communications.
As a consequence, restarting sims in the same process instance now shows them when they come back up in grid mode and standalone mode.
2007-11-27 13:46:52 +00:00
Teravus Ovares 175b6115f1 * Restarting regions with the estate tools works in sandbox mode. I'm still working on grid mode, however. It doesn't break anything, but that feature doesn't work in grid mode yet either. 2007-11-26 05:02:18 +00:00
Brian McBee 6ed34cc27e fixed order of map block requests to grid server. flipped map texture, as it was upside down. 2007-11-25 03:14:43 +00:00
Brian McBee 2f4f83e343 Make remoting errors because of missing adjacent regions a little more user and console friendly 2007-11-24 02:22:05 +00:00
Teravus Ovares 7cb38712d5 * Did some initial work for prim crossing. Just glue so far.
* Added the child_get_tasks OpenSim.ini flag for testing the UDP packet sending code and packet throttler.   This flag gets purposely disabled in grid mode.  This flag also has the consequence that you can see the prim in neighboring regions without going into them.  Be warned, this causes tons of dropped packets.
2007-11-21 02:17:24 +00:00
Dalien Talbot baa4e82107 Prevent the region crash in gridmode on bringing up the map 2007-11-18 05:28:28 +00:00
MW 483377adae More cleaning up when deleting regions from a instance. NOTE: IGridServices.DeregisterRegion() method needs implementing for grid mode. 2007-11-16 13:39:11 +00:00
MW d56ed8fe9c Some more refactoring 2007-11-04 22:22:53 +00:00
lbsa71 67e12b95ea * Optimized usings
* Shortened type references
* Removed redundant 'this' qualifier
2007-10-30 09:05:31 +00:00
MW 3d8219f6c7 as per the "Filesystem cleanup for OpenSim repository" mailing list thread. Have flattened the OpenSim.Framework project/namespace. The problem is that the namespace is still wrong as its "OpenSim.Framework" while the directory is "OpenSim\Framework\General" , so we need to decide if we change the directory or correct the namespace.
Note this has lead to a big flat project, but I think a lot of the files we most likely don't even use any longer. And others belong in other projects/namespaces anyway.
2007-10-29 21:46:25 +00:00
Tleiades Hax adf4a3b9fd Added method to create default config file in region server(OpenSim) following along the same priciples as in the other servers. 2007-10-26 15:35:17 +00:00
lbsa71 dd770c384c * Made EstateSetting static since there's only one instance, and we only need to create it once
* Now cacheing RegionInfos indefinitively; we should add a tiomeout to this cache
2007-10-22 17:55:49 +00:00
Adam Frisby 7f2ec02802 * Disabled TCP Remoting Channel Security for InterRegion communication, as it appears we are not implementing this correctly. (need to set up certificates first)
* Documented ACL class
2007-10-21 22:15:41 +00:00
Tleiades Hax 05df857132 Possible fix for: Remoting exceptions with adjacent non-running sims.
Bugs 449, 454, 408, 244, 197
implemented InformClientOfNeighbours as an asynchroneous process, handling timeouts without blocking the main thread.

Improved logging of errors, removed catch all in try catch
2007-10-18 15:10:43 +00:00
lbsa71 849eaffbe5 * Applied patch #418 : copyright-r2012.patch - some errors, but got most thru 2007-10-15 07:10:21 +00:00
lbsa71 863195612b Reverting back to 2017 since 2018 were causing Linux breakage; reopening Tleiades patch 444 and 445. 2007-09-27 14:57:43 +00:00
lbsa71 8143c597fc * Tleiades grid mode inventory (#444) - thanx Tleiades!
* updated to rev 1413 on libsecondlife.dll and libsecondlife.dll.config (#423)
2007-09-27 13:25:45 +00:00
lbsa71 eb8640f368 * Now the OGS1GridServices has a LocalBackEndServices that it forwards intra-instance requests to
* Every Scene has a ClientManager (as every dog it's day) since two scenes can have the same circuit as client.
2007-09-25 06:33:18 +00:00
lbsa71 3ac43d0120 * Removed some more fields from CommunicationsLocal
* added OnLoginToRegion to CommunicationsLocal
2007-09-24 23:58:43 +00:00
lbsa71 40468f18a4 * Encapsulated all CommunicationsManager services 2007-09-24 05:15:13 +00:00
Adam Frisby 5699bb2e64 * Permissions! - You can now only perform certain functions (such as editing other peoples objects) if you have permission to do so.
* Moved OnPermissionError to EventManager - now triggers a standard blue alert.
* Terraforming now requires permission via the permissions manager. [Defaults to admin-only]
* Permissions manager is now substantiated in Scene
* Buttload of new permissions added.
* Estate manager operations now require various levels of permission to operate
* OGS1 now produces 'summary reports' for a commsManager of each scene it maintains connections for. Reduces grid network traffic for ping checks.
* Added new "permissions true" / "permissions false" console command to enable or disable permissions.
2007-08-15 14:10:26 +00:00
Brian McBee 185115ee51 OGS1GridServices.cs
Sims should crash less in gridmode just because their neighboring regions aren't available.
2007-08-08 04:59:03 +00:00
MW edc572dacf Some more work on SceneObject/primitive rewrites (AllNewSceneObjectGroup2 /Part2).
Updated the JavaVM to a later version I did (basically some clean up and a little bit more functional).
Added SendLoadURL method to IClientAPI.
2007-08-01 16:50:20 +00:00
MW 70fa302042 * Some work in progress code: Inventory cache, start of inventory server/service, userprofile cache, inventory handling. (non of it is enabled yet (or at least it shouldn't be).
* Fixed some of the problems with crossing regions when flying: you should no longer sink to ground level when crossing (should keep roughly your right height). Should no longer sometimes get sent back to the centre of the current region when attempting to border cross. But instead sometimes you will find you avatar stop at the edge of region and you will need to start moving again to retry the crossing (which should then work). This code is partly based on Babblefrog's issue #212 patch. [I think I have some ideas of how to solve the stopping at edges problem, just want to get the inventory code done first]
* Capabilities code has now been moved to the OpenSim.Framework.Communications project as some of the caps code will be tightly tied to inventory/asset handling and it was causing a two way reference problem when it was in its own project/dll.

This is a Big commit as I was going to keep my inventory work local until I had it in a working state, in case it brakes anything, but its getting harder to keep in sync with svn.
2007-07-22 11:44:36 +00:00
MW cd5877557c Attempt to fix the bug/crash that MetaLeo just reported. 2007-07-20 23:19:03 +00:00
Adam Frisby 6cf9d6da21 * Removing more compiler warnings 2007-07-19 00:25:40 +00:00
MW 04ece84d6b few small changes 2007-07-18 13:40:07 +00:00
Adam Frisby c52f9c04e2 * One hopefully-final attempt at fixing this remoting issue. 2007-07-18 00:27:11 +00:00