summaryrefslogtreecommitdiff
path: root/src/hyperloglog.c
diff options
context:
space:
mode:
authorOtmar Ertl <otmar.ertl@gmail.com>2018-03-14 21:00:06 +0100
committerOtmar Ertl <otmar.ertl@gmail.com>2018-03-14 21:00:06 +0100
commit15d7e617016220a33b7c98f0c0c0dfd219e2e330 (patch)
tree17f2fff4b664a8ff03b2bbcd963accf7587b1de7 /src/hyperloglog.c
parent97bde9f6236b65aa5a9165554f7ca690b59c2903 (diff)
downloadredis-15d7e617016220a33b7c98f0c0c0dfd219e2e330.tar.gz
fixed compilation error when using clang as reported by michael-grunder
Diffstat (limited to 'src/hyperloglog.c')
-rw-r--r--src/hyperloglog.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/hyperloglog.c b/src/hyperloglog.c
index 9fa8eb436..f7f1b3432 100644
--- a/src/hyperloglog.c
+++ b/src/hyperloglog.c
@@ -386,6 +386,7 @@ static char *invalid_hll_err = "-INVALIDOBJ Corrupted HLL object detected\r\n";
*(p) = (_l>>8) | HLL_SPARSE_XZERO_BIT; \
*((p)+1) = (_l&0xff); \
} while(0)
+#define HLL_ALPHA_INF 0.721347520444481703680 /* constant for 0.5/ln(2) */
/* ========================= HyperLogLog algorithm ========================= */
@@ -1012,7 +1013,6 @@ uint64_t hllCount(struct hllhdr *hdr, int *invalid) {
double m = HLL_REGISTERS;
double E;
int j;
- static double alphaInf = 0.5 / log(2.);
int regHisto[HLL_Q+2] = {0};
/* Compute register histogram */
@@ -1036,7 +1036,7 @@ uint64_t hllCount(struct hllhdr *hdr, int *invalid) {
z *= 0.5;
}
z += m * hllSigma(regHisto[0]/(double)m);
- E = llroundl(alphaInf*m*m/z);
+ E = llroundl(HLL_ALPHA_INF*m*m/z);
return (uint64_t) E;
}