From 5cee0634c5a87ebff5cf9309c33259cc9234e91e Mon Sep 17 00:00:00 2001 From: vikasrathee-cs Date: Mon, 13 Apr 2026 15:45:08 +0530 Subject: [PATCH 1/2] fixed tests --- Claude_Code_Guava_Upgrade_OnePager.docx | Bin 0 -> 12850 bytes .../twill/TwillAppLifecycleEventHandler.java | 1 - .../gateway/handlers/AuthorizationHandler.java | 3 --- .../handlers/ProgramScheduleHttpHandler.java | 4 ---- .../app/preview/DefaultPreviewRunner.java | 1 - .../app/preview/PreviewRunnerTwillRunnable.java | 2 -- .../ProgramControllerServiceAdapter.java | 1 - .../internal/app/runtime/ProgramRunners.java | 2 -- .../batch/BasicMapReduceTaskContext.java | 2 -- .../app/runtime/batch/MainOutputCommitter.java | 1 - .../app/runtime/batch/MapReduceClassLoader.java | 3 --- .../runtime/batch/MapReduceRuntimeService.java | 2 -- .../batch/dataset/DataSetInputSplit.java | 1 - .../distributed/DistributedProgramRunner.java | 1 - .../DistributedWorkflowProgramRunner.java | 1 - .../remote/RemoteExecutionTwillPreparer.java | 2 -- .../monitor/DirectRuntimeRequestValidator.java | 1 - .../app/runtime/plugin/PluginInstantiator.java | 1 - .../runtime/service/ServiceProgramRunner.java | 1 - .../http/DelayedHttpServiceResponder.java | 1 - .../service/http/HttpHandlerGenerator.java | 1 - .../app/runtime/worker/WorkerProgramRunner.java | 2 -- .../app/runtime/workflow/WorkflowDriver.java | 1 - .../runtime/workflow/WorkflowProgramRunner.java | 2 -- .../app/services/AppFabricProcessorService.java | 3 --- .../internal/app/services/AppFabricServer.java | 3 --- .../services/ApplicationLifecycleService.java | 2 -- .../internal/app/worker/TaskWorkerService.java | 1 - .../app/worker/TaskWorkerTwillRunnable.java | 1 - .../sidecar/ArtifactLocalizerTwillRunnable.java | 1 - .../app/worker/system/SystemWorkerService.java | 1 - .../system/SystemWorkerTwillRunnable.java | 1 - .../environment/k8s/MasterEnvironmentMain.java | 2 -- .../operations/OperationalStatsService.java | 1 - .../cdap/scheduler/ProgramScheduleService.java | 7 ------- .../ScheduleNotificationSubscriberService.java | 3 --- .../AbstractProgramRuntimeServiceTest.java | 4 ++-- .../cdap/app/runtime/ProgramControllerTest.java | 5 ++--- .../batch/MapReduceProgramRunnerTest.java | 9 ++++++--- .../input/MapReduceWithMultipleInputsTest.java | 8 ++++++-- .../MapReduceWithMultipleOutputsTest.java | 6 +++++- .../monitor/RuntimeClientServiceTest.java | 13 ++++++------- .../service/http/HttpHandlerGeneratorTest.java | 15 ++++++++++----- .../app/services/http/AppFabricTestBase.java | 4 ++-- .../tethering/TetheringClientHandlerTest.java | 8 ++++---- .../impersonation/DefaultUGIProviderTest.java | 6 ++++-- .../cdap/cdap/common/app/MainClassLoader.java | 4 ---- .../cdap/common/guice/KafkaClientModule.java | 8 ++++++++ .../cdap/common/io/DFSSeekableInputStream.java | 1 - .../java/io/cdap/cdap/common/io/Locations.java | 1 - .../cdap/common/service/CommandPortService.java | 1 - .../service/RetryOnStartFailureService.java | 11 ++++++++--- .../cdap/common/twill/NoopTwillController.java | 3 --- .../cdap/common/utils/TimeBoundIterator.java | 1 - .../internal/app/store/RunRecordDetail.java | 1 - .../distributed/TransactionServiceTest.java | 4 ++-- .../data/dataset/SystemDatasetInstantiator.java | 2 -- .../cdap/data2/audit/DefaultAuditPublisher.java | 1 - .../data2/datafabric/dataset/DatasetsUtil.java | 1 - .../dataset/RemoteDatasetFramework.java | 1 - .../service/DefaultDatasetTypeService.java | 1 - .../type/ConstantClassLoaderProvider.java | 1 - .../dataset2/DatasetDefinitionRegistries.java | 1 - .../dataset2/SingleThreadDatasetCache.java | 1 - .../data2/dataset2/lib/file/FileSetDataset.java | 1 - .../io/cdap/cdap/data2/queue/DequeueResult.java | 1 - .../transaction/DynamicTransactionExecutor.java | 1 - .../dataset2/lib/cube/AbstractCubeTest.java | 3 +++ .../gateway/handlers/log/LogDataOffset.java | 1 + .../cdap/cdap/gateway/handlers/log/LogLine.java | 1 + .../cdap/gateway/handlers/log/OffsetLine.java | 1 + .../gateway/router/NettyRouterPipelineTest.java | 4 ++-- .../gateway/router/NettyRouterTestBase.java | 16 ++++------------ .../metrics/jmx/JmxMetricsCollectorTest.java | 2 +- .../distributed/SparkExecutionServiceTest.java | 8 +++----- .../cdap/service/FileUploadServiceTestRun.java | 2 +- .../io/cdap/cdap/spark/app/ForkSpark.scala | 4 ++-- .../cdap/test/messaging/MessagingSpark.scala | 4 ++-- .../cdap/cdap/logging/appender/LogMessage.java | 1 - .../handlers/AbstractChunkedCallback.java | 1 - .../logging/logbuffer/LogBufferService.java | 1 - .../kafka/KafkaLogProcessorPipeline.java | 4 ---- .../guice/DistributedMetricsClientModule.java | 2 -- pom.xml | 4 ++-- 84 files changed, 88 insertions(+), 159 deletions(-) create mode 100644 Claude_Code_Guava_Upgrade_OnePager.docx diff --git a/Claude_Code_Guava_Upgrade_OnePager.docx b/Claude_Code_Guava_Upgrade_OnePager.docx new file mode 100644 index 0000000000000000000000000000000000000000..ad5cc984e4a9842f78d6d301b3aa24cf3db3c915 GIT binary patch literal 12850 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≪fpk75y=yt@HGpJRn7!mT(v7 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 F{|^#<&FcUF literal 0 HcmV?d00001 diff --git a/cdap-app-fabric/src/main/java/io/cdap/cdap/common/twill/TwillAppLifecycleEventHandler.java b/cdap-app-fabric/src/main/java/io/cdap/cdap/common/twill/TwillAppLifecycleEventHandler.java index 0ca496ed2db9..16d8809bb292 100644 --- a/cdap-app-fabric/src/main/java/io/cdap/cdap/common/twill/TwillAppLifecycleEventHandler.java +++ b/cdap-app-fabric/src/main/java/io/cdap/cdap/common/twill/TwillAppLifecycleEventHandler.java @@ -43,7 +43,6 @@ import java.nio.file.Files; import java.util.concurrent.atomic.AtomicBoolean; import org.apache.hadoop.conf.Configuration; -import org.apache.twill.api.EventHandler; import org.apache.twill.api.EventHandlerContext; import org.apache.twill.api.RunId; import org.apache.twill.zookeeper.ZKClientService; diff --git a/cdap-app-fabric/src/main/java/io/cdap/cdap/gateway/handlers/AuthorizationHandler.java b/cdap-app-fabric/src/main/java/io/cdap/cdap/gateway/handlers/AuthorizationHandler.java index cd065f011166..b293d8ae5efb 100644 --- a/cdap-app-fabric/src/main/java/io/cdap/cdap/gateway/handlers/AuthorizationHandler.java +++ b/cdap-app-fabric/src/main/java/io/cdap/cdap/gateway/handlers/AuthorizationHandler.java @@ -17,7 +17,6 @@ package io.cdap.cdap.gateway.handlers; import com.google.common.base.MoreObjects; -import com.google.common.base.Objects; import com.google.common.reflect.TypeToken; import com.google.gson.Gson; import com.google.gson.GsonBuilder; @@ -34,10 +33,8 @@ import io.cdap.cdap.proto.codec.EntityIdTypeAdapter; import io.cdap.cdap.proto.id.EntityId; import io.cdap.cdap.proto.security.Action; -import io.cdap.cdap.proto.security.Authorizable; import io.cdap.cdap.proto.security.AuthorizationRequest; import io.cdap.cdap.proto.security.GrantRequest; -import io.cdap.cdap.proto.security.GrantedPermission; import io.cdap.cdap.proto.security.Permission; import io.cdap.cdap.proto.security.PermissionAdapterFactory; import io.cdap.cdap.proto.security.Principal; diff --git a/cdap-app-fabric/src/main/java/io/cdap/cdap/gateway/handlers/ProgramScheduleHttpHandler.java b/cdap-app-fabric/src/main/java/io/cdap/cdap/gateway/handlers/ProgramScheduleHttpHandler.java index 32a6d576a4b3..5fd4a346f3bb 100644 --- a/cdap-app-fabric/src/main/java/io/cdap/cdap/gateway/handlers/ProgramScheduleHttpHandler.java +++ b/cdap-app-fabric/src/main/java/io/cdap/cdap/gateway/handlers/ProgramScheduleHttpHandler.java @@ -19,7 +19,6 @@ import com.google.common.base.Charsets; import com.google.common.base.Joiner; import com.google.common.base.MoreObjects; -import com.google.common.base.Objects; import com.google.gson.JsonElement; import com.google.gson.JsonObject; import com.google.gson.JsonSyntaxException; @@ -38,15 +37,12 @@ import io.cdap.cdap.internal.app.runtime.schedule.ProgramSchedule; import io.cdap.cdap.internal.app.runtime.schedule.ProgramScheduleRecord; import io.cdap.cdap.internal.app.runtime.schedule.ProgramScheduleStatus; -import io.cdap.cdap.internal.app.runtime.schedule.SchedulerException; import io.cdap.cdap.internal.app.runtime.schedule.store.Schedulers; -import io.cdap.cdap.internal.app.runtime.schedule.trigger.ProgramStatusTrigger; import io.cdap.cdap.internal.app.services.ProgramLifecycleService; import io.cdap.cdap.internal.app.store.ApplicationMeta; import io.cdap.cdap.internal.schedule.constraint.Constraint; import io.cdap.cdap.proto.BatchProgram; import io.cdap.cdap.proto.BatchProgramSchedule; -import io.cdap.cdap.proto.ProgramStatus; import io.cdap.cdap.proto.ProgramType; import io.cdap.cdap.proto.ProtoTrigger; import io.cdap.cdap.proto.ScheduleDetail; diff --git a/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/preview/DefaultPreviewRunner.java b/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/preview/DefaultPreviewRunner.java index f72ffdeda95d..d646136d6f01 100644 --- a/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/preview/DefaultPreviewRunner.java +++ b/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/preview/DefaultPreviewRunner.java @@ -17,7 +17,6 @@ package io.cdap.cdap.internal.app.preview; import com.google.common.util.concurrent.AbstractIdleService; -import com.google.common.util.concurrent.Futures; import com.google.common.util.concurrent.Service; import com.google.common.util.concurrent.Uninterruptibles; import com.google.gson.Gson; diff --git a/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/preview/PreviewRunnerTwillRunnable.java b/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/preview/PreviewRunnerTwillRunnable.java index 7265e12dd5fb..315d9dcbdb90 100644 --- a/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/preview/PreviewRunnerTwillRunnable.java +++ b/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/preview/PreviewRunnerTwillRunnable.java @@ -33,7 +33,6 @@ import io.cdap.cdap.app.deploy.Configurator; import io.cdap.cdap.app.guice.AuditLogWriterModule; import io.cdap.cdap.app.preview.PreviewConfigModule; -import io.cdap.cdap.app.preview.PreviewRunner; import io.cdap.cdap.app.preview.PreviewRunnerManager; import io.cdap.cdap.app.preview.PreviewRunnerManagerModule; import io.cdap.cdap.common.conf.CConfiguration; @@ -85,7 +84,6 @@ import org.apache.tephra.TransactionSystemClient; import org.apache.twill.api.AbstractTwillRunnable; import org.apache.twill.api.TwillContext; -import org.apache.twill.api.TwillRunnable; import org.apache.twill.common.Threads; import org.apache.twill.discovery.DiscoveryService; import org.apache.twill.discovery.DiscoveryServiceClient; diff --git a/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/ProgramControllerServiceAdapter.java b/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/ProgramControllerServiceAdapter.java index 50cf3852d46f..bf1cdb38662b 100644 --- a/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/ProgramControllerServiceAdapter.java +++ b/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/ProgramControllerServiceAdapter.java @@ -18,7 +18,6 @@ import com.google.common.util.concurrent.Service; import io.cdap.cdap.api.exception.WrappedStageException; -import io.cdap.cdap.app.runtime.ProgramController; import io.cdap.cdap.common.conf.Constants; import io.cdap.cdap.common.logging.Loggers; import io.cdap.cdap.proto.id.ProgramRunId; diff --git a/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/ProgramRunners.java b/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/ProgramRunners.java index 34feea52b953..075bbdb4b44b 100644 --- a/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/ProgramRunners.java +++ b/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/ProgramRunners.java @@ -24,7 +24,6 @@ import com.google.common.base.Strings; import com.google.common.collect.Maps; import com.google.common.io.ByteStreams; -import com.google.common.util.concurrent.ListenableFuture; import com.google.common.util.concurrent.Service; import io.cdap.cdap.api.metrics.MetricsCollectionService; import io.cdap.cdap.api.metrics.MetricsContext; @@ -32,7 +31,6 @@ import io.cdap.cdap.app.guice.ClusterMode; import io.cdap.cdap.app.runtime.Arguments; import io.cdap.cdap.app.runtime.ProgramOptions; -import io.cdap.cdap.app.runtime.ProgramRunner; import io.cdap.cdap.common.app.RunIds; import io.cdap.cdap.common.conf.Constants; import io.cdap.cdap.common.io.Locations; diff --git a/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/batch/BasicMapReduceTaskContext.java b/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/batch/BasicMapReduceTaskContext.java index 233553ae67c5..bf961e4f992f 100644 --- a/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/batch/BasicMapReduceTaskContext.java +++ b/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/batch/BasicMapReduceTaskContext.java @@ -17,7 +17,6 @@ package io.cdap.cdap.internal.app.runtime.batch; import com.google.common.base.Preconditions; -import com.google.common.collect.ImmutableMap; import com.google.common.collect.ImmutableSet; import com.google.common.collect.Iterables; import com.google.common.collect.Maps; @@ -68,7 +67,6 @@ import io.cdap.cdap.messaging.spi.MessagingService; import io.cdap.cdap.proto.id.NamespaceId; import io.cdap.cdap.proto.id.TopicId; -import io.cdap.cdap.proto.security.Principal; import io.cdap.cdap.security.spi.authentication.AuthenticationContext; import io.cdap.cdap.security.spi.authorization.AccessEnforcer; import io.cdap.cdap.security.spi.authorization.UnauthorizedException; diff --git a/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/batch/MainOutputCommitter.java b/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/batch/MainOutputCommitter.java index 4ec463fb2254..d13e740bdb74 100644 --- a/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/batch/MainOutputCommitter.java +++ b/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/batch/MainOutputCommitter.java @@ -16,7 +16,6 @@ package io.cdap.cdap.internal.app.runtime.batch; -import com.google.common.base.Throwables; import com.google.inject.Injector; import io.cdap.cdap.api.data.batch.DatasetOutputCommitter; import io.cdap.cdap.app.guice.ClusterMode; diff --git a/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/batch/MapReduceClassLoader.java b/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/batch/MapReduceClassLoader.java index ff55a4c0ab4c..a1998e731478 100644 --- a/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/batch/MapReduceClassLoader.java +++ b/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/batch/MapReduceClassLoader.java @@ -37,12 +37,9 @@ import io.cdap.cdap.internal.app.runtime.ProgramClassLoader; import io.cdap.cdap.internal.app.runtime.ProgramRunners; import io.cdap.cdap.internal.app.runtime.batch.distributed.DistributedMapReduceTaskContextProvider; -import io.cdap.cdap.internal.app.runtime.batch.distributed.MapReduceContainerLauncher; import io.cdap.cdap.internal.app.runtime.plugin.PluginClassLoaders; import io.cdap.cdap.internal.app.runtime.plugin.PluginInstantiator; import io.cdap.cdap.logging.context.LoggingContextHelper; -import io.cdap.cdap.logging.context.MapReduceLoggingContext; -import io.cdap.cdap.logging.context.WorkflowProgramLoggingContext; import io.cdap.cdap.proto.id.ProgramId; import java.io.File; import java.io.IOException; diff --git a/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/batch/MapReduceRuntimeService.java b/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/batch/MapReduceRuntimeService.java index 87e8353fa227..bbb062b377cb 100644 --- a/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/batch/MapReduceRuntimeService.java +++ b/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/batch/MapReduceRuntimeService.java @@ -21,7 +21,6 @@ import com.google.common.base.Preconditions; import com.google.common.collect.Sets; import com.google.common.io.ByteStreams; -import com.google.common.io.Files; import com.google.common.reflect.TypeToken; import com.google.common.util.concurrent.AbstractExecutionThreadService; import com.google.inject.Injector; @@ -111,7 +110,6 @@ import org.apache.twill.api.ClassAcceptor; import org.apache.twill.api.Configs; import org.apache.twill.filesystem.Location; -import org.apache.twill.filesystem.LocationFactory; import org.apache.twill.internal.ApplicationBundler; import org.slf4j.Logger; import org.slf4j.LoggerFactory; diff --git a/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/batch/dataset/DataSetInputSplit.java b/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/batch/dataset/DataSetInputSplit.java index ca07c702be15..70ee9480d5db 100644 --- a/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/batch/dataset/DataSetInputSplit.java +++ b/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/batch/dataset/DataSetInputSplit.java @@ -18,7 +18,6 @@ import io.cdap.cdap.api.data.batch.Split; import io.cdap.cdap.api.data.batch.Splits; -import io.cdap.cdap.api.dataset.Dataset; import java.io.DataInput; import java.io.DataOutput; import java.io.IOException; diff --git a/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/distributed/DistributedProgramRunner.java b/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/distributed/DistributedProgramRunner.java index 2bd0bb8b378c..0f75d8f70667 100644 --- a/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/distributed/DistributedProgramRunner.java +++ b/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/distributed/DistributedProgramRunner.java @@ -103,7 +103,6 @@ import org.apache.twill.api.TwillPreparer; import org.apache.twill.api.TwillRunner; import org.apache.twill.api.logging.LogEntry; -import org.apache.twill.api.logging.LogHandler; import org.apache.twill.common.Cancellable; import org.apache.twill.common.Threads; import org.apache.twill.filesystem.Location; diff --git a/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/distributed/DistributedWorkflowProgramRunner.java b/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/distributed/DistributedWorkflowProgramRunner.java index 2dfbd00e4b7d..2ddb8838ff4d 100644 --- a/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/distributed/DistributedWorkflowProgramRunner.java +++ b/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/distributed/DistributedWorkflowProgramRunner.java @@ -25,7 +25,6 @@ import io.cdap.cdap.api.common.RuntimeArguments; import io.cdap.cdap.api.schedule.SchedulableProgramType; import io.cdap.cdap.api.workflow.ScheduleProgramInfo; -import io.cdap.cdap.api.workflow.Workflow; import io.cdap.cdap.api.workflow.WorkflowActionNode; import io.cdap.cdap.api.workflow.WorkflowConditionNode; import io.cdap.cdap.api.workflow.WorkflowForkNode; diff --git a/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/distributed/remote/RemoteExecutionTwillPreparer.java b/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/distributed/remote/RemoteExecutionTwillPreparer.java index cb8723487929..aa01f41e0b23 100644 --- a/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/distributed/remote/RemoteExecutionTwillPreparer.java +++ b/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/distributed/remote/RemoteExecutionTwillPreparer.java @@ -53,8 +53,6 @@ import org.apache.twill.api.ClassAcceptor; import org.apache.twill.api.LocalFile; import org.apache.twill.api.RuntimeSpecification; -import org.apache.twill.api.TwillPreparer; -import org.apache.twill.api.TwillRunnable; import org.apache.twill.api.TwillSpecification; import org.apache.twill.filesystem.Location; import org.apache.twill.filesystem.LocationFactory; diff --git a/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/monitor/DirectRuntimeRequestValidator.java b/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/monitor/DirectRuntimeRequestValidator.java index b9d46216a181..54ccf314b91f 100644 --- a/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/monitor/DirectRuntimeRequestValidator.java +++ b/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/monitor/DirectRuntimeRequestValidator.java @@ -17,7 +17,6 @@ package io.cdap.cdap.internal.app.runtime.monitor; import com.google.common.base.MoreObjects; -import com.google.common.base.Objects; import com.google.common.cache.CacheBuilder; import com.google.common.cache.CacheLoader; import com.google.common.cache.LoadingCache; diff --git a/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/plugin/PluginInstantiator.java b/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/plugin/PluginInstantiator.java index 2445a36bb909..b82c77f28d40 100644 --- a/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/plugin/PluginInstantiator.java +++ b/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/plugin/PluginInstantiator.java @@ -18,7 +18,6 @@ import com.google.common.base.Defaults; import com.google.common.base.Strings; -import com.google.common.base.Throwables; import com.google.common.cache.CacheBuilder; import com.google.common.cache.CacheLoader; import com.google.common.cache.LoadingCache; diff --git a/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/service/ServiceProgramRunner.java b/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/service/ServiceProgramRunner.java index 4af863534d0f..7fc69a553d47 100644 --- a/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/service/ServiceProgramRunner.java +++ b/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/service/ServiceProgramRunner.java @@ -29,7 +29,6 @@ import io.cdap.cdap.app.program.Program; import io.cdap.cdap.app.runtime.ProgramController; import io.cdap.cdap.app.runtime.ProgramOptions; -import io.cdap.cdap.app.runtime.ProgramRunner; import io.cdap.cdap.common.conf.CConfiguration; import io.cdap.cdap.common.conf.SConfiguration; import io.cdap.cdap.common.encryption.AeadCipher; diff --git a/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/service/http/DelayedHttpServiceResponder.java b/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/service/http/DelayedHttpServiceResponder.java index 9741cb2baca6..7c3ac3d12b76 100644 --- a/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/service/http/DelayedHttpServiceResponder.java +++ b/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/service/http/DelayedHttpServiceResponder.java @@ -22,7 +22,6 @@ import io.cdap.cdap.api.common.HttpErrorStatusProvider; import io.cdap.cdap.api.metrics.MetricsContext; import io.cdap.cdap.api.service.http.HttpContentProducer; -import io.cdap.cdap.api.service.http.HttpServiceResponder; import io.cdap.http.BodyProducer; import io.cdap.http.HttpResponder; import io.netty.buffer.ByteBuf; diff --git a/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/service/http/HttpHandlerGenerator.java b/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/service/http/HttpHandlerGenerator.java index 24971f1a8429..fd9277533ede 100644 --- a/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/service/http/HttpHandlerGenerator.java +++ b/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/service/http/HttpHandlerGenerator.java @@ -35,7 +35,6 @@ import io.cdap.cdap.internal.asm.Methods; import io.cdap.cdap.internal.asm.Signatures; import io.cdap.http.BodyConsumer; -import io.cdap.http.HttpHandler; import io.cdap.http.HttpResponder; import io.netty.handler.codec.http.HttpRequest; import java.io.IOException; diff --git a/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/worker/WorkerProgramRunner.java b/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/worker/WorkerProgramRunner.java index 841230b8424a..24c387d98537 100644 --- a/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/worker/WorkerProgramRunner.java +++ b/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/worker/WorkerProgramRunner.java @@ -23,12 +23,10 @@ import io.cdap.cdap.api.metrics.MetricsCollectionService; import io.cdap.cdap.api.security.store.SecureStore; import io.cdap.cdap.api.security.store.SecureStoreManager; -import io.cdap.cdap.api.worker.Worker; import io.cdap.cdap.api.worker.WorkerSpecification; import io.cdap.cdap.app.program.Program; import io.cdap.cdap.app.runtime.ProgramController; import io.cdap.cdap.app.runtime.ProgramOptions; -import io.cdap.cdap.app.runtime.ProgramRunner; import io.cdap.cdap.common.conf.CConfiguration; import io.cdap.cdap.common.internal.remote.RemoteClientFactory; import io.cdap.cdap.common.namespace.NamespaceQueryAdmin; diff --git a/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/workflow/WorkflowDriver.java b/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/workflow/WorkflowDriver.java index db2528fe0660..9bfc79f5ec78 100644 --- a/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/workflow/WorkflowDriver.java +++ b/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/workflow/WorkflowDriver.java @@ -102,7 +102,6 @@ import java.util.concurrent.ExecutorService; import java.util.concurrent.Future; import java.util.concurrent.LinkedBlockingQueue; -import java.util.concurrent.ThreadFactory; import java.util.concurrent.ThreadPoolExecutor; import java.util.concurrent.TimeUnit; import java.util.concurrent.locks.Lock; diff --git a/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/workflow/WorkflowProgramRunner.java b/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/workflow/WorkflowProgramRunner.java index 1aa222e4c5cb..ff71a2c57314 100644 --- a/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/workflow/WorkflowProgramRunner.java +++ b/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/runtime/workflow/WorkflowProgramRunner.java @@ -23,12 +23,10 @@ import io.cdap.cdap.api.metrics.MetricsCollectionService; import io.cdap.cdap.api.security.store.SecureStore; import io.cdap.cdap.api.security.store.SecureStoreManager; -import io.cdap.cdap.api.workflow.Workflow; import io.cdap.cdap.api.workflow.WorkflowSpecification; import io.cdap.cdap.app.program.Program; import io.cdap.cdap.app.runtime.ProgramController; import io.cdap.cdap.app.runtime.ProgramOptions; -import io.cdap.cdap.app.runtime.ProgramRunner; import io.cdap.cdap.app.runtime.ProgramRunnerFactory; import io.cdap.cdap.app.runtime.ProgramStateWriter; import io.cdap.cdap.common.conf.CConfiguration; diff --git a/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/services/AppFabricProcessorService.java b/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/services/AppFabricProcessorService.java index cad3789dfce1..0ba01f973aae 100644 --- a/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/services/AppFabricProcessorService.java +++ b/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/services/AppFabricProcessorService.java @@ -16,10 +16,7 @@ package io.cdap.cdap.internal.app.services; -import com.google.common.collect.ImmutableList; import com.google.common.util.concurrent.AbstractIdleService; -import com.google.common.util.concurrent.Futures; -import com.google.common.util.concurrent.ListenableFuture; import com.google.inject.Inject; import com.google.inject.name.Named; import io.cdap.cdap.api.feature.FeatureFlagsProvider; diff --git a/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/services/AppFabricServer.java b/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/services/AppFabricServer.java index 153a2764dc0a..8a891525b248 100644 --- a/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/services/AppFabricServer.java +++ b/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/services/AppFabricServer.java @@ -16,10 +16,7 @@ package io.cdap.cdap.internal.app.services; -import com.google.common.collect.ImmutableList; import com.google.common.util.concurrent.AbstractIdleService; -import com.google.common.util.concurrent.Futures; -import com.google.common.util.concurrent.ListenableFuture; import com.google.inject.Inject; import com.google.inject.name.Named; import io.cdap.cdap.api.feature.FeatureFlagsProvider; diff --git a/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/services/ApplicationLifecycleService.java b/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/services/ApplicationLifecycleService.java index 027b9c092a52..df1ebccce7bb 100644 --- a/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/services/ApplicationLifecycleService.java +++ b/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/services/ApplicationLifecycleService.java @@ -24,7 +24,6 @@ import com.google.common.util.concurrent.AbstractIdleService; import com.google.gson.Gson; import com.google.gson.GsonBuilder; -import com.google.gson.JsonIOException; import com.google.gson.stream.JsonWriter; import com.google.inject.Inject; import io.cdap.cdap.api.ProgramSpecification; @@ -53,7 +52,6 @@ import io.cdap.cdap.app.store.ScanApplicationsRequest; import io.cdap.cdap.app.store.Store; import io.cdap.cdap.common.ApplicationNotFoundException; -import io.cdap.cdap.common.ArtifactAlreadyExistsException; import io.cdap.cdap.common.ArtifactNotFoundException; import io.cdap.cdap.common.BadRequestException; import io.cdap.cdap.common.CannotBeDeletedException; diff --git a/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/worker/TaskWorkerService.java b/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/worker/TaskWorkerService.java index c3a22e98526f..07e117425772 100644 --- a/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/worker/TaskWorkerService.java +++ b/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/worker/TaskWorkerService.java @@ -20,7 +20,6 @@ import com.google.common.util.concurrent.AbstractIdleService; import com.google.inject.Inject; import io.cdap.cdap.api.metrics.MetricsCollectionService; -import io.cdap.cdap.api.service.worker.RunnableTask; import io.cdap.cdap.common.conf.CConfiguration; import io.cdap.cdap.common.conf.Constants; import io.cdap.cdap.common.conf.Constants.TaskWorker; diff --git a/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/worker/TaskWorkerTwillRunnable.java b/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/worker/TaskWorkerTwillRunnable.java index d9a42bab9a48..bb487801f5cf 100644 --- a/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/worker/TaskWorkerTwillRunnable.java +++ b/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/worker/TaskWorkerTwillRunnable.java @@ -60,7 +60,6 @@ import org.apache.hadoop.conf.Configuration; import org.apache.twill.api.AbstractTwillRunnable; import org.apache.twill.api.TwillContext; -import org.apache.twill.api.TwillRunnable; import org.apache.twill.common.Threads; import org.apache.twill.discovery.DiscoveryService; import org.apache.twill.discovery.DiscoveryServiceClient; diff --git a/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/worker/sidecar/ArtifactLocalizerTwillRunnable.java b/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/worker/sidecar/ArtifactLocalizerTwillRunnable.java index d98c73effc2b..a51086977fab 100644 --- a/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/worker/sidecar/ArtifactLocalizerTwillRunnable.java +++ b/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/worker/sidecar/ArtifactLocalizerTwillRunnable.java @@ -64,7 +64,6 @@ import org.apache.hadoop.conf.Configuration; import org.apache.twill.api.AbstractTwillRunnable; import org.apache.twill.api.TwillContext; -import org.apache.twill.api.TwillRunnable; import org.apache.twill.common.Threads; import org.apache.twill.discovery.DiscoveryService; import org.apache.twill.discovery.DiscoveryServiceClient; diff --git a/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/worker/system/SystemWorkerService.java b/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/worker/system/SystemWorkerService.java index 5ab8f453b0cd..5060aad39c4b 100644 --- a/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/worker/system/SystemWorkerService.java +++ b/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/worker/system/SystemWorkerService.java @@ -21,7 +21,6 @@ import com.google.inject.Inject; import com.google.inject.Injector; import io.cdap.cdap.api.metrics.MetricsCollectionService; -import io.cdap.cdap.api.service.worker.RunnableTask; import io.cdap.cdap.common.conf.CConfiguration; import io.cdap.cdap.common.conf.Constants; import io.cdap.cdap.common.conf.SConfiguration; diff --git a/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/worker/system/SystemWorkerTwillRunnable.java b/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/worker/system/SystemWorkerTwillRunnable.java index 2bec1908c0bd..0ca9f8640ac9 100644 --- a/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/worker/system/SystemWorkerTwillRunnable.java +++ b/cdap-app-fabric/src/main/java/io/cdap/cdap/internal/app/worker/system/SystemWorkerTwillRunnable.java @@ -99,7 +99,6 @@ import org.apache.tephra.TransactionSystemClient; import org.apache.twill.api.AbstractTwillRunnable; import org.apache.twill.api.TwillContext; -import org.apache.twill.api.TwillRunnable; import org.apache.twill.api.TwillRunner; import org.apache.twill.api.TwillRunnerService; import org.apache.twill.common.Threads; diff --git a/cdap-app-fabric/src/main/java/io/cdap/cdap/master/environment/k8s/MasterEnvironmentMain.java b/cdap-app-fabric/src/main/java/io/cdap/cdap/master/environment/k8s/MasterEnvironmentMain.java index cd48d72e29fb..e5b0c1ba756f 100644 --- a/cdap-app-fabric/src/main/java/io/cdap/cdap/master/environment/k8s/MasterEnvironmentMain.java +++ b/cdap-app-fabric/src/main/java/io/cdap/cdap/master/environment/k8s/MasterEnvironmentMain.java @@ -39,8 +39,6 @@ import io.cdap.cdap.master.spi.environment.MasterEnvironmentRunnableContext; import io.cdap.cdap.security.auth.TokenManager; import io.cdap.cdap.security.auth.context.AuthenticationContextModules; -import io.cdap.cdap.security.auth.context.SystemAuthenticationContext; -import io.cdap.cdap.security.auth.context.WorkerAuthenticationContext; import io.cdap.cdap.security.guice.CoreSecurityRuntimeModule; import io.cdap.cdap.security.impersonation.SecurityUtil; import io.cdap.cdap.security.spi.authenticator.RemoteAuthenticator; diff --git a/cdap-app-fabric/src/main/java/io/cdap/cdap/operations/OperationalStatsService.java b/cdap-app-fabric/src/main/java/io/cdap/cdap/operations/OperationalStatsService.java index 9cbb926a0c5d..054ee762316a 100644 --- a/cdap-app-fabric/src/main/java/io/cdap/cdap/operations/OperationalStatsService.java +++ b/cdap-app-fabric/src/main/java/io/cdap/cdap/operations/OperationalStatsService.java @@ -34,7 +34,6 @@ import javax.management.InstanceNotFoundException; import javax.management.MBeanRegistrationException; import javax.management.MBeanServer; -import javax.management.MXBean; import javax.management.MalformedObjectNameException; import javax.management.ObjectName; import org.apache.thrift.TException; diff --git a/cdap-app-fabric/src/main/java/io/cdap/cdap/scheduler/ProgramScheduleService.java b/cdap-app-fabric/src/main/java/io/cdap/cdap/scheduler/ProgramScheduleService.java index 710f5e2b0f23..6ab969a8bfa8 100644 --- a/cdap-app-fabric/src/main/java/io/cdap/cdap/scheduler/ProgramScheduleService.java +++ b/cdap-app-fabric/src/main/java/io/cdap/cdap/scheduler/ProgramScheduleService.java @@ -17,19 +17,13 @@ package io.cdap.cdap.scheduler; import com.google.common.base.MoreObjects; -import com.google.common.base.Objects; import com.google.inject.Inject; import io.cdap.cdap.api.ProgramStatus; import io.cdap.cdap.api.schedule.Trigger; -import io.cdap.cdap.common.AlreadyExistsException; import io.cdap.cdap.common.BadRequestException; -import io.cdap.cdap.common.ConflictException; -import io.cdap.cdap.common.NotFoundException; -import io.cdap.cdap.common.ProfileConflictException; import io.cdap.cdap.internal.app.runtime.schedule.ProgramSchedule; import io.cdap.cdap.internal.app.runtime.schedule.ProgramScheduleRecord; import io.cdap.cdap.internal.app.runtime.schedule.ProgramScheduleStatus; -import io.cdap.cdap.internal.app.runtime.schedule.SchedulerException; import io.cdap.cdap.internal.app.runtime.schedule.TimeSchedulerService; import io.cdap.cdap.internal.app.runtime.schedule.store.Schedulers; import io.cdap.cdap.internal.schedule.constraint.Constraint; @@ -44,7 +38,6 @@ import io.cdap.cdap.proto.security.StandardPermission; import io.cdap.cdap.security.spi.authentication.AuthenticationContext; import io.cdap.cdap.security.spi.authorization.AccessEnforcer; -import io.cdap.cdap.security.spi.authorization.UnauthorizedException; import java.util.Collection; import java.util.HashSet; import java.util.List; diff --git a/cdap-app-fabric/src/main/java/io/cdap/cdap/scheduler/ScheduleNotificationSubscriberService.java b/cdap-app-fabric/src/main/java/io/cdap/cdap/scheduler/ScheduleNotificationSubscriberService.java index f492aca53300..24bd7130df87 100644 --- a/cdap-app-fabric/src/main/java/io/cdap/cdap/scheduler/ScheduleNotificationSubscriberService.java +++ b/cdap-app-fabric/src/main/java/io/cdap/cdap/scheduler/ScheduleNotificationSubscriberService.java @@ -18,7 +18,6 @@ import com.google.common.collect.ImmutableMap; import com.google.common.util.concurrent.AbstractIdleService; -import com.google.common.util.concurrent.Futures; import com.google.common.util.concurrent.Service; import com.google.gson.Gson; import com.google.gson.JsonSyntaxException; @@ -51,10 +50,8 @@ import java.util.Iterator; import java.util.List; import java.util.Map; -import java.util.concurrent.ExecutionException; import java.util.concurrent.Executors; import java.util.concurrent.ScheduledExecutorService; -import java.util.stream.Collectors; import javax.annotation.Nullable; import org.apache.twill.common.Threads; import org.slf4j.Logger; diff --git a/cdap-app-fabric/src/test/java/io/cdap/cdap/app/runtime/AbstractProgramRuntimeServiceTest.java b/cdap-app-fabric/src/test/java/io/cdap/cdap/app/runtime/AbstractProgramRuntimeServiceTest.java index 0dd8c7f2aba2..071eb68c74d4 100644 --- a/cdap-app-fabric/src/test/java/io/cdap/cdap/app/runtime/AbstractProgramRuntimeServiceTest.java +++ b/cdap-app-fabric/src/test/java/io/cdap/cdap/app/runtime/AbstractProgramRuntimeServiceTest.java @@ -110,7 +110,7 @@ public void testConcurrentStartLimit() throws Exception { Service service = new FastService(); ProgramController controller = new ProgramControllerServiceAdapter(service, programId.run(RunIds.generate())); - service.start(); + service.startAsync().awaitRunning(); return controller; }; @@ -323,7 +323,7 @@ private ProgramRunnerFactory createProgramRunnerFactory(final Map startCompletion = service.start(); + service.startAsync(); controller.addListener(new AbstractListener() { private volatile boolean initCalled; @@ -86,7 +85,7 @@ public void alive() { } }, executor); - startCompletion.get(); + service.awaitRunning(); service.stopAsync().awaitTerminated(); } diff --git a/cdap-app-fabric/src/test/java/io/cdap/cdap/internal/app/runtime/batch/MapReduceProgramRunnerTest.java b/cdap-app-fabric/src/test/java/io/cdap/cdap/internal/app/runtime/batch/MapReduceProgramRunnerTest.java index d4ee727b2b5c..c2baa32b7e61 100644 --- a/cdap-app-fabric/src/test/java/io/cdap/cdap/internal/app/runtime/batch/MapReduceProgramRunnerTest.java +++ b/cdap-app-fabric/src/test/java/io/cdap/cdap/internal/app/runtime/batch/MapReduceProgramRunnerTest.java @@ -55,6 +55,7 @@ import java.io.FileWriter; import java.io.FilenameFilter; import java.io.IOException; +import java.io.InputStreamReader; import java.io.OutputStreamWriter; import java.io.PrintWriter; import java.net.URI; @@ -324,9 +325,11 @@ private void testMapreduceWithFile(String inputDatasetName, String inputPaths, Assert.assertFalse(resultLocation.isDirectory()); // read output and verify result - String line = CharStreams.readFirstLine( - CharStreams.newReaderSupplier( - Locations.newInputSupplier(resultLocation), Charsets.UTF_8)); + String line; + try (InputStreamReader reader = new InputStreamReader(Locations.newInputSupplier(resultLocation).getInput(), + Charsets.UTF_8)) { + line = CharStreams.readLines(reader).stream().findFirst().orElse(null); + } Assert.assertNotNull(line); String[] fields = line.split(outputSeparator == null ? ":" : outputSeparator); Assert.assertEquals(2, fields.length); diff --git a/cdap-app-fabric/src/test/java/io/cdap/cdap/internal/app/runtime/batch/dataset/input/MapReduceWithMultipleInputsTest.java b/cdap-app-fabric/src/test/java/io/cdap/cdap/internal/app/runtime/batch/dataset/input/MapReduceWithMultipleInputsTest.java index a28a67b501fe..0f15a323a4b4 100644 --- a/cdap-app-fabric/src/test/java/io/cdap/cdap/internal/app/runtime/batch/dataset/input/MapReduceWithMultipleInputsTest.java +++ b/cdap-app-fabric/src/test/java/io/cdap/cdap/internal/app/runtime/batch/dataset/input/MapReduceWithMultipleInputsTest.java @@ -24,6 +24,7 @@ import io.cdap.cdap.internal.app.deploy.pipeline.ApplicationWithPrograms; import io.cdap.cdap.internal.app.runtime.BasicArguments; import io.cdap.cdap.internal.app.runtime.batch.MapReduceRunnerTestBase; +import java.io.InputStreamReader; import java.io.PrintWriter; import java.util.List; import org.apache.twill.filesystem.Location; @@ -80,8 +81,11 @@ public void testSimpleJoin() throws Exception { // will only be 1 part file, due to the small amount of data Location outputLocation = outputFileSet.getBaseLocation().append("output").append("part-r-00000"); - List lines = CharStreams.readLines( - CharStreams.newReaderSupplier(Locations.newInputSupplier(outputLocation), Charsets.UTF_8)); + List lines; + try (InputStreamReader reader = new InputStreamReader(Locations.newInputSupplier(outputLocation).getInput(), + Charsets.UTF_8)) { + lines = CharStreams.readLines(reader); + } Assert.assertEquals(ImmutableList.of("1 Bob 75", "2 Samuel 18", "3 Joe 60"), lines); diff --git a/cdap-app-fabric/src/test/java/io/cdap/cdap/internal/app/runtime/batch/dataset/output/MapReduceWithMultipleOutputsTest.java b/cdap-app-fabric/src/test/java/io/cdap/cdap/internal/app/runtime/batch/dataset/output/MapReduceWithMultipleOutputsTest.java index 74c9f8983ce7..61460867c34f 100644 --- a/cdap-app-fabric/src/test/java/io/cdap/cdap/internal/app/runtime/batch/dataset/output/MapReduceWithMultipleOutputsTest.java +++ b/cdap-app-fabric/src/test/java/io/cdap/cdap/internal/app/runtime/batch/dataset/output/MapReduceWithMultipleOutputsTest.java @@ -25,6 +25,7 @@ import io.cdap.cdap.internal.app.runtime.BasicArguments; import io.cdap.cdap.internal.app.runtime.batch.MapReduceRunnerTestBase; import java.io.IOException; +import java.io.InputStreamReader; import java.io.PrintWriter; import java.util.List; import org.apache.twill.filesystem.Location; @@ -70,7 +71,10 @@ public void testMultipleOutputs() throws Exception { private List readFromOutput(FileSet fileSet, String relativePath) throws IOException { // small amount of data, so expect all data from just 1 file Location location = fileSet.getLocation(relativePath).append("part-m-00000"); - return CharStreams.readLines(CharStreams.newReaderSupplier(Locations.newInputSupplier(location), Charsets.UTF_8)); + try (InputStreamReader reader = new InputStreamReader(Locations.newInputSupplier(location).getInput(), + Charsets.UTF_8)) { + return CharStreams.readLines(reader); + } } @Test diff --git a/cdap-app-fabric/src/test/java/io/cdap/cdap/internal/app/runtime/monitor/RuntimeClientServiceTest.java b/cdap-app-fabric/src/test/java/io/cdap/cdap/internal/app/runtime/monitor/RuntimeClientServiceTest.java index 154e54089f85..486c5ab1d03e 100644 --- a/cdap-app-fabric/src/test/java/io/cdap/cdap/internal/app/runtime/monitor/RuntimeClientServiceTest.java +++ b/cdap-app-fabric/src/test/java/io/cdap/cdap/internal/app/runtime/monitor/RuntimeClientServiceTest.java @@ -17,7 +17,6 @@ package io.cdap.cdap.internal.app.runtime.monitor; import com.google.common.reflect.TypeToken; -import com.google.common.util.concurrent.ListenableFuture; import com.google.common.util.concurrent.Service; import com.google.gson.Gson; import com.google.inject.AbstractModule; @@ -486,9 +485,9 @@ public void testRuntimeClientStop() throws Exception { ProgramStateWriter programStateWriter = new MessagingProgramStateWriter( clientProgramStatePublisher); - ListenableFuture stopFuture = runtimeClientService.stop(); + runtimeClientService.stopAsync(); try { - stopFuture.get(2, TimeUnit.SECONDS); + runtimeClientService.awaitTerminated(2, TimeUnit.SECONDS); Assert.fail("Expected runtime client service not stopped"); } catch (TimeoutException e) { // Expected @@ -496,7 +495,7 @@ public void testRuntimeClientStop() throws Exception { // Publish a program completed state, which should unblock the client service stop. programStateWriter.completed(PROGRAM_RUN_ID); - stopFuture.get(); + runtimeClientService.awaitTerminated(); } /** @@ -526,9 +525,9 @@ public void testExternalStop() throws Exception { messagePublisher.publish(NamespaceId.SYSTEM.getNamespace(), topic, "msg1" + topic, "msg2" + topic); - ListenableFuture stopFuture = runtimeClientService.stop(); + runtimeClientService.stopAsync(); try { - stopFuture.get(2, TimeUnit.SECONDS); + runtimeClientService.awaitTerminated(2, TimeUnit.SECONDS); Assert.fail("Expected runtime client service not stopped"); } catch (TimeoutException e) { // Expected @@ -536,7 +535,7 @@ public void testExternalStop() throws Exception { // Publish a program completed state, which should unblock the client service stop. programStateWriter.completed(PROGRAM_RUN_ID); - stopFuture.get(); + runtimeClientService.awaitTerminated(); } private List fetchMessages(MessagingContext messagingContext, diff --git a/cdap-app-fabric/src/test/java/io/cdap/cdap/internal/app/runtime/service/http/HttpHandlerGeneratorTest.java b/cdap-app-fabric/src/test/java/io/cdap/cdap/internal/app/runtime/service/http/HttpHandlerGeneratorTest.java index 072e38b427ef..3def83c87afb 100644 --- a/cdap-app-fabric/src/test/java/io/cdap/cdap/internal/app/runtime/service/http/HttpHandlerGeneratorTest.java +++ b/cdap-app-fabric/src/test/java/io/cdap/cdap/internal/app/runtime/service/http/HttpHandlerGeneratorTest.java @@ -486,7 +486,9 @@ protected FileHandler createHandler() { String.format("http://%s:%d/content/download/test.txt", bindAddress.getHostName(), bindAddress.getPort())).openConnection(); try { - ByteStreams.copy(urlConn.getInputStream(), Files.newOutputStreamSupplier(downloadFile)); + try (FileOutputStream fos = new FileOutputStream(downloadFile)) { + ByteStreams.copy(urlConn.getInputStream(), fos); + } } finally { urlConn.disconnect(); } @@ -510,8 +512,10 @@ protected FileHandler createHandler() { try { urlConn.setDoOutput(true); urlConn.setRequestMethod("POST"); - Files.copy(file, urlConn.getOutputStream()); - ByteStreams.copy(urlConn.getInputStream(), Files.newOutputStreamSupplier(downloadFile)); + java.nio.file.Files.copy(file.toPath(), urlConn.getOutputStream()); + try (FileOutputStream fos = new FileOutputStream(downloadFile)) { + ByteStreams.copy(urlConn.getInputStream(), fos); + } Assert.assertEquals(200, urlConn.getResponseCode()); Assert.assertTrue(Files.equal(file, downloadFile)); } finally { @@ -563,8 +567,9 @@ protected NoAnnotationHandler createHandler() { bindAddress.getHostName(), bindAddress.getPort())).openConnection(); urlConn.setReadTimeout(2000); urlConn.setDoOutput(true); - ByteStreams.copy(ByteStreams.newInputStreamSupplier("Hello".getBytes(Charsets.UTF_8)), - urlConn.getOutputStream()); + try (java.io.ByteArrayInputStream bais = new java.io.ByteArrayInputStream("Hello".getBytes(Charsets.UTF_8))) { + ByteStreams.copy(bais, urlConn.getOutputStream()); + } Assert.assertEquals("Hello test", new String(ByteStreams.toByteArray(urlConn.getInputStream()), Charsets.UTF_8)); diff --git a/cdap-app-fabric/src/test/java/io/cdap/cdap/internal/app/services/http/AppFabricTestBase.java b/cdap-app-fabric/src/test/java/io/cdap/cdap/internal/app/services/http/AppFabricTestBase.java index d2329440c4ef..be0731812e86 100644 --- a/cdap-app-fabric/src/test/java/io/cdap/cdap/internal/app/services/http/AppFabricTestBase.java +++ b/cdap-app-fabric/src/test/java/io/cdap/cdap/internal/app/services/http/AppFabricTestBase.java @@ -20,7 +20,7 @@ import com.google.common.base.Preconditions; import com.google.common.base.Strings; import com.google.common.collect.ImmutableMap; -import com.google.common.io.InputSupplier; +import io.cdap.cdap.common.io.InputSupplier; import com.google.common.util.concurrent.Service; import com.google.gson.Gson; import com.google.gson.GsonBuilder; @@ -532,7 +532,7 @@ private HttpResponse addArtifact(Id.Artifact artifactId, InputSupplier 0), return immediately + if (startedCount.get() > 0) { + return; + } delegate.awaitTerminated(); } @Override public void awaitTerminated(long timeout, TimeUnit unit) throws TimeoutException { + // If the delegate was not actually stopped (ref count > 0), return immediately + if (startedCount.get() > 0) { + return; + } delegate.awaitTerminated(timeout, unit); } diff --git a/cdap-common/src/main/java/io/cdap/cdap/common/io/DFSSeekableInputStream.java b/cdap-common/src/main/java/io/cdap/cdap/common/io/DFSSeekableInputStream.java index 2ca22cfc1250..7a81e35c1bfa 100644 --- a/cdap-common/src/main/java/io/cdap/cdap/common/io/DFSSeekableInputStream.java +++ b/cdap-common/src/main/java/io/cdap/cdap/common/io/DFSSeekableInputStream.java @@ -20,7 +20,6 @@ import java.io.IOException; import org.apache.hadoop.fs.FSDataInputStream; import org.apache.hadoop.fs.Seekable; -import org.apache.twill.filesystem.Location; /** * Implementation of {@link SeekableInputStream} for {@link Location}. diff --git a/cdap-common/src/main/java/io/cdap/cdap/common/io/Locations.java b/cdap-common/src/main/java/io/cdap/cdap/common/io/Locations.java index 0858095afe7a..a558c6a00f57 100644 --- a/cdap-common/src/main/java/io/cdap/cdap/common/io/Locations.java +++ b/cdap-common/src/main/java/io/cdap/cdap/common/io/Locations.java @@ -18,7 +18,6 @@ import com.google.common.base.Preconditions; import com.google.common.base.Supplier; import com.google.common.base.Suppliers; -import com.google.common.base.Throwables; import com.google.common.io.ByteStreams; import io.cdap.cdap.common.lang.FunctionWithException; import io.cdap.cdap.common.lang.jar.BundleJarUtil; diff --git a/cdap-common/src/main/java/io/cdap/cdap/common/service/CommandPortService.java b/cdap-common/src/main/java/io/cdap/cdap/common/service/CommandPortService.java index 8e02a7157b2b..911f5e737ab5 100644 --- a/cdap-common/src/main/java/io/cdap/cdap/common/service/CommandPortService.java +++ b/cdap-common/src/main/java/io/cdap/cdap/common/service/CommandPortService.java @@ -24,7 +24,6 @@ import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStreamWriter; -import java.io.Writer; import java.net.InetAddress; import java.net.ServerSocket; import java.net.Socket; diff --git a/cdap-common/src/main/java/io/cdap/cdap/common/service/RetryOnStartFailureService.java b/cdap-common/src/main/java/io/cdap/cdap/common/service/RetryOnStartFailureService.java index 4ac886888e93..aeee80b7fbe4 100644 --- a/cdap-common/src/main/java/io/cdap/cdap/common/service/RetryOnStartFailureService.java +++ b/cdap-common/src/main/java/io/cdap/cdap/common/service/RetryOnStartFailureService.java @@ -18,8 +18,6 @@ import com.google.common.annotations.VisibleForTesting; import com.google.common.util.concurrent.AbstractService; -import com.google.common.util.concurrent.FutureCallback; -import com.google.common.util.concurrent.Futures; import com.google.common.util.concurrent.MoreExecutors; import com.google.common.util.concurrent.Service; import com.google.common.util.concurrent.Uninterruptibles; @@ -135,10 +133,17 @@ public void failed(State from, Throwable failure) { return; } - // If there is no started service, stop the current delete, but no need to propagate the stop state + // If there is no started service, stop the current delegate, but no need to propagate the stop state // because if the underlying service is not yet started due to failure, it shouldn't affect the stop state // of this retrying service. if (currentDelegate != null) { + // If the delegate is already in a terminal state (FAILED or TERMINATED), stopAsync() won't + // trigger any listener callbacks, so we need to notify directly. + State delegateState = currentDelegate.state(); + if (delegateState == State.TERMINATED || delegateState == State.FAILED) { + notifyStopped(); + return; + } currentDelegate.addListener(new Service.Listener() { @Override public void starting() {} diff --git a/cdap-common/src/main/java/io/cdap/cdap/common/twill/NoopTwillController.java b/cdap-common/src/main/java/io/cdap/cdap/common/twill/NoopTwillController.java index 78a900ea21c2..b1d55461d055 100644 --- a/cdap-common/src/main/java/io/cdap/cdap/common/twill/NoopTwillController.java +++ b/cdap-common/src/main/java/io/cdap/cdap/common/twill/NoopTwillController.java @@ -16,7 +16,6 @@ package io.cdap.cdap.common.twill; -import com.google.common.util.concurrent.Service; import java.util.Collections; import java.util.Iterator; import java.util.Map; @@ -24,8 +23,6 @@ import java.util.concurrent.CompletableFuture; import java.util.concurrent.Executor; import java.util.concurrent.Future; -import java.util.concurrent.TimeUnit; -import java.util.concurrent.TimeoutException; import javax.annotation.Nullable; import org.apache.twill.api.Command; import org.apache.twill.api.ResourceReport; diff --git a/cdap-common/src/main/java/io/cdap/cdap/common/utils/TimeBoundIterator.java b/cdap-common/src/main/java/io/cdap/cdap/common/utils/TimeBoundIterator.java index 2f50466b4b1f..b5fce6fd4d75 100644 --- a/cdap-common/src/main/java/io/cdap/cdap/common/utils/TimeBoundIterator.java +++ b/cdap-common/src/main/java/io/cdap/cdap/common/utils/TimeBoundIterator.java @@ -17,7 +17,6 @@ package io.cdap.cdap.common.utils; -import com.google.common.annotations.VisibleForTesting; import com.google.common.base.Stopwatch; import com.google.common.collect.AbstractIterator; import java.util.Iterator; diff --git a/cdap-common/src/main/java/io/cdap/cdap/internal/app/store/RunRecordDetail.java b/cdap-common/src/main/java/io/cdap/cdap/internal/app/store/RunRecordDetail.java index 51d070f3a2b6..0757b69e28ae 100644 --- a/cdap-common/src/main/java/io/cdap/cdap/internal/app/store/RunRecordDetail.java +++ b/cdap-common/src/main/java/io/cdap/cdap/internal/app/store/RunRecordDetail.java @@ -27,7 +27,6 @@ import io.cdap.cdap.proto.RunRecord; import io.cdap.cdap.proto.id.ProfileId; import io.cdap.cdap.proto.id.ProgramRunId; -import io.cdap.cdap.runtime.spi.provisioner.Cluster; import java.util.Arrays; import java.util.Collections; import java.util.HashMap; diff --git a/cdap-data-fabric-tests/src/test/java/io/cdap/cdap/data2/transaction/distributed/TransactionServiceTest.java b/cdap-data-fabric-tests/src/test/java/io/cdap/cdap/data2/transaction/distributed/TransactionServiceTest.java index c6ca5a0aafbc..808906c59a61 100644 --- a/cdap-data-fabric-tests/src/test/java/io/cdap/cdap/data2/transaction/distributed/TransactionServiceTest.java +++ b/cdap-data-fabric-tests/src/test/java/io/cdap/cdap/data2/transaction/distributed/TransactionServiceTest.java @@ -189,7 +189,7 @@ protected void configure() { Networks.getRandomPort(), hConf, tmpFolder.newFolder()); // NOTE: we don't have to wait for start as client should pick it up anyways - third.start(); + third.startAsync(); // stopping second one second.stopAsync().awaitTerminated(); @@ -197,7 +197,7 @@ protected void configure() { verifyGetAndPut(table, txExecutor, "val3", "val4"); // releasing resources - third.stop(); + third.stopAsync().awaitTerminated(); } finally { try { diff --git a/cdap-data-fabric/src/main/java/io/cdap/cdap/data/dataset/SystemDatasetInstantiator.java b/cdap-data-fabric/src/main/java/io/cdap/cdap/data/dataset/SystemDatasetInstantiator.java index 404ea3f70e14..5450bed1f0c8 100644 --- a/cdap-data-fabric/src/main/java/io/cdap/cdap/data/dataset/SystemDatasetInstantiator.java +++ b/cdap-data-fabric/src/main/java/io/cdap/cdap/data/dataset/SystemDatasetInstantiator.java @@ -17,7 +17,6 @@ package io.cdap.cdap.data.dataset; import com.google.common.base.MoreObjects; -import com.google.common.base.Objects; import io.cdap.cdap.api.data.DatasetInstantiationException; import io.cdap.cdap.api.dataset.Dataset; import io.cdap.cdap.api.dataset.DatasetAdmin; @@ -26,7 +25,6 @@ import io.cdap.cdap.api.service.ServiceUnavailableException; import io.cdap.cdap.data2.datafabric.dataset.type.ConstantClassLoaderProvider; import io.cdap.cdap.data2.datafabric.dataset.type.DatasetClassLoaderProvider; -import io.cdap.cdap.data2.datafabric.dataset.type.DirectoryClassLoaderProvider; import io.cdap.cdap.data2.dataset2.DatasetFramework; import io.cdap.cdap.data2.metadata.lineage.AccessType; import io.cdap.cdap.proto.id.DatasetId; diff --git a/cdap-data-fabric/src/main/java/io/cdap/cdap/data2/audit/DefaultAuditPublisher.java b/cdap-data-fabric/src/main/java/io/cdap/cdap/data2/audit/DefaultAuditPublisher.java index 6c0906dadf75..035c9cbfe7d8 100644 --- a/cdap-data-fabric/src/main/java/io/cdap/cdap/data2/audit/DefaultAuditPublisher.java +++ b/cdap-data-fabric/src/main/java/io/cdap/cdap/data2/audit/DefaultAuditPublisher.java @@ -17,7 +17,6 @@ package io.cdap.cdap.data2.audit; import com.google.common.base.MoreObjects; -import com.google.common.base.Objects; import com.google.gson.Gson; import com.google.inject.Inject; import io.cdap.cdap.api.messaging.TopicNotFoundException; diff --git a/cdap-data-fabric/src/main/java/io/cdap/cdap/data2/datafabric/dataset/DatasetsUtil.java b/cdap-data-fabric/src/main/java/io/cdap/cdap/data2/datafabric/dataset/DatasetsUtil.java index 657080572fa4..79604d2710d4 100644 --- a/cdap-data-fabric/src/main/java/io/cdap/cdap/data2/datafabric/dataset/DatasetsUtil.java +++ b/cdap-data-fabric/src/main/java/io/cdap/cdap/data2/datafabric/dataset/DatasetsUtil.java @@ -20,7 +20,6 @@ import io.cdap.cdap.api.data.DatasetContext; import io.cdap.cdap.api.data.DatasetInstantiationException; import io.cdap.cdap.api.dataset.Dataset; -import io.cdap.cdap.api.dataset.DatasetDefinition; import io.cdap.cdap.api.dataset.DatasetManagementException; import io.cdap.cdap.api.dataset.DatasetProperties; import io.cdap.cdap.api.dataset.DatasetSpecification; diff --git a/cdap-data-fabric/src/main/java/io/cdap/cdap/data2/datafabric/dataset/RemoteDatasetFramework.java b/cdap-data-fabric/src/main/java/io/cdap/cdap/data2/datafabric/dataset/RemoteDatasetFramework.java index 41c888a77115..fa1b6cdd44b5 100644 --- a/cdap-data-fabric/src/main/java/io/cdap/cdap/data2/datafabric/dataset/RemoteDatasetFramework.java +++ b/cdap-data-fabric/src/main/java/io/cdap/cdap/data2/datafabric/dataset/RemoteDatasetFramework.java @@ -17,7 +17,6 @@ package io.cdap.cdap.data2.datafabric.dataset; import com.google.common.base.MoreObjects; -import com.google.common.base.Objects; import com.google.common.cache.CacheBuilder; import com.google.common.cache.CacheLoader; import com.google.common.cache.LoadingCache; diff --git a/cdap-data-fabric/src/main/java/io/cdap/cdap/data2/datafabric/dataset/service/DefaultDatasetTypeService.java b/cdap-data-fabric/src/main/java/io/cdap/cdap/data2/datafabric/dataset/service/DefaultDatasetTypeService.java index ce1cb544c655..555045b983c9 100644 --- a/cdap-data-fabric/src/main/java/io/cdap/cdap/data2/datafabric/dataset/service/DefaultDatasetTypeService.java +++ b/cdap-data-fabric/src/main/java/io/cdap/cdap/data2/datafabric/dataset/service/DefaultDatasetTypeService.java @@ -23,7 +23,6 @@ import com.google.common.util.concurrent.AbstractIdleService; import com.google.inject.Inject; import io.cdap.cdap.api.dataset.module.DatasetModule; -import io.cdap.cdap.api.dataset.module.DatasetType; import io.cdap.cdap.common.ConflictException; import io.cdap.cdap.common.DatasetModuleCannotBeDeletedException; import io.cdap.cdap.common.DatasetModuleNotFoundException; diff --git a/cdap-data-fabric/src/main/java/io/cdap/cdap/data2/datafabric/dataset/type/ConstantClassLoaderProvider.java b/cdap-data-fabric/src/main/java/io/cdap/cdap/data2/datafabric/dataset/type/ConstantClassLoaderProvider.java index 85a4f1749a6c..fe82a880a4f7 100644 --- a/cdap-data-fabric/src/main/java/io/cdap/cdap/data2/datafabric/dataset/type/ConstantClassLoaderProvider.java +++ b/cdap-data-fabric/src/main/java/io/cdap/cdap/data2/datafabric/dataset/type/ConstantClassLoaderProvider.java @@ -17,7 +17,6 @@ package io.cdap.cdap.data2.datafabric.dataset.type; import com.google.common.base.MoreObjects; -import com.google.common.base.Objects; import io.cdap.cdap.proto.DatasetModuleMeta; import java.io.IOException; import javax.annotation.Nullable; diff --git a/cdap-data-fabric/src/main/java/io/cdap/cdap/data2/dataset2/DatasetDefinitionRegistries.java b/cdap-data-fabric/src/main/java/io/cdap/cdap/data2/dataset2/DatasetDefinitionRegistries.java index abf5367d6046..135da2bf3906 100644 --- a/cdap-data-fabric/src/main/java/io/cdap/cdap/data2/dataset2/DatasetDefinitionRegistries.java +++ b/cdap-data-fabric/src/main/java/io/cdap/cdap/data2/dataset2/DatasetDefinitionRegistries.java @@ -17,7 +17,6 @@ package io.cdap.cdap.data2.dataset2; import com.google.common.base.MoreObjects; -import com.google.common.base.Objects; import io.cdap.cdap.api.dataset.module.DatasetDefinitionRegistry; import io.cdap.cdap.api.dataset.module.DatasetModule; import io.cdap.cdap.common.lang.ClassLoaders; diff --git a/cdap-data-fabric/src/main/java/io/cdap/cdap/data2/dataset2/SingleThreadDatasetCache.java b/cdap-data-fabric/src/main/java/io/cdap/cdap/data2/dataset2/SingleThreadDatasetCache.java index b6eed34759c8..735c1a16a5de 100644 --- a/cdap-data-fabric/src/main/java/io/cdap/cdap/data2/dataset2/SingleThreadDatasetCache.java +++ b/cdap-data-fabric/src/main/java/io/cdap/cdap/data2/dataset2/SingleThreadDatasetCache.java @@ -25,7 +25,6 @@ import com.google.common.collect.Iterables; import com.google.common.collect.Sets; import com.google.common.util.concurrent.UncheckedExecutionException; -import io.cdap.cdap.api.data.DatasetContext; import io.cdap.cdap.api.data.DatasetInstantiationException; import io.cdap.cdap.api.dataset.Dataset; import io.cdap.cdap.api.dataset.metrics.MeteredDataset; diff --git a/cdap-data-fabric/src/main/java/io/cdap/cdap/data2/dataset2/lib/file/FileSetDataset.java b/cdap-data-fabric/src/main/java/io/cdap/cdap/data2/dataset2/lib/file/FileSetDataset.java index 846ba67e3757..3bb74ff0bd96 100644 --- a/cdap-data-fabric/src/main/java/io/cdap/cdap/data2/dataset2/lib/file/FileSetDataset.java +++ b/cdap-data-fabric/src/main/java/io/cdap/cdap/data2/dataset2/lib/file/FileSetDataset.java @@ -16,7 +16,6 @@ package io.cdap.cdap.data2.dataset2.lib.file; -import com.google.common.base.MoreObjects; import com.google.common.base.Function; import com.google.common.base.Joiner; import com.google.common.base.Preconditions; diff --git a/cdap-data-fabric/src/main/java/io/cdap/cdap/data2/queue/DequeueResult.java b/cdap-data-fabric/src/main/java/io/cdap/cdap/data2/queue/DequeueResult.java index 2dd01718f2e7..4516b2e4c83f 100644 --- a/cdap-data-fabric/src/main/java/io/cdap/cdap/data2/queue/DequeueResult.java +++ b/cdap-data-fabric/src/main/java/io/cdap/cdap/data2/queue/DequeueResult.java @@ -16,7 +16,6 @@ package io.cdap.cdap.data2.queue; -import com.google.common.collect.Iterators; import java.util.Collections; import java.util.Iterator; diff --git a/cdap-data-fabric/src/main/java/io/cdap/cdap/data2/transaction/DynamicTransactionExecutor.java b/cdap-data-fabric/src/main/java/io/cdap/cdap/data2/transaction/DynamicTransactionExecutor.java index 00dbc78fa8e1..061c84eb2496 100644 --- a/cdap-data-fabric/src/main/java/io/cdap/cdap/data2/transaction/DynamicTransactionExecutor.java +++ b/cdap-data-fabric/src/main/java/io/cdap/cdap/data2/transaction/DynamicTransactionExecutor.java @@ -20,7 +20,6 @@ import java.util.concurrent.Callable; import java.util.concurrent.TimeUnit; import org.apache.tephra.AbstractTransactionExecutor; -import org.apache.tephra.RetryOnConflictStrategy; import org.apache.tephra.RetryStrategies; import org.apache.tephra.RetryStrategy; import org.apache.tephra.TransactionContext; diff --git a/cdap-data-fabric/src/test/java/io/cdap/cdap/data2/dataset2/lib/cube/AbstractCubeTest.java b/cdap-data-fabric/src/test/java/io/cdap/cdap/data2/dataset2/lib/cube/AbstractCubeTest.java index 633440c77618..820c53aec771 100644 --- a/cdap-data-fabric/src/test/java/io/cdap/cdap/data2/dataset2/lib/cube/AbstractCubeTest.java +++ b/cdap-data-fabric/src/test/java/io/cdap/cdap/data2/dataset2/lib/cube/AbstractCubeTest.java @@ -34,6 +34,7 @@ import java.util.ArrayList; import java.util.Collection; import java.util.Collections; +import java.util.Comparator; import java.util.HashMap; import java.util.LinkedHashMap; import java.util.List; @@ -587,6 +588,8 @@ public void testMetricsAggregationOptionSum() throws Exception { null); result = new ArrayList<>(cube.query(query)); Assert.assertEquals(2, result.size()); + // Sort by first timestamp to ensure deterministic ordering across Guava versions + result.sort(Comparator.comparingLong(ts -> ts.getTimeValues().get(0).getTimestamp())); // agg1 gets increment by 1 for 100 seconds, so sum will be 100/5=20, agg2 gets increment by 3 for 50 seconds, so // sum will be 3*50/5=30 verifySumAggregation(result.get(0), "metric1", 5, 30, 10, 0, 0); diff --git a/cdap-gateway/src/test/java/io/cdap/cdap/gateway/handlers/log/LogDataOffset.java b/cdap-gateway/src/test/java/io/cdap/cdap/gateway/handlers/log/LogDataOffset.java index 84a34a711225..61caa5bee524 100644 --- a/cdap-gateway/src/test/java/io/cdap/cdap/gateway/handlers/log/LogDataOffset.java +++ b/cdap-gateway/src/test/java/io/cdap/cdap/gateway/handlers/log/LogDataOffset.java @@ -16,6 +16,7 @@ package io.cdap.cdap.gateway.handlers.log; +import com.google.common.base.MoreObjects; import io.cdap.cdap.logging.gateway.handlers.LogData; import io.cdap.cdap.logging.read.LogOffset; diff --git a/cdap-gateway/src/test/java/io/cdap/cdap/gateway/handlers/log/LogLine.java b/cdap-gateway/src/test/java/io/cdap/cdap/gateway/handlers/log/LogLine.java index 977b8a403d7c..f3410bb7015a 100644 --- a/cdap-gateway/src/test/java/io/cdap/cdap/gateway/handlers/log/LogLine.java +++ b/cdap-gateway/src/test/java/io/cdap/cdap/gateway/handlers/log/LogLine.java @@ -16,6 +16,7 @@ package io.cdap.cdap.gateway.handlers.log; +import com.google.common.base.MoreObjects; import io.cdap.cdap.logging.read.LogOffset; /** diff --git a/cdap-gateway/src/test/java/io/cdap/cdap/gateway/handlers/log/OffsetLine.java b/cdap-gateway/src/test/java/io/cdap/cdap/gateway/handlers/log/OffsetLine.java index 54bc8a9388a1..1cf3e0a2bd8f 100644 --- a/cdap-gateway/src/test/java/io/cdap/cdap/gateway/handlers/log/OffsetLine.java +++ b/cdap-gateway/src/test/java/io/cdap/cdap/gateway/handlers/log/OffsetLine.java @@ -16,6 +16,7 @@ package io.cdap.cdap.gateway.handlers.log; +import com.google.common.base.MoreObjects; import io.cdap.cdap.logging.read.LogOffset; /** diff --git a/cdap-gateway/src/test/java/io/cdap/cdap/gateway/router/NettyRouterPipelineTest.java b/cdap-gateway/src/test/java/io/cdap/cdap/gateway/router/NettyRouterPipelineTest.java index 422557635380..6a27c99c7dfb 100644 --- a/cdap-gateway/src/test/java/io/cdap/cdap/gateway/router/NettyRouterPipelineTest.java +++ b/cdap-gateway/src/test/java/io/cdap/cdap/gateway/router/NettyRouterPipelineTest.java @@ -209,7 +209,7 @@ private void deploy(int num) throws Exception { LocationFactory lf = new LocalLocationFactory(TMP_FOLDER.newFolder()); Location programJar = AppJarHelper.createDeploymentJar(lf, DummyApp.class); - GATEWAY_SERVER.setExpectedJarBytes(ByteStreams.toByteArray(Locations.newInputSupplier(programJar))); + GATEWAY_SERVER.setExpectedJarBytes(ByteStreams.toByteArray(Locations.newInputSupplier(programJar).getInput())); for (int i = 0; i < num; i++) { LOG.info("Deploying {}/{}", i, num); @@ -220,7 +220,7 @@ private void deploy(int num) throws Exception { urlConn.setDoOutput(true); urlConn.setDoInput(true); - ByteStreams.copy(Locations.newInputSupplier(programJar), urlConn.getOutputStream()); + ByteStreams.copy(Locations.newInputSupplier(programJar).getInput(), urlConn.getOutputStream()); Assert.assertEquals(200, urlConn.getResponseCode()); urlConn.getInputStream().close(); urlConn.disconnect(); diff --git a/cdap-gateway/src/test/java/io/cdap/cdap/gateway/router/NettyRouterTestBase.java b/cdap-gateway/src/test/java/io/cdap/cdap/gateway/router/NettyRouterTestBase.java index e4dd750928c3..45e3da24539b 100644 --- a/cdap-gateway/src/test/java/io/cdap/cdap/gateway/router/NettyRouterTestBase.java +++ b/cdap-gateway/src/test/java/io/cdap/cdap/gateway/router/NettyRouterTestBase.java @@ -21,9 +21,6 @@ import com.google.common.collect.Lists; import com.google.common.io.ByteStreams; import com.google.common.util.concurrent.AbstractIdleService; -import com.google.common.util.concurrent.Futures; -import com.google.common.util.concurrent.ListenableFuture; -import com.google.common.util.concurrent.Service; import com.ning.http.client.AsyncCompletionHandler; import com.ning.http.client.AsyncHttpClient; import com.ning.http.client.AsyncHttpClientConfig; @@ -69,7 +66,6 @@ import java.net.URISyntaxException; import java.net.URL; import java.nio.charset.StandardCharsets; -import java.util.ArrayList; import java.util.List; import java.util.concurrent.CompletableFuture; import java.util.concurrent.CountDownLatch; @@ -148,12 +144,10 @@ private String resolveUri(String path) throws URISyntaxException { @Before public void startUp() throws Exception { routerService = createRouterService(HOSTNAME, discoveryService); - List> futures = new ArrayList<>(); - futures.add(routerService.start()); + routerService.startAsync().awaitRunning(); for (ServerService server : allServers) { - futures.add(server.start()); + server.startAsync().awaitRunning(); } - Futures.allAsList(futures).get(); // Wait for both servers of defaultService to be registered ServiceDiscovered discover = ((DiscoveryServiceClient) discoveryService) @@ -173,12 +167,10 @@ public void onChange(ServiceDiscovered serviceDiscovered) { @After public void tearDown() throws Exception { - List> futures = new ArrayList<>(); for (ServerService server : allServers) { - futures.add(server.stop()); + server.stopAsync().awaitTerminated(); } - futures.add(routerService.stop()); - Futures.successfulAsList(futures).get(); + routerService.stopAsync().awaitTerminated(); } @Test diff --git a/cdap-master/src/test/java/io/cdap/cdap/metrics/jmx/JmxMetricsCollectorTest.java b/cdap-master/src/test/java/io/cdap/cdap/metrics/jmx/JmxMetricsCollectorTest.java index 206a664b3d8d..923ca5c7993f 100644 --- a/cdap-master/src/test/java/io/cdap/cdap/metrics/jmx/JmxMetricsCollectorTest.java +++ b/cdap-master/src/test/java/io/cdap/cdap/metrics/jmx/JmxMetricsCollectorTest.java @@ -109,6 +109,6 @@ public void testNumberOfMetricsEmitted() throws InterruptedException, MalformedU } return true; }, 3, TimeUnit.SECONDS); - jmxMetrics.stop(); + jmxMetrics.stopAsync().awaitTerminated(); } } diff --git a/cdap-spark-core-base/src/test/java/io/cdap/cdap/app/runtime/spark/distributed/SparkExecutionServiceTest.java b/cdap-spark-core-base/src/test/java/io/cdap/cdap/app/runtime/spark/distributed/SparkExecutionServiceTest.java index 2dda65c4006a..f6dd8b8b57e9 100644 --- a/cdap-spark-core-base/src/test/java/io/cdap/cdap/app/runtime/spark/distributed/SparkExecutionServiceTest.java +++ b/cdap-spark-core-base/src/test/java/io/cdap/cdap/app/runtime/spark/distributed/SparkExecutionServiceTest.java @@ -17,8 +17,6 @@ package io.cdap.cdap.app.runtime.spark.distributed; import com.google.common.collect.ImmutableMap; -import com.google.common.util.concurrent.ListenableFuture; -import com.google.common.util.concurrent.Service; import io.cdap.cdap.api.workflow.Value; import io.cdap.cdap.common.app.RunIds; import io.cdap.cdap.common.utils.Tasks; @@ -122,7 +120,7 @@ public void testExplicitStop() throws Exception { } // Stop the program from the service side - ListenableFuture stopFuture = service.stop(); + service.stopAsync(); // Expect some future heartbeats will receive the STOP command Tasks.waitFor(true, new Callable() { @@ -136,8 +134,8 @@ public Boolean call() throws Exception { // Call complete to notify the service it has been stopped client.completed(null); - // The stop future of the service should be completed after the client.completed call. - stopFuture.get(5, TimeUnit.SECONDS); + // The service should be terminated after the client.completed call. + service.awaitTerminated(5, TimeUnit.SECONDS); } finally { service.stopAsync().awaitTerminated(); } diff --git a/cdap-unit-test/src/test/java/io/cdap/cdap/service/FileUploadServiceTestRun.java b/cdap-unit-test/src/test/java/io/cdap/cdap/service/FileUploadServiceTestRun.java index b90b6b995e77..ac723312ef63 100644 --- a/cdap-unit-test/src/test/java/io/cdap/cdap/service/FileUploadServiceTestRun.java +++ b/cdap-unit-test/src/test/java/io/cdap/cdap/service/FileUploadServiceTestRun.java @@ -94,7 +94,7 @@ public void testFileUploadService() throws Exception { // There should be one file under the partition directory List locations = partition.getLocation().list(); Assert.assertEquals(1, locations.size()); - Assert.assertArrayEquals(content, ByteStreams.toByteArray(Locations.newInputSupplier(locations.get(0)))); + Assert.assertArrayEquals(content, ByteStreams.toByteArray(Locations.newInputSupplier(locations.get(0)).getInput())); // Verify the tracking table of chunks sizes KeyValueTable trackingTable = (KeyValueTable) getDataset(FileUploadApp.KV_TABLE_NAME).get(); diff --git a/cdap-unit-test/src/test/scala/io/cdap/cdap/spark/app/ForkSpark.scala b/cdap-unit-test/src/test/scala/io/cdap/cdap/spark/app/ForkSpark.scala index 2b29fc135207..0820d88ef316 100644 --- a/cdap-unit-test/src/test/scala/io/cdap/cdap/spark/app/ForkSpark.scala +++ b/cdap-unit-test/src/test/scala/io/cdap/cdap/spark/app/ForkSpark.scala @@ -47,8 +47,8 @@ class ForkSpark(name: String) extends AbstractSpark with SparkMain { val file = new File(barrierDir, sec.getRunId.getId) require(file.createNewFile()) val branchSize = getBranchSize(sec) - val stopWatch = new Stopwatch().start() - while (barrierDir.list().length < branchSize && stopWatch.elapsedTime(TimeUnit.SECONDS) < 10) { + val stopWatch = Stopwatch.createStarted() + while (barrierDir.list().length < branchSize && stopWatch.elapsed(TimeUnit.SECONDS) < 10) { TimeUnit.MILLISECONDS.sleep(100) } diff --git a/cdap-unit-test/src/test/scala/io/cdap/cdap/test/messaging/MessagingSpark.scala b/cdap-unit-test/src/test/scala/io/cdap/cdap/test/messaging/MessagingSpark.scala index 3822efa84bb2..3778c6a6cdf8 100644 --- a/cdap-unit-test/src/test/scala/io/cdap/cdap/test/messaging/MessagingSpark.scala +++ b/cdap-unit-test/src/test/scala/io/cdap/cdap/test/messaging/MessagingSpark.scala @@ -82,9 +82,9 @@ class MessagingSpark extends AbstractSpark with SparkMain { private def fetchMessage(fetcher: MessageFetcher, namespace: String, topic: String, afterMessageId: Option[String], timeout: Long, unit: TimeUnit): Message = { var iterator = fetcher.fetch(namespace, topic, 1, afterMessageId.orNull) - val stopwatch = new Stopwatch().start + val stopwatch = Stopwatch.createStarted() try { - while (!iterator.hasNext && stopwatch.elapsedTime(unit) < timeout) { + while (!iterator.hasNext && stopwatch.elapsed(unit) < timeout) { TimeUnit.MILLISECONDS.sleep(100) iterator = fetcher.fetch(namespace, topic, 1, afterMessageId.orNull) } diff --git a/cdap-watchdog/src/main/java/io/cdap/cdap/logging/appender/LogMessage.java b/cdap-watchdog/src/main/java/io/cdap/cdap/logging/appender/LogMessage.java index 1adc2715b4f4..42552034c0c3 100644 --- a/cdap-watchdog/src/main/java/io/cdap/cdap/logging/appender/LogMessage.java +++ b/cdap-watchdog/src/main/java/io/cdap/cdap/logging/appender/LogMessage.java @@ -21,7 +21,6 @@ import ch.qos.logback.classic.spi.IThrowableProxy; import ch.qos.logback.classic.spi.LoggerContextVO; import com.google.common.base.MoreObjects; -import com.google.common.base.Objects; import io.cdap.cdap.common.logging.LoggingContext; import java.util.Map; import org.slf4j.Marker; diff --git a/cdap-watchdog/src/main/java/io/cdap/cdap/logging/gateway/handlers/AbstractChunkedCallback.java b/cdap-watchdog/src/main/java/io/cdap/cdap/logging/gateway/handlers/AbstractChunkedCallback.java index 0dcda5cee822..e3f3796bd6a3 100644 --- a/cdap-watchdog/src/main/java/io/cdap/cdap/logging/gateway/handlers/AbstractChunkedCallback.java +++ b/cdap-watchdog/src/main/java/io/cdap/cdap/logging/gateway/handlers/AbstractChunkedCallback.java @@ -16,7 +16,6 @@ package io.cdap.cdap.logging.gateway.handlers; -import com.google.common.collect.Multimap; import io.cdap.cdap.logging.read.Callback; import io.cdap.cdap.logging.read.LogEvent; import io.cdap.http.ChunkResponder; diff --git a/cdap-watchdog/src/main/java/io/cdap/cdap/logging/logbuffer/LogBufferService.java b/cdap-watchdog/src/main/java/io/cdap/cdap/logging/logbuffer/LogBufferService.java index 6a4e46392031..ae3aa9aa966f 100644 --- a/cdap-watchdog/src/main/java/io/cdap/cdap/logging/logbuffer/LogBufferService.java +++ b/cdap-watchdog/src/main/java/io/cdap/cdap/logging/logbuffer/LogBufferService.java @@ -17,7 +17,6 @@ package io.cdap.cdap.logging.logbuffer; import com.google.common.base.Preconditions; -import com.google.common.collect.Iterables; import com.google.common.util.concurrent.AbstractIdleService; import com.google.common.util.concurrent.Futures; import com.google.common.util.concurrent.ListenableFuture; diff --git a/cdap-watchdog/src/main/java/io/cdap/cdap/logging/pipeline/kafka/KafkaLogProcessorPipeline.java b/cdap-watchdog/src/main/java/io/cdap/cdap/logging/pipeline/kafka/KafkaLogProcessorPipeline.java index 65408bbb3c72..ad2c8ebe4986 100644 --- a/cdap-watchdog/src/main/java/io/cdap/cdap/logging/pipeline/kafka/KafkaLogProcessorPipeline.java +++ b/cdap-watchdog/src/main/java/io/cdap/cdap/logging/pipeline/kafka/KafkaLogProcessorPipeline.java @@ -46,16 +46,12 @@ import java.util.concurrent.Future; import java.util.concurrent.TimeUnit; import javax.annotation.Nullable; -import kafka.api.OffsetRequest$; import kafka.javaapi.consumer.SimpleConsumer; import kafka.javaapi.message.ByteBufferMessageSet; import kafka.message.MessageAndOffset; import org.apache.kafka.common.KafkaException; import org.apache.kafka.common.errors.LeaderNotAvailableException; -import org.apache.kafka.common.errors.NotLeaderForPartitionException; import org.apache.kafka.common.errors.OffsetOutOfRangeException; -import org.apache.kafka.common.errors.UnknownServerException; -import org.apache.kafka.common.errors.UnknownTopicOrPartitionException; import org.apache.twill.common.Threads; import org.apache.twill.kafka.client.BrokerInfo; import org.apache.twill.kafka.client.BrokerService; diff --git a/cdap-watchdog/src/main/java/io/cdap/cdap/metrics/guice/DistributedMetricsClientModule.java b/cdap-watchdog/src/main/java/io/cdap/cdap/metrics/guice/DistributedMetricsClientModule.java index 030c0c95bd37..929a8ed6b68b 100644 --- a/cdap-watchdog/src/main/java/io/cdap/cdap/metrics/guice/DistributedMetricsClientModule.java +++ b/cdap-watchdog/src/main/java/io/cdap/cdap/metrics/guice/DistributedMetricsClientModule.java @@ -23,11 +23,9 @@ import io.cdap.cdap.api.metrics.MetricValues; import io.cdap.cdap.api.metrics.MetricsCollectionService; import io.cdap.cdap.api.metrics.MetricsSystemClient; -import io.cdap.cdap.common.guice.IOModule; import io.cdap.cdap.common.io.DatumWriter; import io.cdap.cdap.internal.io.DatumWriterFactory; import io.cdap.cdap.internal.io.SchemaGenerator; -import io.cdap.cdap.messaging.spi.MessagingService; import io.cdap.cdap.metrics.collect.MessagingMetricsCollectionService; import io.cdap.cdap.metrics.process.RemoteMetricsSystemClient; diff --git a/pom.xml b/pom.xml index c9fcf23435f6..79db88e6eee8 100644 --- a/pom.xml +++ b/pom.xml @@ -108,7 +108,7 @@ 1.9.40 1.11.4 1.70 - 0.13.1 + 0.15.0-SNAPSHOT 1.4.0 1.2 3.2.2 @@ -155,7 +155,7 @@ 0.15.0-incubating 0.8.4 0.9.3 - 1.4.0 + 1.5.0-SNAPSHOT 2.3.6 3.4.5 1.3.1 From 13101d4b2f5de2da4878be29d55312cc7af33575 Mon Sep 17 00:00:00 2001 From: vikas-cs07 Date: Thu, 12 Mar 2026 17:03:39 +0530 Subject: [PATCH 2/2] upgrading guava to 32.0.0-jre --- .../common/twill/NoopTwillController.java | 39 ++++++++++++++++++- 1 file changed, 38 insertions(+), 1 deletion(-) diff --git a/cdap-common/src/main/java/io/cdap/cdap/common/twill/NoopTwillController.java b/cdap-common/src/main/java/io/cdap/cdap/common/twill/NoopTwillController.java index b1d55461d055..38432ef02361 100644 --- a/cdap-common/src/main/java/io/cdap/cdap/common/twill/NoopTwillController.java +++ b/cdap-common/src/main/java/io/cdap/cdap/common/twill/NoopTwillController.java @@ -16,6 +16,7 @@ package io.cdap.cdap.common.twill; +import com.google.common.util.concurrent.Service; import java.util.Collections; import java.util.Iterator; import java.util.Map; @@ -23,6 +24,8 @@ import java.util.concurrent.CompletableFuture; import java.util.concurrent.Executor; import java.util.concurrent.Future; +import java.util.concurrent.TimeUnit; +import java.util.concurrent.TimeoutException; import javax.annotation.Nullable; import org.apache.twill.api.Command; import org.apache.twill.api.ResourceReport; @@ -157,7 +160,37 @@ public Future resetRunnableLogLevels(String runnableName, String... lo return future; } + @Override + public void awaitRunning() { + // no-op + } + @Override + public void awaitRunning(long timeout, TimeUnit unit) throws TimeoutException { + // no-op + } + + @Override + public void awaitTerminated() { + // no-op + } + + @Override + public void awaitTerminated(long timeout, TimeUnit unit) throws TimeoutException { + // no-op + } + + @Override + public Service startAsync() { + start(); + return this; + } + + @Override + public Service stopAsync() { + stop(); + return this; + } @Override protected void startUp() { @@ -179,7 +212,11 @@ public Future sendCommand(String runnableName, Command command) { return CompletableFuture.completedFuture(command); } - + @Nullable + @Override + public Throwable failureCause() { + return null; + } @Override public void kill() {