Commit Graph

579 Commits

Author SHA1 Message Date
Michael Bayne 0650c074b3 Actually clearSession() can be called from any thread.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5660 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-02-18 23:08:13 +00:00
Michael Bayne e01c8b0635 Separate the reporting of session end to observers from clearing out our
internal bits. Only report that a session ended if we reported that it started,
but always clear out our bits when a session is shutting down.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5659 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-02-18 23:06:32 +00:00
Michael Bayne f75d810a92 Now that the PresentsSession reports its authname type, we can skip it in a few
of these places.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5656 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-02-13 03:08:16 +00:00
Michael Bayne 31d09fcd14 Disambiguate custom auth names.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5654 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-02-13 02:51:55 +00:00
Michael Bayne 4912d22b90 Widening, made a note about why we don't set _shutdownRequested.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5647 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-02-01 22:53:55 +00:00
Jamie Doornbos a3d08aaa2d Oops, missed this little guy.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5642 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-01-22 16:54:08 +00:00
Jamie Doornbos 00954dff5b Stop spamming the log file with these warnings. The code does nothing to prevent them and they are happening all over the shop in msoy.
Was going to try and skip the call to ClientObserver.clientSessionDidEnd if it has not yet been started but there is not clear way to determine the state of a session. It is shared between three different maps in ClientManager and PresentsSession and movement between the states is too complicated, at least for tomorrow's release.

[jamie@whirled1 /export/msoy]$ grep "Requested to release unmapped" log/world-server.log.2009-01-20 |wc -l
     830
[jamie@whirled1 /export/msoy]$ grep "Unregistered client" log/world-server.log.2009-01-20 |wc -l
    1971
[jamie@whirled1 /export/msoy]$ grep "Different clients" log/world-server.log.2009-01-20 |wc -l
     362


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5641 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-01-22 06:46:00 +00:00
Jamie Doornbos ba600f771d Allow client resolution to bail out in an orderly fashion is a disconnection occurs
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5640 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-01-22 06:32:14 +00:00
Jamie Doornbos 2a1b047159 Fixed negative units per second value when total units is greater than about 2.2 million
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5639 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-01-19 23:46:53 +00:00
Jamie Doornbos 3372808a9a Proper GLPGL header
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5638 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-01-19 23:02:19 +00:00
Jamie Doornbos 9cbed63ac7 Share the Reporter implementation of PresentsInvoker so that the PresentsAuthInvoker is reported too.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5637 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-01-19 22:50:28 +00:00
Ray Greenwell 9d28bdbeef Drive-by logging varargification.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5634 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-01-15 22:04:36 +00:00
Jamie Doornbos 44a4981d27 Stop trying to flush clients after the server shuts down
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5633 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-01-14 23:28:16 +00:00
Jamie Doornbos a99489e650 Aha! Fixed race condition in narya fundamentals introduced with guice (r5153). This was causing a very rare concurrent modification exception when a client would log on when another one was about to expire. The problem was revealed by the trace in the msoy log of the 2009/01/10.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5632 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-01-13 22:33:56 +00:00
Michael Bayne d273a550fa More session type reporting.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5630 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-01-10 19:04:12 +00:00
Michael Bayne 4e980867cf No need to repeat ourselves.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5629 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-01-10 18:56:33 +00:00
Michael Bayne 84b0a6b413 Report information that will allow us to disambiguate world, game and party
auths.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5627 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-01-10 18:46:31 +00:00
Dave Hoover e6180d359d Clean up a couple warnings
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5618 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-01-05 18:37:33 +00:00
Jamie Doornbos e9bfc85db8 Let new implementations of this have better variable names
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5616 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-01-04 21:24:20 +00:00
Jamie Doornbos 05afcd70d9 Moved a constant to the base class and replaced the hard-wiring there
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5615 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-01-04 07:14:54 +00:00
Michael Bayne 581230b9a2 Operate on a snapshot of the overflow queue values as a connection may fail
while we're processing its overflow messages, which causes its overflow queue
to be cleared which causes a ConcurrentModificationException.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5613 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-01-03 00:41:53 +00:00
Michael Bayne b811f9e97f Enable unit profiling for great Whirled investigation.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5612 542714f4-19e9-0310-aa3c-eee0fc999fb1
2009-01-02 19:10:33 +00:00
Michael Bayne bb152eb27b Extract scheduleRegularReboot() into a method.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5604 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-12-12 23:50:20 +00:00
Michael Bayne c8e725d5e5 Log pong receipts as well.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5603 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-12-12 21:25:51 +00:00
Michael Bayne 91f1a3f893 Make the ping debugging optional since dev seems not to be failing now.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5602 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-12-12 20:41:19 +00:00
Par Winzell 8b177eea6f I didn't mean to commit that.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5601 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-12-12 16:06:18 +00:00
Par Winzell fb4a28b2ed Give Bureaus their own client object subclass. It does nothing at the moment, but we need it to be a distinct type for access control purposes.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5600 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-12-12 15:36:46 +00:00
Michael Bayne 82da1521f3 I swear this was generating unchecked type warnings before, but it seems not to
be now.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5596 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-12-11 01:21:45 +00:00
Michael Bayne 47216207b3 Cleany cleany.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5595 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-12-11 01:12:51 +00:00
Michael Bayne f2b30890f9 Fix longstanding annoyance with proxy subscriber access control checking. If
we're proxying for a client, we now have to give up our ClientObject to anyone
who wants it, so that they can do access control checks.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5593 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-12-11 01:11:04 +00:00
Michael Bayne ec9e3331b9 Put some debugging in to see if we can figure out why the game server is
screwing the pooch on dev1.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5589 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-12-10 01:31:28 +00:00
Dave Hoover 34ae8910d7 Widen & break one thing out so I can avoid copy & paste when I format
a very similar message in the yohoho reboot manager.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5570 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-11-27 00:30:48 +00:00
Jamie Doornbos adf11c5381 Fixed index out of bounds exception. This was causing msoy aux reporters to never complete if the report type was not registered on the game server (e.g. servlet ony)
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5568 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-11-24 23:01:16 +00:00
Mike Thomas a5b8aad082 Prevent a divide by zero that we're seeing occasionally on startup.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5567 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-11-21 00:22:51 +00:00
Ray Greenwell 7b9c0501a6 Added no-args generateReport() to generate default report.
There is a registerReporter() that doesn't take a type, so this
seemed like the way to go, rather than changing msoy to
pass in DEFAULT_TYPE.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5565 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-11-19 21:15:39 +00:00
Michael Bayne 457c8a59d6 Allow reporters to be registered for different report types and the type to be
specified at report generation time.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5564 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-11-19 19:53:46 +00:00
Michael Bayne 034284e103 Tuple.create -> Tuple.newTuple.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5559 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-11-18 21:15:43 +00:00
Michael Bayne 201ab6adc7 Turn off the debug report for now.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5554 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-11-17 20:36:26 +00:00
Dave Hoover e1afaccd23 Cleanup some unused stuff & mark some overrides.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5547 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-11-12 18:46:06 +00:00
Michael Bayne 8890583476 If we are asked to end a session after the omgr has shutdown, just log
something friendly and drop the request. The server is about to go away.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5545 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-11-12 00:54:37 +00:00
Michael Bayne c16731c8d1 Let's enforce that client reference copying with the structure of ObserverOps.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5541 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-11-11 19:09:42 +00:00
Michael Bayne f4544ff76e Include current connection and handler count in our conmgr stats.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5539 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-11-11 18:47:58 +00:00
Michael Bayne a0cc2fd348 Nixed the notion of a ConnectionObserver. The only observer was the
ClientManager and it is already pretty tightly coupled to the ConnectionManager
so we weren't really fooling anyone with that ham-fisted attempt at
abstraction.

