This is an automated email from the ASF dual-hosted git repository.
yuqi1129 pushed a commit to branch branch-1.3
in repository https://gitbox.apache.org/repos/asf/gravitino.git
The following commit(s) were added to refs/heads/branch-1.3 by this push:
new b4a18ec6f2 [Cherry-pick to branch-1.3] [#11813] fix(gvfs): override
getScheme() to return 'gvfs' (#11814) (#11818)
b4a18ec6f2 is described below
commit b4a18ec6f21ee6a0a832f91b19b090b001c04130
Author: github-actions[bot]
<41898282+github-actions[bot]@users.noreply.github.com>
AuthorDate: Mon Jun 29 11:19:18 2026 +0800
[Cherry-pick to branch-1.3] [#11813] fix(gvfs): override getScheme() to
return 'gvfs' (#11814) (#11818)
**Cherry-pick Information:**
- Original commit: 3dd3b8f0f776a0a23fc6907c52ceb063f1f10f01
- Target branch: `branch-1.3`
- Status: ✅ Clean cherry-pick (no conflicts)
Co-authored-by: Gary Wang <[email protected]>
---
.../filesystem/hadoop/GravitinoVirtualFileSystem.java | 6 ++++++
.../org/apache/gravitino/filesystem/hadoop/TestGvfsBase.java | 11 +++++++++++
2 files changed, 17 insertions(+)
diff --git
a/clients/filesystem-hadoop3/src/main/java/org/apache/gravitino/filesystem/hadoop/GravitinoVirtualFileSystem.java
b/clients/filesystem-hadoop3/src/main/java/org/apache/gravitino/filesystem/hadoop/GravitinoVirtualFileSystem.java
index 89a40bc7d9..4e0eefc9fe 100644
---
a/clients/filesystem-hadoop3/src/main/java/org/apache/gravitino/filesystem/hadoop/GravitinoVirtualFileSystem.java
+++
b/clients/filesystem-hadoop3/src/main/java/org/apache/gravitino/filesystem/hadoop/GravitinoVirtualFileSystem.java
@@ -123,6 +123,12 @@ public class GravitinoVirtualFileSystem extends FileSystem
{
return this.uri;
}
+ /** Returns the GVFS scheme to avoid {@link UnsupportedOperationException}
in commit jobs. */
+ @Override
+ public String getScheme() {
+ return GravitinoVirtualFileSystemConfiguration.GVFS_SCHEME;
+ }
+
@Override
public synchronized Path getWorkingDirectory() {
return this.workingDirectory;
diff --git
a/clients/filesystem-hadoop3/src/test/java/org/apache/gravitino/filesystem/hadoop/TestGvfsBase.java
b/clients/filesystem-hadoop3/src/test/java/org/apache/gravitino/filesystem/hadoop/TestGvfsBase.java
index 11779b1aab..fb69fafae3 100644
---
a/clients/filesystem-hadoop3/src/test/java/org/apache/gravitino/filesystem/hadoop/TestGvfsBase.java
+++
b/clients/filesystem-hadoop3/src/test/java/org/apache/gravitino/filesystem/hadoop/TestGvfsBase.java
@@ -256,6 +256,17 @@ public class TestGvfsBase extends GravitinoMockServerBase {
}
}
+ @Test
+ public void testGetScheme() throws IOException {
+ Assumptions.assumeTrue(getClass() == TestGvfsBase.class);
+ try (FileSystem fs = new Path("gvfs://fileset/").getFileSystem(conf)) {
+ // The default FileSystem#getScheme() throws
UnsupportedOperationException, which breaks
+ // Hadoop / Spark commit protocols when writing to a gvfs:// path. GVFS
must override it
+ // and return the GVFS scheme constant.
+ assertEquals(GravitinoVirtualFileSystemConfiguration.GVFS_SCHEME,
fs.getScheme());
+ }
+ }
+
@Test
public void testRequestHeaders()
throws NoSuchFieldException, IllegalAccessException, IOException {