Remove mergeHyperLogLog.

It's buggy.  If somebody needs this later, they'll need to put back
a non-buggy vesion of it.

Discussion: CAM3SWZT-i6R9JU5YXa8MJUou2_r3LfGJZpQ9tYa1BYxfkj0=cQ@mail.gmail.com
Discussion: CAM3SWZRUOLsYoTT83QgdUy9D8ehYWm_nvbrrfcOOzikiRfFY7g@mail.gmail.com

Peter Geoghegan
This commit is contained in:
Robert Haas 2016-04-27 10:55:32 -04:00
parent 59eb551279
commit 360ca27a9b
2 changed files with 0 additions and 23 deletions

View File

@ -220,28 +220,6 @@ estimateHyperLogLog(hyperLogLogState *cState)
return result;
}
/*
* Merges the estimate from one HyperLogLog state to another, returning the
* estimate of their union.
*
* The number of registers in each must match.
*/
void
mergeHyperLogLog(hyperLogLogState *cState, const hyperLogLogState *oState)
{
int r;
if (cState->nRegisters != oState->nRegisters)
elog(ERROR, "number of registers mismatch: %zu != %zu",
cState->nRegisters, oState->nRegisters);
for (r = 0; r < cState->nRegisters; ++r)
{
cState->hashesArr[r] = Max(cState->hashesArr[r], oState->hashesArr[r]);
}
}
/*
* Worker for addHyperLogLog().
*

View File

@ -63,7 +63,6 @@ extern void initHyperLogLog(hyperLogLogState *cState, uint8 bwidth);
extern void initHyperLogLogError(hyperLogLogState *cState, double error);
extern void addHyperLogLog(hyperLogLogState *cState, uint32 hash);
extern double estimateHyperLogLog(hyperLogLogState *cState);
extern void mergeHyperLogLog(hyperLogLogState *cState, const hyperLogLogState *oState);
extern void freeHyperLogLog(hyperLogLogState *cState);
#endif /* HYPERLOGLOG_H */