> Attached is the latest version of the Big Histogram Patch (tm). > It implements a new table, 'Probability of success of an incoming > request', as well as histograms of successful incoming requests and > of the sizes of the files in the datastore. It forces a datastore reset > at least on my Kaffe, relative to unpatched CVS, because I add a new > KeyHistogram (successDistribution) to Core.java. It is possible that Why does this force a datastore reset? The structures aren't saved to disk... > this is not the right place to put it; I suggest that if we move > successDistribution, we should also move requestDistribution. Attached patch implements the above, phase 1 of GJ's overload fix plan, and a crude approximation to phase 2 (it just accepts the requests in the most successful bucket, if it's partly overloaded). In need of optimization, and rather coarse (only 16 buckets). Not yet thoroughly tested, due to network difficulties.
Future work: * combine requestDistribution, successDistribution, pSuccess, binMostSuccessful into a single, more efficient object * increase to 256 buckets, possibly more, possibly customizable. Keep smaller numbers of buckets for displaying histograms, and larger numbers of buckets for overload triage decisions. * do we want these structures to persist? Do we want them to forget about hits after a certain time? * commit after all the above dealt with to minimize disruption due to resetting datastores etc * implement phase 2 properly - how to determine Psmin? * possibly make a histogram out of P(success) * get CVS write access :)
msg03323/pgp00000.pgp
Description: PGP signature