From db642e5cdb4c770401849d77ee3ae46dc73ff892 Mon Sep 17 00:00:00 2001 From: Jesse Wang <jesse@wang.nz> Date: Tue, 18 Jul 2023 23:01:30 +0000 Subject: [PATCH] fix(postgres): fix buffer management in PgCopyIn.read_from --- sqlx-core/src/net/socket/buffered.rs | 2 +- sqlx-postgres/src/copy.rs | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/sqlx-core/src/net/socket/buffered.rs b/sqlx-core/src/net/socket/buffered.rs index 3dd5f64146..7a314d29b7 100644 --- a/sqlx-core/src/net/socket/buffered.rs +++ b/sqlx-core/src/net/socket/buffered.rs @@ -151,7 +151,7 @@ impl WriteBuffer { self.buf.truncate(self.bytes_written); self.buf.extend_from_slice(slice); } - + self.advance(slice.len()); self.sanity_check(); } diff --git a/sqlx-postgres/src/copy.rs b/sqlx-postgres/src/copy.rs index 620784308a..f5a6ea8573 100644 --- a/sqlx-postgres/src/copy.rs +++ b/sqlx-postgres/src/copy.rs @@ -229,7 +229,7 @@ impl<C: DerefMut<Target = PgConnection>> PgCopyIn<C> { let buf = conn.stream.write_buffer_mut(); // CopyData format code and reserved space for length - buf.put_slice(b"d\0\0\0\0"); + buf.put_slice(b"d\0\0\0\x04"); let read = match () { // Tokio lets us read into the buffer without zeroing first