freakyzoidberg opened a new pull request, #2:
URL: https://github.com/apache/datasketches-go/pull/2
Given there is no reasonable way to validate the correctness of the synopsis
upon deserialisation, and that incorrect input would surface as error later on
during mutation or estimation, prefer bubbling up the error instead of calling
panics.
This has negligible impact on performance, and is considered better practice.
Go does not have a concept of exception (instead there are error returns and
panics).
Panics are bad practices, especially in libs, as they can easily halt the
program altogether.
This also include a pass on Go style/lint for various variable names
```
pkg: github.com/apache/datasketches-go/hll
│ before.bench │ after.bench │
│ sec/op │ sec/op vs
base │
HLLDataSketch/lgK4_HLL4_uint-10 13.05n ± 1% 13.37n ± 1%
+2.37% (p=0.000 n=10)
HLLDataSketch/lgK16_HLL4_uint-10 13.33n ± 2% 13.54n ± 1%
+1.58% (p=0.014 n=10)
HLLDataSketch/lgK21_HLL4_uint-10 19.68n ± 4% 18.96n ± 1%
-3.66% (p=0.000 n=10)
HLLDataSketch/lgK4_HLL6_uint-10 13.68n ± 1% 13.54n ± 1%
-1.02% (p=0.040 n=10)
HLLDataSketch/lgK16_HLL6_uint-10 13.88n ± 1% 13.56n ± 1%
-2.27% (p=0.000 n=10)
HLLDataSketch/lgK21_HLL6_uint-10 20.04n ± 4% 18.55n ± 0%
-7.41% (p=0.000 n=10)
HLLDataSketch/lgK4_HLL8_uint-10 12.81n ± 1% 12.60n ± 1%
-1.68% (p=0.000 n=10)
HLLDataSketch/lgK16_HLL8_uint-10 12.86n ± 1% 12.67n ± 1%
-1.48% (p=0.000 n=10)
HLLDataSketch/lgK21_HLL8_uint-10 19.01n ± 3% 17.34n ± 1%
-8.76% (p=0.000 n=10)
HLLDataSketch/lgK4_HLL4_slice-10 13.55n ± 0% 13.44n ± 0%
-0.77% (p=0.000 n=10)
HLLDataSketch/lgK16_HLL4_slice-10 13.73n ± 1% 13.67n ± 1%
~ (p=0.100 n=10)
HLLDataSketch/lgK21_HLL4_slice-10 19.23n ± 5% 19.09n ± 0%
-0.73% (p=0.011 n=10)
HLLDataSketch/lgK4_HLL6_slice-10 13.49n ± 1% 13.57n ± 0%
+0.56% (p=0.008 n=10)
HLLDataSketch/lgK16_HLL6_slice-10 13.62n ± 0% 13.77n ± 1%
+1.10% (p=0.000 n=10)
HLLDataSketch/lgK21_HLL6_slice-10 18.88n ± 9% 18.85n ± 1%
~ (p=0.469 n=10)
HLLDataSketch/lgK4_HLL8_slice-10 12.69n ± 0% 12.77n ± 1%
+0.63% (p=0.007 n=10)
HLLDataSketch/lgK16_HLL8_slice-10 12.78n ± 0% 12.88n ± 1%
+0.78% (p=0.000 n=10)
HLLDataSketch/lgK21_HLL8_slice-10 17.58n ± 9% 17.69n ± 1%
~ (p=0.952 n=10)
HLLDataSketch/lgK4_HLL8_union-10 25.84n ± 1% 26.76n ± 1%
+3.56% (p=0.000 n=10)
HLLDataSketch/lgK16_HLL8_union-10 25.94n ± 1% 26.60n ± 1%
+2.54% (p=0.000 n=10)
HLLDataSketch/lgK21_HLL8_union-10 25.96n ± 1% 26.50n ± 1%
+2.08% (p=0.000 n=10)
geomean 16.20n 16.10n
-0.64%
```
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]