Re: [PATCH] random_normal function
Tom Lane <tgl@sss.pgh.pa.us>
From: Tom Lane <tgl@sss.pgh.pa.us>
To: Paul Ramsey <pramsey@cleverelephant.ca>
Cc: Michael Paquier <michael@paquier.xyz>,
Justin Pryzby <pryzby@telsasoft.com>, pgsql-hackers@postgresql.org
Date: 2023-01-03T16:41:37Z
Lists: pgsql-hackers
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Round off random_normal() test results one more decimal place.
- 02d552c4f422 16.0 landed
-
Remove pg_regress' never-documented "ignore" feature.
- bd8d453e9b5f 16.0 landed
-
Upgrade the random.sql regression test.
- 09d517773f60 16.0 landed
-
Invent random_normal() to provide normally-distributed random numbers.
- 38d81760c4d7 16.0 landed
I wrote: > Michael Paquier <michael@paquier.xyz> writes: >> FYI, here is the failure: >> [21:23:10.814] In file included from pg_prng.c:27: >> [21:23:10.814] ../../src/include/utils/float.h:46:16: error: ‘struct >> Node’ declared inside parameter list will not be visible outside of >> this definition or declaration [-Werror] >> [21:23:10.814] 46 | struct Node *escontext); > Hmm ... this looks an awful lot like it is the fault of ccff2d20e > not of the random_normal patch; that is, we probably need a > "struct Node" stub declaration in float.h. [ ... some head-scratching later ... ] No, we don't per our normal headerscheck rules, which are that headers such as utils/float.h need to be compilable after including just postgres.h. The "struct Node" stub declaration in elog.h will be visible, making the declaration of float8in_internal kosher. So the problem in this patch is that it's trying to include utils/float.h in a src/common file, where we have not included postgres.h. Question is, why did you do that? I see nothing in pg_prng_double_normal() that looks like it should require that header. If it did, it'd be questionable whether it's okay to be in src/common. regards, tom lane