[hbase] 05/16: HBASE-26246 Persist the StoreFileTracker configurations to TableDescriptor when creating table (#3666)

2021-12-22 Thread elserj
This is an automated email from the ASF dual-hosted git repository.

elserj pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/hbase.git

commit 0ee1689332856440334c1a0040215d5c86b9705a
Author: Wellington Ramos Chevreuil 
AuthorDate: Sun Sep 12 14:14:03 2021 +0100

HBASE-26246 Persist the StoreFileTracker configurations to TableDescriptor 
when creating table (#3666)

Signed-off-by: Duo Zhang 
---
 .../master/procedure/CreateTableProcedure.java |  7 ++
 .../hbase/regionserver/HRegionFileSystem.java  |  2 +-
 .../MigrationStoreFileTracker.java |  8 +++
 .../storefiletracker/StoreFileTracker.java |  8 +++
 .../storefiletracker/StoreFileTrackerBase.java | 13 +++
 .../storefiletracker/StoreFileTrackerFactory.java  | 25 +++---
 .../org/apache/hadoop/hbase/client/TestAdmin.java  |  6 ++
 .../org/apache/hadoop/hbase/client/TestAdmin3.java |  6 ++
 .../hbase/client/TestAsyncTableAdminApi.java   |  6 ++
 .../hbase/client/TestAsyncTableAdminApi3.java  |  6 ++
 .../procedure/MasterProcedureTestingUtility.java   |  7 ++
 .../master/procedure/TestCreateTableProcedure.java | 17 +++
 .../storefiletracker/TestStoreFileTracker.java | 14 +---
 13 files changed, 113 insertions(+), 12 deletions(-)

diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/CreateTableProcedure.java
 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/CreateTableProcedure.java
index 2313e70..dccea55 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/CreateTableProcedure.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/CreateTableProcedure.java
@@ -18,6 +18,7 @@
 
 package org.apache.hadoop.hbase.master.procedure;
 
+
 import java.io.IOException;
 import java.util.ArrayList;
 import java.util.List;
@@ -33,10 +34,12 @@ import org.apache.hadoop.hbase.TableName;
 import org.apache.hadoop.hbase.client.RegionInfo;
 import org.apache.hadoop.hbase.client.RegionReplicaUtil;
 import org.apache.hadoop.hbase.client.TableDescriptor;
+import org.apache.hadoop.hbase.client.TableDescriptorBuilder;
 import org.apache.hadoop.hbase.client.TableState;
 import org.apache.hadoop.hbase.master.MasterCoprocessorHost;
 import org.apache.hadoop.hbase.master.MasterFileSystem;
 import org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer;
+import 
org.apache.hadoop.hbase.regionserver.storefiletracker.StoreFileTrackerFactory;
 import org.apache.hadoop.hbase.replication.ReplicationException;
 import org.apache.hadoop.hbase.rsgroup.RSGroupInfo;
 import org.apache.hadoop.hbase.util.CommonFSUtils;
@@ -285,6 +288,10 @@ public class CreateTableProcedure
   getTableName(), (newRegions != null ? newRegions.size() : 0));
 }
 
+TableDescriptorBuilder builder = 
TableDescriptorBuilder.newBuilder(tableDescriptor);
+StoreFileTrackerFactory.persistTrackerConfig(env.getMasterConfiguration(), 
builder);
+tableDescriptor = builder.build();
+
 final MasterCoprocessorHost cpHost = env.getMasterCoprocessorHost();
 if (cpHost != null) {
   final RegionInfo[] regions = newRegions == null ? null :
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionFileSystem.java
 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionFileSystem.java
index cb30432..aa0ee27 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionFileSystem.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionFileSystem.java
@@ -610,7 +610,7 @@ public class HRegionFileSystem {
   writeRegionInfoFileContent(conf, fs, regionInfoFile, regionInfoContent);
   HRegionFileSystem regionFs = HRegionFileSystem.openRegionFromFileSystem(
 env.getMasterConfiguration(), fs, getTableDir(), regionInfo, false);
-  insertRegionFilesIntoStoreTracker(allRegionFiles, env, regionFs);
+insertRegionFilesIntoStoreTracker(allRegionFiles, env, regionFs);
 }
 return regionDir;
   }
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/storefiletracker/MigrationStoreFileTracker.java
 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/storefiletracker/MigrationStoreFileTracker.java
index e486e6d..483a240 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/storefiletracker/MigrationStoreFileTracker.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/storefiletracker/MigrationStoreFileTracker.java
@@ -21,6 +21,7 @@ import java.io.IOException;
 import java.util.Collection;
 import java.util.List;
 import org.apache.hadoop.conf.Configuration;
+import org.apache.hadoop.hbase.client.TableDescriptorBuilder;
 import org.apache.hadoop.hbase.regionserver.StoreContext;
 import org.apache.hadoop.hbase.regionserver.StoreFileInfo;
 

