diff --git a/build/dev/probe_locally.sh b/build/dev/probe_locally.sh index 16e7ffaba..a4022d927 100755 --- a/build/dev/probe_locally.sh +++ b/build/dev/probe_locally.sh @@ -59,6 +59,13 @@ if [[ "${CORE_SERVICE_EXTRA_FLAGS:-}" == *"-enable_time_based_notification_index PROBER_EXTRA_ARGS+=(--scd-time-based-notification-index true) fi +# Following the extension of performance testing in https://github.com/interuss/dss/pull/1618 +# The Yugabyte test with the -enable_scd_hash_lock flag faces intermittent load-sensitive test failures, so we reduce the +# concurrent worker count to 1 for that specific configuration. +if [[ "${COMPOSE_PROFILES:-}" == *"yugabyte"* && "${CORE_SERVICE_EXTRA_FLAGS:-}" == *"-enable_scd_hash_lock"* ]]; then + PROBER_EXTRA_ARGS+=(--heavy_traffic_concurrent_workers 1) +fi + if ! docker run --rm --link "$OAUTH_CONTAINER":oauth \ --link "$CORE_SERVICE_CONTAINER":core-service \ --network dss_sandbox-default \ diff --git a/docs/operations/performances.md b/docs/operations/performances.md index fe7135134..0cf4c6e29 100644 --- a/docs/operations/performances.md +++ b/docs/operations/performances.md @@ -51,6 +51,8 @@ This should be better than global lock, as long as cells used don't collide and The number of locks (65535) is a compromise between lock contention (the more locks, the less unrelated cells share the same one) and the size of the `scd_locks` table. It is fixed and cannot be changed. +Note that this flag creates intermittent load-sensitive test failures when used with Yugabyte. See PR [#1659](https://github.com/interuss/dss/pull/1659) for more details. + ## The time-based notification index option !!! danger