On 09/11/2014 03:36 PM, Fabien COELHO wrote:

Hello Heikki,

Now that I've finished the detour and committed and backpatched the changes
to the way latency is calculated, we can get back to this patch. It needs to
be rebased.

Before rebasing, I think that there are a few small problems with the
modification applied to switch from an integer range to double.

(1) ISTM that the + 0.5 which remains in the PoissonRand computation comes
from the previous integer approach and is not needed here. If I'm not
mistaken the formula should be plain:

       -log(uniform) * center

No. The +0.5 is to round the result to the nearest integer, instead of truncating it down.

(2) I'm not sure of the name "center", I think that "lambda" or
      "mean" would be more appropriate.

(shrug), I guess. The comment says that it's the value the average of a series values is centered on, so "center" doesn't seem too bad. I guess the mathematically accurate term would be "expected value".

(3) I wish that the maximum implied multiplier could be explicitely
      documented in the source code. From pg_rand48 source code, I think
      that it is 33.27106466687737

Oh, ok. That's an even smaller multiplier than I got just by feeding DBL_MIN to the formula. I don't think that's worth worrying about. That might change if the implementation of pg_erand48() is changed, so I'm a bit reluctant to state it explicitly.

- Heikki

Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:

Reply via email to