[DTrace-devel] [PATCH] test: Make clearlquantize less susceptible to timer variations
Kris Van Hees
kris.van.hees at oracle.com
Wed Mar 1 02:33:17 UTC 2023
On Tue, Feb 28, 2023 at 05:40:40PM -0500, eugene.loh--- via DTrace-devel wrote:
> From: Eugene Loh <eugene.loh at oracle.com>
>
> Signed-off-by: Eugene Loh <eugene.loh at oracle.com>
Reviewed-by: Kris Van Hees <kris.van.hees at oracle.com>
> ---
> test/unittest/aggs/tst.clearlquantize.d | 34 +++++++++++++++----------
> test/unittest/aggs/tst.clearlquantize.r | 2 +-
> 2 files changed, 22 insertions(+), 14 deletions(-)
>
> diff --git a/test/unittest/aggs/tst.clearlquantize.d b/test/unittest/aggs/tst.clearlquantize.d
> index 7e47e3aa..dbd987db 100644
> --- a/test/unittest/aggs/tst.clearlquantize.d
> +++ b/test/unittest/aggs/tst.clearlquantize.d
> @@ -1,45 +1,53 @@
> /*
> * Oracle Linux DTrace.
> - * Copyright (c) 2006, 2020, Oracle and/or its affiliates. All rights reserved.
> + * Copyright (c) 2006, 2023, Oracle and/or its affiliates. All rights reserved.
> * Licensed under the Universal Permissive License v 1.0 as shown at
> * http://oss.oracle.com/licenses/upl.
> */
>
> /*
> * ASSERTION:
> - * Positive lquantize()/clear() test
> + * Positive quantize()/lquantize()/clear() test
> *
> * SECTION: Aggregations/Aggregations
> *
> * NOTES:
> * Verifies that printing a clear()'d aggregation with an lquantize()
> - * aggregation function doesn't cause problems.
> - *
> + * or quantize() aggregation function doesn't cause problems.
> */
>
> +/* @@nosort */
>
> -#pragma D option switchrate=50ms
> +#pragma D option switchrate=20ms
> #pragma D option aggrate=1ms
> #pragma D option quiet
>
> -tick-100ms
> +BEGIN
> {
> - x++;
> - @a["linear"] = lquantize(x, 0, 100, 1);
> - @b["exp"] = quantize(x);
> + z = 0;
> }
>
> -tick-100ms
> -/(x % 5) == 0 && y++ < 5/
> +tick-500ms
> +/(z % 2) == 0/
> {
> + x++; @a["linear"] = lquantize(x, 0, 100, 1); @b["exp"] = quantize(x);
> + x++; @a["linear"] = lquantize(x, 0, 100, 1); @b["exp"] = quantize(x);
> + x++; @a["linear"] = lquantize(x, 0, 100, 1); @b["exp"] = quantize(x);
> + x++; @a["linear"] = lquantize(x, 0, 100, 1); @b["exp"] = quantize(x);
> + x++; @a["linear"] = lquantize(x, 0, 100, 1); @b["exp"] = quantize(x);
> printa(@a);
> printa(@b);
> +}
> +
> +tick-500ms
> +/(z % 2) == 1/
> +{
> clear(@a);
> clear(@b);
> }
>
> -tick-100ms
> -/(x % 5) == 0 && y == 5/
> +tick-500ms
> +/z++ >= 9/
> {
> exit(0);
> }
> diff --git a/test/unittest/aggs/tst.clearlquantize.r b/test/unittest/aggs/tst.clearlquantize.r
> index 5a1eb792..e7e2a600 100644
> --- a/test/unittest/aggs/tst.clearlquantize.r
> +++ b/test/unittest/aggs/tst.clearlquantize.r
> @@ -1,3 +1,4 @@
> +
> linear
> value ------------- Distribution ------------- count
> 0 | 0
> @@ -91,4 +92,3 @@
> 32 | 0
>
>
> -
> --
> 2.18.4
>
>
> _______________________________________________
> DTrace-devel mailing list
> DTrace-devel at oss.oracle.com
> https://oss.oracle.com/mailman/listinfo/dtrace-devel
More information about the DTrace-devel
mailing list