Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[IOTDB-1079] Virtual storage group first mile stone #2405

Merged
merged 67 commits into from
Jan 18, 2021

Conversation

SilverNarcissus
Copy link
Contributor

@SilverNarcissus SilverNarcissus commented Dec 31, 2020

Description

Currently out concurrency unit is storage group which can't make full use of cpu cores when user only set 1 or 2 storage group. We need virtual storage group to improve concurrent performance. This PR finish first part of the design.

JIRA:
https://issues.apache.org/jira/projects/IOTDB/issues/IOTDB-1079?filter=myopenissues

Design: https://cwiki.apache.org/confluence/display/IOTDB/Separate+memory+and+disk+management+in+storage+group+road+map+design

Performance report:
https://tower.im/teams/138444/todos/16237/


This PR has:

  • been self-reviewed.
    • concurrent read
    • concurrent write
    • concurrent read and write
  • added documentation for new or modified features or behaviors.
  • added Javadocs for most classes and all non-trivial methods.
  • added or updated version, license, or notice information
  • added comments explaining the "why" and the intent of the code wherever would not be obvious
    for an unfamiliar reader.
  • added unit tests or modified existing tests to cover new code paths, ensuring the threshold
    for code coverage.
  • added integration tests.
  • been tested in a test IoTDB cluster.

Key changed/added classes (or packages if there are too many classes) in this PR

…_partition

# Conflicts:
#	server/src/main/java/org/apache/iotdb/db/engine/StorageEngine.java
…_partition

# Conflicts:
#	server/src/main/java/org/apache/iotdb/db/engine/StorageEngine.java
…_partition_2_merge

# Conflicts:
#	server/src/main/java/org/apache/iotdb/db/conf/IoTDBConfig.java
#	server/src/main/java/org/apache/iotdb/db/engine/StorageEngine.java
…_partition_2_merge

# Conflicts:
#	server/src/main/java/org/apache/iotdb/db/engine/StorageEngine.java
Copy link
Contributor

@jt2594838 jt2594838 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A great job, but I believe you can make it even better.

…_partition_2_merge

# Conflicts:
#	server/src/main/java/org/apache/iotdb/db/engine/storagegroup/StorageGroupProcessor.java
Comment on lines 368 to 379
logger.info("{} submit a compaction merge task", virtualstorageGroupName);
logger.info("{} submit a compaction merge task", virtualstorageGroupId);
try {
CompactionMergeTaskPoolManager.getInstance()
.submitTask(
tsFileManagement.new CompactionRecoverTask(this::closeCompactionMergeCallBack));
} catch (RejectedExecutionException e) {
this.closeCompactionMergeCallBack();
logger.error("{} compaction submit task failed", virtualstorageGroupName);
logger.error("{} compaction submit task failed", virtualstorageGroupId);
}
} else {
logger.error("{} compaction pool not started ,recover failed",
virtualstorageGroupName);
virtualstorageGroupId);
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Storage group name is still missing in these logs. And please also check other places.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sure, I have fixed all the logs~

@sonarcloud
Copy link

sonarcloud bot commented Jan 18, 2021

Kudos, SonarCloud Quality Gate passed!

Bug A 0 Bugs
Vulnerability A 0 Vulnerabilities
Security Hotspot A 0 Security Hotspots
Code Smell A 35 Code Smells

No Coverage information No Coverage information
0.0% 0.0% Duplication

warning The version of Java (1.8.0_252) you have used to run this analysis is deprecated and we will stop accepting it soon. Please update to at least Java 11.
Read more here

@qiaojialin qiaojialin merged commit 44e764b into master Jan 18, 2021
@qiaojialin qiaojialin deleted the virtual_partition_2_merge branch January 18, 2021 07:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants