This is an automated email from the ASF dual-hosted git repository.
HTHou pushed a change to branch codex/update-thrift-0.23.0
in repository https://gitbox.apache.org/repos/asf/iotdb.git
from f5e7ec5bc2d Remove obsolete repository from pom.xml
add d58313225e6 Fix compaction writer size checkpointing (#17941)
add 3b9f59fc9e8 [Pipe] Fix omitted legacy tablet compatibility follow-ups
(#17929)
add 1df19137839 Fix pipe runtime meta push blocking user operations
(#17909)
add c39061ae458 Subscription: Drain TsFile batches before termination
(#17926)
add 8c9dbb57c7c Add region group stats to table model database details
(#17738)
add a4ed6dd6ab8 Propagate snapshot load failure during IoTConsensus
AddPeer (#17935)
add 8fad78466f6 Implement GROUP BY ALL functionality (#17937)
add 3f207172056 Fix aggregate write-back output database metadata (#17938)
add c4574b6567a Fix active load cleanup lifecycle (#17947)
add b9d3dbe9123 Remove IoTConsensus auto leader balance toggle (#17950)
add 5e6f1c20cc5 Pipe: serialize sink transfers by region (#17946)
add 3767282ad12 feat(client-cpp): add SessionC DATE/BLOB support and
RowRecord getters (#17956)
add b33278688c2 Pipe: improve progress coverage checks (#17940)
add 9ca448ef4f4 Fix tree model load type mismatch conversion (#17949)
add 0a45a3b7b70 Fix duplicate scheduling in procedure execution (#17902)
add 757f9007fdc Throttle async pipe sink on receiver reject (#17928)
add c94c9a393c7 Fix idempotent table cache update handling (#17959)
add db27f78a1b8 Fix pipe lifecycle restart order in IT (#17962)
add dd3153e4038 Fix tree schema snapshot database creation on master
(#17964)
add b443006e34f Add envelope function to UDF registration script (#17971)
add 8d56ae71e5f Fix PBTree flush for negative child address (#17955)
add 08c046e151e Fix IoTConsensus multi-folder snapshot load for DataRegion
(#17974)
add d11770d7443 feat: add integration test support for StreamNode (#17952)
add d6d57559075 Prevent pipe sink task id from logging secrets (#17981)
add ddc65546ad6 Fix test clean directory deletion (#17860)
add ef0d9f8534f Improve IT cluster readiness diagnostics (#17903)
add 09fba6889f3 Fix missing Objects import in ConfigurationFileUtilsTest
(#17992)
add 5994e1ee93f Support hot reload for cluster runtime configs (#17975)
add 67c69b46589 Fix double living table schema race in IT (#17980)
add 4c2fd638a15 Add generic SSL/TLS configuration support (#17854)
add f971de235ec Fix old pipe root user compatibility (#17985)
add 99d4ea0e744 Merge branch 'master' of github.com:apache/iotdb into
codex/update-thrift-0.23.0
No new revisions were added by this update.
Summary of changes:
.github/workflows/pipe-it.yml | 11 +
external-service-impl/rest/pom.xml | 12 -
.../java/org/apache/iotdb/rest/RestService.java | 9 +
.../org/apache/iotdb/it/env/MultiEnvFactory.java | 1 +
.../iotdb/it/env/cluster/config/MppBaseConfig.java | 4 +
.../it/env/cluster/config/MppCommonConfig.java | 25 +-
.../env/cluster/config/MppSharedCommonConfig.java | 26 +-
.../org/apache/iotdb/it/env/cluster/env/AIEnv.java | 28 +-
.../iotdb/it/env/cluster/env/AbstractEnv.java | 421 +++++++++++++++------
.../iotdb/it/env/cluster/node/AINodeStarter.java | 84 ++++
.../it/env/remote/config/RemoteCommonConfig.java | 21 +-
.../org/apache/iotdb/itbase/env/CommonConfig.java | 11 +-
.../itbase/runtime/ParallelRequestDelegate.java | 13 +-
...oTDBMultiDBRegionGroupLeaderDistributionIT.java | 1 -
.../IoTDBPerDatabaseRegionGroupAllocationIT.java | 8 +-
.../load/IoTDBRegionGroupLeaderDistributionIT.java | 1 -
.../partition/IoTDBPartitionInheritStrategyIT.java | 2 +-
.../partition/IoTDBPartitionShuffleStrategyIT.java | 2 +-
.../db/it/IoTDBSetConfigurationClusterIT.java | 122 ++++++
.../iotdb/db/it/IoTDBSetConfigurationIT.java | 274 ++++++++++++++
.../db/it/schema/IoTDBAlterTimeSeriesTypeIT.java | 4 +-
.../manual/basic/IoTDBPipeLifeCycleIT.java | 2 +-
.../manual/enhanced/IoTDBPipeDoubleLivingIT.java | 8 +
.../manual/enhanced/IoTDBPipeSinkParallelIT.java | 1 +
.../treemodel/auto/basic/IoTDBPipeLifeCycleIT.java | 2 +-
.../auto/basic/IoTDBPipeSinkParallelIT.java | 1 +
.../it/query/recent/IoTDBGroupByAllTableIT.java | 238 ++++++++++++
.../relational/it/schema/IoTDBDatabaseIT.java | 55 ++-
.../apache/iotdb/session/it/IoTDBClientSSLIT.java | 233 ++++++++++++
.../dual/tablemodel/IoTDBSubscriptionTopicIT.java | 86 +++++
integration-test/src/test/resources/test-keystore | Bin 2710 -> 2742 bytes
.../src/test/resources/test-truststore | Bin 1238 -> 1270 bytes
.../api/customizer/parameter/PipeParameters.java | 10 +-
.../java/org/apache/iotdb/cli/AbstractCli.java | 14 +
.../src/main/java/org/apache/iotdb/cli/Cli.java | 4 +
.../org/apache/iotdb/tool/common/Constants.java | 4 +
.../org/apache/iotdb/tool/common/OptionsUtil.java | 10 +
.../apache/iotdb/tool/data/AbstractDataTool.java | 37 ++
.../apache/iotdb/tool/data/ExportDataTable.java | 3 +-
.../org/apache/iotdb/tool/data/ExportDataTree.java | 3 +-
.../apache/iotdb/tool/data/ImportDataTable.java | 3 +-
.../org/apache/iotdb/tool/data/ImportDataTree.java | 3 +-
.../iotdb/tool/schema/AbstractSchemaTool.java | 28 ++
.../iotdb/tool/schema/ExportSchemaTable.java | 3 +-
.../apache/iotdb/tool/schema/ExportSchemaTree.java | 3 +-
.../iotdb/tool/schema/ImportSchemaTable.java | 3 +-
.../apache/iotdb/tool/schema/ImportSchemaTree.java | 3 +-
iotdb-client/client-cpp/src/include/SessionC.h | 12 +
iotdb-client/client-cpp/src/session/SessionC.cpp | 33 ++
iotdb-client/client-cpp/test/cpp/sessionCIT.cpp | 42 +-
.../org/apache/iotdb/isession/SessionConfig.java | 2 +
.../main/java/org/apache/iotdb/jdbc/Config.java | 4 +
.../org/apache/iotdb/jdbc/IoTDBConnection.java | 5 +-
.../apache/iotdb/jdbc/IoTDBConnectionParams.java | 9 +
.../src/main/java/org/apache/iotdb/jdbc/Utils.java | 6 +
.../test/java/org/apache/iotdb/jdbc/UtilsTest.java | 11 +
.../apache/iotdb/rpc/BaseRpcTransportFactory.java | 29 +-
.../java/org/apache/iotdb/rpc/RpcSslUtils.java | 245 ++++++++++++
.../main/java/org/apache/iotdb/rpc/RpcUtils.java | 12 +-
.../java/org/apache/iotdb/rpc/RpcUtilsTest.java | 32 ++
.../iotdb/session/AbstractSessionBuilder.java | 1 +
.../org/apache/iotdb/session/NodesSupplier.java | 6 +
.../java/org/apache/iotdb/session/Session.java | 8 +
.../apache/iotdb/session/SessionConnection.java | 29 +-
.../apache/iotdb/session/TableSessionBuilder.java | 12 +
.../org/apache/iotdb/session/ThriftConnection.java | 6 +-
.../org/apache/iotdb/session/pool/SessionPool.java | 13 +
.../session/pool/TableSessionPoolBuilder.java | 12 +
.../iotdb/confignode/i18n/ConfigNodeMessages.java | 3 +
.../iotdb/confignode/i18n/ConfigNodeMessages.java | 3 +
.../async/AsyncAINodeHeartbeatClientPool.java | 12 +-
.../async/AsyncConfigNodeHeartbeatClientPool.java | 12 +-
.../async/AsyncDataNodeHeartbeatClientPool.java | 22 +-
.../rpc/CheckTimeSeriesExistenceRPCHandler.java | 2 +-
.../rpc/CountPathsUsingTemplateRPCHandler.java | 2 +-
.../rpc/FetchSchemaBlackListRPCHandler.java | 2 +-
.../async/handlers/rpc/SchemaUpdateRPCHandler.java | 2 +-
.../CheckSchemaRegionUsingTemplateRPCHandler.java | 2 +-
.../iotdb/confignode/conf/ConfigNodeConfig.java | 41 +-
.../confignode/conf/ConfigNodeDescriptor.java | 182 ++++++---
.../statemachine/ConfigRegionStateMachine.java | 10 +-
.../iotdb/confignode/manager/ConfigManager.java | 70 +++-
.../confignode/manager/RetryFailedTasksThread.java | 23 +-
.../iotdb/confignode/manager/load/LoadManager.java | 6 +
.../manager/load/balancer/RouteBalancer.java | 9 +-
.../manager/load/cache/AbstractLoadCache.java | 2 +-
.../manager/load/service/EventService.java | 23 +-
.../manager/load/service/HeartbeatService.java | 23 +-
.../manager/load/service/StatisticsService.java | 23 +-
.../manager/load/service/TopologyService.java | 17 +-
.../iotdb/confignode/manager/node/NodeManager.java | 4 +-
.../manager/partition/PartitionManager.java | 8 +-
.../runtime/heartbeat/PipeHeartbeatScheduler.java | 13 +-
.../coordinator/task/PipeTaskCoordinatorLock.java | 16 +-
.../manager/schema/ClusterSchemaManager.java | 14 +-
.../persistence/executor/ConfigPlanExecutor.java | 8 +-
.../confignode/persistence/pipe/PipeInfo.java | 8 +-
.../confignode/persistence/pipe/PipeTaskInfo.java | 55 ++-
.../iotdb/confignode/procedure/Procedure.java | 20 +
.../confignode/procedure/ProcedureExecutor.java | 119 ++++--
.../procedure/TimeoutExecutorThread.java | 32 +-
.../procedure/env/ConfigNodeProcedureEnv.java | 332 +++++++++++++---
.../procedure/impl/StateMachineProcedure.java | 3 +-
.../procedure/impl/cq/CreateCQProcedure.java | 2 +-
.../procedure/impl/node/AbstractNodeProcedure.java | 12 +
.../impl/pipe/AbstractOperatePipeProcedureV2.java | 45 ++-
.../pipe/plugin/CreatePipePluginProcedure.java | 2 +-
.../impl/pipe/plugin/DropPipePluginProcedure.java | 2 +-
.../runtime/PipeHandleLeaderChangeProcedure.java | 4 +-
.../runtime/PipeHandleMetaChangeProcedure.java | 4 +-
.../impl/pipe/runtime/PipeMetaSyncProcedure.java | 6 +-
.../impl/pipe/task/DropPipeProcedureV2.java | 2 +-
.../impl/pipe/task/StartPipeProcedureV2.java | 2 +-
.../impl/pipe/task/StopPipeProcedureV2.java | 2 +-
.../schema/AlterEncodingCompressorProcedure.java | 2 +-
.../schema/AlterTimeSeriesDataTypeProcedure.java | 2 +-
.../impl/schema/DeleteDatabaseProcedure.java | 2 +-
.../impl/schema/DeleteLogicalViewProcedure.java | 2 +-
.../impl/schema/DeleteTimeSeriesProcedure.java | 2 +-
.../AbstractOperateSubscriptionProcedure.java | 20 +
.../runtime/CommitProgressSyncProcedure.java | 10 +-
.../runtime/ConsumerGroupMetaSyncProcedure.java | 10 +-
.../SubscriptionHandleLeaderChangeProcedure.java | 9 +-
.../topic/runtime/TopicMetaSyncProcedure.java | 9 +-
.../impl/trigger/CreateTriggerProcedure.java | 2 +-
.../impl/trigger/DropTriggerProcedure.java | 2 +-
.../confignode/procedure/scheduler/LockQueue.java | 10 +-
.../scheduler/SimpleProcedureScheduler.java | 37 +-
.../task/PipeTaskCoordinatorLockTest.java | 60 +++
.../pipe/PipeTaskInfoAutoRestartTest.java | 169 ++++++++-
.../pipe/PipeTaskInfoConsensusPipeTest.java | 4 +-
.../iotdb/confignode/procedure/TestLockRegime.java | 23 ++
.../procedure/TestProcedureExecutor.java | 92 +++++
.../procedure/entity/SimpleLockProcedure.java | 11 +-
.../PipeHandleLeaderChangeProcedureTest.java | 47 +++
.../org/apache/iotdb/consensus/IStateMachine.java | 28 +-
.../consensus/iot/IoTConsensusServerImpl.java | 34 +-
.../iot/client/SyncIoTConsensusServiceClient.java | 3 +-
.../service/IoTConsensusRPCServiceProcessor.java | 12 +-
.../ratis/ApplicationStateMachineProxy.java | 13 +-
.../utils/NoHostnameVerificationTrustManager.java | 88 -----
.../apache/iotdb/consensus/ratis/utils/Utils.java | 35 +-
.../simple/SimpleConsensusServerImpl.java | 4 +-
.../apache/iotdb/consensus/EmptyStateMachine.java | 4 +-
.../iot/AddPeerSnapshotLoadFailureTest.java | 354 +++++++++++++++++
.../iotdb/consensus/iot/util/TestStateMachine.java | 4 +-
.../apache/iotdb/consensus/ratis/TestUtils.java | 4 +-
.../consensus/simple/SimpleConsensusTest.java | 4 +-
.../apache/iotdb/db/i18n/DataNodeMiscMessages.java | 5 +
.../apache/iotdb/db/i18n/DataNodePipeMessages.java | 39 ++
.../apache/iotdb/db/i18n/DataNodeMiscMessages.java | 4 +
.../apache/iotdb/db/i18n/DataNodePipeMessages.java | 43 ++-
.../java/org/apache/iotdb/db/conf/IoTDBConfig.java | 17 +-
.../org/apache/iotdb/db/conf/IoTDBDescriptor.java | 42 +-
.../iotdb/db/conf/rest/IoTDBRestServiceConfig.java | 11 +
.../db/conf/rest/IoTDBRestServiceDescriptor.java | 4 +
.../dataregion/DataRegionStateMachine.java | 50 ++-
.../schemaregion/SchemaRegionStateMachine.java | 25 +-
.../db/pipe/agent/task/PipeDataNodeTaskAgent.java | 129 ++++++-
.../subtask/processor/PipeProcessorSubtask.java | 4 +-
.../agent/task/subtask/sink/PipeSinkSubtask.java | 36 +-
.../subtask/sink/PipeSinkSubtaskLifeCycle.java | 8 +-
.../task/subtask/sink/PipeSinkSubtaskManager.java | 57 +--
.../db/pipe/event/common/row/PipeRowCollector.java | 24 +-
.../common/tablet/PipeRawTabletEventConverter.java | 42 +-
.../event/common/tablet/PipeTabletCollector.java | 23 +-
.../metric/schema/PipeSchemaRegionSinkMetrics.java | 12 +-
.../metric/sink/PipeDataRegionSinkMetrics.java | 15 +-
.../processor/aggregate/AggregateProcessor.java | 13 +-
.../protocol/thrift/IoTDBDataNodeReceiver.java | 37 +-
.../request/PipeTransferTabletBatchReq.java | 98 ++++-
.../request/PipeTransferTabletRawReq.java | 13 +-
.../thrift/async/IoTDBDataRegionAsyncSink.java | 116 ++++++
.../handler/PipeTransferTrackableHandler.java | 56 ++-
.../async/handler/PipeTransferTsFileHandler.java | 2 +-
.../pipe/sink/util/TabletStatementConverter.java | 87 ++++-
...istoricalDataRegionTsFileAndDeletionSource.java | 136 ++++---
.../PipeTsFileEpochProgressIndexKeeper.java | 2 +-
.../iotdb/db/protocol/client/ConfigNodeClient.java | 3 +-
.../iotdb/db/protocol/client/an/AINodeClient.java | 3 +-
.../impl/DataNodeInternalRPCServiceImpl.java | 13 +-
.../InformationSchemaContentSupplierFactory.java | 4 +-
.../load/TreeSchemaAutoCreatorAndVerifier.java | 17 +-
.../config/metadata/relational/ShowDBTask.java | 4 +-
.../plan/AbstractFragmentParallelPlanner.java | 4 +-
.../relational/analyzer/AggregationAnalyzer.java | 84 +++-
.../relational/analyzer/StatementAnalyzer.java | 28 +-
.../plan/relational/sql/parser/AstBuilder.java | 16 +-
.../plan/relational/sql/parser/ErrorHandler.java | 6 +-
.../statement/metadata/ShowDatabaseStatement.java | 8 +-
.../schemaengine/schemaregion/ISchemaRegion.java | 10 +-
.../GeneralRegionAttributeSecurityService.java | 67 ++--
.../schemaregion/impl/SchemaRegionMemoryImpl.java | 6 +-
.../schemaregion/impl/SchemaRegionPBTreeImpl.java | 6 +-
.../mtree/impl/pbtree/flush/Scheduler.java | 69 ++--
.../pbtree/schemafile/pagemgr/PageManager.java | 9 +-
.../db/schemaengine/table/DataNodeTableCache.java | 47 ++-
.../schemaengine/table/InformationSchemaUtils.java | 7 +-
.../iotdb/db/service/DataNodeShutdownHook.java | 10 +-
.../iotdb/db/storageengine/StorageEngine.java | 3 +
.../utils/writer/AbstractCompactionWriter.java | 165 +++++++-
.../writer/AbstractCrossCompactionWriter.java | 3 +-
.../writer/AbstractInnerCompactionWriter.java | 4 +-
.../utils/writer/FastInnerCompactionWriter.java | 10 +-
.../writer/ReadPointCrossCompactionWriter.java | 5 +-
.../writer/ReadPointInnerCompactionWriter.java | 5 +-
.../writer/RepairUnsortedFileCompactionWriter.java | 4 +-
.../dataregion/snapshot/SnapshotLoader.java | 47 +++
.../db/storageengine/load/LoadTsFileManager.java | 13 +
.../storageengine/load/active/ActiveLoadAgent.java | 6 +
.../load/active/ActiveLoadDirScanner.java | 17 +-
.../active/ActiveLoadScheduledExecutorService.java | 21 +-
.../load/active/ActiveLoadTsFileLoader.java | 27 +-
.../broker/SubscriptionPrefetchingQueue.java | 199 +++++-----
.../event/batch/SubscriptionPipeEventBatch.java | 23 +-
.../event/batch/SubscriptionPipeEventBatches.java | 29 ++
.../metadata/mtree/schemafile/SchemaFileTest.java | 33 ++
.../schemaRegion/SchemaRegionManagementTest.java | 28 +-
.../agent/plugin/PipeDataNodePluginAgentTest.java | 25 +-
.../agent/task/PipeSinkSubtaskExecutorTest.java | 1 +
.../task/subtask/sink/PipeSinkSubtaskTest.java | 44 +++
.../pipe/event/PipeTabletInsertionEventTest.java | 32 ++
.../protocol/thrift/IoTDBDataNodeReceiverTest.java | 10 +
.../pipe/sink/PipeDataNodeThriftRequestTest.java | 128 ++++++-
.../handler/PipeTransferTrackableHandlerTest.java | 38 +-
...ricalDataRegionTsFileAndDeletionSourceTest.java | 100 +++++
.../PipeTsFileEpochProgressIndexKeeperTest.java | 46 ++-
.../plan/analyze/load/LoadTsFileAnalyzerTest.java | 64 ++++
.../schemaengine/table/DataNodeTableCacheTest.java | 106 ++++++
.../utils/writer/AbstractCompactionWriterTest.java | 167 ++++++++
.../compaction/repair/AbstractRepairDataTest.java | 11 +-
.../dataregion/snapshot/IoTDBSnapshotTest.java | 98 +++++
.../iotdb/db/utils/ConfigurationFileUtilsTest.java | 8 +-
.../apache/iotdb/db/utils/EnvironmentUtils.java | 88 ++++-
.../EnvironmentUtilsTest.java} | 34 +-
.../src/test/resources/iotdb-system.properties | 1 +
.../conf/iotdb-system.properties.template | 45 ++-
.../apache/iotdb/commons/i18n/CommonMessages.java | 8 +
.../apache/iotdb/commons/i18n/CommonMessages.java | 8 +
.../client/request/AsyncRequestManager.java | 19 +-
.../commons/client/sync/SyncAINodeClient.java | 3 +-
.../client/sync/SyncConfigNodeIServiceClient.java | 3 +-
.../sync/SyncDataNodeInternalServiceClient.java | 3 +-
.../SyncDataNodeMPPDataExchangeServiceClient.java | 3 +-
.../sync/SyncIoTConsensusV2ServiceClient.java | 3 +-
.../apache/iotdb/commons/conf/CommonConfig.java | 11 +
.../iotdb/commons/conf/CommonDescriptor.java | 9 +
.../iotdb/commons/conf/ConfigurationFileUtils.java | 16 +-
.../commons/consensus/index/ProgressIndex.java | 11 +
.../iotdb/commons/partition/DataPartition.java | 18 +-
.../plugin/constructor/PipeSinkConstructor.java | 8 +-
.../agent/task/execution/PipeSubtaskExecutor.java | 10 +-
.../pipe/agent/task/meta/PipeStaticMeta.java | 60 +++
.../task/subtask/PipeAbstractSinkSubtask.java | 4 +-
.../agent/task/subtask/PipeReportableSubtask.java | 16 +-
.../pipe/agent/task/subtask/PipeSubtask.java | 6 +-
.../pipe/config/constant/PipeSinkConstant.java | 22 ++
.../plan/relational/sql/ast/GroupBy.java | 26 +-
.../sql/util/CommonQuerySqlFormatter.java | 9 +-
.../schema/column/ColumnHeaderConstant.java | 11 +-
.../commons/schema/table/InformationSchema.java | 6 +
.../service/AbstractThriftServiceThread.java | 52 +--
.../client/request/AsyncRequestManagerTest.java | 226 +++++++++++
.../apache/iotdb/commons/utils/FileUtilsTest.java | 8 +-
.../db/relational/grammar/sql/RelationalSql.g4 | 3 +-
.../src/main/thrift/confignode.thrift | 2 -
library-udf/src/assembly/tools/register-UDF.bat | 1 +
library-udf/src/assembly/tools/register-UDF.sh | 1 +
pom.xml | 12 +-
269 files changed, 7209 insertions(+), 1332 deletions(-)
create mode 100644
integration-test/src/main/java/org/apache/iotdb/it/env/cluster/node/AINodeStarter.java
create mode 100644
integration-test/src/test/java/org/apache/iotdb/db/it/IoTDBSetConfigurationClusterIT.java
create mode 100644
integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/IoTDBGroupByAllTableIT.java
create mode 100644
integration-test/src/test/java/org/apache/iotdb/session/it/IoTDBClientSSLIT.java
create mode 100644
iotdb-client/service-rpc/src/main/java/org/apache/iotdb/rpc/RpcSslUtils.java
create mode 100644
iotdb-core/confignode/src/test/java/org/apache/iotdb/confignode/manager/pipe/coordinator/task/PipeTaskCoordinatorLockTest.java
delete mode 100644
iotdb-core/consensus/src/main/java/org/apache/iotdb/consensus/ratis/utils/NoHostnameVerificationTrustManager.java
create mode 100644
iotdb-core/consensus/src/test/java/org/apache/iotdb/consensus/iot/AddPeerSnapshotLoadFailureTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/schemaengine/table/DataNodeTableCacheTest.java
create mode 100644
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/storageengine/dataregion/compaction/execute/utils/writer/AbstractCompactionWriterTest.java
copy
iotdb-core/datanode/src/test/java/org/apache/iotdb/db/{pipe/processor/twostage/plugin/TwoStageCountProcessorTest.java
=> utils/EnvironmentUtilsTest.java} (51%)
create mode 100644
iotdb-core/node-commons/src/test/java/org/apache/iotdb/commons/client/request/AsyncRequestManagerTest.java