public boolean doEncryptConfigEntryQueryWork(ProcessResult procResult) {
        int retryCount = 0;
        while (!shutDown.get()) {
            if (requestPubKeyFromManager(procResult)) {
                break;
            }
            if (++retryCount >= this.mgrConfig.getMetaSyncMaxRetryIfFail() || shutDown.get()) {
                break;
            }
            // sleep then retry
            ProxyUtils.sleepSomeTime(mgrConfig.getMetaSyncWaitMsIfFail());
        }
        if (shutDown.get()) {
            return procResult.setFailResult(ErrorCode.SDK_CLOSED);
        }
        if (!procResult.isSuccess()) {
            if (exptCounter.shouldPrint()) {
                if (this.userEncryptConfigEntry == null) {
                    logger.warn("ConfigManager({}) continue fetch encrypt meta failure, manager={}, username={}",
                            this.callerId, this.encryptConfigVisitUrl, mgrConfig.getRptUserName());
                } else {
                    logger.warn("ConfigManager({}) fetch encrypt failure, manager={}, use the last pubKey, username={}",
                            this.callerId, this.encryptConfigVisitUrl, mgrConfig.getRptUserName());
                }
            }
            return procResult.isSuccess();
        }
        EncryptConfigEntry rmtEncryptEntry =
                (EncryptConfigEntry) procResult.getRetData();
        updateEncryptConfigEntry(rmtEncryptEntry);
        writeCachePubKeyEntryFile(rmtEncryptEntry);
        return procResult.setSuccess();
    }
request proxyHost list from manager, update ClientMgr.proxyHostList and channels

@throws Exception
inlong-sdk/dataproxy-sdk/src/main/java/org/apache/inlong/sdk/dataproxy/config/ProxyConfigManager.java