diff --git a/.changeset/brown-ducks-admire.md b/.changeset/brown-ducks-admire.md new file mode 100644 index 0000000000..a897ebf8d1 --- /dev/null +++ b/.changeset/brown-ducks-admire.md @@ -0,0 +1,5 @@ +--- +'@core/sync-service': patch +--- + +fix: wrong return value caused metric sending to fail sometimes diff --git a/packages/sync-service/lib/electric/shapes/consumer_registry.ex b/packages/sync-service/lib/electric/shapes/consumer_registry.ex index 16dd2ed082..62b1ee56a2 100644 --- a/packages/sync-service/lib/electric/shapes/consumer_registry.ex +++ b/packages/sync-service/lib/electric/shapes/consumer_registry.ex @@ -44,7 +44,10 @@ defmodule Electric.Shapes.ConsumerRegistry do @spec active_consumer_count(stack_id()) :: non_neg_integer() def active_consumer_count(stack_id) when is_binary(stack_id) do - :ets.info(ets_name(stack_id), :size) + case :ets.info(ets_name(stack_id), :size) do + :undefined -> 0 + size -> size + end rescue ArgumentError -> 0 end