[hbase] 05/16: HBASE-26246 Persist the StoreFileTracker configurations to TableDescriptor when creating table (#3666)

2021-12-17 Thread zhangduo
This is an automated email from the ASF dual-hosted git repository.

zhangduo pushed a commit to branch HBASE-26067
in repository https://gitbox.apache.org/repos/asf/hbase.git

commit 1ec667143822738a76fd298aeaaff48a05426ac5
Author: Wellington Ramos Chevreuil 
AuthorDate: Sun Sep 12 14:14:03 2021 +0100

HBASE-26246 Persist the StoreFileTracker configurations to TableDescriptor 
when creating table (#3666)

Signed-off-by: Duo Zhang 
---
 .../master/procedure/CreateTableProcedure.java |  7 ++
 .../hbase/regionserver/HRegionFileSystem.java  |  2 +-
 .../MigrationStoreFileTracker.java |  8 +++
 .../storefiletracker/StoreFileTracker.java |  8 +++
 .../storefiletracker/StoreFileTrackerBase.java | 13 +++
 .../storefiletracker/StoreFileTrackerFactory.java  | 25 +++---
 .../org/apache/hadoop/hbase/client/TestAdmin.java  |  6 ++
 .../org/apache/hadoop/hbase/client/TestAdmin3.java |  6 ++
 .../hbase/client/TestAsyncTableAdminApi.java   |  6 ++
 .../hbase/client/TestAsyncTableAdminApi3.java  |  6 ++
 .../procedure/MasterProcedureTestingUtility.java   |  7 ++
 .../master/procedure/TestCreateTableProcedure.java | 17 +++
 .../storefiletracker/TestStoreFileTracker.java | 14 +---
 13 files changed, 113 insertions(+), 12 deletions(-)

diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/CreateTableProcedure.java
 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/CreateTableProcedure.java
index 2313e70..dccea55 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/CreateTableProcedure.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/CreateTableProcedure.java
@@ -18,6 +18,7 @@
 
 package org.apache.hadoop.hbase.master.procedure;
 
+
 import java.io.IOException;
 import java.util.ArrayList;
 import java.util.List;
@@ -33,10 +34,12 @@ import org.apache.hadoop.hbase.TableName;
 import org.apache.hadoop.hbase.client.RegionInfo;
 import org.apache.hadoop.hbase.client.RegionReplicaUtil;
 import org.apache.hadoop.hbase.client.TableDescriptor;
+import org.apache.hadoop.hbase.client.TableDescriptorBuilder;
 import org.apache.hadoop.hbase.client.TableState;
 import org.apache.hadoop.hbase.master.MasterCoprocessorHost;
 import org.apache.hadoop.hbase.master.MasterFileSystem;
 import org.apache.hadoop.hbase.procedure2.ProcedureStateSerializer;
+import 
org.apache.hadoop.hbase.regionserver.storefiletracker.StoreFileTrackerFactory;
 import org.apache.hadoop.hbase.replication.ReplicationException;
 import org.apache.hadoop.hbase.rsgroup.RSGroupInfo;
 import org.apache.hadoop.hbase.util.CommonFSUtils;
@@ -285,6 +288,10 @@ public class CreateTableProcedure
   getTableName(), (newRegions != null ? newRegions.size() : 0));
 }
 
+TableDescriptorBuilder builder = 
TableDescriptorBuilder.newBuilder(tableDescriptor);
+StoreFileTrackerFactory.persistTrackerConfig(env.getMasterConfiguration(), 
builder);
+tableDescriptor = builder.build();
+
 final MasterCoprocessorHost cpHost = env.getMasterCoprocessorHost();
 if (cpHost != null) {
   final RegionInfo[] regions = newRegions == null ? null :
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionFileSystem.java
 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionFileSystem.java
index cb30432..aa0ee27 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionFileSystem.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionFileSystem.java
@@ -610,7 +610,7 @@ public class HRegionFileSystem {
   writeRegionInfoFileContent(conf, fs, regionInfoFile, regionInfoContent);
   HRegionFileSystem regionFs = HRegionFileSystem.openRegionFromFileSystem(
 env.getMasterConfiguration(), fs, getTableDir(), regionInfo, false);
-  insertRegionFilesIntoStoreTracker(allRegionFiles, env, regionFs);
+insertRegionFilesIntoStoreTracker(allRegionFiles, env, regionFs);
 }
 return regionDir;
   }
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/storefiletracker/MigrationStoreFileTracker.java
 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/storefiletracker/MigrationStoreFileTracker.java
index e486e6d..483a240 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/storefiletracker/MigrationStoreFileTracker.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/storefiletracker/MigrationStoreFileTracker.java
@@ -21,6 +21,7 @@ import java.io.IOException;
 import java.util.Collection;
 import java.util.List;
 import org.apache.hadoop.conf.Configuration;
+import org.apache.hadoop.hbase.client.TableDescriptorBuilder;
 import org.apache.hadoop.hbase.regionserver.StoreContext;
 import org.apache.hadoop.hbase.regionserver.StoreFile