void EnsureWriterExists(long version) { if (_currentWriter != null) { return; } var fileName = string.Format("{0:00000000}-{1:yyyy-MM-dd-HHmmss}.dat", version, DateTime.UtcNow); var blob = _container.GetPageBlobReference(fileName); blob.Create(1024 * 512); _currentWriter = new AppendOnlyStream(512, (i, bytes) => blob.WritePages(bytes, i), 1024 * 512); }
public void Close() { _closed = true; if (_currentWriter == null) { return; } var tmp = _currentWriter; _currentWriter = null; tmp.Dispose(); }
public void Close() { this._closed = true; if (this._currentWriter == null) { return; } var tmp = this._currentWriter; this._currentWriter = null; tmp.Dispose(); }
public void Setup() { _stream = null; const int pageSizeInBytes = 5; _appendOnlyStore = new AppendOnlyStream(pageSizeInBytes, (o, s) => { if (s.Length > 0) { if (_stream == null) _stream = new MemoryStream(); s.Position = 0; var bytes = new byte[s.Length]; s.Read(bytes, 0, (int)s.Length); _stream.Position = o; _stream.Write(bytes, 0, bytes.Length); } } , 100); }
private void EnsureWriterExists(long version) { if (this._currentWriter != null) { return; } var azureOptions = new BlobRequestOptions { MaximumExecutionTime = TimeSpan.FromMinutes(30), ServerTimeout = TimeSpan.FromMinutes(30), RetryPolicy = new LinearRetry(TimeSpan.FromSeconds(0.2), 100) }; var fileName = string.Format("{0:00000000}-{1:yyyy-MM-dd-HHmmss}.dat", version, DateTime.UtcNow); var blob = _policy.Get(() => this._container.GetPageBlobReference(fileName)); _policy.Do((() => blob.Create(this._pageSizeMultiplier, options: azureOptions))); this._currentWriter = new AppendOnlyStream(512, (i, bytes) => blob.WritePages(bytes, i, options: azureOptions), this._pageSizeMultiplier); }
void CloseWriter() { _currentWriter.Dispose(); _currentWriter = null; }
public void Close() { _closed = true; if (_currentWriter == null) return; var tmp = _currentWriter; _currentWriter = null; tmp.Dispose(); }
void EnsureWriterExists(long version) { if (_currentWriter != null) return; var fileName = string.Format("{0:00000000}-{1:yyyy-MM-dd-HHmmss}.dat", version, DateTime.UtcNow); var blob = _container.GetPageBlobReference(fileName); blob.Create(1024 * 512); _currentWriter = new AppendOnlyStream(512, (i, bytes) => blob.WritePages(bytes, i), 1024 * 512); }
private void CloseWriter() { this._currentWriter.Dispose(); this._currentWriter = null; }