Skip to content

Commit a61ec78

Browse files
authored
Merge pull request #9883 from github/nickrolfe/trap-buffering
Ruby/QL: speed up trap writing by putting BufWriter in front of GzEncoder
2 parents fe73601 + 4767d5a commit a61ec78

File tree

2 files changed

+14
-8
lines changed

2 files changed

+14
-8
lines changed

ql/extractor/src/trap.rs

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -61,12 +61,15 @@ impl Writer {
6161

6262
pub fn write_to_file(&self, path: &Path, compression: Compression) -> std::io::Result<()> {
6363
let trap_file = std::fs::File::create(path)?;
64-
let mut trap_file = BufWriter::new(trap_file);
6564
match compression {
66-
Compression::None => self.write_trap_entries(&mut trap_file),
65+
Compression::None => {
66+
let mut trap_file = BufWriter::new(trap_file);
67+
self.write_trap_entries(&mut trap_file)
68+
}
6769
Compression::Gzip => {
68-
let mut compressed_writer = GzEncoder::new(trap_file, flate2::Compression::fast());
69-
self.write_trap_entries(&mut compressed_writer)
70+
let trap_file = GzEncoder::new(trap_file, flate2::Compression::fast());
71+
let mut trap_file = BufWriter::new(trap_file);
72+
self.write_trap_entries(&mut trap_file)
7073
}
7174
}
7275
}

ruby/extractor/src/trap.rs

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -61,12 +61,15 @@ impl Writer {
6161

6262
pub fn write_to_file(&self, path: &Path, compression: Compression) -> std::io::Result<()> {
6363
let trap_file = std::fs::File::create(path)?;
64-
let mut trap_file = BufWriter::new(trap_file);
6564
match compression {
66-
Compression::None => self.write_trap_entries(&mut trap_file),
65+
Compression::None => {
66+
let mut trap_file = BufWriter::new(trap_file);
67+
self.write_trap_entries(&mut trap_file)
68+
}
6769
Compression::Gzip => {
68-
let mut compressed_writer = GzEncoder::new(trap_file, flate2::Compression::fast());
69-
self.write_trap_entries(&mut compressed_writer)
70+
let trap_file = GzEncoder::new(trap_file, flate2::Compression::fast());
71+
let mut trap_file = BufWriter::new(trap_file);
72+
self.write_trap_entries(&mut trap_file)
7073
}
7174
}
7275
}

0 commit comments

Comments
 (0)