Commit Graph

302 Commits

Author SHA1 Message Date
Michael Bayne 031331a5c3 Regenerated from service definitions.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3037 542714f4-19e9-0310-aa3c-eee0fc999fb1
2004-06-22 13:57:44 +00:00
Michael Bayne 0af79e2719 Invoker unit namestravaganza.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3023 542714f4-19e9-0310-aa3c-eee0fc999fb1
2004-06-13 08:51:57 +00:00
Michael Bayne fadc9b82d9 Other entities may also want to queue up a shutdown.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3015 542714f4-19e9-0310-aa3c-eee0fc999fb1
2004-06-03 09:03:06 +00:00
Michael Bayne 0dfbb137e5 Added a mechanism for being informed when the connection manager fails to
bind to its socket.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3014 542714f4-19e9-0310-aa3c-eee0fc999fb1
2004-06-03 09:02:47 +00:00
Ray Greenwell 60f9159f25 When flushing inactive clients, don't let a choke in one prevent us
from flushing the rest.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3005 542714f4-19e9-0310-aa3c-eee0fc999fb1
2004-05-10 17:45:27 +00:00
Michael Bayne 32dee3cbaf 405 modified source files and 17,367 lines of diffs later we now enforce
more discipline when handling names in our code base. Any user entered
name should find its way into a Name object as soon as it comes out of a
text field or whatnot, and stay that way until it makes its way into a
text field or into a database record (for which String objects are vastly
simpler because of JORA magic).

Dear God, let me never again make a change this large for the rest of my
mortal life.

Unfortunately, this means we have to keep an eye out for funny business
pretty much everywhere. However, since we will absolutely want to test
market stalls and so forth on Azure, we'll have an opportunity to iron out
any funny business that might fall under the radar during our internal
testing.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2980 542714f4-19e9-0310-aa3c-eee0fc999fb1
2004-03-06 11:29:19 +00:00
Michael Bayne d618d3c771 Eclipse suggested cleanup.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2971 542714f4-19e9-0310-aa3c-eee0fc999fb1
2004-02-25 14:50:28 +00:00
Ray Greenwell bfe9cbba04 Changed the variable named "enum", since that's a keyword in jdk 1.5
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2964 542714f4-19e9-0310-aa3c-eee0fc999fb1
2004-02-22 18:52:33 +00:00
Michael Bayne ebdf693143 Log the culprit when we report and continue from a fatal error.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2963 542714f4-19e9-0310-aa3c-eee0fc999fb1
2004-02-21 02:18:56 +00:00
Ray Greenwell a7908454a1 Removed insano tracking that allowed me to find the IntroPirate bug.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2962 542714f4-19e9-0310-aa3c-eee0fc999fb1
2004-02-21 01:00:23 +00:00
Michael Bayne 350c49835c Let's use proper grammar.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2961 542714f4-19e9-0310-aa3c-eee0fc999fb1
2004-02-21 00:54:51 +00:00
Michael Bayne f8f4c1a611 If a client sends more than 100 messages in 10 seconds, give them the
heave ho.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2960 542714f4-19e9-0310-aa3c-eee0fc999fb1
2004-02-21 00:52:16 +00:00
Michael Bayne 461a72bd94 Mark each upstream message with a the time at which it was decoded from
incoming network data.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2959 542714f4-19e9-0310-aa3c-eee0fc999fb1
2004-02-21 00:51:02 +00:00
Michael Bayne a26e460fd6 Catch fatal errors thrown by invoker units as well. Also only log the
stack trace if we're not going to rethrow the error.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2958 542714f4-19e9-0310-aa3c-eee0fc999fb1
2004-02-21 00:22:30 +00:00
Michael Bayne 813e7b0d47 Attempt to catch and recover from fatal errors. If some rogue event
listener tries to 'new int[Integer.MAX_VALUE]' or infinitely loop, they
will get the smack down and we will go on about our business.

