This is an automated email from the ASF dual-hosted git repository.
lzljs3620320 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/paimon.git
The following commit(s) were added to refs/heads/master by this push:
new ccbfae1331 [core] Notify null blob to consumer in BlobFormatWriter
ccbfae1331 is described below
commit ccbfae1331c59e35ff37baf8734753a4f505abf7
Author: JingsongLi <[email protected]>
AuthorDate: Tue Jan 27 19:17:14 2026 +0800
[core] Notify null blob to consumer in BlobFormatWriter
---
.../src/test/java/org/apache/paimon/append/BlobTableTest.java | 10 +++++++---
.../java/org/apache/paimon/format/blob/BlobFormatWriter.java | 3 +++
2 files changed, 10 insertions(+), 3 deletions(-)
diff --git
a/paimon-core/src/test/java/org/apache/paimon/append/BlobTableTest.java
b/paimon-core/src/test/java/org/apache/paimon/append/BlobTableTest.java
index 5f0d007d73..3045f33b16 100644
--- a/paimon-core/src/test/java/org/apache/paimon/append/BlobTableTest.java
+++ b/paimon-core/src/test/java/org/apache/paimon/append/BlobTableTest.java
@@ -75,16 +75,20 @@ public class BlobTableTest extends TableTestBase {
});
write.write(dataDefault(0, 0));
write.write(dataDefault(0, 0));
+ write.write(GenericRow.of(1, BinaryString.fromString("nice"),
null));
}
- assertThat(blobs.size()).isEqualTo(2);
+ assertThat(blobs.size()).isEqualTo(3);
FileIO fileIO = table.fileIO();
UriReader uriReader = UriReader.fromFile(fileIO);
- for (BlobDescriptor blob : blobs) {
+ for (int i = 0; i < 2; i++) {
+ BlobDescriptor blob = blobs.get(i);
assertThat(Blob.fromDescriptor(uriReader,
blob).toData()).isEqualTo(blobBytes);
}
- for (BlobDescriptor blob : blobs) {
+ for (int i = 0; i < 2; i++) {
+ BlobDescriptor blob = blobs.get(i);
fileIO.deleteQuietly(new Path(blob.uri()));
}
+ assertThat(blobs.get(2)).isNull();
}
@Test
diff --git
a/paimon-format/src/main/java/org/apache/paimon/format/blob/BlobFormatWriter.java
b/paimon-format/src/main/java/org/apache/paimon/format/blob/BlobFormatWriter.java
index aa93708ff8..83d6c0eb91 100644
---
a/paimon-format/src/main/java/org/apache/paimon/format/blob/BlobFormatWriter.java
+++
b/paimon-format/src/main/java/org/apache/paimon/format/blob/BlobFormatWriter.java
@@ -82,6 +82,9 @@ public class BlobFormatWriter implements
FileAwareFormatWriter {
checkArgument(element.getFieldCount() == 1, "BlobFormatWriter only
support one field.");
if (element.isNullAt(0)) {
lengths.add(-1L);
+ if (writeConsumer != null) {
+ writeConsumer.accept(blobFieldName, null);
+ }
return;
}
Blob blob = element.getBlob(0);