Files
scylladb/service
Karol Nowacki bc06f89a5c vector_store_client: Fix cleanup of client_producer factory
vector_store_client::stop did not properly clean up the
coroutine that was waiting for a notification on the refresh_client_cv
condition variable. As a result, the coroutine could try to access
`this` (via current_client) after the vector_store_client was destroyed.

To fix this, the `client_producer` tasks are wrapped by a gateway.
The `stop` method now signals the `client_producer` condition variable
and closes the gateway, which ensures that all `client_producer` tasks
are finished before the `stop` function returns.

The `wait_for_signal` return type was changed from `bool` to `void` as the return value was not used.

Fixes: VECTOR-230

Closes scylladb/scylladb#26076
2025-09-18 21:34:34 +03:00
..
2025-04-12 11:28:49 +03:00