Skip to content

Commit 4d174f3

Browse files
authored
Creation of backup and restore statistics can be switched off to support Firebird Server 2.0 (#1182)
1 parent 69502b3 commit 4d174f3

File tree

2 files changed

+10
-6
lines changed

2 files changed

+10
-6
lines changed

src/FirebirdSql.Data.FirebirdClient/Services/FbBackup.cs

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ public sealed class FbBackup : FbService
3232
public int Factor { get; set; }
3333
public string SkipData { get; set; }
3434
public FbBackupFlags Options { get; set; }
35-
public FbBackupRestoreStatistics Statistics { get; set; }
35+
public FbBackupRestoreStatistics? Statistics { get; set; }
3636

3737
public FbBackup(string connectionString = null)
3838
: base(connectionString)
@@ -67,7 +67,8 @@ public void Execute()
6767
if (!string.IsNullOrEmpty(SkipData))
6868
startSpb.Append2(IscCodes.isc_spb_bkp_skip_data, SkipData);
6969
startSpb.Append(IscCodes.isc_spb_options, (int)Options);
70-
startSpb.Append2(IscCodes.isc_spb_bkp_stat, Statistics.BuildConfiguration());
70+
if (Statistics.HasValue)
71+
startSpb.Append2(IscCodes.isc_spb_bkp_stat, Statistics.Value.BuildConfiguration());
7172
if (ConnectionStringOptions.ParallelWorkers > 0)
7273
startSpb.Append(IscCodes.isc_spb_bkp_parallel_workers, ConnectionStringOptions.ParallelWorkers);
7374
StartTask(startSpb);
@@ -113,7 +114,8 @@ public async Task ExecuteAsync(CancellationToken cancellationToken = default)
113114
if (!string.IsNullOrEmpty(SkipData))
114115
startSpb.Append2(IscCodes.isc_spb_bkp_skip_data, SkipData);
115116
startSpb.Append(IscCodes.isc_spb_options, (int)Options);
116-
startSpb.Append2(IscCodes.isc_spb_bkp_stat, Statistics.BuildConfiguration());
117+
if (Statistics.HasValue)
118+
startSpb.Append2(IscCodes.isc_spb_bkp_stat, Statistics.Value.BuildConfiguration());
117119
if (ConnectionStringOptions.ParallelWorkers > 0)
118120
startSpb.Append(IscCodes.isc_spb_bkp_parallel_workers, ConnectionStringOptions.ParallelWorkers);
119121
await StartTaskAsync(startSpb, cancellationToken).ConfigureAwait(false);

src/FirebirdSql.Data.FirebirdClient/Services/FbRestore.cs

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ public int? PageSize
4646
public bool ReadOnly { get; set; }
4747
public string SkipData { get; set; }
4848
public FbRestoreFlags Options { get; set; }
49-
public FbBackupRestoreStatistics Statistics { get; set; }
49+
public FbBackupRestoreStatistics? Statistics { get; set; }
5050

5151
public FbRestore(string connectionString = null)
5252
: base(connectionString)
@@ -82,7 +82,8 @@ public void Execute()
8282
if (!string.IsNullOrEmpty(SkipData))
8383
startSpb.Append2(IscCodes.isc_spb_res_skip_data, SkipData);
8484
startSpb.Append(IscCodes.isc_spb_options, (int)Options);
85-
startSpb.Append2(IscCodes.isc_spb_res_stat, Statistics.BuildConfiguration());
85+
if (Statistics.HasValue)
86+
startSpb.Append2(IscCodes.isc_spb_res_stat, Statistics.Value.BuildConfiguration());
8687
if (ConnectionStringOptions.ParallelWorkers > 0)
8788
startSpb.Append(IscCodes.isc_spb_res_parallel_workers, ConnectionStringOptions.ParallelWorkers);
8889
StartTask(startSpb);
@@ -129,7 +130,8 @@ public async Task ExecuteAsync(CancellationToken cancellationToken = default)
129130
if (!string.IsNullOrEmpty(SkipData))
130131
startSpb.Append2(IscCodes.isc_spb_res_skip_data, SkipData);
131132
startSpb.Append(IscCodes.isc_spb_options, (int)Options);
132-
startSpb.Append2(IscCodes.isc_spb_res_stat, Statistics.BuildConfiguration());
133+
if (Statistics.HasValue)
134+
startSpb.Append2(IscCodes.isc_spb_res_stat, Statistics.Value.BuildConfiguration());
133135
if (ConnectionStringOptions.ParallelWorkers > 0)
134136
startSpb.Append(IscCodes.isc_spb_res_parallel_workers, ConnectionStringOptions.ParallelWorkers);
135137
await StartTaskAsync(startSpb, cancellationToken).ConfigureAwait(false);

0 commit comments

Comments
 (0)