fix(replication): use loopCloser context in executeSyncWithRetry

# Please enter the commit message for your changes. Lines starting
# with '#' will be ignored, and an empty message aborts the commit.
#
# Date:      Mon Mar 23 04:24:21 2026 +0000
#
# On branch test/replication
# Changes to be committed:
#	modified:   banyand/measure/syncer.go
#	modified:   banyand/stream/syncer.go
#	modified:   banyand/trace/syncer.go
#	modified:   pkg/test/measure/etcd.go
#	modified:   pkg/test/replicated/measure/etcd.go
#	deleted:    pkg/test/replicated/measure/testdata/index_rule_bindings/endpoint_traffic.json
#	deleted:    pkg/test/replicated/measure/testdata/index_rule_bindings/service_cpm_day.json
#	deleted:    pkg/test/replicated/measure/testdata/index_rule_bindings/service_cpm_hour.json
#	deleted:    pkg/test/replicated/measure/testdata/index_rule_bindings/service_cpm_minute.json
#	deleted:    pkg/test/replicated/measure/testdata/index_rule_bindings/service_cpm_minute_spec.json
#	deleted:    pkg/test/replicated/measure/testdata/index_rule_bindings/service_cpm_minute_spec2.json
#	deleted:    pkg/test/replicated/measure/testdata/index_rule_bindings/service_instance_cpm_day.json
#	deleted:    pkg/test/replicated/measure/testdata/index_rule_bindings/service_instance_cpm_hour.json
#	deleted:    pkg/test/replicated/measure/testdata/index_rule_bindings/service_instance_cpm_minute.json
#	deleted:    pkg/test/replicated/measure/testdata/index_rule_bindings/service_instance_endpoint_cpm_minute.json
#	deleted:    pkg/test/replicated/measure/testdata/index_rule_bindings/service_instance_latency_minute.json
#	deleted:    pkg/test/replicated/measure/testdata/index_rule_bindings/service_instance_traffic.json
#	deleted:    pkg/test/replicated/measure/testdata/index_rule_bindings/service_traffic.json
#	deleted:    pkg/test/replicated/measure/testdata/index_rules/endpoint_name.json
#	deleted:    pkg/test/replicated/measure/testdata/index_rules/id.json
#	deleted:    pkg/test/replicated/measure/testdata/index_rules/id_spec.json
#	deleted:    pkg/test/replicated/measure/testdata/index_rules/id_spec2.json
#	deleted:    pkg/test/replicated/measure/testdata/index_rules/im_service_id.json
#	deleted:    pkg/test/replicated/measure/testdata/index_rules/layer.json
#	deleted:    pkg/test/replicated/measure/testdata/index_rules/searchable_name.json
#	deleted:    pkg/test/replicated/measure/testdata/index_rules/service_id.json
#	deleted:    pkg/test/replicated/measure/testdata/measures/duplicated.json
#	deleted:    pkg/test/replicated/measure/testdata/measures/endpoint_resp_time_minute.json
#	deleted:    pkg/test/replicated/measure/testdata/measures/endpoint_traffic.json
#	deleted:    pkg/test/replicated/measure/testdata/measures/instance_clr_cpu_minute.json
#	deleted:    pkg/test/replicated/measure/testdata/measures/service_cpm_day.json
#	deleted:    pkg/test/replicated/measure/testdata/measures/service_cpm_hour.json
#	deleted:    pkg/test/replicated/measure/testdata/measures/service_cpm_minute.json
#	deleted:    pkg/test/replicated/measure/testdata/measures/service_cpm_minute_spec.json
#	deleted:    pkg/test/replicated/measure/testdata/measures/service_cpm_minute_spec2.json
#	deleted:    pkg/test/replicated/measure/testdata/measures/service_cpm_minute_updated.json
#	deleted:    pkg/test/replicated/measure/testdata/measures/service_instance_cpm_day.json
#	deleted:    pkg/test/replicated/measure/testdata/measures/service_instance_cpm_hour.json
#	deleted:    pkg/test/replicated/measure/testdata/measures/service_instance_cpm_minute.json
#	deleted:    pkg/test/replicated/measure/testdata/measures/service_instance_cpm_minute_updated.json
#	deleted:    pkg/test/replicated/measure/testdata/measures/service_instance_endpoint_cpm_minute.json
#	deleted:    pkg/test/replicated/measure/testdata/measures/service_instance_latency_minute.json
#	deleted:    pkg/test/replicated/measure/testdata/measures/service_instance_traffic.json
#	deleted:    pkg/test/replicated/measure/testdata/measures/service_latency_minute.json
#	deleted:    pkg/test/replicated/measure/testdata/measures/service_traffic.json
#	deleted:    pkg/test/replicated/measure/testdata/measures/service_traffic_replicated.json
#	modified:   pkg/test/replicated/stream/etcd.go
#	deleted:    pkg/test/replicated/stream/testdata/index_rule_bindings/deduplication_test.json
#	deleted:    pkg/test/replicated/stream/testdata/index_rule_bindings/duplicated.json
#	deleted:    pkg/test/replicated/stream/testdata/index_rule_bindings/sw.json
#	deleted:    pkg/test/replicated/stream/testdata/index_rule_bindings/sw_spec.json
#	deleted:    pkg/test/replicated/stream/testdata/index_rule_bindings/sw_spec2.json
#	deleted:    pkg/test/replicated/stream/testdata/index_rule_bindings/updated.json
#	deleted:    pkg/test/replicated/stream/testdata/index_rules/db.instance.json
#	deleted:    pkg/test/replicated/stream/testdata/index_rules/db.type.json
#	deleted:    pkg/test/replicated/stream/testdata/index_rules/duration.json
#	deleted:    pkg/test/replicated/stream/testdata/index_rules/duration_updated.json
#	deleted:    pkg/test/replicated/stream/testdata/index_rules/endpoint_id.json
#	deleted:    pkg/test/replicated/stream/testdata/index_rules/extended_tags.json
#	deleted:    pkg/test/replicated/stream/testdata/index_rules/http.method.json
#	deleted:    pkg/test/replicated/stream/testdata/index_rules/mq.broker.json
#	deleted:    pkg/test/replicated/stream/testdata/index_rules/mq.queue.json
#	deleted:    pkg/test/replicated/stream/testdata/index_rules/mq.topic.json
#	deleted:    pkg/test/replicated/stream/testdata/index_rules/status_code.json
#	deleted:    pkg/test/replicated/stream/testdata/index_rules/trace_id.json
#	deleted:    pkg/test/replicated/stream/testdata/streams/deduplication_test.json
#	deleted:    pkg/test/replicated/stream/testdata/streams/duplicated.json
#	deleted:    pkg/test/replicated/stream/testdata/streams/sw.json
#	deleted:    pkg/test/replicated/stream/testdata/streams/sw_spec.json
#	deleted:    pkg/test/replicated/stream/testdata/streams/sw_spec2.json
#	deleted:    pkg/test/replicated/stream/testdata/streams/sw_updated.json
#	modified:   pkg/test/replicated/trace/etcd.go
#	deleted:    pkg/test/replicated/trace/testdata/index_rule_bindings/sw.json
#	deleted:    pkg/test/replicated/trace/testdata/index_rule_bindings/sw_spec.json
#	deleted:    pkg/test/replicated/trace/testdata/index_rule_bindings/sw_spec2.json
#	deleted:    pkg/test/replicated/trace/testdata/index_rule_bindings/sw_updated.json
#	deleted:    pkg/test/replicated/trace/testdata/index_rule_bindings/zipkin.json
#	deleted:    pkg/test/replicated/trace/testdata/index_rules/duration.json
#	deleted:    pkg/test/replicated/trace/testdata/index_rules/duration_spec.json
#	deleted:    pkg/test/replicated/trace/testdata/index_rules/duration_spec2.json
#	deleted:    pkg/test/replicated/trace/testdata/index_rules/duration_updated.json
#	deleted:    pkg/test/replicated/trace/testdata/index_rules/timestamp.json
#	deleted:    pkg/test/replicated/trace/testdata/index_rules/timestamp_spec.json
#	deleted:    pkg/test/replicated/trace/testdata/index_rules/timestamp_spec2.json
#	deleted:    pkg/test/replicated/trace/testdata/index_rules/timestamp_updated.json
#	deleted:    pkg/test/replicated/trace/testdata/index_rules/zipkin-timestamp.json
#	deleted:    pkg/test/replicated/trace/testdata/traces/sw.json
#	deleted:    pkg/test/replicated/trace/testdata/traces/sw_spec.json
#	deleted:    pkg/test/replicated/trace/testdata/traces/sw_spec2.json
#	deleted:    pkg/test/replicated/trace/testdata/traces/sw_updated.json
#	deleted:    pkg/test/replicated/trace/testdata/traces/zipkin.json
#	modified:   pkg/test/stream/etcd.go
#	modified:   pkg/test/trace/etcd.go
#
