diff --git a/Client/src/Common/Properties.cs b/Client/src/Common/Properties.cs index bf39ffa09..1d5af7ca2 100644 --- a/Client/src/Common/Properties.cs +++ b/Client/src/Common/Properties.cs @@ -383,6 +383,14 @@ public string ConnectionString // ReSharper disable once AutoPropertyCanBeMadeGetOnly.Global public TaskOptions TaskOptions { get; set; } + /// + /// Value in bytes above which streaming is used for data upload and download. 0 to always use streaming. + /// + // TODO: mark as [PublicApi] for setter ? + // ReSharper disable once MemberCanBePrivate.Global + // ReSharper disable once AutoPropertyCanBeMadeGetOnly.Global + public int StreamingThreshold { get; set; } = 0; + /// /// The target name of the endpoint when ssl validation is disabled. Automatic if not set. /// diff --git a/Client/src/Common/Submitter/BaseClientSubmitter.cs b/Client/src/Common/Submitter/BaseClientSubmitter.cs index eb24dff9a..cd060d21b 100644 --- a/Client/src/Common/Submitter/BaseClientSubmitter.cs +++ b/Client/src/Common/Submitter/BaseClientSubmitter.cs @@ -99,7 +99,7 @@ protected BaseClientSubmitter(Properties properties, }) .WaitSync(); - configuration_ = ChannelPool.WithResultClient(Logger) + configuration_ = properties.StreamingThreshold > 0 ? properties.StreamingThreshold : ChannelPool.WithResultClient(Logger) .ExecuteAsync(static client => client.GetServiceConfigurationAsync(new Empty())) .WaitSync() .DataChunkMaxSize;