Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
97 commits
Select commit Hold shift + click to select a range
371e3f6
[IOTDB-6336] Add max retry time duration and whether to retry for unk…
JackieTien97 Jun 4, 2024
ec4fc5b
Optimize error message when creating unsupported data type (#12650)
Cpaulyz Jun 4, 2024
3cf91fd
Pipe: fix uninitialized config when validate PipeHistoricalDataRegion…
VGalaxies Jun 4, 2024
c9efe09
Fix region migration's timeout judgement #12639
liyuheng55555 Jun 4, 2024
b0f1658
fix compaction recover skip negative time partition (#12637)
shuwenwei Jun 4, 2024
cf0d3dd
Fix Concurrency Instability When IoTConsensus LogDispatcher Exits #12655
HxpSerein Jun 4, 2024
d0f1744
JDBC: Fix IndexOutOfBoundsException when calling getBytes (#12662)
SteveYurongSu Jun 5, 2024
5b26dfa
[IOTDB-6335] Redundant rows when using GROUP BY TIME with LIMIT
ycycse Jun 5, 2024
4de7e69
Pipe: Enhance error handling logic in pipe async connector's handlers…
SteveYurongSu Jun 5, 2024
d78413e
Print log when read resource error (#12666)
HTHou Jun 5, 2024
a60b181
Load: Make load SQL option VERIFY can only be set to true (#12670)
SteveYurongSu Jun 5, 2024
6639d57
Pipe: Improved hybrid algorithm and avoid the caculations of tsfiles …
Caideyipi Jun 5, 2024
a083245
Migrate to Develocity Maven Extension (#12658)
clayburn Jun 6, 2024
2e433b5
Update import schema logic implementation and optimize -help display …
2b3c511 Jun 6, 2024
351ab30
Subscription: fix topic now timestamp precision (#12663)
VGalaxies Jun 6, 2024
4c6e110
[IOTDB-6337] Refine the count calculation in RegionScan framework
ycycse Jun 6, 2024
baa9e5d
Bump version of master branch to 1.3.3-SNAPSHOT (#12672)
HTHou Jun 6, 2024
0073a3d
Pipe: Reduce warn log when PipeConfigRegionExtractorMetrics does not …
Caideyipi Jun 6, 2024
e2c705a
[IOTDB-6061] Fix the instability failure caused by initServer in IoTC…
HxpSerein Jun 6, 2024
036d736
Load: Make load SQL option VERIFY can only be set to true (A follow-u…
SteveYurongSu Jun 6, 2024
223f95c
Pipe: add compression level config for connector ZSTD compressor (#12…
DanielWang2035 Jun 6, 2024
849c09f
[PY-client] Unify setup.py and requirement.txt (#12601)
HTHou Jun 6, 2024
82f203e
Pipe IT: Ignore failed cases caused by cluster restart failure (#12678)
SteveYurongSu Jun 6, 2024
18d7f0b
update import and export data -help description (#12677)
2b3c511 Jun 6, 2024
46daeba
Pipe: Fix potential NPE when lastEvent == null in PipeConnectorSubtas…
Caideyipi Jun 6, 2024
2d04d22
Fix wrong calculation for maxBytesCanReserve for IdentitySinkOperator
lancelly Jun 7, 2024
c441c3a
Change floating point encoding method in IT
Sh-Zh-7 Jun 7, 2024
9340708
Throw `IndexOutOfBound` exception in row implementation.
Sh-Zh-7 Jun 7, 2024
6a2bec2
Thread safely SeriesPartitionTable (#12679)
CRZbulabula Jun 7, 2024
50d1c05
Pipe: Refactor some features for user access (#12686)
Caideyipi Jun 7, 2024
42e7634
Set timestamp precision same as time column (#12681)
Cpaulyz Jun 7, 2024
7ab58fd
Set configuration on node (#12626)
shuwenwei Jun 7, 2024
3846563
Fix cli report error when ignoreTimestamp is true (#12691)
Cpaulyz Jun 8, 2024
c2f3640
Load: Add check for BufferUnderflowException (#12690)
ppppoooo Jun 11, 2024
a64dc4c
remove excess stack
CritasWang Jun 11, 2024
070c5e3
Fix new UDTF execution framework dead loop error.
Sh-Zh-7 Jun 11, 2024
ab9347b
Perfect methods of IAnalysis to adapt the write process of table model
Beyyes Jun 11, 2024
724f2ad
Load: Support storing piecenode in multiple folders during 2nd phase …
MiniSho Jun 11, 2024
278da48
Pipe: add decompressed length in RPC compression payload to avoid pot…
DanielWang2035 Jun 11, 2024
b18ccf3
Load: Update loadTsFileDirs after all newLoadTsFileDirs are generated…
SteveYurongSu Jun 11, 2024
e887ea0
Pipe: Fixed NPE in schema pattern parsing & Improved connector subtas…
Caideyipi Jun 11, 2024
ed3b4b7
Procedure: Fix ProcedureInfo on CN leader may decrease its procId (#1…
Caideyipi Jun 11, 2024
a178a79
Fix missing of linux memory metrics (#12713)
SpriCoder Jun 12, 2024
a9d1401
update import and export tsfile description (#12684)
2b3c511 Jun 12, 2024
20c4cd2
Subscription: skip on setup and cluster failure when running subscrip…
VGalaxies Jun 12, 2024
3ae990b
Update pom.xml to fix security issue (#12705)
HTHou Jun 12, 2024
24a5376
Rename IoTV2Consensus to IoTConsensusV2 (#12715)
OneSizeFitsQuorum Jun 12, 2024
fecdca5
Fix NumberFormatException when upgrade from old version #12719
shuwenwei Jun 12, 2024
bd30942
Replenish effective mode in iotdb-system.properties (#12706)
shuwenwei Jun 12, 2024
c10c95f
load-tsfile script: disable redirection & load: handle exceptions usi…
SteveYurongSu Jun 12, 2024
dcdbbe5
Subscription: improve parsing logic when using JAVA SDK client & refa…
VGalaxies Jun 12, 2024
0a3ca29
Pipe: Fix schema events can not report & Fix delete data events in da…
Caideyipi Jun 12, 2024
cf4aed7
Pipe: Support `"source.history.loose-range" = "path"` in iotdb-source…
Caideyipi Jun 12, 2024
273d483
[IOTDB-6338] Fix wrong query result while using some value filter wit…
liuminghui233 Jun 13, 2024
db05137
Pipe: fix threads of IoTDB-Pipe-Processor-Executor-Pool stucked by Pi…
SteveYurongSu Jun 13, 2024
fb8f2fb
[ISSUE 12499] Reject query with massive time span in limited memroy
ycycse Jun 13, 2024
a42e644
Fix/include thrift lib and headers in cpp client (#12734)
chrisdutz Jun 13, 2024
0dbb389
Pipe / Load / Subscription: Support new TsDataTypes (STRING / BLOB / …
Caideyipi Jun 13, 2024
7b993f4
Optimize the log printing when multiple error occur (#12732)
HTHou Jun 13, 2024
ece5353
Update packege hierachy in Client-cpp readme (#12736)
jt2594838 Jun 13, 2024
c5d7999
Support agg(*) query in templated align by device situation
Beyyes Jun 13, 2024
c02471e
fix config node use IoTDBDescriptor (#12730)
shuwenwei Jun 13, 2024
b3aae80
PipeConsensus: Delete WAL after dropping database & fix receiver dire…
yschengzi Jun 14, 2024
599bc86
Add instructions of compiling client-cpp with VS2019. (#12739)
jt2594838 Jun 14, 2024
93211e1
Subscription: adapt pipe completion signal for automatically drop sub…
VGalaxies Jun 14, 2024
85971c6
Verify connection && Refactor async connection framework (#12667)
liyuheng55555 Jun 14, 2024
3168bf6
PipeConsensus: add metrics and fix some bugs for pipeConsensus (#12723)
Pengzna Jun 14, 2024
9c085d1
Decrease TTL Deletion in compaction modification cache (#12687)
shuwenwei Jun 14, 2024
74212db
Stabilize verify connection IT (#12745)
liyuheng55555 Jun 14, 2024
d3f605f
Fix compaction npe when set modified status (#12729)
shuwenwei Jun 17, 2024
d00c766
Subscription IT: execute jstack for potential stuck test cases (#12728)
VGalaxies Jun 17, 2024
89af73d
Pipe: Smoothed the rate in pipe's remaining time calculations (#12699)
Caideyipi Jun 17, 2024
e6e819a
Pipe: Fix PipeDataRegionEventCounter not work in PipeRealtimeDataRegi…
Caideyipi Jun 17, 2024
f8f1c9d
Fix python CI (#12754)
HTHou Jun 17, 2024
d2169a8
Support show device ttl on path pattern (#12709)
choubenson Jun 18, 2024
0bb4619
Support WAL Compression (#12476)
THUMarkLau Jun 18, 2024
a0750b6
Optimize the devicePath generation efficiency of PlanNode when deseri…
OneSizeFitsQuorum Jun 18, 2024
1cd5ecd
Pipe: Support "source.realtime.loose-range" = "path" in iotdb-source …
SteveYurongSu Jun 18, 2024
fcd7069
Support active schema query (#12718)
Cpaulyz Jun 18, 2024
aae7e79
Check duplicate in start-node and stop-node scripts (#12756)
shuwenwei Jun 18, 2024
acaad85
[IOTDB-6339] Optimize the time slice control of SeriesScanOperator an…
JackieTien97 Jun 18, 2024
5d55272
Optimize node startup process & Normalize system.properties managemen…
liyuheng55555 Jun 19, 2024
b18412d
[IOTDB-6340] Clear Coordinator.queryExecutionMap while encountering M…
JackieTien97 Jun 19, 2024
3d436b9
[IOTDB-6342] Clear FragmentInstanceManager.dataNodeQueryContextMap wh…
JackieTien97 Jun 19, 2024
612ecd4
Refactor node registration check (#12766)
liyuheng55555 Jun 19, 2024
f22e379
Fix overlap between tsfile is not correctly marked (#12748)
shuwenwei Jun 19, 2024
6cbdf31
Subscription: support topic loose range for path and time (#12760)
VGalaxies Jun 19, 2024
36dd489
Add clean logic for FragmentInstance in case that callback is not add…
lancelly Jun 19, 2024
4e50e84
SystemPropertiesHandler use Files::move instead of File::renameTo (#1…
liyuheng55555 Jun 19, 2024
f196cf2
Pipe: Filter devices by pattern before reading device metadata from T…
DanielWang2035 Jun 19, 2024
48028a1
Pipe: Adjusted some loggers of metrics to avoid unnecessary warns & I…
Caideyipi Jun 19, 2024
8818162
Synchronize takeSnapshotAsync on RaftGroupID (#12767)
SzyWilliam Jun 20, 2024
60b12d8
SystemPropertiesHandler close reader and writer #12772
liyuheng55555 Jun 20, 2024
31cd61f
Pipe Consensus: Fix events in connector are not in order because of p…
Caideyipi Jun 20, 2024
df68083
Pipe: Avoid event being continuously rate-limited even its pipe is dr…
Caideyipi Jun 20, 2024
fe52d5d
Load: Add some load metrics of time cost, write point and disk throug…
MiniSho Jun 20, 2024
6a635f5
merge master
JackieTien97 Jun 20, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
Original file line number Diff line number Diff line change
Expand Up @@ -44,26 +44,28 @@ public class CountPointProcessor implements PipeProcessor {
private PartialPath aggregateSeries;

@Override
public void validate(PipeParameterValidator validator) {
public void validate(final PipeParameterValidator validator) {
validator.validateRequiredAttribute(AGGREGATE_SERIES_KEY);
}

@Override
public void customize(PipeParameters parameters, PipeProcessorRuntimeConfiguration configuration)
public void customize(
final PipeParameters parameters, final PipeProcessorRuntimeConfiguration configuration)
throws Exception {
this.aggregateSeries = new PartialPath(parameters.getString(AGGREGATE_SERIES_KEY));
}

@Override
public void process(TabletInsertionEvent tabletInsertionEvent, EventCollector eventCollector) {
public void process(
final TabletInsertionEvent tabletInsertionEvent, final EventCollector eventCollector) {
tabletInsertionEvent.processTablet(
(tablet, rowCollector) -> writePointCount.addAndGet(tablet.rowSize));
}

@Override
public void process(Event event, EventCollector eventCollector) throws Exception {
public void process(final Event event, final EventCollector eventCollector) throws Exception {
if (event instanceof PipeHeartbeatEvent) {
Tablet tablet =
final Tablet tablet =
new Tablet(
aggregateSeries.getIDeviceID().toString(),
Collections.singletonList(
Expand All @@ -73,7 +75,7 @@ public void process(Event event, EventCollector eventCollector) throws Exception
tablet.addTimestamp(0, System.currentTimeMillis());
tablet.addValue(aggregateSeries.getMeasurement(), 0, writePointCount.get());
eventCollector.collect(
new PipeRawTabletInsertionEvent(tablet, false, null, null, null, false));
new PipeRawTabletInsertionEvent(tablet, false, null, 0, null, null, false));
}
}

Expand Down
1 change: 0 additions & 1 deletion example/schema/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,6 @@
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.3.13</version>
</dependency>
<dependency>
<groupId>org.apache.tsfile</groupId>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,14 +25,23 @@
import org.apache.iotdb.rpc.subscription.config.TopicConstant;
import org.apache.iotdb.session.Session;
import org.apache.iotdb.session.subscription.SubscriptionSession;
import org.apache.iotdb.session.subscription.consumer.AckStrategy;
import org.apache.iotdb.session.subscription.consumer.ConsumeResult;
import org.apache.iotdb.session.subscription.consumer.SubscriptionPullConsumer;
import org.apache.iotdb.session.subscription.consumer.SubscriptionPushConsumer;
import org.apache.iotdb.session.subscription.payload.SubscriptionMessage;
import org.apache.iotdb.session.subscription.payload.SubscriptionSessionDataSet;
import org.apache.iotdb.session.subscription.payload.SubscriptionTsFileHandler;

import org.apache.tsfile.read.TsFileReader;
import org.apache.tsfile.read.common.Path;
import org.apache.tsfile.read.expression.QueryExpression;
import org.apache.tsfile.read.query.dataset.QueryDataSet;

import java.io.IOException;
import java.nio.file.Paths;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import java.util.Properties;
Expand All @@ -46,11 +55,14 @@ public class SubscriptionSessionExample {
private static final int PORT = 6667;

private static final String TOPIC_1 = "topic1";
private static final String TOPIC_2 = "`topic2`";
private static final String TOPIC_2 = "`'topic2'`";
private static final String TOPIC_3 = "`\"topic3\"`";
private static final String TOPIC_4 = "`\"top \\.i.c4\"`";

public static final long SLEEP_NS = 1_000_000_000L;
public static final long POLL_TIMEOUT_MS = 10_000L;
private static final long SLEEP_NS = 1_000_000_000L;
private static final long POLL_TIMEOUT_MS = 10_000L;
private static final int MAX_RETRY_TIMES = 3;
private static final int PARALLELISM = 8;

private static void prepareData() throws Exception {
// Open session
Expand All @@ -66,13 +78,13 @@ private static void prepareData() throws Exception {

// Insert some historical data
final long currentTime = System.currentTimeMillis();
for (int i = 0; i < 10000; ++i) {
for (int i = 0; i < 100; ++i) {
session.executeNonQueryStatement(
String.format("insert into root.db.d1(time, s1, s2) values (%s, 1, 2)", i));
session.executeNonQueryStatement(
String.format("insert into root.db.d2(time, s3, s4) values (%s, 3, 4)", currentTime + i));
String.format("insert into root.db.d2(time, s1, s2) values (%s, 3, 4)", currentTime + i));
session.executeNonQueryStatement(
String.format("insert into root.sg.d3(time, s5) values (%s, 5)", currentTime + 2 * i));
String.format("insert into root.sg.d3(time, s1) values (%s, 5)", currentTime + 2 * i));
}
session.executeNonQueryStatement("flush");

Expand Down Expand Up @@ -104,11 +116,16 @@ private static void dataQuery() throws Exception {
session = null;
}

private static void subscriptionExample1() throws Exception {
/** single pull consumer subscribe topic with path and time range */
private static void dataSubscription1() throws Exception {
// Create topics
try (final SubscriptionSession subscriptionSession = new SubscriptionSession(HOST, PORT)) {
subscriptionSession.open();
subscriptionSession.createTopic(TOPIC_1);
final Properties config = new Properties();
config.put(TopicConstant.PATH_KEY, "root.db.d1.s1");
config.put(TopicConstant.START_TIME_KEY, 25);
config.put(TopicConstant.END_TIME_KEY, 75);
subscriptionSession.createTopic(TOPIC_1, config);
}

int retryCount = 0;
Expand Down Expand Up @@ -151,7 +168,8 @@ private static void subscriptionExample1() throws Exception {
consumer1.close();
}

private static void subscriptionExample2() throws Exception {
/** multi pull consumer subscribe topic with tsfile format */
private static void dataSubscription2() throws Exception {
try (final SubscriptionSession subscriptionSession = new SubscriptionSession(HOST, PORT)) {
subscriptionSession.open();
final Properties config = new Properties();
Expand All @@ -160,7 +178,7 @@ private static void subscriptionExample2() throws Exception {
}

final List<Thread> threads = new ArrayList<>();
for (int i = 0; i < 8; ++i) {
for (int i = 0; i < PARALLELISM; ++i) {
final int idx = i;
final Thread thread =
new Thread(
Expand All @@ -187,7 +205,16 @@ private static void subscriptionExample2() throws Exception {
}
for (final SubscriptionMessage message : messages) {
try (final TsFileReader reader = message.getTsFileHandler().openReader()) {
// do something...
final QueryDataSet dataSet =
reader.query(
QueryExpression.create(
Arrays.asList(
new Path("root.db.d2", "s2", true),
new Path("root.db.d3", "s1", true)),
null));
while (dataSet.hasNext()) {
System.out.println(dataSet.next());
}
}
}
consumer2.commitSync(messages);
Expand All @@ -206,10 +233,109 @@ private static void subscriptionExample2() throws Exception {
}
}

/** multi push consumer subscribe topic with tsfile format and query mode */
private static void dataSubscription3() throws Exception {
try (final SubscriptionSession subscriptionSession = new SubscriptionSession(HOST, PORT)) {
subscriptionSession.open();
final Properties config = new Properties();
config.put(TopicConstant.FORMAT_KEY, TopicConstant.FORMAT_TS_FILE_HANDLER_VALUE);
config.put(TopicConstant.MODE_KEY, TopicConstant.MODE_QUERY_VALUE);
subscriptionSession.createTopic(TOPIC_3, config);
}

final List<Thread> threads = new ArrayList<>();
for (int i = 0; i < PARALLELISM; ++i) {
final int idx = i;
final Thread thread =
new Thread(
() -> {
// Subscription: builder-style ctor
try (final SubscriptionPushConsumer consumer3 =
new SubscriptionPushConsumer.Builder()
.consumerId("c" + idx)
.consumerGroupId("cg3")
.ackStrategy(AckStrategy.AFTER_CONSUME)
.consumeListener(
message -> {
// do something for SubscriptionTsFileHandler
System.out.println(
message.getTsFileHandler().getFile().getAbsolutePath());
return ConsumeResult.SUCCESS;
})
.buildPushConsumer()) {
consumer3.open();
consumer3.subscribe(TOPIC_3);
while (consumer3.hasMoreData()) {
LockSupport.parkNanos(SLEEP_NS); // wait some time
}
}
});
thread.start();
threads.add(thread);
}

for (final Thread thread : threads) {
thread.join();
}
}

/** multi pull consumer subscribe topic with tsfile format and query mode */
private static void dataSubscription4() throws Exception {
try (final SubscriptionSession subscriptionSession = new SubscriptionSession(HOST, PORT)) {
subscriptionSession.open();
final Properties config = new Properties();
config.put(TopicConstant.FORMAT_KEY, TopicConstant.FORMAT_TS_FILE_HANDLER_VALUE);
config.put(TopicConstant.MODE_KEY, TopicConstant.MODE_QUERY_VALUE);
subscriptionSession.createTopic(TOPIC_4, config);
}

final List<Thread> threads = new ArrayList<>();
for (int i = 0; i < PARALLELISM; ++i) {
final int idx = i;
final Thread thread =
new Thread(
() -> {
// Subscription: builder-style ctor
try (final SubscriptionPullConsumer consumer4 =
new SubscriptionPullConsumer.Builder()
.consumerId("c" + idx)
.consumerGroupId("cg4")
.autoCommit(true)
.fileSaveFsync(true)
.buildPullConsumer()) {
consumer4.open();
consumer4.subscribe(TOPIC_4);
while (true) {
LockSupport.parkNanos(SLEEP_NS); // wait some time
if (!consumer4.hasMoreData()) {
break;
}
for (final SubscriptionMessage message : consumer4.poll(POLL_TIMEOUT_MS)) {
final SubscriptionTsFileHandler handler = message.getTsFileHandler();
handler.moveFile(
Paths.get(System.getProperty("user.dir"), "new-subscription-dir")
.resolve(handler.getPath().getFileName()));
}
}
} catch (final IOException e) {
throw new RuntimeException(e);
}
});
thread.start();
threads.add(thread);
}

for (final Thread thread : threads) {
thread.join();
}
}

public static void main(final String[] args) throws Exception {
prepareData();
dataQuery();
subscriptionExample1();
subscriptionExample2();
// dataQuery();
// dataSubscription1();
// dataSubscription2();
// dataSubscription3();
dataSubscription4();
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -120,9 +120,6 @@ public class ClusterConstant {
public static final String COMMON_PROPERTIES_FILE = "iotdb-common.properties";
public static final String IOTDB_SYSTEM_PROPERTIES_FILE = "iotdb-system.properties";

public static final String SYSTEM_PROPERTIES_FILE = "system.properties";
public static final String CONFIG_NODE_SYSTEM_PROPERTIES_FILE = "confignode-system.properties";

// Properties' keys
// Common
public static final String CONFIG_NODE_CONSENSUS_PROTOCOL_CLASS =
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,8 +31,8 @@
import java.util.stream.IntStream;

import static org.apache.iotdb.consensus.ConsensusFactory.FAST_IOT_CONSENSUS;
import static org.apache.iotdb.consensus.ConsensusFactory.IOTV2_CONSENSUS;
import static org.apache.iotdb.consensus.ConsensusFactory.IOT_CONSENSUS;
import static org.apache.iotdb.consensus.ConsensusFactory.IOT_CONSENSUS_V2;
import static org.apache.iotdb.consensus.ConsensusFactory.RATIS_CONSENSUS;
import static org.apache.iotdb.consensus.ConsensusFactory.REAL_PIPE_CONSENSUS;
import static org.apache.iotdb.consensus.ConsensusFactory.SIMPLE_CONSENSUS;
Expand Down Expand Up @@ -224,7 +224,7 @@ public static String fromConsensusFullNameToAbbr(String consensus) {
return IOT_CONSENSUS_STR;
case REAL_PIPE_CONSENSUS:
return PIPE_CONSENSUS_STR;
case IOTV2_CONSENSUS:
case IOT_CONSENSUS_V2:
return STREAM_CONSENSUS_STR;
case FAST_IOT_CONSENSUS:
return BATCH_CONSENSUS_STR;
Expand All @@ -244,7 +244,7 @@ public static String fromConsensusAbbrToFullName(String consensus) {
case PIPE_CONSENSUS_STR:
return REAL_PIPE_CONSENSUS;
case STREAM_CONSENSUS_STR:
return IOTV2_CONSENSUS;
return IOT_CONSENSUS_V2;
case BATCH_CONSENSUS_STR:
return FAST_IOT_CONSENSUS;
default:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -438,6 +438,32 @@ public CommonConfig setCnConnectionTimeoutMs(int connectionTimeoutMs) {
return this;
}

@Override
public CommonConfig setPipeHeartbeatIntervalSecondsForCollectingPipeMeta(
int pipeHeartbeatIntervalSecondsForCollectingPipeMeta) {
setProperty(
"pipe_heartbeat_interval_seconds_for_collecting_pipe_meta",
String.valueOf(pipeHeartbeatIntervalSecondsForCollectingPipeMeta));
return this;
}

@Override
public CommonConfig setPipeMetaSyncerInitialSyncDelayMinutes(
long pipeMetaSyncerInitialSyncDelayMinutes) {
setProperty(
"pipe_meta_syncer_initial_sync_delay_minutes",
String.valueOf(pipeMetaSyncerInitialSyncDelayMinutes));
return this;
}

@Override
public CommonConfig setPipeMetaSyncerSyncIntervalMinutes(long pipeMetaSyncerSyncIntervalMinutes) {
setProperty(
"pipe_meta_syncer_sync_interval_minutes",
String.valueOf(pipeMetaSyncerSyncIntervalMinutes));
return this;
}

// For part of the log directory
public String getClusterConfigStr() {
return fromConsensusFullNameToAbbr(properties.getProperty(CONFIG_NODE_CONSENSUS_PROTOCOL_CLASS))
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -445,4 +445,29 @@ public CommonConfig setCnConnectionTimeoutMs(int connectionTimeoutMs) {
cnConfig.setCnConnectionTimeoutMs(connectionTimeoutMs);
return this;
}

@Override
public CommonConfig setPipeHeartbeatIntervalSecondsForCollectingPipeMeta(
int pipeHeartbeatIntervalSecondsForCollectingPipeMeta) {
dnConfig.setPipeHeartbeatIntervalSecondsForCollectingPipeMeta(
pipeHeartbeatIntervalSecondsForCollectingPipeMeta);
cnConfig.setPipeHeartbeatIntervalSecondsForCollectingPipeMeta(
pipeHeartbeatIntervalSecondsForCollectingPipeMeta);
return this;
}

@Override
public CommonConfig setPipeMetaSyncerInitialSyncDelayMinutes(
long pipeMetaSyncerInitialSyncDelayMinutes) {
dnConfig.setPipeMetaSyncerInitialSyncDelayMinutes(pipeMetaSyncerInitialSyncDelayMinutes);
cnConfig.setPipeMetaSyncerInitialSyncDelayMinutes(pipeMetaSyncerInitialSyncDelayMinutes);
return this;
}

@Override
public CommonConfig setPipeMetaSyncerSyncIntervalMinutes(long pipeMetaSyncerSyncIntervalMinutes) {
dnConfig.setPipeMetaSyncerSyncIntervalMinutes(pipeMetaSyncerSyncIntervalMinutes);
cnConfig.setPipeMetaSyncerSyncIntervalMinutes(pipeMetaSyncerSyncIntervalMinutes);
return this;
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -640,10 +640,10 @@ public void setTestMethodName(String testMethodName) {
@Override
public void dumpTestJVMSnapshot() {
for (ConfigNodeWrapper configNodeWrapper : configNodeWrapperList) {
configNodeWrapper.dumpJVMSnapshot(testMethodName);
configNodeWrapper.executeJstack(testMethodName);
}
for (DataNodeWrapper dataNodeWrapper : dataNodeWrapperList) {
dataNodeWrapper.dumpJVMSnapshot(testMethodName);
dataNodeWrapper.executeJstack(testMethodName);
}
}

Expand Down
Loading