This is an automated email from the ASF dual-hosted git repository.
justinchen pushed a commit to branch login-restart
in repository https://gitbox.apache.org/repos/asf/iotdb.git
The following commit(s) were added to refs/heads/login-restart by this push:
new 421af6e0d6c login
421af6e0d6c is described below
commit 421af6e0d6c08bba0182fdf769c75c19eaec287a
Author: Caideyipi <[email protected]>
AuthorDate: Wed Feb 11 11:08:49 2026 +0800
login
---
.../manager/pipe/source/IoTDBConfigRegionSource.java | 3 +++
.../db/pipe/source/dataregion/IoTDBDataRegionSource.java | 3 +++
.../db/pipe/source/schemaregion/IoTDBSchemaRegionSource.java | 3 +++
.../org/apache/iotdb/commons/pipe/source/IoTDBSource.java | 11 +++++++++++
4 files changed, 20 insertions(+)
diff --git
a/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/manager/pipe/source/IoTDBConfigRegionSource.java
b/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/manager/pipe/source/IoTDBConfigRegionSource.java
index 60512887703..47507c9a33b 100644
---
a/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/manager/pipe/source/IoTDBConfigRegionSource.java
+++
b/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/manager/pipe/source/IoTDBConfigRegionSource.java
@@ -108,6 +108,9 @@ public class IoTDBConfigRegionSource extends
IoTDBNonDataRegionSource {
PipeConfigNodeRemainingTimeMetrics.getInstance().register(this);
}
+ @Override
+ protected void login() {}
+
@Override
protected AbstractPipeListeningQueue getListeningQueue() {
return PipeConfigNodeAgent.runtime().listener();
diff --git
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/source/dataregion/IoTDBDataRegionSource.java
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/source/dataregion/IoTDBDataRegionSource.java
index d1ceb48e8aa..aeb817b89ec 100644
---
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/source/dataregion/IoTDBDataRegionSource.java
+++
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/source/dataregion/IoTDBDataRegionSource.java
@@ -546,6 +546,9 @@ public class IoTDBDataRegionSource extends IoTDBSource {
PipeDataNodeSinglePipeMetrics.getInstance().register(this);
}
+ @Override
+ protected void login() {}
+
@Override
public void start() throws Exception {
if (hasNoExtractionNeed || hasBeenStarted.get()) {
diff --git
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/source/schemaregion/IoTDBSchemaRegionSource.java
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/source/schemaregion/IoTDBSchemaRegionSource.java
index b70ff4b7d8d..c4795f8bd04 100644
---
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/source/schemaregion/IoTDBSchemaRegionSource.java
+++
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/pipe/source/schemaregion/IoTDBSchemaRegionSource.java
@@ -146,6 +146,9 @@ public class IoTDBSchemaRegionSource extends
IoTDBNonDataRegionSource {
super.start();
}
+ @Override
+ protected void login() {}
+
@Override
protected boolean needTransferSnapshot() {
// Note: the schema region will transfer snapshot if there are table or
tree planNode captured.
diff --git
a/iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/pipe/source/IoTDBSource.java
b/iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/pipe/source/IoTDBSource.java
index 91a149c9f66..7e0ba8ca4f2 100644
---
a/iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/pipe/source/IoTDBSource.java
+++
b/iotdb-core/node-commons/src/main/java/org/apache/iotdb/commons/pipe/source/IoTDBSource.java
@@ -34,16 +34,20 @@ import
org.apache.iotdb.pipe.api.customizer.parameter.PipeParameterValidator;
import org.apache.iotdb.pipe.api.customizer.parameter.PipeParameters;
import org.apache.iotdb.pipe.api.exception.PipeParameterNotValidException;
+import javax.annotation.Nonnull;
+
import java.util.Arrays;
import java.util.Objects;
import java.util.Set;
import java.util.concurrent.atomic.AtomicBoolean;
import java.util.stream.Collectors;
+import static
org.apache.iotdb.commons.pipe.config.constant.PipeSourceConstant.EXTRACTOR_IOTDB_PASSWORD_KEY;
import static
org.apache.iotdb.commons.pipe.config.constant.PipeSourceConstant.EXTRACTOR_IOTDB_SKIP_IF_NO_PRIVILEGES;
import static
org.apache.iotdb.commons.pipe.config.constant.PipeSourceConstant.EXTRACTOR_IOTDB_USERNAME_KEY;
import static
org.apache.iotdb.commons.pipe.config.constant.PipeSourceConstant.EXTRACTOR_IOTDB_USER_KEY;
import static
org.apache.iotdb.commons.pipe.config.constant.PipeSourceConstant.EXTRACTOR_SKIP_IF_KEY;
+import static
org.apache.iotdb.commons.pipe.config.constant.PipeSourceConstant.SOURCE_IOTDB_PASSWORD_KEY;
import static
org.apache.iotdb.commons.pipe.config.constant.PipeSourceConstant.SOURCE_IOTDB_USERNAME_KEY;
import static
org.apache.iotdb.commons.pipe.config.constant.PipeSourceConstant.SOURCE_IOTDB_USER_KEY;
import static
org.apache.iotdb.commons.pipe.config.constant.PipeSourceConstant.SOURCE_SKIP_IF_KEY;
@@ -199,8 +203,15 @@ public abstract class IoTDBSource implements PipeExtractor
{
userEntity.setAuditLogOperation(AuditLogOperation.QUERY);
skipIfNoPrivileges = getSkipIfNoPrivileges(parameters);
+ final String password =
+ parameters.getStringByKeys(EXTRACTOR_IOTDB_PASSWORD_KEY,
SOURCE_IOTDB_PASSWORD_KEY);
+ if (Objects.nonNull(password)) {
+ login(password);
+ }
}
+ protected abstract void login(final @Nonnull String password);
+
public static boolean getSkipIfNoPrivileges(final PipeParameters
extractorParameters) {
final String extractorSkipIfValue =
extractorParameters