From db4030f7929fd393259332d1969653c9ac12ebea Mon Sep 17 00:00:00 2001 From: Petr Gusev Date: Tue, 23 May 2023 18:08:34 +0400 Subject: [PATCH] storage_proxy: paxos:: add [[ref]] attribute read_command, partition_key and paxos::proposal are marked with [[ref]]. partition_key contains dynamic allocations and can be big. proposal contains frozen_mutation, so it's also contains dynamic allocations. The call sites are fine, the already passed by reference. --- idl/storage_proxy.idl.hh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/idl/storage_proxy.idl.hh b/idl/storage_proxy.idl.hh index 03e2db985d..f07894339a 100644 --- a/idl/storage_proxy.idl.hh +++ b/idl/storage_proxy.idl.hh @@ -31,7 +31,7 @@ verb [[with_client_info, with_timeout]] read_data (query::read_command cmd [[ref verb [[with_client_info, with_timeout]] read_mutation_data (query::read_command cmd [[ref]], ::compat::wrapping_partition_range pr) -> reconcilable_result [[lw_shared_ptr]], cache_temperature [[version 2.0.0]], replica::exception_variant [[version 5.1.0]]; verb [[with_client_info, with_timeout]] read_digest (query::read_command cmd [[ref]], ::compat::wrapping_partition_range pr, query::digest_algorithm digest [[version 3.0.0]], db::per_partition_rate_limit::info rate_limit_info [[version 5.1.0]]) -> query::result_digest, api::timestamp_type [[version 1.2.0]], cache_temperature [[version 2.0.0]], replica::exception_variant [[version 5.1.0]], std::optional [[version 5.2.0]]; verb [[with_timeout]] truncate (sstring, sstring); -verb [[with_client_info, with_timeout]] paxos_prepare (query::read_command cmd, partition_key key, utils::UUID ballot, bool only_digest, query::digest_algorithm da, std::optional trace_info) -> service::paxos::prepare_response [[unique_ptr]]; +verb [[with_client_info, with_timeout]] paxos_prepare (query::read_command cmd [[ref]], partition_key key [[ref]], utils::UUID ballot, bool only_digest, query::digest_algorithm da, std::optional trace_info) -> service::paxos::prepare_response [[unique_ptr]]; verb [[with_client_info, with_timeout]] paxos_accept (service::paxos::proposal proposal [[ref]], std::optional trace_info) -> bool; -verb [[with_client_info, with_timeout, one_way]] paxos_learn (service::paxos::proposal decision, inet_address_vector_replica_set forward, gms::inet_address reply_to, unsigned shard, uint64_t response_id, std::optional); +verb [[with_client_info, with_timeout, one_way]] paxos_learn (service::paxos::proposal decision [[ref]], inet_address_vector_replica_set forward, gms::inet_address reply_to, unsigned shard, uint64_t response_id, std::optional); verb [[with_client_info, with_timeout, one_way]] paxos_prune (table_schema_version schema_id, partition_key key [[ref]], utils::UUID ballot, std::optional trace_info);