Skip to content

Commit

Permalink
make it one daemon master thread
Browse files Browse the repository at this point in the history
  • Loading branch information
ByteYue committed Mar 28, 2024
1 parent 31c2fdf commit 7dc41f3
Show file tree
Hide file tree
Showing 3 changed files with 27 additions and 10 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@
import org.apache.doris.cloud.rpc.MetaServiceProxy;
import org.apache.doris.common.DdlException;
import org.apache.doris.common.Pair;
import org.apache.doris.common.util.MasterDaemon;
import org.apache.doris.rpc.RpcException;

import com.google.common.annotations.VisibleForTesting;
Expand All @@ -33,17 +34,22 @@
import java.util.concurrent.locks.ReadWriteLock;
import java.util.concurrent.locks.ReentrantReadWriteLock;

public class StorageVaultMgr {
public class StorageVaultMgr extends MasterDaemon {
private static final Logger LOG = LogManager.getLogger(StorageVaultMgr.class);

// <VaultName, VaultId>
private Pair<String, String> defaultVaultInfo;

private ReadWriteLock rwLock = new ReentrantReadWriteLock();

@Override
protected final void runAfterCatalogReady() {
refreshDefaultVault();
}


public StorageVaultMgr() {}
public StorageVaultMgr() {
super("StorageVaultMgr", 300000);
}

// TODO(ByteYue): The CreateStorageVault should only be handled by master
// which indicates we can maintains one <VaultName, VaultId> map in FE master
Expand Down Expand Up @@ -133,4 +139,15 @@ public void createHdfsVault(StorageVault vault) throws DdlException {
throw new DdlException(e.getMessage());
}
}

public void refreshDefaultVault() {
Cloud.GetDefaultVaultRequest.Builder builder = Cloud.GetDefaultVaultRequest.newBuilder();
try {
Cloud.GetDefaultVaultResponse resp =
MetaServiceProxy.getInstance().getDefaultVault(builder.build());
setDefaultStorageVault(Pair.of(resp.getVaultName(), resp.getVaultId()));
} catch (RpcException e) {
LOG.warn("failed to get default storage vault due to RpcException: {}", e);
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -326,13 +326,13 @@ public Cloud.GetInstanceResponse getInstance(Cloud.GetInstanceRequest request) {
return blockingStub.getRlTaskCommitAttach(request);
}

public Cloud.GetObjStoreInfoResponse getObjStoreInfo(Cloud.GetObjStoreInfoRequest request) {
public Cloud.GetDefaultVaultResponse getDefaultVault(Cloud.GetDefaultVaultRequest request) {
if (!request.hasCloudUniqueId()) {
Cloud.GetObjStoreInfoRequest.Builder builder =
Cloud.GetObjStoreInfoRequest.newBuilder();
Cloud.GetDefaultVaultRequest.Builder builder =
Cloud.GetDefaultVaultRequest.newBuilder();
builder.mergeFrom(request);
return blockingStub.getObjStoreInfo(builder.setCloudUniqueId(Config.cloud_unique_id).build());
return blockingStub.getDefaultVault(builder.setCloudUniqueId(Config.cloud_unique_id).build());
}
return blockingStub.getObjStoreInfo(request);
return blockingStub.getDefaultVault(request);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -443,10 +443,10 @@ public Cloud.AlterObjStoreInfoResponse alterObjStoreInfo(Cloud.AlterObjStoreInfo
}
}

public Cloud.GetObjStoreInfoResponse getObjStoreInfo(Cloud.GetObjStoreInfoRequest request) throws RpcException {
public Cloud.GetDefaultVaultResponse getDefaultVault(Cloud.GetDefaultVaultRequest request) throws RpcException {
try {
final MetaServiceClient client = getProxy();
return client.getObjStoreInfo(request);
return client.getDefaultVault(request);
} catch (Exception e) {
throw new RpcException("", e.getMessage(), e);
}
Expand Down

0 comments on commit 7dc41f3

Please sign in to comment.