Also cleaned up more mid-shutdown behavior. If a session is unmapped after the
omgr exits, avoid generating a warning by trying to hop onto the omgr thread to
clean up after ourselves. We still do all the actual socket related closing so
that the party on the other end of the socket benefits from a clean shutdown
where possible.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5537 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-11-11 01:52:29 +00:00
Michael Bayne 2c0ca57551 Nix startup listener since that was only being used to shut everything down if
we fail to bind to any of our desired ports. We'll just do that automatically
because no one wants a totally hapless server sitting around unable to actually
accept any connections.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5536 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-11-11 01:04:08 +00:00
Michael Bayne 641967564c A bit of tidying. Move the shutdown related methods below all the methods
dealing with normal operation.

Nixed getFlattener() in favor of createDatagramSequencer() so that the
ConnectionManager doesn't have to expose its guts quite so much.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5535 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-11-11 00:54:59 +00:00
Michael Bayne 22762a5aa9 Added a count of how many socket events we see (sockets reporting ACCEPTable or
READable), tidied up some other bits.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5534 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-11-11 00:31:31 +00:00
Michael Bayne 58123a4df1 Added ConMgrStats.closes. Added code to dump conmgr stats to the log every 30
seconds so that we can see more about what's going on if we manage to recreate
our freakoutery.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5532 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-11-11 00:21:15 +00:00
Michael Bayne 065e5918e7 Comment clarification. Only the PresentsInvoker coordinates with the
PresentsDObjectMgr to achieve a coordinated shutdown.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5531 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-11-11 00:14:48 +00:00
Michael Bayne 9e1510c37d Some useful logging.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5526 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-11-08 02:34:19 +00:00
Michael Bayne 9a6e3e9fe9 Temporary fix for the local server timing out outgoing connections. I don't
think it should be needed but I need to do more testing, post-bling.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5517 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-11-07 03:14:46 +00:00