> (you don't have to strictly follow this form)

**Use case**

Sometimes, for really sophisticated scenarios it can be hard to control the amount of in-progress backups run externally. For the purpose of simpler control we can introduce server-level setting which disallows running concurrent backups of any type. 

Something like this in `config.xml` (enabled by default):
`<allow_concurrent_backups>true</allow_concurrent_backups>`

**Describe the solution you'd like**

It's important that backups can be executed in distributed way on multiple servers. Need to take it into account.

**Describe alternatives you've considered**
External check of `system.backups` table, but it can be complex.

MultiVersion<Macros> macros;                            
    std::unique_ptr<DDLWorker> ddl_worker;                  
    
    mutable std::unique_ptr<CompressionCodecSelector> compression_codec_selector;
    
    mutable std::shared_ptr<const DiskSelector> merge_tree_disk_selector;
    
    mutable std::shared_ptr<const StoragePolicySelector> merge_tree_storage_policy_selector;
    std::optional<MergeTreeSettings> merge_tree_settings;   
    std::optional<MergeTreeSettings> replicated_merge_tree_settings;   
    std::atomic_size_t max_table_size_to_drop = 50000000000lu; 
    std::atomic_size_t max_partition_size_to_drop = 50000000000lu; 
    String format_schema_path;                              
    ActionLocksManagerPtr action_locks_manager;             
    std::unique_ptr<SystemLogs> system_logs;                
    std::optional<StorageS3Settings> storage_s3_settings;   
    std::vector<String> warnings;                           
    
    MergeMutateBackgroundExecutorPtr merge_mutate_executor;
    OrdinaryBackgroundExecutorPtr moves_executor;
    OrdinaryBackgroundExecutorPtr fetch_executor;
    OrdinaryBackgroundExecutorPtr common_executor;
    RemoteHostFilter remote_host_filter; 
    std::optional<TraceCollector> trace_collector;        
    
    
    std::shared_ptr<Clusters> clusters;
    ConfigurationPtr clusters_config;                        
    mutable std::mutex clusters_mutex;                       
    std::unique_ptr<ClusterDiscovery> cluster_discovery;