This is an automated email from the ASF dual-hosted git repository.
yiguolei pushed a commit to branch branch-2.1
in repository https://gitbox.apache.org/repos/asf/doris.git
The following commit(s) were added to refs/heads/branch-2.1 by this push:
new 90ca889f841 branch-2.1: [fix](external)fix split and get the schema
#45408 (#45566)
90ca889f841 is described below
commit 90ca889f84110a194de0b8efec9de04d42cf3f3c
Author: github-actions[bot]
<41898282+github-actions[bot]@users.noreply.github.com>
AuthorDate: Thu Dec 19 14:06:36 2024 +0800
branch-2.1: [fix](external)fix split and get the schema #45408 (#45566)
Cherry-picked from #45408
Co-authored-by: wuwenchi <[email protected]>
---
.../main/java/org/apache/doris/common/util/LocationPath.java | 2 +-
.../java/org/apache/doris/common/util/LocationPathTest.java | 12 ++++++++++++
2 files changed, 13 insertions(+), 1 deletion(-)
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/common/util/LocationPath.java
b/fe/fe-core/src/main/java/org/apache/doris/common/util/LocationPath.java
index 4604e4deabb..2318532cba6 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/common/util/LocationPath.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/common/util/LocationPath.java
@@ -90,7 +90,7 @@ public class LocationPath {
private LocationPath(String originLocation, Map<String, String> props,
boolean convertPath) {
isBindBroker = props.containsKey(HMSExternalCatalog.BIND_BROKER_NAME);
String tmpLocation = originLocation;
- if (!originLocation.contains(SCHEME_DELIM)) {
+ if (!(originLocation.contains(SCHEME_DELIM) ||
originLocation.contains(NONSTANDARD_SCHEME_DELIM))) {
// Sometimes the file path does not contain scheme, need to add
default fs
// eg, /path/to/file.parquet -> hdfs://nn/path/to/file.parquet
// the default fs is from the catalog properties
diff --git
a/fe/fe-core/src/test/java/org/apache/doris/common/util/LocationPathTest.java
b/fe/fe-core/src/test/java/org/apache/doris/common/util/LocationPathTest.java
index 9d1edadd919..4457b7dd1ef 100644
---
a/fe/fe-core/src/test/java/org/apache/doris/common/util/LocationPathTest.java
+++
b/fe/fe-core/src/test/java/org/apache/doris/common/util/LocationPathTest.java
@@ -205,4 +205,16 @@ public class LocationPathTest {
String beLocation = locationPath.toStorageLocation().toString();
Assertions.assertTrue(beLocation.equalsIgnoreCase("/path/to/local"));
}
+
+ @Test
+ public void testLocalFileSystem() {
+ HashMap<String, String> props = new HashMap<>();
+ props.put("fs.defaultFS", "hdfs:///xyz");
+ LocationPath p1 = new LocationPath("file:///abc/def", props);
+ Assertions.assertEquals(Scheme.LOCAL, p1.getScheme());
+ LocationPath p2 = new LocationPath("file:/abc/def", props);
+ Assertions.assertEquals(Scheme.LOCAL, p2.getScheme());
+ LocationPath p3 = new LocationPath("file://authority/abc/def", props);
+ Assertions.assertEquals(Scheme.LOCAL, p3.getScheme());
+ }
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]