File tree Expand file tree Collapse file tree 1 file changed +16
-21
lines changed Expand file tree Collapse file tree 1 file changed +16
-21
lines changed Original file line number Diff line number Diff line change @@ -81,37 +81,32 @@ public async Task ReadResultSetHeaderAsync(IOBehavior ioBehavior)
81
81
var source = hasSourcePrefix ?
82
82
MySqlBulkLoader . GetAndRemoveSource ( localInfile . FileName ) :
83
83
File . OpenRead ( localInfile . FileName ) ;
84
-
85
- IDisposable ? disposable = null ;
86
- byte [ ] ? buffer = null ;
87
- try
84
+ switch ( source )
88
85
{
89
- switch ( source )
86
+ case Stream stream :
87
+ var buffer = ArrayPool < byte > . Shared . Rent ( 1048576 ) ;
88
+ try
90
89
{
91
- case Stream stream :
92
- disposable = stream ;
93
- buffer = ArrayPool < byte > . Shared . Rent ( 1048576 ) ;
94
90
int byteCount ;
95
91
while ( ( byteCount = await stream . ReadAsync ( buffer , 0 , buffer . Length ) . ConfigureAwait ( false ) ) > 0 )
96
92
{
97
93
payload = new PayloadData ( new ArraySegment < byte > ( buffer , 0 , byteCount ) ) ;
98
94
await Session . SendReplyAsync ( payload , ioBehavior , CancellationToken . None ) . ConfigureAwait ( false ) ;
99
95
}
100
- break ;
101
-
102
- case MySqlBulkCopy bulkCopy :
103
- await bulkCopy . SendDataReaderAsync ( ioBehavior , CancellationToken . None ) . ConfigureAwait ( false ) ;
104
- break ;
105
-
106
- default :
107
- throw new InvalidOperationException ( "Unsupported Source type: {0}" . FormatInvariant ( source . GetType ( ) . Name ) ) ;
108
96
}
109
- }
110
- finally
111
- {
112
- if ( buffer is object )
97
+ finally
98
+ {
113
99
ArrayPool < byte > . Shared . Return ( buffer ) ;
114
- disposable ? . Dispose ( ) ;
100
+ stream . Dispose ( ) ;
101
+ }
102
+ break ;
103
+
104
+ case MySqlBulkCopy bulkCopy :
105
+ await bulkCopy . SendDataReaderAsync ( ioBehavior , CancellationToken . None ) . ConfigureAwait ( false ) ;
106
+ break ;
107
+
108
+ default :
109
+ throw new InvalidOperationException ( "Unsupported Source type: {0}" . FormatInvariant ( source . GetType ( ) . Name ) ) ;
115
110
}
116
111
}
117
112
catch ( Exception ex )
You can’t perform that action at this time.
0 commit comments