If things have actually gone pear shaped and we are failing on every
event, we'll hit the 30 fatal events in 60 seconds cap and stick a fork in
ourselves.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2957 542714f4-19e9-0310-aa3c-eee0fc999fb1
2004-02-21 00:04:40 +00:00
Ray Greenwell cd2d0ef47b Completely hacky debugging code added to help me figure out why intro pirates
sometimes (never on my server!) released twice. This will save the stack
trace from the first release and spit it out after the "normal" error-reporting
stack trace from the second release.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2955 542714f4-19e9-0310-aa3c-eee0fc999fb1
2004-02-13 19:10:54 +00:00
Michael Bayne 66b627ef2c Incorporated profiles into the 15 minute dump; removed some vestigal
constants.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2952 542714f4-19e9-0310-aa3c-eee0fc999fb1
2004-02-09 02:13:35 +00:00
Michael Bayne 1d97122a81 Use the fine grained timer (measure in microseconds rather than
milliseconds) and same every 100th event instead of profiling every event.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2951 542714f4-19e9-0310-aa3c-eee0fc999fb1
2004-02-09 02:08:28 +00:00
Michael Bayne 5418ffd2fd We love to be robust.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2897 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-12-09 20:41:23 +00:00
Michael Bayne 2bcf2f26a4 I just saw someone have 2100 outgoing messages queued up for them in 415
milliseconds. I want to know what in the fuck those were.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2840 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-10-26 05:18:13 +00:00
Michael Bayne b696989375 Removed erronious space.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2838 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-10-26 02:45:19 +00:00
Eric Lundberg fc2cb730b8 Lets not store the whole marshaller and just the class name. Combine log
message.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2837 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-10-26 02:44:01 +00:00
Eric Lundberg bcd034d0be Hmm I think this does the right thing tracking the lask 10K invocation
services that registered (ignoring unregisters) but I can't get it to
cough up the problem on my machine, so it's a little hard to test.  If you
fine cvs readers want to take a peek that would be great.  Hurray for
debug code.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2836 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-10-26 02:33:43 +00:00
Michael Bayne 414152443b We don't need to see the message.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2832 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-10-25 00:01:04 +00:00
Michael Bayne ba52e3cfa4 If we fail to deliver the objectAvailable() notification because the
client is disconnected, unsubscribe immediately. We normally unsubscribe
when the client loses its connection but it's possible for a subscription
request to come in and the client to lose connection before we can
communicate the object available response.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2824 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-10-10 23:23:41 +00:00
Michael Bayne ff8211534f Take no guff from freaking out network event handlers.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2821 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-10-07 22:41:24 +00:00
Michael Bayne 670d346c6c Clear out our subscription table in clearSubscrips() so that we don't
erroneously decide that we have stale subscriptions around, and log stale
subscriptions if we do end up clearing them.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2817 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-09-29 18:28:22 +00:00
Michael Bayne c597a5c833 Not to freak out if a client logs off between the time they made their
pirate selection and the time we manage to load up their pirate.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2816 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-09-25 21:07:54 +00:00
Michael Bayne 0aecdc2069 Don't create our listen socket until we've actually be started up.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2809 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-09-24 18:37:55 +00:00
Michael Bayne 8b9199ed09 Make sure we don't have any dangling subscriptions if we receive a message
after having closed our client connection.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2791 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-09-07 23:30:13 +00:00
Michael Bayne 70a8c00388 If a connection is sitting in the system but is closed (perhaps possible
through some well-timed disconnection early in the initialization phase),
we should consider it idle because then we'll catch it on the next tick
and flush it whereas otherwise it would just sit around forever until
someone logged in from that IP again.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2788 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-08-20 19:32:27 +00:00
Michael Bayne 233ccbc01c Not to freak out about unmapped authing connections, connections are only
mapped after they are authenticated.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2787 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-08-20 19:30:52 +00:00
Michael Bayne a5367cb657 Only complain about big overflow queues every time we reach a new plateau
of 50 messages.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2786 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-08-20 18:54:23 +00:00
Michael Bayne 46f4426e64 Warn on large overflow queue size.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2781 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-08-20 00:47:39 +00:00
Michael Bayne f013aba02b Additional robustness: mark the server dobjmgr internal events as private
and refuse subscriptions to invalid oids (it's not out of the realm of
possibility that the clients were somehow subscribing to oid 0 and funny
things were happening).


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2778 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-08-16 04:14:56 +00:00
Michael Bayne 6c1274eef3 This should never be sent over the wire, but it is somehow, sometimes, and
by making these transient we can hopefully debug it more effectively if it
happens in the future.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2773 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-08-15 18:50:02 +00:00
Michael Bayne ef17c4487e Would you believe, we still missed a fricking newline.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2771 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-08-13 22:46:13 +00:00
Michael Bayne c9f9cfe34d Fix up registered interval reporting.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2770 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-08-13 21:38:37 +00:00
Michael Bayne 72674bbf49 Report the number of intervals registered as well as the number fired in
the reporting interval. Now we can see if we're leaking intervals (which
would be double plus ungood).


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2769 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-08-13 21:05:28 +00:00
Michael Bayne c289da2150 They're big, they're partial and we don't need to hear about 'em!
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2762 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-08-09 05:00:01 +00:00
Ray Greenwell b59b9b5954 New very safe shutdown scheme. An Invoker.Unit runs on both the Invoker
and dobj thread until they're both empty (or it has been passed 50 times)
and then shuts the threads down.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2744 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-08-08 03:11:55 +00:00
Michael Bayne 493c75b865 Make client and connection count information available.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2718 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-07-22 02:50:49 +00:00
Michael Bayne 8e158dd1e8 Let's get the class name in there as well.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2660 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-06-15 16:47:33 +00:00
Michael Bayne 7d98a59c1c Enable unit profiling and keep an eye out for exceptionally long running
units.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2652 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-06-12 22:10:07 +00:00
Michael Bayne 8d9b9f69d2 Quick hack to (hopefully) fix weird problem while I investigate.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2607 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-05-24 01:50:33 +00:00
Michael Bayne d76d4e89ff Make it possible to have a distributed object destroyed when its last
subscriber is removed.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2602 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-05-22 17:23:53 +00:00
Michael Bayne c93802c455 Off with the verbose logging.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2565 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-05-10 01:05:33 +00:00
Michael Bayne 201ee0acf3 Don't log the whole message, just the class.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2484 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-27 07:53:31 +00:00
Michael Bayne e1b4198d8f Let's just report the type of message.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2470 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-27 01:32:08 +00:00
Michael Bayne 1b1c38c998 Added tracking and reporting of messages sent and received; shaved 20 off
loc by combining message dispatch into one method.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2397 542714f4-19e9-0310-aa3c-eee0fc999fb1
2003-04-10 18:12:16 +00:00