diff --git a/fe/fe-core/src/main/java/org/apache/doris/analysis/UserIdentity.java b/fe/fe-core/src/main/java/org/apache/doris/analysis/UserIdentity.java index 95fe6e4e9a64ea..51822d1c75cfe6 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/analysis/UserIdentity.java +++ b/fe/fe-core/src/main/java/org/apache/doris/analysis/UserIdentity.java @@ -48,12 +48,15 @@ public class UserIdentity implements Writable { public static final UserIdentity ROOT; public static final UserIdentity ADMIN; + public static final UserIdentity UNKNOWN; static { ROOT = new UserIdentity(PaloAuth.ROOT_USER, "%"); ROOT.setIsAnalyzed(); ADMIN = new UserIdentity(PaloAuth.ADMIN_USER, "%"); ADMIN.setIsAnalyzed(); + UNKNOWN = new UserIdentity(PaloAuth.UNKNOWN_USER, "%"); + UNKNOWN.setIsAnalyzed(); } private UserIdentity() { diff --git a/fe/fe-core/src/main/java/org/apache/doris/load/loadv2/BulkLoadJob.java b/fe/fe-core/src/main/java/org/apache/doris/load/loadv2/BulkLoadJob.java index 8ad3c53342b8c5..0631e0b26eafe7 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/load/loadv2/BulkLoadJob.java +++ b/fe/fe-core/src/main/java/org/apache/doris/load/loadv2/BulkLoadJob.java @@ -45,14 +45,14 @@ import org.apache.doris.transaction.TabletCommitInfo; import org.apache.doris.transaction.TransactionState; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; + import com.google.common.base.Strings; import com.google.common.collect.Lists; import com.google.common.collect.Maps; import com.google.common.collect.Sets; -import org.apache.logging.log4j.LogManager; -import org.apache.logging.log4j.Logger; - import java.io.DataInput; import java.io.DataOutput; import java.io.IOException; @@ -340,8 +340,10 @@ public void readFields(DataInput in) throws IOException { if (Catalog.getCurrentCatalogJournalVersion() >= FeMetaVersion.VERSION_93) { userInfo = UserIdentity.read(in); + // must set is as analyzed, because when write the user info to meta image, it will be checked. + userInfo.setIsAnalyzed(); } else { - userInfo = new UserIdentity("",""); + userInfo = UserIdentity.UNKNOWN; } if (Catalog.getCurrentCatalogJournalVersion() >= FeMetaVersion.VERSION_66) { int size = in.readInt(); @@ -359,8 +361,4 @@ public void readFields(DataInput in) throws IOException { public UserIdentity getUserInfo() { return userInfo; } - - public void setUserInfo(UserIdentity userInfo) { - this.userInfo = userInfo; - } } diff --git a/fe/fe-core/src/main/java/org/apache/doris/mysql/privilege/PaloAuth.java b/fe/fe-core/src/main/java/org/apache/doris/mysql/privilege/PaloAuth.java index 4cbe28cfce70b5..a49329e477176e 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/mysql/privilege/PaloAuth.java +++ b/fe/fe-core/src/main/java/org/apache/doris/mysql/privilege/PaloAuth.java @@ -45,14 +45,14 @@ import org.apache.doris.thrift.TFetchResourceResult; import org.apache.doris.thrift.TPrivilegeStatus; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; + import com.google.common.base.Joiner; import com.google.common.base.Preconditions; import com.google.common.collect.Lists; import com.google.common.collect.Sets; -import org.apache.logging.log4j.LogManager; -import org.apache.logging.log4j.Logger; - import java.io.DataInput; import java.io.DataOutput; import java.io.IOException; @@ -68,6 +68,8 @@ public class PaloAuth implements Writable { // each Palo system has only one root user. public static final String ROOT_USER = "root"; public static final String ADMIN_USER = "admin"; + // unknown user does not have any privilege, this is just to be compatible with old version. + public static final String UNKNOWN_USER = "unknown"; private UserPrivTable userPrivTable = new UserPrivTable(); private DbPrivTable dbPrivTable = new DbPrivTable();