From 7941baa4c09bba9cffb5b2a757401f602c5c8544 Mon Sep 17 00:00:00 2001 From: leventov Date: Wed, 14 Mar 2018 18:37:47 +0100 Subject: [PATCH 1/2] Merge druid-api, druid-common and java-util modules into druid-common; Replace EmittedBatchCounter and UpdateCounter with (both not safe for concurrent increments/updates) with ConcurrentAwaitableCounter (safe for concurrent increments) --- api/pom.xml | 146 --------- api/src/test/resources/log4j2.xml | 35 --- common/pom.xml | 170 +++++++++-- .../java/io/druid/cli/CliCommandCreator.java | 0 .../ConcurrentAwaitableCounter.java | 118 ++++++++ .../data/input/ByteBufferInputRowParser.java | 0 .../java/io/druid/data/input/Committer.java | 0 .../java/io/druid/data/input/Firehose.java | 0 .../io/druid/data/input/FirehoseFactory.java | 0 .../druid/data/input/FirehoseFactoryV2.java | 0 .../java/io/druid/data/input/FirehoseV2.java | 0 .../java/io/druid/data/input/InputRow.java | 0 .../io/druid/data/input/MapBasedInputRow.java | 0 .../java/io/druid/data/input/MapBasedRow.java | 0 .../main/java/io/druid/data/input/Row.java | 0 .../main/java/io/druid/data/input/Rows.java | 0 .../AbstractTextFilesFirehoseFactory.java | 0 .../druid/data/input/impl/CSVParseSpec.java | 0 .../data/input/impl/DelimitedParseSpec.java | 0 .../data/input/impl/DimensionSchema.java | 6 +- .../druid/data/input/impl/DimensionsSpec.java | 0 .../input/impl/DoubleDimensionSchema.java | 0 .../input/impl/FileIteratingFirehose.java | 0 .../data/input/impl/FloatDimensionSchema.java | 0 .../druid/data/input/impl/InputRowParser.java | 0 .../input/impl/JSONLowercaseParseSpec.java | 0 .../druid/data/input/impl/JSONParseSpec.java | 0 .../data/input/impl/JavaScriptParseSpec.java | 0 .../data/input/impl/LongDimensionSchema.java | 0 .../data/input/impl/MapInputRowParser.java | 0 .../input/impl/NewSpatialDimensionSchema.java | 0 .../data/input/impl/NoopInputRowParser.java | 0 .../io/druid/data/input/impl/ParseSpec.java | 0 .../druid/data/input/impl/RegexParseSpec.java | 0 .../input/impl/SpatialDimensionSchema.java | 0 .../input/impl/StringDimensionSchema.java | 0 .../data/input/impl/StringInputRowParser.java | 0 .../data/input/impl/TimeAndDimsParseSpec.java | 0 .../druid/data/input/impl/TimestampSpec.java | 0 .../input/impl/prefetch/CacheManager.java | 0 .../data/input/impl/prefetch/FetchedFile.java | 0 .../data/input/impl/prefetch/Fetcher.java | 0 .../impl/prefetch/ObjectOpenFunction.java | 0 .../input/impl/prefetch/OpenedObject.java | 0 .../PrefetchableTextFilesFirehoseFactory.java | 0 .../impl/prefetch/RetryingInputStream.java | 0 .../src/main/java/io/druid/guice/Binders.java | 0 .../io/druid/guice/ConditionalMultibind.java | 0 .../io/druid/guice/DruidGuiceExtensions.java | 0 .../main/java/io/druid/guice/DruidScopes.java | 0 .../src/main/java/io/druid/guice/Jerseys.java | 0 .../io/druid/guice/JsonConfigProvider.java | 0 .../java/io/druid/guice/JsonConfigurator.java | 0 .../main/java/io/druid/guice/KeyHolder.java | 0 .../java/io/druid/guice/LazySingleton.java | 0 .../java/io/druid/guice/LifecycleModule.java | 0 .../java/io/druid/guice/LifecycleScope.java | 0 .../java/io/druid/guice/ManageLifecycle.java | 0 .../io/druid/guice/ManageLifecycleLast.java | 0 .../main/java/io/druid/guice/PolyBind.java | 0 .../java/io/druid/guice/SupplierProvider.java | 0 .../guice/annotations/EscalatedGlobal.java | 0 .../guice/annotations/ExtensionPoint.java | 0 .../io/druid/guice/annotations/Global.java | 0 .../guice/annotations/JSR311Resource.java | 0 .../java/io/druid/guice/annotations/Json.java | 0 .../io/druid/guice/annotations/PublicApi.java | 0 .../java/io/druid/guice/annotations/Self.java | 0 .../io/druid/guice/annotations/Smile.java | 0 .../java/io/druid/indexer/TaskLocation.java | 0 .../main/java/io/druid/indexer/TaskState.java | 0 .../java/io/druid/indexer/TaskStatusPlus.java | 0 .../io/druid/initialization/DruidModule.java | 0 .../jackson/CommaListJoinDeserializer.java | 0 .../jackson/CommaListJoinSerializer.java | 0 .../java/util/common/ByteBufferUtils.java | 0 .../io/druid/java/util/common/Cacheable.java | 0 .../java/util/common/CloseableIterators.java | 0 .../java/util/common/CompressionUtils.java | 0 .../io/druid/java/util/common/DateTimes.java | 0 .../io/druid/java/util/common/FileUtils.java | 0 .../java/io/druid/java/util/common/IAE.java | 0 .../java/io/druid/java/util/common/IOE.java | 0 .../java/io/druid/java/util/common/ISE.java | 0 .../io/druid/java/util/common/Intervals.java | 0 .../io/druid/java/util/common/JodaUtils.java | 0 .../io/druid/java/util/common/MapUtils.java | 0 .../util/common/MappedByteBufferHandler.java | 0 .../java/io/druid/java/util/common/Pair.java | 0 .../java/io/druid/java/util/common/RE.java | 0 .../io/druid/java/util/common/RetryUtils.java | 0 .../druid/java/util/common/StreamUtils.java | 0 .../druid/java/util/common/StringUtils.java | 0 .../java/io/druid/java/util/common/UOE.java | 0 .../util/common/collect/AggregatingMap.java | 0 .../util/common/collect/MoreIterators.java | 0 .../druid/java/util/common/collect/Utils.java | 0 .../concurrent/DummyExecutorService.java | 0 .../java/util/common/concurrent/Execs.java | 0 .../concurrent/ExecutorServiceConfig.java | 0 .../common/concurrent/ExecutorServices.java | 0 .../concurrent/FunctionalThreadFactory.java | 0 .../concurrent/ScheduledExecutorFactory.java | 0 .../common/concurrent/ScheduledExecutors.java | 0 .../concurrent/SimpleExecutorConfig.java | 0 .../druid/java/util/common/config/Config.java | 0 .../util/common/config/DurationCoercible.java | 0 .../common/granularity/AllGranularity.java | 0 .../granularity/DurationGranularity.java | 0 .../common/granularity/Granularities.java | 0 .../util/common/granularity/Granularity.java | 0 .../common/granularity/GranularityType.java | 0 .../common/granularity/NoneGranularity.java | 0 .../common/granularity/PeriodGranularity.java | 0 .../java/util/common/guava/Accumulator.java | 0 .../java/util/common/guava/Accumulators.java | 0 .../java/util/common/guava/BaseSequence.java | 0 .../java/util/common/guava/CloseQuietly.java | 0 .../java/util/common/guava/Comparators.java | 0 .../util/common/guava/ConcatSequence.java | 0 .../util/common/guava/DefaultingHashMap.java | 0 .../guava/DelegatingYieldingAccumulator.java | 0 .../util/common/guava/DroppingIterable.java | 0 .../util/common/guava/DroppingIterator.java | 0 .../common/guava/ExecuteWhenDoneYielder.java | 0 .../util/common/guava/FilteredSequence.java | 0 .../common/guava/FilteringAccumulator.java | 0 .../guava/FilteringYieldingAccumulator.java | 0 .../util/common/guava/FunctionalIterable.java | 0 .../util/common/guava/FunctionalIterator.java | 0 .../java/util/common/guava/LazySequence.java | 0 .../util/common/guava/LimitedSequence.java | 0 .../util/common/guava/MappedSequence.java | 0 .../util/common/guava/MappingAccumulator.java | 0 .../guava/MappingYieldingAccumulator.java | 0 .../java/util/common/guava/MergeIterable.java | 0 .../java/util/common/guava/MergeIterator.java | 0 .../java/util/common/guava/MergeSequence.java | 0 .../java/util/common/guava/Sequence.java | 0 .../util/common/guava/SequenceWrapper.java | 0 .../java/util/common/guava/Sequences.java | 0 .../util/common/guava/WrappingSequence.java | 0 .../util/common/guava/WrappingYielder.java | 0 .../druid/java/util/common/guava/Yielder.java | 0 .../java/util/common/guava/Yielders.java | 0 .../common/guava/YieldingAccumulator.java | 0 .../common/guava/YieldingAccumulators.java | 0 .../common/guava/YieldingSequenceBase.java | 0 .../java/util/common/guava/nary/BinaryFn.java | 0 .../guava/nary/BinaryTransformIterable.java | 0 .../guava/nary/BinaryTransformIterator.java | 0 .../guava/nary/SortedMergeIterable.java | 0 .../guava/nary/SortedMergeIterator.java | 0 .../util/common/guava/nary/TrinaryFn.java | 0 .../guava/nary/TrinaryTransformIterable.java | 0 .../guava/nary/TrinaryTransformIterator.java | 0 .../io/druid/java/util/common/io/Closer.java | 0 .../druid/java/util/common/io/NativeIO.java | 0 .../util/common/io/smoosh/FileSmoosher.java | 0 .../java/util/common/io/smoosh/Metadata.java | 0 .../java/util/common/io/smoosh/Smoosh.java | 0 .../common/io/smoosh/SmooshedFileMapper.java | 0 .../util/common/io/smoosh/SmooshedWriter.java | 0 .../util/common/jackson/JacksonUtils.java | 0 .../java/util/common/lifecycle/Lifecycle.java | 0 .../util/common/lifecycle/LifecycleStart.java | 0 .../util/common/lifecycle/LifecycleStop.java | 0 .../druid/java/util/common/logger/Logger.java | 0 .../parsers/AbstractFlatTextFormatParser.java | 0 .../java/util/common/parsers/CSVParser.java | 0 .../common/parsers/CloseableIterator.java | 0 .../util/common/parsers/DelimitedParser.java | 0 .../common/parsers/JSONFlattenerMaker.java | 0 .../common/parsers/JSONPathFieldSpec.java | 0 .../common/parsers/JSONPathFieldType.java | 0 .../util/common/parsers/JSONPathParser.java | 0 .../util/common/parsers/JSONPathSpec.java | 0 .../common/parsers/JSONToLowerParser.java | 2 +- .../util/common/parsers/JavaScriptParser.java | 0 .../util/common/parsers/ObjectFlattener.java | 0 .../util/common/parsers/ObjectFlatteners.java | 0 .../util/common/parsers/ParseException.java | 0 .../java/util/common/parsers/Parser.java | 0 .../java/util/common/parsers/ParserUtils.java | 0 .../java/util/common/parsers/Parsers.java | 0 .../java/util/common/parsers/RegexParser.java | 0 .../util/common/parsers/TimestampParser.java | 0 .../common/parsers/ToLowerCaseParser.java | 0 .../java/util/emitter/EmittingLogger.java | 0 .../emitter/core/BaseHttpEmittingConfig.java | 0 .../druid/java/util/emitter/core/Batch.java | 6 +- .../util/emitter/core/BatchingStrategy.java | 0 .../util/emitter/core/ComposingEmitter.java | 0 .../emitter/core/ConcurrentTimeCounter.java | 0 .../util/emitter/core/ContentEncoding.java | 0 .../druid/java/util/emitter/core/Emitter.java | 0 .../java/util/emitter/core/Emitters.java | 0 .../druid/java/util/emitter/core/Event.java | 0 .../util/emitter/core/FeedUriExtractor.java | 0 .../util/emitter/core/HttpEmitterConfig.java | 0 .../util/emitter/core/HttpPostEmitter.java | 13 +- .../util/emitter/core/LoggingEmitter.java | 0 .../emitter/core/LoggingEmitterConfig.java | 0 .../java/util/emitter/core/NoopEmitter.java | 0 .../emitter/core/ParametrizedUriEmitter.java | 0 .../core/ParametrizedUriEmitterConfig.java | 0 .../core/ParametrizedUriExtractor.java | 0 .../java/util/emitter/core/UriExtractor.java | 0 .../core/ZeroCopyByteArrayOutputStream.java | 0 .../util/emitter/factory/EmitterFactory.java | 0 .../emitter/factory/HttpEmitterFactory.java | 0 .../factory/LoggingEmitterFactory.java | 0 .../emitter/factory/NoopEmitterFactory.java | 0 .../ParametrizedUriEmitterFactory.java | 0 .../util/emitter/service/AlertBuilder.java | 0 .../java/util/emitter/service/AlertEvent.java | 0 .../util/emitter/service/ServiceEmitter.java | 0 .../util/emitter/service/ServiceEvent.java | 0 .../emitter/service/ServiceEventBuilder.java | 0 .../emitter/service/ServiceMetricEvent.java | 0 .../util/http/client/AbstractHttpClient.java | 0 .../http/client/CredentialedHttpClient.java | 0 .../http/client/EnforceSslHttpClient.java | 0 .../java/util/http/client/HttpClient.java | 0 .../util/http/client/HttpClientConfig.java | 0 .../java/util/http/client/HttpClientInit.java | 0 .../util/http/client/NettyHttpClient.java | 0 .../druid/java/util/http/client/Request.java | 0 .../http/client/auth/BasicCredentials.java | 0 .../util/http/client/auth/Credentials.java | 0 .../io/AppendableByteArrayInputStream.java | 0 .../netty/HttpClientPipelineFactory.java | 0 .../client/pool/ChannelResourceFactory.java | 0 .../http/client/pool/ResourceContainer.java | 0 .../http/client/pool/ResourceFactory.java | 0 .../util/http/client/pool/ResourcePool.java | 0 .../http/client/pool/ResourcePoolConfig.java | 0 .../http/client/pool/ResourceVerifier.java | 0 .../http/client/response/ClientResponse.java | 0 .../client/response/FullResponseHandler.java | 0 .../client/response/FullResponseHolder.java | 0 .../client/response/HttpResponseHandler.java | 0 .../response/InputStreamResponseHandler.java | 0 .../SequenceInputStreamResponseHandler.java | 0 .../response/StatusResponseHandler.java | 0 .../client/response/StatusResponseHolder.java | 0 .../response/ToStringResponseHandler.java | 0 .../java/util/metrics/AbstractMonitor.java | 0 .../druid/java/util/metrics/CgroupUtil.java | 0 .../java/util/metrics/CompoundMonitor.java | 0 .../util/metrics/CpuAcctDeltaMonitor.java | 0 .../util/metrics/FeedDefiningMonitor.java | 0 .../util/metrics/HttpPostEmitterMonitor.java | 0 .../java/util/metrics/JvmCpuMonitor.java | 0 .../druid/java/util/metrics/JvmMonitor.java | 0 .../java/util/metrics/JvmPidDiscoverer.java | 0 .../java/util/metrics/JvmThreadsMonitor.java | 0 .../io/druid/java/util/metrics/KeyedDiff.java | 0 .../io/druid/java/util/metrics/Monitor.java | 0 .../util/metrics/MonitorOfTheMonitors.java | 0 .../java/util/metrics/MonitorScheduler.java | 0 .../util/metrics/MonitorSchedulerConfig.java | 0 .../druid/java/util/metrics/MonitorUtils.java | 0 .../io/druid/java/util/metrics/Monitors.java | 0 .../ParametrizedUriEmitterMonitor.java | 0 .../java/util/metrics/PidDiscoverer.java | 0 .../java/util/metrics/SigarPidDiscoverer.java | 0 .../io/druid/java/util/metrics/SigarUtil.java | 0 .../druid/java/util/metrics/SysMonitor.java | 0 .../metrics/cgroups/CgroupDiscoverer.java | 0 .../java/util/metrics/cgroups/CpuAcct.java | 0 .../metrics/cgroups/ProcCgroupDiscoverer.java | 0 .../cgroups/ProcPidCgroupDiscoverer.java | 0 .../cgroups/ProcSelfCgroupDiscoverer.java | 0 .../java/io/druid/js/JavaScriptConfig.java | 0 .../io/druid/query/SegmentDescriptor.java | 0 .../java/io/druid/segment/SegmentUtils.java | 0 .../segment/loading/DataSegmentArchiver.java | 0 .../segment/loading/DataSegmentFinder.java | 0 .../segment/loading/DataSegmentKiller.java | 0 .../segment/loading/DataSegmentMover.java | 0 .../segment/loading/DataSegmentPuller.java | 0 .../segment/loading/DataSegmentPusher.java | 0 .../io/druid/segment/loading/LoadSpec.java | 0 .../loading/SegmentLoadingException.java | 0 .../druid/segment/loading/URIDataPuller.java | 0 .../java/io/druid/tasklogs/NoopTaskLogs.java | 0 .../java/io/druid/tasklogs/TaskLogKiller.java | 0 .../java/io/druid/tasklogs/TaskLogPusher.java | 0 .../io/druid/tasklogs/TaskLogStreamer.java | 0 .../main/java/io/druid/tasklogs/TaskLogs.java | 0 .../java/io/druid/timeline/DataSegment.java | 0 .../io/druid/timeline/DataSegmentUtils.java | 0 .../java/io/druid/timeline/PruneLoadSpec.java | 0 .../timeline/partition/NoneShardSpec.java | 0 .../timeline/partition/PartitionChunk.java | 0 .../druid/timeline/partition/ShardSpec.java | 0 .../timeline/partition/ShardSpecLookup.java | 0 .../SingleElementPartitionChunk.java | 0 .../java/io/druid/utils/CompressionUtils.java | 0 .../main/java/io/druid/utils/Runnables.java | 0 .../test/java/io/druid/TestObjectMapper.java | 0 .../ConcurrentAwaitableCounterTest.java | 65 ++++ .../io/druid/data/input/MapBasedRowTest.java | 0 .../data/input/impl/CSVParseSpecTest.java | 0 .../input/impl/DelimitedParseSpecTest.java | 0 .../data/input/impl/DimensionSchemaTest.java | 0 .../input/impl/DimensionsSpecSerdeTest.java | 0 .../input/impl/FileIteratingFirehoseTest.java | 0 .../input/impl/InputRowParserSerdeTest.java | 0 .../impl/JSONLowercaseParseSpecTest.java | 0 .../data/input/impl/JSONParseSpecTest.java | 0 .../data/input/impl/JSONPathSpecTest.java | 0 .../input/impl/JavaScriptParseSpecTest.java | 0 .../input/impl/NoopInputRowParserTest.java | 0 .../druid/data/input/impl/ParseSpecTest.java | 0 .../data/input/impl/RegexParseSpecTest.java | 0 .../input/impl/StringInputRowParserTest.java | 0 .../input/impl/TimeAndDimsParseSpecTest.java | 0 .../data/input/impl/TimestampSpecTest.java | 0 ...fetchableTextFilesFirehoseFactoryTest.java | 0 .../prefetch/RetryingInputStreamTest.java | 0 .../druid/guice/ConditionalMultibindTest.java | 0 .../io/druid/guice/JsonConfiguratorTest.java | 0 .../java/io/druid/guice/PolyBindTest.java | 0 .../io/druid/indexer/TaskStatusPlusTest.java | 0 .../JacksonExtremeDoubleValuesSerdeTest.java | 0 .../druid/java/util/common/BufferUtils.java | 0 .../java/util/common/ByteBufferUtilsTest.java | 0 .../util/common/CompressionUtilsTest.java | 0 .../druid/java/util/common/FileUtilsTest.java | 0 .../java/util/common/GranularityTest.java | 0 .../java/util/common/RetryUtilsTest.java | 0 .../java/util/common/StreamUtilsTest.java | 0 .../java/util/common/StringUtilsTest.java | 0 .../util/common/guava/BaseSequenceTest.java | 0 .../util/common/guava/ComparatorsTest.java | 0 .../util/common/guava/ConcatSequenceTest.java | 0 .../common/guava/FilteredSequenceTest.java | 0 .../common/guava/FunctionalIterableTest.java | 0 .../common/guava/FunctionalIteratorTest.java | 0 .../common/guava/LimitedSequenceTest.java | 0 .../util/common/guava/MappedSequenceTest.java | 0 .../util/common/guava/MergeIteratorTest.java | 0 .../util/common/guava/MergeSequenceTest.java | 0 .../util/common/guava/SequenceTestHelper.java | 0 .../java/util/common/guava/TestSequence.java | 0 .../common/guava/UnsupportedSequence.java | 0 .../common/guava/WithEffectSequenceTest.java | 0 .../common/guava/WrappingSequenceTest.java | 0 .../guava/nary/SortedMergeIteratorTest.java | 0 .../java/util/common/io/NativeIOTest.java | 0 .../io/smoosh/SmooshedFileMapperTest.java | 0 .../util/common/lifecycle/LifecycleTest.java | 0 .../java/util/common/logger/LoggerTest.java | 0 .../parsers/FlatTextFormatParserTest.java | 0 .../common/parsers/JSONPathParserTest.java | 0 .../common/parsers/JavaScriptParserTest.java | 0 .../util/common/parsers/RegexParserTest.java | 0 .../common/parsers/TimestampParserTest.java | 0 .../emitter/core/ComposingEmitterTest.java | 0 .../core/CustomEmitterFactoryTest.java | 0 .../java/util/emitter/core/EmitterTest.java | 0 .../java/util/emitter/core/GoHandler.java | 0 .../java/util/emitter/core/GoHandlers.java | 0 .../emitter/core/HttpEmitterConfigTest.java | 0 .../util/emitter/core/HttpEmitterTest.java | 0 .../core/HttpPostEmitterStressTest.java | 0 .../java/util/emitter/core/IntEvent.java | 0 .../core/LoggingEmitterConfigTest.java | 0 .../util/emitter/core/MockHttpClient.java | 0 .../ParametrizedUriEmitterConfigTest.java | 0 .../core/ParametrizedUriEmitterTest.java | 0 .../util/emitter/service/AlertEventTest.java | 0 .../service/ServiceMetricEventTest.java | 0 .../java/util/emitter/service/UnitEvent.java | 0 .../util/http/client/AsyncHttpClientTest.java | 0 .../util/http/client/FriendlyServersTest.java | 0 .../util/http/client/JankyServersTest.java | 0 .../AppendableByteArrayInputStreamTest.java | 0 .../http/client/pool/ResourcePoolTest.java | 0 ...equenceInputStreamResponseHandlerTest.java | 0 .../util/metrics/CpuAcctDeltaMonitorTest.java | 0 .../druid/java/util/metrics/GcNameTest.java | 0 .../java/util/metrics/JvmMonitorTest.java | 0 .../util/metrics/JvmPidDiscovererTest.java | 0 .../java/util/metrics/MonitorUtilsTest.java | 0 .../druid/java/util/metrics/MonitorsTest.java | 0 .../java/util/metrics/SigarLoadTest.java | 0 .../util/metrics/SigarPidDiscovererTest.java | 0 .../java/util/metrics/StubServiceEmitter.java | 0 .../util/metrics/cgroups/CpuAcctTest.java | 0 .../cgroups/ProcCgroupDiscovererTest.java | 0 .../java/util/metrics/cgroups/TestUtils.java | 0 .../io/druid/js/JavaScriptConfigTest.java | 0 .../io/druid/segment/SegmentUtilsTest.java | 0 .../io/druid/timeline/DataSegmentTest.java | 0 .../druid/timeline/DataSegmentUtilsTest.java | 0 .../timeline/partition/NoneShardSpecTest.java | 0 docs/content/design/realtime.md | 2 +- docs/content/development/modules.md | 2 +- extendedset/pom.xml | 2 +- .../ambari-metrics-emitter/pom.xml | 12 - extensions-contrib/azure-extensions/pom.xml | 2 +- extensions-contrib/cassandra-storage/pom.xml | 2 +- .../cloudfiles-extensions/pom.xml | 2 +- extensions-contrib/druid-rocketmq/pom.xml | 2 +- extensions-contrib/google-extensions/pom.xml | 2 +- extensions-contrib/graphite-emitter/pom.xml | 18 -- .../kafka-eight-simpleConsumer/pom.xml | 8 +- extensions-contrib/kafka-emitter/pom.xml | 18 +- extensions-contrib/opentsdb-emitter/pom.xml | 6 - extensions-contrib/rabbitmq/pom.xml | 2 +- extensions-contrib/redis-cache/pom.xml | 6 - .../sqlserver-metadata-storage/pom.xml | 13 - extensions-contrib/statsd-emitter/pom.xml | 12 - extensions-contrib/time-min-max/pom.xml | 6 - extensions-contrib/virtual-columns/pom.xml | 12 - extensions-core/avro-extensions/pom.xml | 2 +- extensions-core/datasketches/pom.xml | 6 - extensions-core/hdfs-storage/pom.xml | 12 - extensions-core/kafka-eight/pom.xml | 2 +- .../kafka-extraction-namespace/pom.xml | 6 - .../kafka-indexing-service/pom.xml | 6 - extensions-core/lookups-cached-global/pom.xml | 6 - .../namespace/cache/CacheScheduler.java | 15 +- .../lookup/namespace/cache/UpdateCounter.java | 88 ------ extensions-core/lookups-cached-single/pom.xml | 6 - .../mysql-metadata-storage/pom.xml | 12 - .../postgresql-metadata-storage/pom.xml | 12 - extensions-core/s3-extensions/pom.xml | 12 - .../simple-client-sslcontext/pom.xml | 18 -- hll/pom.xml | 2 +- indexing-hadoop/pom.xml | 12 - java-util/pom.xml | 279 ------------------ .../emitter/core/EmittedBatchCounter.java | 73 ----- .../src/test/resources/cpuacct.usage_all | 129 -------- java-util/src/test/resources/keystore.jks | Bin 2331 -> 0 bytes java-util/src/test/resources/log4j2.xml | 32 -- java-util/src/test/resources/loremipsum.txt | 39 --- java-util/src/test/resources/proc.cgroups | 13 - java-util/src/test/resources/proc.mounts | 36 --- java-util/src/test/resources/proc.pid.cgroup | 11 - pom.xml | 2 - processing/pom.xml | 5 - .../io/druid/segment/column/ValueType.java | 2 +- .../segment/incremental/IncrementalIndex.java | 2 +- server/pom.xml | 5 - .../emitter/HttpEmitterSSLClientConfig.java | 10 +- 449 files changed, 373 insertions(+), 1172 deletions(-) delete mode 100644 api/pom.xml delete mode 100644 api/src/test/resources/log4j2.xml rename {api => common}/src/main/java/io/druid/cli/CliCommandCreator.java (100%) create mode 100644 common/src/main/java/io/druid/concurrent/ConcurrentAwaitableCounter.java rename {api => common}/src/main/java/io/druid/data/input/ByteBufferInputRowParser.java (100%) rename {api => common}/src/main/java/io/druid/data/input/Committer.java (100%) rename {api => common}/src/main/java/io/druid/data/input/Firehose.java (100%) rename {api => common}/src/main/java/io/druid/data/input/FirehoseFactory.java (100%) rename {api => common}/src/main/java/io/druid/data/input/FirehoseFactoryV2.java (100%) rename {api => common}/src/main/java/io/druid/data/input/FirehoseV2.java (100%) rename {api => common}/src/main/java/io/druid/data/input/InputRow.java (100%) rename {api => common}/src/main/java/io/druid/data/input/MapBasedInputRow.java (100%) rename {api => common}/src/main/java/io/druid/data/input/MapBasedRow.java (100%) rename {api => common}/src/main/java/io/druid/data/input/Row.java (100%) rename {api => common}/src/main/java/io/druid/data/input/Rows.java (100%) rename {api => common}/src/main/java/io/druid/data/input/impl/AbstractTextFilesFirehoseFactory.java (100%) rename {api => common}/src/main/java/io/druid/data/input/impl/CSVParseSpec.java (100%) rename {api => common}/src/main/java/io/druid/data/input/impl/DelimitedParseSpec.java (100%) rename {api => common}/src/main/java/io/druid/data/input/impl/DimensionSchema.java (96%) rename {api => common}/src/main/java/io/druid/data/input/impl/DimensionsSpec.java (100%) rename {api => common}/src/main/java/io/druid/data/input/impl/DoubleDimensionSchema.java (100%) rename {api => common}/src/main/java/io/druid/data/input/impl/FileIteratingFirehose.java (100%) rename {api => common}/src/main/java/io/druid/data/input/impl/FloatDimensionSchema.java (100%) rename {api => common}/src/main/java/io/druid/data/input/impl/InputRowParser.java (100%) rename {api => common}/src/main/java/io/druid/data/input/impl/JSONLowercaseParseSpec.java (100%) rename {api => common}/src/main/java/io/druid/data/input/impl/JSONParseSpec.java (100%) rename {api => common}/src/main/java/io/druid/data/input/impl/JavaScriptParseSpec.java (100%) rename {api => common}/src/main/java/io/druid/data/input/impl/LongDimensionSchema.java (100%) rename {api => common}/src/main/java/io/druid/data/input/impl/MapInputRowParser.java (100%) rename {api => common}/src/main/java/io/druid/data/input/impl/NewSpatialDimensionSchema.java (100%) rename {api => common}/src/main/java/io/druid/data/input/impl/NoopInputRowParser.java (100%) rename {api => common}/src/main/java/io/druid/data/input/impl/ParseSpec.java (100%) rename {api => common}/src/main/java/io/druid/data/input/impl/RegexParseSpec.java (100%) rename {api => common}/src/main/java/io/druid/data/input/impl/SpatialDimensionSchema.java (100%) rename {api => common}/src/main/java/io/druid/data/input/impl/StringDimensionSchema.java (100%) rename {api => common}/src/main/java/io/druid/data/input/impl/StringInputRowParser.java (100%) rename {api => common}/src/main/java/io/druid/data/input/impl/TimeAndDimsParseSpec.java (100%) rename {api => common}/src/main/java/io/druid/data/input/impl/TimestampSpec.java (100%) rename {api => common}/src/main/java/io/druid/data/input/impl/prefetch/CacheManager.java (100%) rename {api => common}/src/main/java/io/druid/data/input/impl/prefetch/FetchedFile.java (100%) rename {api => common}/src/main/java/io/druid/data/input/impl/prefetch/Fetcher.java (100%) rename {api => common}/src/main/java/io/druid/data/input/impl/prefetch/ObjectOpenFunction.java (100%) rename {api => common}/src/main/java/io/druid/data/input/impl/prefetch/OpenedObject.java (100%) rename {api => common}/src/main/java/io/druid/data/input/impl/prefetch/PrefetchableTextFilesFirehoseFactory.java (100%) rename {api => common}/src/main/java/io/druid/data/input/impl/prefetch/RetryingInputStream.java (100%) rename {api => common}/src/main/java/io/druid/guice/Binders.java (100%) rename {api => common}/src/main/java/io/druid/guice/ConditionalMultibind.java (100%) rename {api => common}/src/main/java/io/druid/guice/DruidGuiceExtensions.java (100%) rename {api => common}/src/main/java/io/druid/guice/DruidScopes.java (100%) rename {api => common}/src/main/java/io/druid/guice/Jerseys.java (100%) rename {api => common}/src/main/java/io/druid/guice/JsonConfigProvider.java (100%) rename {api => common}/src/main/java/io/druid/guice/JsonConfigurator.java (100%) rename {api => common}/src/main/java/io/druid/guice/KeyHolder.java (100%) rename {api => common}/src/main/java/io/druid/guice/LazySingleton.java (100%) rename {api => common}/src/main/java/io/druid/guice/LifecycleModule.java (100%) rename {api => common}/src/main/java/io/druid/guice/LifecycleScope.java (100%) rename {api => common}/src/main/java/io/druid/guice/ManageLifecycle.java (100%) rename {api => common}/src/main/java/io/druid/guice/ManageLifecycleLast.java (100%) rename {api => common}/src/main/java/io/druid/guice/PolyBind.java (100%) rename {api => common}/src/main/java/io/druid/guice/SupplierProvider.java (100%) rename {api => common}/src/main/java/io/druid/guice/annotations/EscalatedGlobal.java (100%) rename {api => common}/src/main/java/io/druid/guice/annotations/ExtensionPoint.java (100%) rename {api => common}/src/main/java/io/druid/guice/annotations/Global.java (100%) rename {api => common}/src/main/java/io/druid/guice/annotations/JSR311Resource.java (100%) rename {api => common}/src/main/java/io/druid/guice/annotations/Json.java (100%) rename {api => common}/src/main/java/io/druid/guice/annotations/PublicApi.java (100%) rename {api => common}/src/main/java/io/druid/guice/annotations/Self.java (100%) rename {api => common}/src/main/java/io/druid/guice/annotations/Smile.java (100%) rename {api => common}/src/main/java/io/druid/indexer/TaskLocation.java (100%) rename {api => common}/src/main/java/io/druid/indexer/TaskState.java (100%) rename {api => common}/src/main/java/io/druid/indexer/TaskStatusPlus.java (100%) rename {api => common}/src/main/java/io/druid/initialization/DruidModule.java (100%) rename {api => common}/src/main/java/io/druid/jackson/CommaListJoinDeserializer.java (100%) rename {api => common}/src/main/java/io/druid/jackson/CommaListJoinSerializer.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/ByteBufferUtils.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/Cacheable.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/CloseableIterators.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/CompressionUtils.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/DateTimes.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/FileUtils.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/IAE.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/IOE.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/ISE.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/Intervals.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/JodaUtils.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/MapUtils.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/MappedByteBufferHandler.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/Pair.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/RE.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/RetryUtils.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/StreamUtils.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/StringUtils.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/UOE.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/collect/AggregatingMap.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/collect/MoreIterators.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/collect/Utils.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/concurrent/DummyExecutorService.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/concurrent/Execs.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/concurrent/ExecutorServiceConfig.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/concurrent/ExecutorServices.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/concurrent/FunctionalThreadFactory.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/concurrent/ScheduledExecutorFactory.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/concurrent/ScheduledExecutors.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/concurrent/SimpleExecutorConfig.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/config/Config.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/config/DurationCoercible.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/granularity/AllGranularity.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/granularity/DurationGranularity.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/granularity/Granularities.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/granularity/Granularity.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/granularity/GranularityType.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/granularity/NoneGranularity.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/granularity/PeriodGranularity.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/guava/Accumulator.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/guava/Accumulators.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/guava/BaseSequence.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/guava/CloseQuietly.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/guava/Comparators.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/guava/ConcatSequence.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/guava/DefaultingHashMap.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/guava/DelegatingYieldingAccumulator.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/guava/DroppingIterable.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/guava/DroppingIterator.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/guava/ExecuteWhenDoneYielder.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/guava/FilteredSequence.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/guava/FilteringAccumulator.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/guava/FilteringYieldingAccumulator.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/guava/FunctionalIterable.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/guava/FunctionalIterator.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/guava/LazySequence.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/guava/LimitedSequence.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/guava/MappedSequence.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/guava/MappingAccumulator.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/guava/MappingYieldingAccumulator.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/guava/MergeIterable.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/guava/MergeIterator.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/guava/MergeSequence.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/guava/Sequence.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/guava/SequenceWrapper.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/guava/Sequences.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/guava/WrappingSequence.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/guava/WrappingYielder.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/guava/Yielder.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/guava/Yielders.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/guava/YieldingAccumulator.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/guava/YieldingAccumulators.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/guava/YieldingSequenceBase.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/guava/nary/BinaryFn.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/guava/nary/BinaryTransformIterable.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/guava/nary/BinaryTransformIterator.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/guava/nary/SortedMergeIterable.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/guava/nary/SortedMergeIterator.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/guava/nary/TrinaryFn.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/guava/nary/TrinaryTransformIterable.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/guava/nary/TrinaryTransformIterator.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/io/Closer.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/io/NativeIO.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/io/smoosh/FileSmoosher.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/io/smoosh/Metadata.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/io/smoosh/Smoosh.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/io/smoosh/SmooshedFileMapper.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/io/smoosh/SmooshedWriter.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/jackson/JacksonUtils.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/lifecycle/Lifecycle.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/lifecycle/LifecycleStart.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/lifecycle/LifecycleStop.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/logger/Logger.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/parsers/AbstractFlatTextFormatParser.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/parsers/CSVParser.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/parsers/CloseableIterator.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/parsers/DelimitedParser.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/parsers/JSONFlattenerMaker.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/parsers/JSONPathFieldSpec.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/parsers/JSONPathFieldType.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/parsers/JSONPathParser.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/parsers/JSONPathSpec.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/parsers/JSONToLowerParser.java (99%) rename {java-util => common}/src/main/java/io/druid/java/util/common/parsers/JavaScriptParser.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/parsers/ObjectFlattener.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/parsers/ObjectFlatteners.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/parsers/ParseException.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/parsers/Parser.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/parsers/ParserUtils.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/parsers/Parsers.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/parsers/RegexParser.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/parsers/TimestampParser.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/common/parsers/ToLowerCaseParser.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/emitter/EmittingLogger.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/emitter/core/BaseHttpEmittingConfig.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/emitter/core/Batch.java (98%) rename {java-util => common}/src/main/java/io/druid/java/util/emitter/core/BatchingStrategy.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/emitter/core/ComposingEmitter.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/emitter/core/ConcurrentTimeCounter.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/emitter/core/ContentEncoding.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/emitter/core/Emitter.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/emitter/core/Emitters.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/emitter/core/Event.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/emitter/core/FeedUriExtractor.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/emitter/core/HttpEmitterConfig.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/emitter/core/HttpPostEmitter.java (98%) rename {java-util => common}/src/main/java/io/druid/java/util/emitter/core/LoggingEmitter.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/emitter/core/LoggingEmitterConfig.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/emitter/core/NoopEmitter.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/emitter/core/ParametrizedUriEmitter.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/emitter/core/ParametrizedUriEmitterConfig.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/emitter/core/ParametrizedUriExtractor.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/emitter/core/UriExtractor.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/emitter/core/ZeroCopyByteArrayOutputStream.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/emitter/factory/EmitterFactory.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/emitter/factory/HttpEmitterFactory.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/emitter/factory/LoggingEmitterFactory.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/emitter/factory/NoopEmitterFactory.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/emitter/factory/ParametrizedUriEmitterFactory.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/emitter/service/AlertBuilder.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/emitter/service/AlertEvent.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/emitter/service/ServiceEmitter.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/emitter/service/ServiceEvent.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/emitter/service/ServiceEventBuilder.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/emitter/service/ServiceMetricEvent.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/http/client/AbstractHttpClient.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/http/client/CredentialedHttpClient.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/http/client/EnforceSslHttpClient.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/http/client/HttpClient.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/http/client/HttpClientConfig.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/http/client/HttpClientInit.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/http/client/NettyHttpClient.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/http/client/Request.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/http/client/auth/BasicCredentials.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/http/client/auth/Credentials.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/http/client/io/AppendableByteArrayInputStream.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/http/client/netty/HttpClientPipelineFactory.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/http/client/pool/ChannelResourceFactory.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/http/client/pool/ResourceContainer.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/http/client/pool/ResourceFactory.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/http/client/pool/ResourcePool.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/http/client/pool/ResourcePoolConfig.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/http/client/pool/ResourceVerifier.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/http/client/response/ClientResponse.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/http/client/response/FullResponseHandler.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/http/client/response/FullResponseHolder.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/http/client/response/HttpResponseHandler.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/http/client/response/InputStreamResponseHandler.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/http/client/response/SequenceInputStreamResponseHandler.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/http/client/response/StatusResponseHandler.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/http/client/response/StatusResponseHolder.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/http/client/response/ToStringResponseHandler.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/metrics/AbstractMonitor.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/metrics/CgroupUtil.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/metrics/CompoundMonitor.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/metrics/CpuAcctDeltaMonitor.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/metrics/FeedDefiningMonitor.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/metrics/HttpPostEmitterMonitor.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/metrics/JvmCpuMonitor.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/metrics/JvmMonitor.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/metrics/JvmPidDiscoverer.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/metrics/JvmThreadsMonitor.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/metrics/KeyedDiff.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/metrics/Monitor.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/metrics/MonitorOfTheMonitors.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/metrics/MonitorScheduler.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/metrics/MonitorSchedulerConfig.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/metrics/MonitorUtils.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/metrics/Monitors.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/metrics/ParametrizedUriEmitterMonitor.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/metrics/PidDiscoverer.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/metrics/SigarPidDiscoverer.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/metrics/SigarUtil.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/metrics/SysMonitor.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/metrics/cgroups/CgroupDiscoverer.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/metrics/cgroups/CpuAcct.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/metrics/cgroups/ProcCgroupDiscoverer.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/metrics/cgroups/ProcPidCgroupDiscoverer.java (100%) rename {java-util => common}/src/main/java/io/druid/java/util/metrics/cgroups/ProcSelfCgroupDiscoverer.java (100%) rename {api => common}/src/main/java/io/druid/js/JavaScriptConfig.java (100%) rename {api => common}/src/main/java/io/druid/query/SegmentDescriptor.java (100%) rename {api => common}/src/main/java/io/druid/segment/SegmentUtils.java (100%) rename {api => common}/src/main/java/io/druid/segment/loading/DataSegmentArchiver.java (100%) rename {api => common}/src/main/java/io/druid/segment/loading/DataSegmentFinder.java (100%) rename {api => common}/src/main/java/io/druid/segment/loading/DataSegmentKiller.java (100%) rename {api => common}/src/main/java/io/druid/segment/loading/DataSegmentMover.java (100%) rename {api => common}/src/main/java/io/druid/segment/loading/DataSegmentPuller.java (100%) rename {api => common}/src/main/java/io/druid/segment/loading/DataSegmentPusher.java (100%) rename {api => common}/src/main/java/io/druid/segment/loading/LoadSpec.java (100%) rename {api => common}/src/main/java/io/druid/segment/loading/SegmentLoadingException.java (100%) rename {api => common}/src/main/java/io/druid/segment/loading/URIDataPuller.java (100%) rename {api => common}/src/main/java/io/druid/tasklogs/NoopTaskLogs.java (100%) rename {api => common}/src/main/java/io/druid/tasklogs/TaskLogKiller.java (100%) rename {api => common}/src/main/java/io/druid/tasklogs/TaskLogPusher.java (100%) rename {api => common}/src/main/java/io/druid/tasklogs/TaskLogStreamer.java (100%) rename {api => common}/src/main/java/io/druid/tasklogs/TaskLogs.java (100%) rename {api => common}/src/main/java/io/druid/timeline/DataSegment.java (100%) rename {api => common}/src/main/java/io/druid/timeline/DataSegmentUtils.java (100%) rename {api => common}/src/main/java/io/druid/timeline/PruneLoadSpec.java (100%) rename {api => common}/src/main/java/io/druid/timeline/partition/NoneShardSpec.java (100%) rename {api => common}/src/main/java/io/druid/timeline/partition/PartitionChunk.java (100%) rename {api => common}/src/main/java/io/druid/timeline/partition/ShardSpec.java (100%) rename {api => common}/src/main/java/io/druid/timeline/partition/ShardSpecLookup.java (100%) rename {api => common}/src/main/java/io/druid/timeline/partition/SingleElementPartitionChunk.java (100%) rename {api => common}/src/main/java/io/druid/utils/CompressionUtils.java (100%) rename {api => common}/src/main/java/io/druid/utils/Runnables.java (100%) rename {api => common}/src/test/java/io/druid/TestObjectMapper.java (100%) create mode 100644 common/src/test/java/io/druid/concurrent/ConcurrentAwaitableCounterTest.java rename {api => common}/src/test/java/io/druid/data/input/MapBasedRowTest.java (100%) rename {api => common}/src/test/java/io/druid/data/input/impl/CSVParseSpecTest.java (100%) rename {api => common}/src/test/java/io/druid/data/input/impl/DelimitedParseSpecTest.java (100%) rename {api => common}/src/test/java/io/druid/data/input/impl/DimensionSchemaTest.java (100%) rename {api => common}/src/test/java/io/druid/data/input/impl/DimensionsSpecSerdeTest.java (100%) rename {api => common}/src/test/java/io/druid/data/input/impl/FileIteratingFirehoseTest.java (100%) rename {api => common}/src/test/java/io/druid/data/input/impl/InputRowParserSerdeTest.java (100%) rename {api => common}/src/test/java/io/druid/data/input/impl/JSONLowercaseParseSpecTest.java (100%) rename {api => common}/src/test/java/io/druid/data/input/impl/JSONParseSpecTest.java (100%) rename {api => common}/src/test/java/io/druid/data/input/impl/JSONPathSpecTest.java (100%) rename {api => common}/src/test/java/io/druid/data/input/impl/JavaScriptParseSpecTest.java (100%) rename {api => common}/src/test/java/io/druid/data/input/impl/NoopInputRowParserTest.java (100%) rename {api => common}/src/test/java/io/druid/data/input/impl/ParseSpecTest.java (100%) rename {api => common}/src/test/java/io/druid/data/input/impl/RegexParseSpecTest.java (100%) rename {api => common}/src/test/java/io/druid/data/input/impl/StringInputRowParserTest.java (100%) rename {api => common}/src/test/java/io/druid/data/input/impl/TimeAndDimsParseSpecTest.java (100%) rename {api => common}/src/test/java/io/druid/data/input/impl/TimestampSpecTest.java (100%) rename {api => common}/src/test/java/io/druid/data/input/impl/prefetch/PrefetchableTextFilesFirehoseFactoryTest.java (100%) rename {api => common}/src/test/java/io/druid/data/input/impl/prefetch/RetryingInputStreamTest.java (100%) rename {api => common}/src/test/java/io/druid/guice/ConditionalMultibindTest.java (100%) rename {api => common}/src/test/java/io/druid/guice/JsonConfiguratorTest.java (100%) rename {api => common}/src/test/java/io/druid/guice/PolyBindTest.java (100%) rename {api => common}/src/test/java/io/druid/indexer/TaskStatusPlusTest.java (100%) rename {api => common}/src/test/java/io/druid/jackson/JacksonExtremeDoubleValuesSerdeTest.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/common/BufferUtils.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/common/ByteBufferUtilsTest.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/common/CompressionUtilsTest.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/common/FileUtilsTest.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/common/GranularityTest.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/common/RetryUtilsTest.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/common/StreamUtilsTest.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/common/StringUtilsTest.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/common/guava/BaseSequenceTest.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/common/guava/ComparatorsTest.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/common/guava/ConcatSequenceTest.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/common/guava/FilteredSequenceTest.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/common/guava/FunctionalIterableTest.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/common/guava/FunctionalIteratorTest.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/common/guava/LimitedSequenceTest.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/common/guava/MappedSequenceTest.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/common/guava/MergeIteratorTest.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/common/guava/MergeSequenceTest.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/common/guava/SequenceTestHelper.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/common/guava/TestSequence.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/common/guava/UnsupportedSequence.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/common/guava/WithEffectSequenceTest.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/common/guava/WrappingSequenceTest.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/common/guava/nary/SortedMergeIteratorTest.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/common/io/NativeIOTest.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/common/io/smoosh/SmooshedFileMapperTest.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/common/lifecycle/LifecycleTest.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/common/logger/LoggerTest.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/common/parsers/FlatTextFormatParserTest.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/common/parsers/JSONPathParserTest.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/common/parsers/JavaScriptParserTest.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/common/parsers/RegexParserTest.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/common/parsers/TimestampParserTest.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/emitter/core/ComposingEmitterTest.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/emitter/core/CustomEmitterFactoryTest.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/emitter/core/EmitterTest.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/emitter/core/GoHandler.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/emitter/core/GoHandlers.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/emitter/core/HttpEmitterConfigTest.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/emitter/core/HttpEmitterTest.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/emitter/core/HttpPostEmitterStressTest.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/emitter/core/IntEvent.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/emitter/core/LoggingEmitterConfigTest.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/emitter/core/MockHttpClient.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/emitter/core/ParametrizedUriEmitterConfigTest.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/emitter/core/ParametrizedUriEmitterTest.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/emitter/service/AlertEventTest.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/emitter/service/ServiceMetricEventTest.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/emitter/service/UnitEvent.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/http/client/AsyncHttpClientTest.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/http/client/FriendlyServersTest.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/http/client/JankyServersTest.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/http/client/io/AppendableByteArrayInputStreamTest.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/http/client/pool/ResourcePoolTest.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/http/client/response/SequenceInputStreamResponseHandlerTest.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/metrics/CpuAcctDeltaMonitorTest.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/metrics/GcNameTest.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/metrics/JvmMonitorTest.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/metrics/JvmPidDiscovererTest.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/metrics/MonitorUtilsTest.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/metrics/MonitorsTest.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/metrics/SigarLoadTest.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/metrics/SigarPidDiscovererTest.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/metrics/StubServiceEmitter.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/metrics/cgroups/CpuAcctTest.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/metrics/cgroups/ProcCgroupDiscovererTest.java (100%) rename {java-util => common}/src/test/java/io/druid/java/util/metrics/cgroups/TestUtils.java (100%) rename {api => common}/src/test/java/io/druid/js/JavaScriptConfigTest.java (100%) rename {api => common}/src/test/java/io/druid/segment/SegmentUtilsTest.java (100%) rename {api => common}/src/test/java/io/druid/timeline/DataSegmentTest.java (100%) rename {api => common}/src/test/java/io/druid/timeline/DataSegmentUtilsTest.java (100%) rename {api => common}/src/test/java/io/druid/timeline/partition/NoneShardSpecTest.java (100%) delete mode 100644 extensions-core/lookups-cached-global/src/main/java/io/druid/server/lookup/namespace/cache/UpdateCounter.java delete mode 100644 java-util/pom.xml delete mode 100644 java-util/src/main/java/io/druid/java/util/emitter/core/EmittedBatchCounter.java delete mode 100644 java-util/src/test/resources/cpuacct.usage_all delete mode 100644 java-util/src/test/resources/keystore.jks delete mode 100644 java-util/src/test/resources/log4j2.xml delete mode 100644 java-util/src/test/resources/loremipsum.txt delete mode 100644 java-util/src/test/resources/proc.cgroups delete mode 100644 java-util/src/test/resources/proc.mounts delete mode 100644 java-util/src/test/resources/proc.pid.cgroup diff --git a/api/pom.xml b/api/pom.xml deleted file mode 100644 index 0e8333e27709..000000000000 --- a/api/pom.xml +++ /dev/null @@ -1,146 +0,0 @@ - - - - - 4.0.0 - - druid-api - druid-api - Druid Extensions API - - - io.druid - druid - 0.13.0-SNAPSHOT - - - - - io.druid - java-util - ${project.parent.version} - - - org.slf4j - slf4j-api - - - - - com.google.inject - guice - - - com.google.inject.extensions - guice-multibindings - - - io.airlift - airline - - - com.fasterxml.jackson.core - jackson-annotations - - - com.fasterxml.jackson.core - jackson-core - - - com.fasterxml.jackson.core - jackson-databind - - - com.fasterxml.jackson.dataformat - jackson-dataformat-smile - - - org.hibernate - hibernate-validator - - - javax.validation - validation-api - - - commons-io - commons-io - - - com.google.code.findbugs - jsr305 - - - net.thisptr - jackson-jq - - - it.unimi.dsi - fastutil - - - - junit - junit - test - - - org.slf4j - slf4j-simple - test - true - - - org.apache.logging.log4j - log4j-api - test - - - org.apache.logging.log4j - log4j-core - test - - - org.apache.logging.log4j - log4j-slf4j-impl - test - - - org.apache.logging.log4j - log4j-1.2-api - test - - - org.apache.logging.log4j - log4j-jul - test - - - - - - - org.apache.maven.plugins - maven-release-plugin - - - - - diff --git a/api/src/test/resources/log4j2.xml b/api/src/test/resources/log4j2.xml deleted file mode 100644 index 625f9fe1516e..000000000000 --- a/api/src/test/resources/log4j2.xml +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - - - - - - - - - - - - diff --git a/common/pom.xml b/common/pom.xml index 234f21af5bb2..c851c901aeb5 100644 --- a/common/pom.xml +++ b/common/pom.xml @@ -29,24 +29,17 @@ 0.13.0-SNAPSHOT + + UTF-8 + 1.6.5 + ${sigar.base.version}.132 + + - io.druid - java-util - ${project.parent.version} - - - org.slf4j - slf4j-api - - - - - io.druid - druid-api - ${project.parent.version} + org.slf4j + slf4j-api - commons-codec commons-codec @@ -176,6 +169,85 @@ org.antlr antlr4-runtime + + net.sf.opencsv + opencsv + + + io.airlift + airline + + + commons-io + commons-io + + + net.thisptr + jackson-jq + + + it.unimi.dsi + fastutil + + + org.mozilla + rhino + + + com.jayway.jsonpath + json-path + + + net.minidev + json-smart + + + + + + + com.google.code.findbugs + jsr305 + + + net.java.dev.jna + jna + + + javax.validation + validation-api + + + org.asynchttpclient + async-http-client + + + + + org.hyperic + sigar + ${sigar.version} + true + + + org.hyperic + sigar-dist + ${sigar.version} + zip + + provided + + + org.gridkit.lab + jvm-attach-api + + + + + io.netty + netty + @@ -189,15 +261,18 @@ test - io.druid - java-util - ${project.parent.version} - test-jar + org.hamcrest + hamcrest-all test - org.hamcrest - hamcrest-all + org.eclipse.jetty + jetty-server + test + + + org.eclipse.jetty + jetty-servlet test @@ -226,9 +301,62 @@ + + org.apache.maven.plugins + maven-release-plugin + + + org.apache.maven.plugins + maven-dependency-plugin + + + copy-sigar-lib-to-resources + generate-resources + + unpack-dependencies + + + org.hyperic + sigar-dist + **/sigar-bin/lib/* + **/sigar-bin/lib/*jar + + ${project.build.directory} + + + + + + + org.apache.maven.plugins + maven-surefire-plugin + + + + java.library.path + ${project.build.directory}/hyperic-sigar-${sigar.base.version}/sigar-bin/lib/ + + + + + + + + + ${project.build.directory}/hyperic-sigar-${sigar.base.version}/sigar-bin/lib + + + + + + sigar + https://repository.jboss.org/nexus/content/repositories/thirdparty-uploads/ + + + strict diff --git a/api/src/main/java/io/druid/cli/CliCommandCreator.java b/common/src/main/java/io/druid/cli/CliCommandCreator.java similarity index 100% rename from api/src/main/java/io/druid/cli/CliCommandCreator.java rename to common/src/main/java/io/druid/cli/CliCommandCreator.java diff --git a/common/src/main/java/io/druid/concurrent/ConcurrentAwaitableCounter.java b/common/src/main/java/io/druid/concurrent/ConcurrentAwaitableCounter.java new file mode 100644 index 000000000000..13861890bf7b --- /dev/null +++ b/common/src/main/java/io/druid/concurrent/ConcurrentAwaitableCounter.java @@ -0,0 +1,118 @@ +/* + * Licensed to Metamarkets Group Inc. (Metamarkets) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. Metamarkets licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +package io.druid.concurrent; + +import java.util.concurrent.TimeUnit; +import java.util.concurrent.TimeoutException; +import java.util.concurrent.locks.AbstractQueuedLongSynchronizer; + +public final class ConcurrentAwaitableCounter +{ + private static final long MAX_COUNT = Long.MAX_VALUE; + + public static long nextCount(long prevCount) + { + return (prevCount + 1) & MAX_COUNT; + } + + private static class Sync extends AbstractQueuedLongSynchronizer + { + @Override + protected long tryAcquireShared(long awaitedCount) + { + long currentCount = getState(); + return compareCounts(currentCount, awaitedCount) > 0 ? 1 : -1; + } + + @Override + protected boolean tryReleaseShared(long increment) + { + long count; + long nextCount; + do { + count = getState(); + nextCount = (count + increment) & MAX_COUNT; + } while (!compareAndSetState(count, nextCount)); + return true; + } + + long getCount() + { + return getState(); + } + } + + private final Sync sync = new Sync(); + + public void increment() + { + sync.releaseShared(1); + } + + public void awaitCount(long totalCount) throws InterruptedException + { + totalCount &= MAX_COUNT; + long currentCount; + currentCount = sync.getCount(); + while (compareCounts(totalCount, currentCount) > 0) { + sync.acquireSharedInterruptibly(currentCount); + currentCount = sync.getCount(); + } + } + + public void awaitCount(long totalCount, long timeout, TimeUnit unit) throws InterruptedException, TimeoutException + { + long nanos = unit.toNanos(timeout); + totalCount &= MAX_COUNT; + long currentCount; + currentCount = sync.getCount(); + while (compareCounts(totalCount, currentCount) > 0) { + if (!sync.tryAcquireNanos(currentCount, nanos)) { + throw new TimeoutException(); + } + currentCount = sync.getCount(); + } + } + + private static int compareCounts(long count1, long count2) + { + long diff = (count1 - count2) & MAX_COUNT; + if (diff == 0) { + return 0; + } + return diff < MAX_COUNT / 2 ? 1 : -1; + } + + public void awaitNextIncrements(long nextIncrements) throws InterruptedException + { + if (nextIncrements <= 0) { + throw new IllegalArgumentException("nextIncrements is not positive: " + nextIncrements); + } + if (nextIncrements > MAX_COUNT / 4) { + throw new UnsupportedOperationException("Couldn't wait for so many increments: " + nextIncrements); + } + awaitCount(sync.getCount() + nextIncrements); + } + + public boolean awaitFirstIncrement(long timeout, TimeUnit unit) throws InterruptedException + { + return sync.tryAcquireSharedNanos(0, unit.toNanos(timeout)); + } +} diff --git a/api/src/main/java/io/druid/data/input/ByteBufferInputRowParser.java b/common/src/main/java/io/druid/data/input/ByteBufferInputRowParser.java similarity index 100% rename from api/src/main/java/io/druid/data/input/ByteBufferInputRowParser.java rename to common/src/main/java/io/druid/data/input/ByteBufferInputRowParser.java diff --git a/api/src/main/java/io/druid/data/input/Committer.java b/common/src/main/java/io/druid/data/input/Committer.java similarity index 100% rename from api/src/main/java/io/druid/data/input/Committer.java rename to common/src/main/java/io/druid/data/input/Committer.java diff --git a/api/src/main/java/io/druid/data/input/Firehose.java b/common/src/main/java/io/druid/data/input/Firehose.java similarity index 100% rename from api/src/main/java/io/druid/data/input/Firehose.java rename to common/src/main/java/io/druid/data/input/Firehose.java diff --git a/api/src/main/java/io/druid/data/input/FirehoseFactory.java b/common/src/main/java/io/druid/data/input/FirehoseFactory.java similarity index 100% rename from api/src/main/java/io/druid/data/input/FirehoseFactory.java rename to common/src/main/java/io/druid/data/input/FirehoseFactory.java diff --git a/api/src/main/java/io/druid/data/input/FirehoseFactoryV2.java b/common/src/main/java/io/druid/data/input/FirehoseFactoryV2.java similarity index 100% rename from api/src/main/java/io/druid/data/input/FirehoseFactoryV2.java rename to common/src/main/java/io/druid/data/input/FirehoseFactoryV2.java diff --git a/api/src/main/java/io/druid/data/input/FirehoseV2.java b/common/src/main/java/io/druid/data/input/FirehoseV2.java similarity index 100% rename from api/src/main/java/io/druid/data/input/FirehoseV2.java rename to common/src/main/java/io/druid/data/input/FirehoseV2.java diff --git a/api/src/main/java/io/druid/data/input/InputRow.java b/common/src/main/java/io/druid/data/input/InputRow.java similarity index 100% rename from api/src/main/java/io/druid/data/input/InputRow.java rename to common/src/main/java/io/druid/data/input/InputRow.java diff --git a/api/src/main/java/io/druid/data/input/MapBasedInputRow.java b/common/src/main/java/io/druid/data/input/MapBasedInputRow.java similarity index 100% rename from api/src/main/java/io/druid/data/input/MapBasedInputRow.java rename to common/src/main/java/io/druid/data/input/MapBasedInputRow.java diff --git a/api/src/main/java/io/druid/data/input/MapBasedRow.java b/common/src/main/java/io/druid/data/input/MapBasedRow.java similarity index 100% rename from api/src/main/java/io/druid/data/input/MapBasedRow.java rename to common/src/main/java/io/druid/data/input/MapBasedRow.java diff --git a/api/src/main/java/io/druid/data/input/Row.java b/common/src/main/java/io/druid/data/input/Row.java similarity index 100% rename from api/src/main/java/io/druid/data/input/Row.java rename to common/src/main/java/io/druid/data/input/Row.java diff --git a/api/src/main/java/io/druid/data/input/Rows.java b/common/src/main/java/io/druid/data/input/Rows.java similarity index 100% rename from api/src/main/java/io/druid/data/input/Rows.java rename to common/src/main/java/io/druid/data/input/Rows.java diff --git a/api/src/main/java/io/druid/data/input/impl/AbstractTextFilesFirehoseFactory.java b/common/src/main/java/io/druid/data/input/impl/AbstractTextFilesFirehoseFactory.java similarity index 100% rename from api/src/main/java/io/druid/data/input/impl/AbstractTextFilesFirehoseFactory.java rename to common/src/main/java/io/druid/data/input/impl/AbstractTextFilesFirehoseFactory.java diff --git a/api/src/main/java/io/druid/data/input/impl/CSVParseSpec.java b/common/src/main/java/io/druid/data/input/impl/CSVParseSpec.java similarity index 100% rename from api/src/main/java/io/druid/data/input/impl/CSVParseSpec.java rename to common/src/main/java/io/druid/data/input/impl/CSVParseSpec.java diff --git a/api/src/main/java/io/druid/data/input/impl/DelimitedParseSpec.java b/common/src/main/java/io/druid/data/input/impl/DelimitedParseSpec.java similarity index 100% rename from api/src/main/java/io/druid/data/input/impl/DelimitedParseSpec.java rename to common/src/main/java/io/druid/data/input/impl/DelimitedParseSpec.java diff --git a/api/src/main/java/io/druid/data/input/impl/DimensionSchema.java b/common/src/main/java/io/druid/data/input/impl/DimensionSchema.java similarity index 96% rename from api/src/main/java/io/druid/data/input/impl/DimensionSchema.java rename to common/src/main/java/io/druid/data/input/impl/DimensionSchema.java index f2d9f9111860..2316575655cb 100644 --- a/api/src/main/java/io/druid/data/input/impl/DimensionSchema.java +++ b/common/src/main/java/io/druid/data/input/impl/DimensionSchema.java @@ -53,12 +53,12 @@ public abstract class DimensionSchema private static final EmittingLogger log = new EmittingLogger(DimensionSchema.class); - // main druid and druid-api should really use the same ValueType enum. - // merge them when druid-api is merged back into the main repo + // druid-processing and druid-common should really use the same ValueType enum. + // /** * Should be the same as {@code io.druid.segment.column.ValueType}. - * TODO merge them when druid-api is merged back into the main repo + * TODO merge them when druid-common is merged with druid-processing into a single druid-core module. */ public enum ValueType { diff --git a/api/src/main/java/io/druid/data/input/impl/DimensionsSpec.java b/common/src/main/java/io/druid/data/input/impl/DimensionsSpec.java similarity index 100% rename from api/src/main/java/io/druid/data/input/impl/DimensionsSpec.java rename to common/src/main/java/io/druid/data/input/impl/DimensionsSpec.java diff --git a/api/src/main/java/io/druid/data/input/impl/DoubleDimensionSchema.java b/common/src/main/java/io/druid/data/input/impl/DoubleDimensionSchema.java similarity index 100% rename from api/src/main/java/io/druid/data/input/impl/DoubleDimensionSchema.java rename to common/src/main/java/io/druid/data/input/impl/DoubleDimensionSchema.java diff --git a/api/src/main/java/io/druid/data/input/impl/FileIteratingFirehose.java b/common/src/main/java/io/druid/data/input/impl/FileIteratingFirehose.java similarity index 100% rename from api/src/main/java/io/druid/data/input/impl/FileIteratingFirehose.java rename to common/src/main/java/io/druid/data/input/impl/FileIteratingFirehose.java diff --git a/api/src/main/java/io/druid/data/input/impl/FloatDimensionSchema.java b/common/src/main/java/io/druid/data/input/impl/FloatDimensionSchema.java similarity index 100% rename from api/src/main/java/io/druid/data/input/impl/FloatDimensionSchema.java rename to common/src/main/java/io/druid/data/input/impl/FloatDimensionSchema.java diff --git a/api/src/main/java/io/druid/data/input/impl/InputRowParser.java b/common/src/main/java/io/druid/data/input/impl/InputRowParser.java similarity index 100% rename from api/src/main/java/io/druid/data/input/impl/InputRowParser.java rename to common/src/main/java/io/druid/data/input/impl/InputRowParser.java diff --git a/api/src/main/java/io/druid/data/input/impl/JSONLowercaseParseSpec.java b/common/src/main/java/io/druid/data/input/impl/JSONLowercaseParseSpec.java similarity index 100% rename from api/src/main/java/io/druid/data/input/impl/JSONLowercaseParseSpec.java rename to common/src/main/java/io/druid/data/input/impl/JSONLowercaseParseSpec.java diff --git a/api/src/main/java/io/druid/data/input/impl/JSONParseSpec.java b/common/src/main/java/io/druid/data/input/impl/JSONParseSpec.java similarity index 100% rename from api/src/main/java/io/druid/data/input/impl/JSONParseSpec.java rename to common/src/main/java/io/druid/data/input/impl/JSONParseSpec.java diff --git a/api/src/main/java/io/druid/data/input/impl/JavaScriptParseSpec.java b/common/src/main/java/io/druid/data/input/impl/JavaScriptParseSpec.java similarity index 100% rename from api/src/main/java/io/druid/data/input/impl/JavaScriptParseSpec.java rename to common/src/main/java/io/druid/data/input/impl/JavaScriptParseSpec.java diff --git a/api/src/main/java/io/druid/data/input/impl/LongDimensionSchema.java b/common/src/main/java/io/druid/data/input/impl/LongDimensionSchema.java similarity index 100% rename from api/src/main/java/io/druid/data/input/impl/LongDimensionSchema.java rename to common/src/main/java/io/druid/data/input/impl/LongDimensionSchema.java diff --git a/api/src/main/java/io/druid/data/input/impl/MapInputRowParser.java b/common/src/main/java/io/druid/data/input/impl/MapInputRowParser.java similarity index 100% rename from api/src/main/java/io/druid/data/input/impl/MapInputRowParser.java rename to common/src/main/java/io/druid/data/input/impl/MapInputRowParser.java diff --git a/api/src/main/java/io/druid/data/input/impl/NewSpatialDimensionSchema.java b/common/src/main/java/io/druid/data/input/impl/NewSpatialDimensionSchema.java similarity index 100% rename from api/src/main/java/io/druid/data/input/impl/NewSpatialDimensionSchema.java rename to common/src/main/java/io/druid/data/input/impl/NewSpatialDimensionSchema.java diff --git a/api/src/main/java/io/druid/data/input/impl/NoopInputRowParser.java b/common/src/main/java/io/druid/data/input/impl/NoopInputRowParser.java similarity index 100% rename from api/src/main/java/io/druid/data/input/impl/NoopInputRowParser.java rename to common/src/main/java/io/druid/data/input/impl/NoopInputRowParser.java diff --git a/api/src/main/java/io/druid/data/input/impl/ParseSpec.java b/common/src/main/java/io/druid/data/input/impl/ParseSpec.java similarity index 100% rename from api/src/main/java/io/druid/data/input/impl/ParseSpec.java rename to common/src/main/java/io/druid/data/input/impl/ParseSpec.java diff --git a/api/src/main/java/io/druid/data/input/impl/RegexParseSpec.java b/common/src/main/java/io/druid/data/input/impl/RegexParseSpec.java similarity index 100% rename from api/src/main/java/io/druid/data/input/impl/RegexParseSpec.java rename to common/src/main/java/io/druid/data/input/impl/RegexParseSpec.java diff --git a/api/src/main/java/io/druid/data/input/impl/SpatialDimensionSchema.java b/common/src/main/java/io/druid/data/input/impl/SpatialDimensionSchema.java similarity index 100% rename from api/src/main/java/io/druid/data/input/impl/SpatialDimensionSchema.java rename to common/src/main/java/io/druid/data/input/impl/SpatialDimensionSchema.java diff --git a/api/src/main/java/io/druid/data/input/impl/StringDimensionSchema.java b/common/src/main/java/io/druid/data/input/impl/StringDimensionSchema.java similarity index 100% rename from api/src/main/java/io/druid/data/input/impl/StringDimensionSchema.java rename to common/src/main/java/io/druid/data/input/impl/StringDimensionSchema.java diff --git a/api/src/main/java/io/druid/data/input/impl/StringInputRowParser.java b/common/src/main/java/io/druid/data/input/impl/StringInputRowParser.java similarity index 100% rename from api/src/main/java/io/druid/data/input/impl/StringInputRowParser.java rename to common/src/main/java/io/druid/data/input/impl/StringInputRowParser.java diff --git a/api/src/main/java/io/druid/data/input/impl/TimeAndDimsParseSpec.java b/common/src/main/java/io/druid/data/input/impl/TimeAndDimsParseSpec.java similarity index 100% rename from api/src/main/java/io/druid/data/input/impl/TimeAndDimsParseSpec.java rename to common/src/main/java/io/druid/data/input/impl/TimeAndDimsParseSpec.java diff --git a/api/src/main/java/io/druid/data/input/impl/TimestampSpec.java b/common/src/main/java/io/druid/data/input/impl/TimestampSpec.java similarity index 100% rename from api/src/main/java/io/druid/data/input/impl/TimestampSpec.java rename to common/src/main/java/io/druid/data/input/impl/TimestampSpec.java diff --git a/api/src/main/java/io/druid/data/input/impl/prefetch/CacheManager.java b/common/src/main/java/io/druid/data/input/impl/prefetch/CacheManager.java similarity index 100% rename from api/src/main/java/io/druid/data/input/impl/prefetch/CacheManager.java rename to common/src/main/java/io/druid/data/input/impl/prefetch/CacheManager.java diff --git a/api/src/main/java/io/druid/data/input/impl/prefetch/FetchedFile.java b/common/src/main/java/io/druid/data/input/impl/prefetch/FetchedFile.java similarity index 100% rename from api/src/main/java/io/druid/data/input/impl/prefetch/FetchedFile.java rename to common/src/main/java/io/druid/data/input/impl/prefetch/FetchedFile.java diff --git a/api/src/main/java/io/druid/data/input/impl/prefetch/Fetcher.java b/common/src/main/java/io/druid/data/input/impl/prefetch/Fetcher.java similarity index 100% rename from api/src/main/java/io/druid/data/input/impl/prefetch/Fetcher.java rename to common/src/main/java/io/druid/data/input/impl/prefetch/Fetcher.java diff --git a/api/src/main/java/io/druid/data/input/impl/prefetch/ObjectOpenFunction.java b/common/src/main/java/io/druid/data/input/impl/prefetch/ObjectOpenFunction.java similarity index 100% rename from api/src/main/java/io/druid/data/input/impl/prefetch/ObjectOpenFunction.java rename to common/src/main/java/io/druid/data/input/impl/prefetch/ObjectOpenFunction.java diff --git a/api/src/main/java/io/druid/data/input/impl/prefetch/OpenedObject.java b/common/src/main/java/io/druid/data/input/impl/prefetch/OpenedObject.java similarity index 100% rename from api/src/main/java/io/druid/data/input/impl/prefetch/OpenedObject.java rename to common/src/main/java/io/druid/data/input/impl/prefetch/OpenedObject.java diff --git a/api/src/main/java/io/druid/data/input/impl/prefetch/PrefetchableTextFilesFirehoseFactory.java b/common/src/main/java/io/druid/data/input/impl/prefetch/PrefetchableTextFilesFirehoseFactory.java similarity index 100% rename from api/src/main/java/io/druid/data/input/impl/prefetch/PrefetchableTextFilesFirehoseFactory.java rename to common/src/main/java/io/druid/data/input/impl/prefetch/PrefetchableTextFilesFirehoseFactory.java diff --git a/api/src/main/java/io/druid/data/input/impl/prefetch/RetryingInputStream.java b/common/src/main/java/io/druid/data/input/impl/prefetch/RetryingInputStream.java similarity index 100% rename from api/src/main/java/io/druid/data/input/impl/prefetch/RetryingInputStream.java rename to common/src/main/java/io/druid/data/input/impl/prefetch/RetryingInputStream.java diff --git a/api/src/main/java/io/druid/guice/Binders.java b/common/src/main/java/io/druid/guice/Binders.java similarity index 100% rename from api/src/main/java/io/druid/guice/Binders.java rename to common/src/main/java/io/druid/guice/Binders.java diff --git a/api/src/main/java/io/druid/guice/ConditionalMultibind.java b/common/src/main/java/io/druid/guice/ConditionalMultibind.java similarity index 100% rename from api/src/main/java/io/druid/guice/ConditionalMultibind.java rename to common/src/main/java/io/druid/guice/ConditionalMultibind.java diff --git a/api/src/main/java/io/druid/guice/DruidGuiceExtensions.java b/common/src/main/java/io/druid/guice/DruidGuiceExtensions.java similarity index 100% rename from api/src/main/java/io/druid/guice/DruidGuiceExtensions.java rename to common/src/main/java/io/druid/guice/DruidGuiceExtensions.java diff --git a/api/src/main/java/io/druid/guice/DruidScopes.java b/common/src/main/java/io/druid/guice/DruidScopes.java similarity index 100% rename from api/src/main/java/io/druid/guice/DruidScopes.java rename to common/src/main/java/io/druid/guice/DruidScopes.java diff --git a/api/src/main/java/io/druid/guice/Jerseys.java b/common/src/main/java/io/druid/guice/Jerseys.java similarity index 100% rename from api/src/main/java/io/druid/guice/Jerseys.java rename to common/src/main/java/io/druid/guice/Jerseys.java diff --git a/api/src/main/java/io/druid/guice/JsonConfigProvider.java b/common/src/main/java/io/druid/guice/JsonConfigProvider.java similarity index 100% rename from api/src/main/java/io/druid/guice/JsonConfigProvider.java rename to common/src/main/java/io/druid/guice/JsonConfigProvider.java diff --git a/api/src/main/java/io/druid/guice/JsonConfigurator.java b/common/src/main/java/io/druid/guice/JsonConfigurator.java similarity index 100% rename from api/src/main/java/io/druid/guice/JsonConfigurator.java rename to common/src/main/java/io/druid/guice/JsonConfigurator.java diff --git a/api/src/main/java/io/druid/guice/KeyHolder.java b/common/src/main/java/io/druid/guice/KeyHolder.java similarity index 100% rename from api/src/main/java/io/druid/guice/KeyHolder.java rename to common/src/main/java/io/druid/guice/KeyHolder.java diff --git a/api/src/main/java/io/druid/guice/LazySingleton.java b/common/src/main/java/io/druid/guice/LazySingleton.java similarity index 100% rename from api/src/main/java/io/druid/guice/LazySingleton.java rename to common/src/main/java/io/druid/guice/LazySingleton.java diff --git a/api/src/main/java/io/druid/guice/LifecycleModule.java b/common/src/main/java/io/druid/guice/LifecycleModule.java similarity index 100% rename from api/src/main/java/io/druid/guice/LifecycleModule.java rename to common/src/main/java/io/druid/guice/LifecycleModule.java diff --git a/api/src/main/java/io/druid/guice/LifecycleScope.java b/common/src/main/java/io/druid/guice/LifecycleScope.java similarity index 100% rename from api/src/main/java/io/druid/guice/LifecycleScope.java rename to common/src/main/java/io/druid/guice/LifecycleScope.java diff --git a/api/src/main/java/io/druid/guice/ManageLifecycle.java b/common/src/main/java/io/druid/guice/ManageLifecycle.java similarity index 100% rename from api/src/main/java/io/druid/guice/ManageLifecycle.java rename to common/src/main/java/io/druid/guice/ManageLifecycle.java diff --git a/api/src/main/java/io/druid/guice/ManageLifecycleLast.java b/common/src/main/java/io/druid/guice/ManageLifecycleLast.java similarity index 100% rename from api/src/main/java/io/druid/guice/ManageLifecycleLast.java rename to common/src/main/java/io/druid/guice/ManageLifecycleLast.java diff --git a/api/src/main/java/io/druid/guice/PolyBind.java b/common/src/main/java/io/druid/guice/PolyBind.java similarity index 100% rename from api/src/main/java/io/druid/guice/PolyBind.java rename to common/src/main/java/io/druid/guice/PolyBind.java diff --git a/api/src/main/java/io/druid/guice/SupplierProvider.java b/common/src/main/java/io/druid/guice/SupplierProvider.java similarity index 100% rename from api/src/main/java/io/druid/guice/SupplierProvider.java rename to common/src/main/java/io/druid/guice/SupplierProvider.java diff --git a/api/src/main/java/io/druid/guice/annotations/EscalatedGlobal.java b/common/src/main/java/io/druid/guice/annotations/EscalatedGlobal.java similarity index 100% rename from api/src/main/java/io/druid/guice/annotations/EscalatedGlobal.java rename to common/src/main/java/io/druid/guice/annotations/EscalatedGlobal.java diff --git a/api/src/main/java/io/druid/guice/annotations/ExtensionPoint.java b/common/src/main/java/io/druid/guice/annotations/ExtensionPoint.java similarity index 100% rename from api/src/main/java/io/druid/guice/annotations/ExtensionPoint.java rename to common/src/main/java/io/druid/guice/annotations/ExtensionPoint.java diff --git a/api/src/main/java/io/druid/guice/annotations/Global.java b/common/src/main/java/io/druid/guice/annotations/Global.java similarity index 100% rename from api/src/main/java/io/druid/guice/annotations/Global.java rename to common/src/main/java/io/druid/guice/annotations/Global.java diff --git a/api/src/main/java/io/druid/guice/annotations/JSR311Resource.java b/common/src/main/java/io/druid/guice/annotations/JSR311Resource.java similarity index 100% rename from api/src/main/java/io/druid/guice/annotations/JSR311Resource.java rename to common/src/main/java/io/druid/guice/annotations/JSR311Resource.java diff --git a/api/src/main/java/io/druid/guice/annotations/Json.java b/common/src/main/java/io/druid/guice/annotations/Json.java similarity index 100% rename from api/src/main/java/io/druid/guice/annotations/Json.java rename to common/src/main/java/io/druid/guice/annotations/Json.java diff --git a/api/src/main/java/io/druid/guice/annotations/PublicApi.java b/common/src/main/java/io/druid/guice/annotations/PublicApi.java similarity index 100% rename from api/src/main/java/io/druid/guice/annotations/PublicApi.java rename to common/src/main/java/io/druid/guice/annotations/PublicApi.java diff --git a/api/src/main/java/io/druid/guice/annotations/Self.java b/common/src/main/java/io/druid/guice/annotations/Self.java similarity index 100% rename from api/src/main/java/io/druid/guice/annotations/Self.java rename to common/src/main/java/io/druid/guice/annotations/Self.java diff --git a/api/src/main/java/io/druid/guice/annotations/Smile.java b/common/src/main/java/io/druid/guice/annotations/Smile.java similarity index 100% rename from api/src/main/java/io/druid/guice/annotations/Smile.java rename to common/src/main/java/io/druid/guice/annotations/Smile.java diff --git a/api/src/main/java/io/druid/indexer/TaskLocation.java b/common/src/main/java/io/druid/indexer/TaskLocation.java similarity index 100% rename from api/src/main/java/io/druid/indexer/TaskLocation.java rename to common/src/main/java/io/druid/indexer/TaskLocation.java diff --git a/api/src/main/java/io/druid/indexer/TaskState.java b/common/src/main/java/io/druid/indexer/TaskState.java similarity index 100% rename from api/src/main/java/io/druid/indexer/TaskState.java rename to common/src/main/java/io/druid/indexer/TaskState.java diff --git a/api/src/main/java/io/druid/indexer/TaskStatusPlus.java b/common/src/main/java/io/druid/indexer/TaskStatusPlus.java similarity index 100% rename from api/src/main/java/io/druid/indexer/TaskStatusPlus.java rename to common/src/main/java/io/druid/indexer/TaskStatusPlus.java diff --git a/api/src/main/java/io/druid/initialization/DruidModule.java b/common/src/main/java/io/druid/initialization/DruidModule.java similarity index 100% rename from api/src/main/java/io/druid/initialization/DruidModule.java rename to common/src/main/java/io/druid/initialization/DruidModule.java diff --git a/api/src/main/java/io/druid/jackson/CommaListJoinDeserializer.java b/common/src/main/java/io/druid/jackson/CommaListJoinDeserializer.java similarity index 100% rename from api/src/main/java/io/druid/jackson/CommaListJoinDeserializer.java rename to common/src/main/java/io/druid/jackson/CommaListJoinDeserializer.java diff --git a/api/src/main/java/io/druid/jackson/CommaListJoinSerializer.java b/common/src/main/java/io/druid/jackson/CommaListJoinSerializer.java similarity index 100% rename from api/src/main/java/io/druid/jackson/CommaListJoinSerializer.java rename to common/src/main/java/io/druid/jackson/CommaListJoinSerializer.java diff --git a/java-util/src/main/java/io/druid/java/util/common/ByteBufferUtils.java b/common/src/main/java/io/druid/java/util/common/ByteBufferUtils.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/ByteBufferUtils.java rename to common/src/main/java/io/druid/java/util/common/ByteBufferUtils.java diff --git a/java-util/src/main/java/io/druid/java/util/common/Cacheable.java b/common/src/main/java/io/druid/java/util/common/Cacheable.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/Cacheable.java rename to common/src/main/java/io/druid/java/util/common/Cacheable.java diff --git a/java-util/src/main/java/io/druid/java/util/common/CloseableIterators.java b/common/src/main/java/io/druid/java/util/common/CloseableIterators.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/CloseableIterators.java rename to common/src/main/java/io/druid/java/util/common/CloseableIterators.java diff --git a/java-util/src/main/java/io/druid/java/util/common/CompressionUtils.java b/common/src/main/java/io/druid/java/util/common/CompressionUtils.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/CompressionUtils.java rename to common/src/main/java/io/druid/java/util/common/CompressionUtils.java diff --git a/java-util/src/main/java/io/druid/java/util/common/DateTimes.java b/common/src/main/java/io/druid/java/util/common/DateTimes.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/DateTimes.java rename to common/src/main/java/io/druid/java/util/common/DateTimes.java diff --git a/java-util/src/main/java/io/druid/java/util/common/FileUtils.java b/common/src/main/java/io/druid/java/util/common/FileUtils.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/FileUtils.java rename to common/src/main/java/io/druid/java/util/common/FileUtils.java diff --git a/java-util/src/main/java/io/druid/java/util/common/IAE.java b/common/src/main/java/io/druid/java/util/common/IAE.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/IAE.java rename to common/src/main/java/io/druid/java/util/common/IAE.java diff --git a/java-util/src/main/java/io/druid/java/util/common/IOE.java b/common/src/main/java/io/druid/java/util/common/IOE.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/IOE.java rename to common/src/main/java/io/druid/java/util/common/IOE.java diff --git a/java-util/src/main/java/io/druid/java/util/common/ISE.java b/common/src/main/java/io/druid/java/util/common/ISE.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/ISE.java rename to common/src/main/java/io/druid/java/util/common/ISE.java diff --git a/java-util/src/main/java/io/druid/java/util/common/Intervals.java b/common/src/main/java/io/druid/java/util/common/Intervals.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/Intervals.java rename to common/src/main/java/io/druid/java/util/common/Intervals.java diff --git a/java-util/src/main/java/io/druid/java/util/common/JodaUtils.java b/common/src/main/java/io/druid/java/util/common/JodaUtils.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/JodaUtils.java rename to common/src/main/java/io/druid/java/util/common/JodaUtils.java diff --git a/java-util/src/main/java/io/druid/java/util/common/MapUtils.java b/common/src/main/java/io/druid/java/util/common/MapUtils.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/MapUtils.java rename to common/src/main/java/io/druid/java/util/common/MapUtils.java diff --git a/java-util/src/main/java/io/druid/java/util/common/MappedByteBufferHandler.java b/common/src/main/java/io/druid/java/util/common/MappedByteBufferHandler.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/MappedByteBufferHandler.java rename to common/src/main/java/io/druid/java/util/common/MappedByteBufferHandler.java diff --git a/java-util/src/main/java/io/druid/java/util/common/Pair.java b/common/src/main/java/io/druid/java/util/common/Pair.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/Pair.java rename to common/src/main/java/io/druid/java/util/common/Pair.java diff --git a/java-util/src/main/java/io/druid/java/util/common/RE.java b/common/src/main/java/io/druid/java/util/common/RE.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/RE.java rename to common/src/main/java/io/druid/java/util/common/RE.java diff --git a/java-util/src/main/java/io/druid/java/util/common/RetryUtils.java b/common/src/main/java/io/druid/java/util/common/RetryUtils.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/RetryUtils.java rename to common/src/main/java/io/druid/java/util/common/RetryUtils.java diff --git a/java-util/src/main/java/io/druid/java/util/common/StreamUtils.java b/common/src/main/java/io/druid/java/util/common/StreamUtils.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/StreamUtils.java rename to common/src/main/java/io/druid/java/util/common/StreamUtils.java diff --git a/java-util/src/main/java/io/druid/java/util/common/StringUtils.java b/common/src/main/java/io/druid/java/util/common/StringUtils.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/StringUtils.java rename to common/src/main/java/io/druid/java/util/common/StringUtils.java diff --git a/java-util/src/main/java/io/druid/java/util/common/UOE.java b/common/src/main/java/io/druid/java/util/common/UOE.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/UOE.java rename to common/src/main/java/io/druid/java/util/common/UOE.java diff --git a/java-util/src/main/java/io/druid/java/util/common/collect/AggregatingMap.java b/common/src/main/java/io/druid/java/util/common/collect/AggregatingMap.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/collect/AggregatingMap.java rename to common/src/main/java/io/druid/java/util/common/collect/AggregatingMap.java diff --git a/java-util/src/main/java/io/druid/java/util/common/collect/MoreIterators.java b/common/src/main/java/io/druid/java/util/common/collect/MoreIterators.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/collect/MoreIterators.java rename to common/src/main/java/io/druid/java/util/common/collect/MoreIterators.java diff --git a/java-util/src/main/java/io/druid/java/util/common/collect/Utils.java b/common/src/main/java/io/druid/java/util/common/collect/Utils.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/collect/Utils.java rename to common/src/main/java/io/druid/java/util/common/collect/Utils.java diff --git a/java-util/src/main/java/io/druid/java/util/common/concurrent/DummyExecutorService.java b/common/src/main/java/io/druid/java/util/common/concurrent/DummyExecutorService.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/concurrent/DummyExecutorService.java rename to common/src/main/java/io/druid/java/util/common/concurrent/DummyExecutorService.java diff --git a/java-util/src/main/java/io/druid/java/util/common/concurrent/Execs.java b/common/src/main/java/io/druid/java/util/common/concurrent/Execs.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/concurrent/Execs.java rename to common/src/main/java/io/druid/java/util/common/concurrent/Execs.java diff --git a/java-util/src/main/java/io/druid/java/util/common/concurrent/ExecutorServiceConfig.java b/common/src/main/java/io/druid/java/util/common/concurrent/ExecutorServiceConfig.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/concurrent/ExecutorServiceConfig.java rename to common/src/main/java/io/druid/java/util/common/concurrent/ExecutorServiceConfig.java diff --git a/java-util/src/main/java/io/druid/java/util/common/concurrent/ExecutorServices.java b/common/src/main/java/io/druid/java/util/common/concurrent/ExecutorServices.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/concurrent/ExecutorServices.java rename to common/src/main/java/io/druid/java/util/common/concurrent/ExecutorServices.java diff --git a/java-util/src/main/java/io/druid/java/util/common/concurrent/FunctionalThreadFactory.java b/common/src/main/java/io/druid/java/util/common/concurrent/FunctionalThreadFactory.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/concurrent/FunctionalThreadFactory.java rename to common/src/main/java/io/druid/java/util/common/concurrent/FunctionalThreadFactory.java diff --git a/java-util/src/main/java/io/druid/java/util/common/concurrent/ScheduledExecutorFactory.java b/common/src/main/java/io/druid/java/util/common/concurrent/ScheduledExecutorFactory.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/concurrent/ScheduledExecutorFactory.java rename to common/src/main/java/io/druid/java/util/common/concurrent/ScheduledExecutorFactory.java diff --git a/java-util/src/main/java/io/druid/java/util/common/concurrent/ScheduledExecutors.java b/common/src/main/java/io/druid/java/util/common/concurrent/ScheduledExecutors.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/concurrent/ScheduledExecutors.java rename to common/src/main/java/io/druid/java/util/common/concurrent/ScheduledExecutors.java diff --git a/java-util/src/main/java/io/druid/java/util/common/concurrent/SimpleExecutorConfig.java b/common/src/main/java/io/druid/java/util/common/concurrent/SimpleExecutorConfig.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/concurrent/SimpleExecutorConfig.java rename to common/src/main/java/io/druid/java/util/common/concurrent/SimpleExecutorConfig.java diff --git a/java-util/src/main/java/io/druid/java/util/common/config/Config.java b/common/src/main/java/io/druid/java/util/common/config/Config.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/config/Config.java rename to common/src/main/java/io/druid/java/util/common/config/Config.java diff --git a/java-util/src/main/java/io/druid/java/util/common/config/DurationCoercible.java b/common/src/main/java/io/druid/java/util/common/config/DurationCoercible.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/config/DurationCoercible.java rename to common/src/main/java/io/druid/java/util/common/config/DurationCoercible.java diff --git a/java-util/src/main/java/io/druid/java/util/common/granularity/AllGranularity.java b/common/src/main/java/io/druid/java/util/common/granularity/AllGranularity.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/granularity/AllGranularity.java rename to common/src/main/java/io/druid/java/util/common/granularity/AllGranularity.java diff --git a/java-util/src/main/java/io/druid/java/util/common/granularity/DurationGranularity.java b/common/src/main/java/io/druid/java/util/common/granularity/DurationGranularity.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/granularity/DurationGranularity.java rename to common/src/main/java/io/druid/java/util/common/granularity/DurationGranularity.java diff --git a/java-util/src/main/java/io/druid/java/util/common/granularity/Granularities.java b/common/src/main/java/io/druid/java/util/common/granularity/Granularities.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/granularity/Granularities.java rename to common/src/main/java/io/druid/java/util/common/granularity/Granularities.java diff --git a/java-util/src/main/java/io/druid/java/util/common/granularity/Granularity.java b/common/src/main/java/io/druid/java/util/common/granularity/Granularity.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/granularity/Granularity.java rename to common/src/main/java/io/druid/java/util/common/granularity/Granularity.java diff --git a/java-util/src/main/java/io/druid/java/util/common/granularity/GranularityType.java b/common/src/main/java/io/druid/java/util/common/granularity/GranularityType.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/granularity/GranularityType.java rename to common/src/main/java/io/druid/java/util/common/granularity/GranularityType.java diff --git a/java-util/src/main/java/io/druid/java/util/common/granularity/NoneGranularity.java b/common/src/main/java/io/druid/java/util/common/granularity/NoneGranularity.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/granularity/NoneGranularity.java rename to common/src/main/java/io/druid/java/util/common/granularity/NoneGranularity.java diff --git a/java-util/src/main/java/io/druid/java/util/common/granularity/PeriodGranularity.java b/common/src/main/java/io/druid/java/util/common/granularity/PeriodGranularity.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/granularity/PeriodGranularity.java rename to common/src/main/java/io/druid/java/util/common/granularity/PeriodGranularity.java diff --git a/java-util/src/main/java/io/druid/java/util/common/guava/Accumulator.java b/common/src/main/java/io/druid/java/util/common/guava/Accumulator.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/guava/Accumulator.java rename to common/src/main/java/io/druid/java/util/common/guava/Accumulator.java diff --git a/java-util/src/main/java/io/druid/java/util/common/guava/Accumulators.java b/common/src/main/java/io/druid/java/util/common/guava/Accumulators.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/guava/Accumulators.java rename to common/src/main/java/io/druid/java/util/common/guava/Accumulators.java diff --git a/java-util/src/main/java/io/druid/java/util/common/guava/BaseSequence.java b/common/src/main/java/io/druid/java/util/common/guava/BaseSequence.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/guava/BaseSequence.java rename to common/src/main/java/io/druid/java/util/common/guava/BaseSequence.java diff --git a/java-util/src/main/java/io/druid/java/util/common/guava/CloseQuietly.java b/common/src/main/java/io/druid/java/util/common/guava/CloseQuietly.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/guava/CloseQuietly.java rename to common/src/main/java/io/druid/java/util/common/guava/CloseQuietly.java diff --git a/java-util/src/main/java/io/druid/java/util/common/guava/Comparators.java b/common/src/main/java/io/druid/java/util/common/guava/Comparators.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/guava/Comparators.java rename to common/src/main/java/io/druid/java/util/common/guava/Comparators.java diff --git a/java-util/src/main/java/io/druid/java/util/common/guava/ConcatSequence.java b/common/src/main/java/io/druid/java/util/common/guava/ConcatSequence.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/guava/ConcatSequence.java rename to common/src/main/java/io/druid/java/util/common/guava/ConcatSequence.java diff --git a/java-util/src/main/java/io/druid/java/util/common/guava/DefaultingHashMap.java b/common/src/main/java/io/druid/java/util/common/guava/DefaultingHashMap.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/guava/DefaultingHashMap.java rename to common/src/main/java/io/druid/java/util/common/guava/DefaultingHashMap.java diff --git a/java-util/src/main/java/io/druid/java/util/common/guava/DelegatingYieldingAccumulator.java b/common/src/main/java/io/druid/java/util/common/guava/DelegatingYieldingAccumulator.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/guava/DelegatingYieldingAccumulator.java rename to common/src/main/java/io/druid/java/util/common/guava/DelegatingYieldingAccumulator.java diff --git a/java-util/src/main/java/io/druid/java/util/common/guava/DroppingIterable.java b/common/src/main/java/io/druid/java/util/common/guava/DroppingIterable.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/guava/DroppingIterable.java rename to common/src/main/java/io/druid/java/util/common/guava/DroppingIterable.java diff --git a/java-util/src/main/java/io/druid/java/util/common/guava/DroppingIterator.java b/common/src/main/java/io/druid/java/util/common/guava/DroppingIterator.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/guava/DroppingIterator.java rename to common/src/main/java/io/druid/java/util/common/guava/DroppingIterator.java diff --git a/java-util/src/main/java/io/druid/java/util/common/guava/ExecuteWhenDoneYielder.java b/common/src/main/java/io/druid/java/util/common/guava/ExecuteWhenDoneYielder.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/guava/ExecuteWhenDoneYielder.java rename to common/src/main/java/io/druid/java/util/common/guava/ExecuteWhenDoneYielder.java diff --git a/java-util/src/main/java/io/druid/java/util/common/guava/FilteredSequence.java b/common/src/main/java/io/druid/java/util/common/guava/FilteredSequence.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/guava/FilteredSequence.java rename to common/src/main/java/io/druid/java/util/common/guava/FilteredSequence.java diff --git a/java-util/src/main/java/io/druid/java/util/common/guava/FilteringAccumulator.java b/common/src/main/java/io/druid/java/util/common/guava/FilteringAccumulator.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/guava/FilteringAccumulator.java rename to common/src/main/java/io/druid/java/util/common/guava/FilteringAccumulator.java diff --git a/java-util/src/main/java/io/druid/java/util/common/guava/FilteringYieldingAccumulator.java b/common/src/main/java/io/druid/java/util/common/guava/FilteringYieldingAccumulator.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/guava/FilteringYieldingAccumulator.java rename to common/src/main/java/io/druid/java/util/common/guava/FilteringYieldingAccumulator.java diff --git a/java-util/src/main/java/io/druid/java/util/common/guava/FunctionalIterable.java b/common/src/main/java/io/druid/java/util/common/guava/FunctionalIterable.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/guava/FunctionalIterable.java rename to common/src/main/java/io/druid/java/util/common/guava/FunctionalIterable.java diff --git a/java-util/src/main/java/io/druid/java/util/common/guava/FunctionalIterator.java b/common/src/main/java/io/druid/java/util/common/guava/FunctionalIterator.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/guava/FunctionalIterator.java rename to common/src/main/java/io/druid/java/util/common/guava/FunctionalIterator.java diff --git a/java-util/src/main/java/io/druid/java/util/common/guava/LazySequence.java b/common/src/main/java/io/druid/java/util/common/guava/LazySequence.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/guava/LazySequence.java rename to common/src/main/java/io/druid/java/util/common/guava/LazySequence.java diff --git a/java-util/src/main/java/io/druid/java/util/common/guava/LimitedSequence.java b/common/src/main/java/io/druid/java/util/common/guava/LimitedSequence.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/guava/LimitedSequence.java rename to common/src/main/java/io/druid/java/util/common/guava/LimitedSequence.java diff --git a/java-util/src/main/java/io/druid/java/util/common/guava/MappedSequence.java b/common/src/main/java/io/druid/java/util/common/guava/MappedSequence.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/guava/MappedSequence.java rename to common/src/main/java/io/druid/java/util/common/guava/MappedSequence.java diff --git a/java-util/src/main/java/io/druid/java/util/common/guava/MappingAccumulator.java b/common/src/main/java/io/druid/java/util/common/guava/MappingAccumulator.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/guava/MappingAccumulator.java rename to common/src/main/java/io/druid/java/util/common/guava/MappingAccumulator.java diff --git a/java-util/src/main/java/io/druid/java/util/common/guava/MappingYieldingAccumulator.java b/common/src/main/java/io/druid/java/util/common/guava/MappingYieldingAccumulator.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/guava/MappingYieldingAccumulator.java rename to common/src/main/java/io/druid/java/util/common/guava/MappingYieldingAccumulator.java diff --git a/java-util/src/main/java/io/druid/java/util/common/guava/MergeIterable.java b/common/src/main/java/io/druid/java/util/common/guava/MergeIterable.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/guava/MergeIterable.java rename to common/src/main/java/io/druid/java/util/common/guava/MergeIterable.java diff --git a/java-util/src/main/java/io/druid/java/util/common/guava/MergeIterator.java b/common/src/main/java/io/druid/java/util/common/guava/MergeIterator.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/guava/MergeIterator.java rename to common/src/main/java/io/druid/java/util/common/guava/MergeIterator.java diff --git a/java-util/src/main/java/io/druid/java/util/common/guava/MergeSequence.java b/common/src/main/java/io/druid/java/util/common/guava/MergeSequence.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/guava/MergeSequence.java rename to common/src/main/java/io/druid/java/util/common/guava/MergeSequence.java diff --git a/java-util/src/main/java/io/druid/java/util/common/guava/Sequence.java b/common/src/main/java/io/druid/java/util/common/guava/Sequence.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/guava/Sequence.java rename to common/src/main/java/io/druid/java/util/common/guava/Sequence.java diff --git a/java-util/src/main/java/io/druid/java/util/common/guava/SequenceWrapper.java b/common/src/main/java/io/druid/java/util/common/guava/SequenceWrapper.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/guava/SequenceWrapper.java rename to common/src/main/java/io/druid/java/util/common/guava/SequenceWrapper.java diff --git a/java-util/src/main/java/io/druid/java/util/common/guava/Sequences.java b/common/src/main/java/io/druid/java/util/common/guava/Sequences.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/guava/Sequences.java rename to common/src/main/java/io/druid/java/util/common/guava/Sequences.java diff --git a/java-util/src/main/java/io/druid/java/util/common/guava/WrappingSequence.java b/common/src/main/java/io/druid/java/util/common/guava/WrappingSequence.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/guava/WrappingSequence.java rename to common/src/main/java/io/druid/java/util/common/guava/WrappingSequence.java diff --git a/java-util/src/main/java/io/druid/java/util/common/guava/WrappingYielder.java b/common/src/main/java/io/druid/java/util/common/guava/WrappingYielder.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/guava/WrappingYielder.java rename to common/src/main/java/io/druid/java/util/common/guava/WrappingYielder.java diff --git a/java-util/src/main/java/io/druid/java/util/common/guava/Yielder.java b/common/src/main/java/io/druid/java/util/common/guava/Yielder.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/guava/Yielder.java rename to common/src/main/java/io/druid/java/util/common/guava/Yielder.java diff --git a/java-util/src/main/java/io/druid/java/util/common/guava/Yielders.java b/common/src/main/java/io/druid/java/util/common/guava/Yielders.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/guava/Yielders.java rename to common/src/main/java/io/druid/java/util/common/guava/Yielders.java diff --git a/java-util/src/main/java/io/druid/java/util/common/guava/YieldingAccumulator.java b/common/src/main/java/io/druid/java/util/common/guava/YieldingAccumulator.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/guava/YieldingAccumulator.java rename to common/src/main/java/io/druid/java/util/common/guava/YieldingAccumulator.java diff --git a/java-util/src/main/java/io/druid/java/util/common/guava/YieldingAccumulators.java b/common/src/main/java/io/druid/java/util/common/guava/YieldingAccumulators.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/guava/YieldingAccumulators.java rename to common/src/main/java/io/druid/java/util/common/guava/YieldingAccumulators.java diff --git a/java-util/src/main/java/io/druid/java/util/common/guava/YieldingSequenceBase.java b/common/src/main/java/io/druid/java/util/common/guava/YieldingSequenceBase.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/guava/YieldingSequenceBase.java rename to common/src/main/java/io/druid/java/util/common/guava/YieldingSequenceBase.java diff --git a/java-util/src/main/java/io/druid/java/util/common/guava/nary/BinaryFn.java b/common/src/main/java/io/druid/java/util/common/guava/nary/BinaryFn.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/guava/nary/BinaryFn.java rename to common/src/main/java/io/druid/java/util/common/guava/nary/BinaryFn.java diff --git a/java-util/src/main/java/io/druid/java/util/common/guava/nary/BinaryTransformIterable.java b/common/src/main/java/io/druid/java/util/common/guava/nary/BinaryTransformIterable.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/guava/nary/BinaryTransformIterable.java rename to common/src/main/java/io/druid/java/util/common/guava/nary/BinaryTransformIterable.java diff --git a/java-util/src/main/java/io/druid/java/util/common/guava/nary/BinaryTransformIterator.java b/common/src/main/java/io/druid/java/util/common/guava/nary/BinaryTransformIterator.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/guava/nary/BinaryTransformIterator.java rename to common/src/main/java/io/druid/java/util/common/guava/nary/BinaryTransformIterator.java diff --git a/java-util/src/main/java/io/druid/java/util/common/guava/nary/SortedMergeIterable.java b/common/src/main/java/io/druid/java/util/common/guava/nary/SortedMergeIterable.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/guava/nary/SortedMergeIterable.java rename to common/src/main/java/io/druid/java/util/common/guava/nary/SortedMergeIterable.java diff --git a/java-util/src/main/java/io/druid/java/util/common/guava/nary/SortedMergeIterator.java b/common/src/main/java/io/druid/java/util/common/guava/nary/SortedMergeIterator.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/guava/nary/SortedMergeIterator.java rename to common/src/main/java/io/druid/java/util/common/guava/nary/SortedMergeIterator.java diff --git a/java-util/src/main/java/io/druid/java/util/common/guava/nary/TrinaryFn.java b/common/src/main/java/io/druid/java/util/common/guava/nary/TrinaryFn.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/guava/nary/TrinaryFn.java rename to common/src/main/java/io/druid/java/util/common/guava/nary/TrinaryFn.java diff --git a/java-util/src/main/java/io/druid/java/util/common/guava/nary/TrinaryTransformIterable.java b/common/src/main/java/io/druid/java/util/common/guava/nary/TrinaryTransformIterable.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/guava/nary/TrinaryTransformIterable.java rename to common/src/main/java/io/druid/java/util/common/guava/nary/TrinaryTransformIterable.java diff --git a/java-util/src/main/java/io/druid/java/util/common/guava/nary/TrinaryTransformIterator.java b/common/src/main/java/io/druid/java/util/common/guava/nary/TrinaryTransformIterator.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/guava/nary/TrinaryTransformIterator.java rename to common/src/main/java/io/druid/java/util/common/guava/nary/TrinaryTransformIterator.java diff --git a/java-util/src/main/java/io/druid/java/util/common/io/Closer.java b/common/src/main/java/io/druid/java/util/common/io/Closer.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/io/Closer.java rename to common/src/main/java/io/druid/java/util/common/io/Closer.java diff --git a/java-util/src/main/java/io/druid/java/util/common/io/NativeIO.java b/common/src/main/java/io/druid/java/util/common/io/NativeIO.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/io/NativeIO.java rename to common/src/main/java/io/druid/java/util/common/io/NativeIO.java diff --git a/java-util/src/main/java/io/druid/java/util/common/io/smoosh/FileSmoosher.java b/common/src/main/java/io/druid/java/util/common/io/smoosh/FileSmoosher.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/io/smoosh/FileSmoosher.java rename to common/src/main/java/io/druid/java/util/common/io/smoosh/FileSmoosher.java diff --git a/java-util/src/main/java/io/druid/java/util/common/io/smoosh/Metadata.java b/common/src/main/java/io/druid/java/util/common/io/smoosh/Metadata.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/io/smoosh/Metadata.java rename to common/src/main/java/io/druid/java/util/common/io/smoosh/Metadata.java diff --git a/java-util/src/main/java/io/druid/java/util/common/io/smoosh/Smoosh.java b/common/src/main/java/io/druid/java/util/common/io/smoosh/Smoosh.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/io/smoosh/Smoosh.java rename to common/src/main/java/io/druid/java/util/common/io/smoosh/Smoosh.java diff --git a/java-util/src/main/java/io/druid/java/util/common/io/smoosh/SmooshedFileMapper.java b/common/src/main/java/io/druid/java/util/common/io/smoosh/SmooshedFileMapper.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/io/smoosh/SmooshedFileMapper.java rename to common/src/main/java/io/druid/java/util/common/io/smoosh/SmooshedFileMapper.java diff --git a/java-util/src/main/java/io/druid/java/util/common/io/smoosh/SmooshedWriter.java b/common/src/main/java/io/druid/java/util/common/io/smoosh/SmooshedWriter.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/io/smoosh/SmooshedWriter.java rename to common/src/main/java/io/druid/java/util/common/io/smoosh/SmooshedWriter.java diff --git a/java-util/src/main/java/io/druid/java/util/common/jackson/JacksonUtils.java b/common/src/main/java/io/druid/java/util/common/jackson/JacksonUtils.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/jackson/JacksonUtils.java rename to common/src/main/java/io/druid/java/util/common/jackson/JacksonUtils.java diff --git a/java-util/src/main/java/io/druid/java/util/common/lifecycle/Lifecycle.java b/common/src/main/java/io/druid/java/util/common/lifecycle/Lifecycle.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/lifecycle/Lifecycle.java rename to common/src/main/java/io/druid/java/util/common/lifecycle/Lifecycle.java diff --git a/java-util/src/main/java/io/druid/java/util/common/lifecycle/LifecycleStart.java b/common/src/main/java/io/druid/java/util/common/lifecycle/LifecycleStart.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/lifecycle/LifecycleStart.java rename to common/src/main/java/io/druid/java/util/common/lifecycle/LifecycleStart.java diff --git a/java-util/src/main/java/io/druid/java/util/common/lifecycle/LifecycleStop.java b/common/src/main/java/io/druid/java/util/common/lifecycle/LifecycleStop.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/lifecycle/LifecycleStop.java rename to common/src/main/java/io/druid/java/util/common/lifecycle/LifecycleStop.java diff --git a/java-util/src/main/java/io/druid/java/util/common/logger/Logger.java b/common/src/main/java/io/druid/java/util/common/logger/Logger.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/logger/Logger.java rename to common/src/main/java/io/druid/java/util/common/logger/Logger.java diff --git a/java-util/src/main/java/io/druid/java/util/common/parsers/AbstractFlatTextFormatParser.java b/common/src/main/java/io/druid/java/util/common/parsers/AbstractFlatTextFormatParser.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/parsers/AbstractFlatTextFormatParser.java rename to common/src/main/java/io/druid/java/util/common/parsers/AbstractFlatTextFormatParser.java diff --git a/java-util/src/main/java/io/druid/java/util/common/parsers/CSVParser.java b/common/src/main/java/io/druid/java/util/common/parsers/CSVParser.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/parsers/CSVParser.java rename to common/src/main/java/io/druid/java/util/common/parsers/CSVParser.java diff --git a/java-util/src/main/java/io/druid/java/util/common/parsers/CloseableIterator.java b/common/src/main/java/io/druid/java/util/common/parsers/CloseableIterator.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/parsers/CloseableIterator.java rename to common/src/main/java/io/druid/java/util/common/parsers/CloseableIterator.java diff --git a/java-util/src/main/java/io/druid/java/util/common/parsers/DelimitedParser.java b/common/src/main/java/io/druid/java/util/common/parsers/DelimitedParser.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/parsers/DelimitedParser.java rename to common/src/main/java/io/druid/java/util/common/parsers/DelimitedParser.java diff --git a/java-util/src/main/java/io/druid/java/util/common/parsers/JSONFlattenerMaker.java b/common/src/main/java/io/druid/java/util/common/parsers/JSONFlattenerMaker.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/parsers/JSONFlattenerMaker.java rename to common/src/main/java/io/druid/java/util/common/parsers/JSONFlattenerMaker.java diff --git a/java-util/src/main/java/io/druid/java/util/common/parsers/JSONPathFieldSpec.java b/common/src/main/java/io/druid/java/util/common/parsers/JSONPathFieldSpec.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/parsers/JSONPathFieldSpec.java rename to common/src/main/java/io/druid/java/util/common/parsers/JSONPathFieldSpec.java diff --git a/java-util/src/main/java/io/druid/java/util/common/parsers/JSONPathFieldType.java b/common/src/main/java/io/druid/java/util/common/parsers/JSONPathFieldType.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/parsers/JSONPathFieldType.java rename to common/src/main/java/io/druid/java/util/common/parsers/JSONPathFieldType.java diff --git a/java-util/src/main/java/io/druid/java/util/common/parsers/JSONPathParser.java b/common/src/main/java/io/druid/java/util/common/parsers/JSONPathParser.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/parsers/JSONPathParser.java rename to common/src/main/java/io/druid/java/util/common/parsers/JSONPathParser.java diff --git a/java-util/src/main/java/io/druid/java/util/common/parsers/JSONPathSpec.java b/common/src/main/java/io/druid/java/util/common/parsers/JSONPathSpec.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/parsers/JSONPathSpec.java rename to common/src/main/java/io/druid/java/util/common/parsers/JSONPathSpec.java diff --git a/java-util/src/main/java/io/druid/java/util/common/parsers/JSONToLowerParser.java b/common/src/main/java/io/druid/java/util/common/parsers/JSONToLowerParser.java similarity index 99% rename from java-util/src/main/java/io/druid/java/util/common/parsers/JSONToLowerParser.java rename to common/src/main/java/io/druid/java/util/common/parsers/JSONToLowerParser.java index 5a04d9b75bf5..0cb3ee53ffb3 100644 --- a/java-util/src/main/java/io/druid/java/util/common/parsers/JSONToLowerParser.java +++ b/common/src/main/java/io/druid/java/util/common/parsers/JSONToLowerParser.java @@ -41,7 +41,7 @@ * There is a lot of code copy and pasted from JSONParser. JSONParser needs to be rewritten * to actually take a map transformer instead of what it is doing now. For the purposes of moving forward in 0.7.0, * I am going to have a different parser to lower case data from JSON. This code needs to be removed the next time - * we touch java-util. + * we touch druid-common. */ @Deprecated public class JSONToLowerParser implements Parser diff --git a/java-util/src/main/java/io/druid/java/util/common/parsers/JavaScriptParser.java b/common/src/main/java/io/druid/java/util/common/parsers/JavaScriptParser.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/parsers/JavaScriptParser.java rename to common/src/main/java/io/druid/java/util/common/parsers/JavaScriptParser.java diff --git a/java-util/src/main/java/io/druid/java/util/common/parsers/ObjectFlattener.java b/common/src/main/java/io/druid/java/util/common/parsers/ObjectFlattener.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/parsers/ObjectFlattener.java rename to common/src/main/java/io/druid/java/util/common/parsers/ObjectFlattener.java diff --git a/java-util/src/main/java/io/druid/java/util/common/parsers/ObjectFlatteners.java b/common/src/main/java/io/druid/java/util/common/parsers/ObjectFlatteners.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/parsers/ObjectFlatteners.java rename to common/src/main/java/io/druid/java/util/common/parsers/ObjectFlatteners.java diff --git a/java-util/src/main/java/io/druid/java/util/common/parsers/ParseException.java b/common/src/main/java/io/druid/java/util/common/parsers/ParseException.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/parsers/ParseException.java rename to common/src/main/java/io/druid/java/util/common/parsers/ParseException.java diff --git a/java-util/src/main/java/io/druid/java/util/common/parsers/Parser.java b/common/src/main/java/io/druid/java/util/common/parsers/Parser.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/parsers/Parser.java rename to common/src/main/java/io/druid/java/util/common/parsers/Parser.java diff --git a/java-util/src/main/java/io/druid/java/util/common/parsers/ParserUtils.java b/common/src/main/java/io/druid/java/util/common/parsers/ParserUtils.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/parsers/ParserUtils.java rename to common/src/main/java/io/druid/java/util/common/parsers/ParserUtils.java diff --git a/java-util/src/main/java/io/druid/java/util/common/parsers/Parsers.java b/common/src/main/java/io/druid/java/util/common/parsers/Parsers.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/parsers/Parsers.java rename to common/src/main/java/io/druid/java/util/common/parsers/Parsers.java diff --git a/java-util/src/main/java/io/druid/java/util/common/parsers/RegexParser.java b/common/src/main/java/io/druid/java/util/common/parsers/RegexParser.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/parsers/RegexParser.java rename to common/src/main/java/io/druid/java/util/common/parsers/RegexParser.java diff --git a/java-util/src/main/java/io/druid/java/util/common/parsers/TimestampParser.java b/common/src/main/java/io/druid/java/util/common/parsers/TimestampParser.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/parsers/TimestampParser.java rename to common/src/main/java/io/druid/java/util/common/parsers/TimestampParser.java diff --git a/java-util/src/main/java/io/druid/java/util/common/parsers/ToLowerCaseParser.java b/common/src/main/java/io/druid/java/util/common/parsers/ToLowerCaseParser.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/common/parsers/ToLowerCaseParser.java rename to common/src/main/java/io/druid/java/util/common/parsers/ToLowerCaseParser.java diff --git a/java-util/src/main/java/io/druid/java/util/emitter/EmittingLogger.java b/common/src/main/java/io/druid/java/util/emitter/EmittingLogger.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/emitter/EmittingLogger.java rename to common/src/main/java/io/druid/java/util/emitter/EmittingLogger.java diff --git a/java-util/src/main/java/io/druid/java/util/emitter/core/BaseHttpEmittingConfig.java b/common/src/main/java/io/druid/java/util/emitter/core/BaseHttpEmittingConfig.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/emitter/core/BaseHttpEmittingConfig.java rename to common/src/main/java/io/druid/java/util/emitter/core/BaseHttpEmittingConfig.java diff --git a/java-util/src/main/java/io/druid/java/util/emitter/core/Batch.java b/common/src/main/java/io/druid/java/util/emitter/core/Batch.java similarity index 98% rename from java-util/src/main/java/io/druid/java/util/emitter/core/Batch.java rename to common/src/main/java/io/druid/java/util/emitter/core/Batch.java index 818f54f91a94..953f636ab352 100644 --- a/java-util/src/main/java/io/druid/java/util/emitter/core/Batch.java +++ b/common/src/main/java/io/druid/java/util/emitter/core/Batch.java @@ -90,12 +90,12 @@ private static boolean isEmittingAllowed(long state) /** * Ordering number of this batch, as they filled & emitted in {@link HttpPostEmitter} serially, starting from 0. - * It's a boxed Integer rather than int, because we want to minimize the number of allocations done in + * It's a boxed Long rather than long, because we want to minimize the number of allocations done in * {@link HttpPostEmitter#onSealExclusive} and so the probability of {@link OutOfMemoryError}. * @see HttpPostEmitter#onSealExclusive * @see HttpPostEmitter#concurrentBatch */ - final Integer batchNumber; + final Long batchNumber; /** * The number of events in this batch, needed for event count-based batch emitting. @@ -107,7 +107,7 @@ private static boolean isEmittingAllowed(long state) */ private long firstEventTimestamp = -1; - Batch(HttpPostEmitter emitter, byte[] buffer, int batchNumber) + Batch(HttpPostEmitter emitter, byte[] buffer, long batchNumber) { this.emitter = emitter; this.buffer = buffer; diff --git a/java-util/src/main/java/io/druid/java/util/emitter/core/BatchingStrategy.java b/common/src/main/java/io/druid/java/util/emitter/core/BatchingStrategy.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/emitter/core/BatchingStrategy.java rename to common/src/main/java/io/druid/java/util/emitter/core/BatchingStrategy.java diff --git a/java-util/src/main/java/io/druid/java/util/emitter/core/ComposingEmitter.java b/common/src/main/java/io/druid/java/util/emitter/core/ComposingEmitter.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/emitter/core/ComposingEmitter.java rename to common/src/main/java/io/druid/java/util/emitter/core/ComposingEmitter.java diff --git a/java-util/src/main/java/io/druid/java/util/emitter/core/ConcurrentTimeCounter.java b/common/src/main/java/io/druid/java/util/emitter/core/ConcurrentTimeCounter.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/emitter/core/ConcurrentTimeCounter.java rename to common/src/main/java/io/druid/java/util/emitter/core/ConcurrentTimeCounter.java diff --git a/java-util/src/main/java/io/druid/java/util/emitter/core/ContentEncoding.java b/common/src/main/java/io/druid/java/util/emitter/core/ContentEncoding.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/emitter/core/ContentEncoding.java rename to common/src/main/java/io/druid/java/util/emitter/core/ContentEncoding.java diff --git a/java-util/src/main/java/io/druid/java/util/emitter/core/Emitter.java b/common/src/main/java/io/druid/java/util/emitter/core/Emitter.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/emitter/core/Emitter.java rename to common/src/main/java/io/druid/java/util/emitter/core/Emitter.java diff --git a/java-util/src/main/java/io/druid/java/util/emitter/core/Emitters.java b/common/src/main/java/io/druid/java/util/emitter/core/Emitters.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/emitter/core/Emitters.java rename to common/src/main/java/io/druid/java/util/emitter/core/Emitters.java diff --git a/java-util/src/main/java/io/druid/java/util/emitter/core/Event.java b/common/src/main/java/io/druid/java/util/emitter/core/Event.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/emitter/core/Event.java rename to common/src/main/java/io/druid/java/util/emitter/core/Event.java diff --git a/java-util/src/main/java/io/druid/java/util/emitter/core/FeedUriExtractor.java b/common/src/main/java/io/druid/java/util/emitter/core/FeedUriExtractor.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/emitter/core/FeedUriExtractor.java rename to common/src/main/java/io/druid/java/util/emitter/core/FeedUriExtractor.java diff --git a/java-util/src/main/java/io/druid/java/util/emitter/core/HttpEmitterConfig.java b/common/src/main/java/io/druid/java/util/emitter/core/HttpEmitterConfig.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/emitter/core/HttpEmitterConfig.java rename to common/src/main/java/io/druid/java/util/emitter/core/HttpEmitterConfig.java diff --git a/java-util/src/main/java/io/druid/java/util/emitter/core/HttpPostEmitter.java b/common/src/main/java/io/druid/java/util/emitter/core/HttpPostEmitter.java similarity index 98% rename from java-util/src/main/java/io/druid/java/util/emitter/core/HttpPostEmitter.java rename to common/src/main/java/io/druid/java/util/emitter/core/HttpPostEmitter.java index 42a2d9a17fbb..1e609b2b5ae5 100644 --- a/java-util/src/main/java/io/druid/java/util/emitter/core/HttpPostEmitter.java +++ b/common/src/main/java/io/druid/java/util/emitter/core/HttpPostEmitter.java @@ -25,6 +25,7 @@ import com.google.common.base.Predicate; import com.google.common.base.Throwables; import com.google.common.primitives.Ints; +import io.druid.concurrent.ConcurrentAwaitableCounter; import io.druid.java.util.common.ISE; import io.druid.java.util.common.RetryUtils; import io.druid.java.util.common.StringUtils; @@ -133,7 +134,7 @@ public class HttpPostEmitter implements Flushable, Closeable, Emitter */ private final AtomicInteger approximateLargeEventsToEmitCount = new AtomicInteger(); - private final EmittedBatchCounter emittedBatchCounter = new EmittedBatchCounter(); + private final ConcurrentAwaitableCounter emittedBatchCounter = new ConcurrentAwaitableCounter(); private final EmittingThread emittingThread; private final AtomicLong totalEmittedEvents = new AtomicLong(); private final AtomicInteger allocatedBuffers = new AtomicInteger(); @@ -331,7 +332,7 @@ private void doOnSealExclusive(Batch batch, long elapsedTimeMillis) addBatchToEmitQueue(batch); wakeUpEmittingThread(); if (!isTerminated()) { - int nextBatchNumber = EmittedBatchCounter.nextBatchNumber(batch.batchNumber); + long nextBatchNumber = ConcurrentAwaitableCounter.nextCount(batch.batchNumber); byte[] newBuffer = acquireBuffer(); if (!concurrentBatch.compareAndSet(batch, new Batch(this, newBuffer, nextBatchNumber))) { buffersToReuse.add(newBuffer); @@ -345,7 +346,7 @@ private void doOnSealExclusive(Batch batch, long elapsedTimeMillis) private void tryRecoverCurrentBatch(Integer failedBatchNumber) { log.info("Trying to recover currentBatch"); - int nextBatchNumber = EmittedBatchCounter.nextBatchNumber(failedBatchNumber); + long nextBatchNumber = ConcurrentAwaitableCounter.nextCount(failedBatchNumber); byte[] newBuffer = acquireBuffer(); if (concurrentBatch.compareAndSet(failedBatchNumber, new Batch(this, newBuffer, nextBatchNumber))) { log.info("Successfully recovered currentBatch"); @@ -383,7 +384,7 @@ private void limitBuffersToEmitSize() private void batchFinalized() { // Notify HttpPostEmitter.flush(), that the batch is emitted, or failed, or dropped. - emittedBatchCounter.batchEmitted(); + emittedBatchCounter.increment(); } private Batch pollBatchFromEmitQueue() @@ -422,7 +423,7 @@ private void flush(Batch batch) throws IOException // This check doesn't always awaits for this exact batch to be emitted, because another batch could be dropped // from the queue ahead of this one, in limitBuffersToEmitSize(). But there is no better way currently to wait for // the exact batch, and it's not that important. - emittedBatchCounter.awaitBatchEmitted(batch.batchNumber, config.getFlushTimeOut(), TimeUnit.MILLISECONDS); + emittedBatchCounter.awaitCount(batch.batchNumber, config.getFlushTimeOut(), TimeUnit.MILLISECONDS); } catch (TimeoutException e) { String message = StringUtils.format("Timed out after [%d] millis during flushing", config.getFlushTimeOut()); @@ -923,7 +924,7 @@ public ConcurrentTimeCounter getFailedSendingTimeCounter() @VisibleForTesting void waitForEmission(int batchNumber) throws Exception { - emittedBatchCounter.awaitBatchEmitted(batchNumber, 10, TimeUnit.SECONDS); + emittedBatchCounter.awaitCount(batchNumber, 10, TimeUnit.SECONDS); } @VisibleForTesting diff --git a/java-util/src/main/java/io/druid/java/util/emitter/core/LoggingEmitter.java b/common/src/main/java/io/druid/java/util/emitter/core/LoggingEmitter.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/emitter/core/LoggingEmitter.java rename to common/src/main/java/io/druid/java/util/emitter/core/LoggingEmitter.java diff --git a/java-util/src/main/java/io/druid/java/util/emitter/core/LoggingEmitterConfig.java b/common/src/main/java/io/druid/java/util/emitter/core/LoggingEmitterConfig.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/emitter/core/LoggingEmitterConfig.java rename to common/src/main/java/io/druid/java/util/emitter/core/LoggingEmitterConfig.java diff --git a/java-util/src/main/java/io/druid/java/util/emitter/core/NoopEmitter.java b/common/src/main/java/io/druid/java/util/emitter/core/NoopEmitter.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/emitter/core/NoopEmitter.java rename to common/src/main/java/io/druid/java/util/emitter/core/NoopEmitter.java diff --git a/java-util/src/main/java/io/druid/java/util/emitter/core/ParametrizedUriEmitter.java b/common/src/main/java/io/druid/java/util/emitter/core/ParametrizedUriEmitter.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/emitter/core/ParametrizedUriEmitter.java rename to common/src/main/java/io/druid/java/util/emitter/core/ParametrizedUriEmitter.java diff --git a/java-util/src/main/java/io/druid/java/util/emitter/core/ParametrizedUriEmitterConfig.java b/common/src/main/java/io/druid/java/util/emitter/core/ParametrizedUriEmitterConfig.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/emitter/core/ParametrizedUriEmitterConfig.java rename to common/src/main/java/io/druid/java/util/emitter/core/ParametrizedUriEmitterConfig.java diff --git a/java-util/src/main/java/io/druid/java/util/emitter/core/ParametrizedUriExtractor.java b/common/src/main/java/io/druid/java/util/emitter/core/ParametrizedUriExtractor.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/emitter/core/ParametrizedUriExtractor.java rename to common/src/main/java/io/druid/java/util/emitter/core/ParametrizedUriExtractor.java diff --git a/java-util/src/main/java/io/druid/java/util/emitter/core/UriExtractor.java b/common/src/main/java/io/druid/java/util/emitter/core/UriExtractor.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/emitter/core/UriExtractor.java rename to common/src/main/java/io/druid/java/util/emitter/core/UriExtractor.java diff --git a/java-util/src/main/java/io/druid/java/util/emitter/core/ZeroCopyByteArrayOutputStream.java b/common/src/main/java/io/druid/java/util/emitter/core/ZeroCopyByteArrayOutputStream.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/emitter/core/ZeroCopyByteArrayOutputStream.java rename to common/src/main/java/io/druid/java/util/emitter/core/ZeroCopyByteArrayOutputStream.java diff --git a/java-util/src/main/java/io/druid/java/util/emitter/factory/EmitterFactory.java b/common/src/main/java/io/druid/java/util/emitter/factory/EmitterFactory.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/emitter/factory/EmitterFactory.java rename to common/src/main/java/io/druid/java/util/emitter/factory/EmitterFactory.java diff --git a/java-util/src/main/java/io/druid/java/util/emitter/factory/HttpEmitterFactory.java b/common/src/main/java/io/druid/java/util/emitter/factory/HttpEmitterFactory.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/emitter/factory/HttpEmitterFactory.java rename to common/src/main/java/io/druid/java/util/emitter/factory/HttpEmitterFactory.java diff --git a/java-util/src/main/java/io/druid/java/util/emitter/factory/LoggingEmitterFactory.java b/common/src/main/java/io/druid/java/util/emitter/factory/LoggingEmitterFactory.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/emitter/factory/LoggingEmitterFactory.java rename to common/src/main/java/io/druid/java/util/emitter/factory/LoggingEmitterFactory.java diff --git a/java-util/src/main/java/io/druid/java/util/emitter/factory/NoopEmitterFactory.java b/common/src/main/java/io/druid/java/util/emitter/factory/NoopEmitterFactory.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/emitter/factory/NoopEmitterFactory.java rename to common/src/main/java/io/druid/java/util/emitter/factory/NoopEmitterFactory.java diff --git a/java-util/src/main/java/io/druid/java/util/emitter/factory/ParametrizedUriEmitterFactory.java b/common/src/main/java/io/druid/java/util/emitter/factory/ParametrizedUriEmitterFactory.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/emitter/factory/ParametrizedUriEmitterFactory.java rename to common/src/main/java/io/druid/java/util/emitter/factory/ParametrizedUriEmitterFactory.java diff --git a/java-util/src/main/java/io/druid/java/util/emitter/service/AlertBuilder.java b/common/src/main/java/io/druid/java/util/emitter/service/AlertBuilder.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/emitter/service/AlertBuilder.java rename to common/src/main/java/io/druid/java/util/emitter/service/AlertBuilder.java diff --git a/java-util/src/main/java/io/druid/java/util/emitter/service/AlertEvent.java b/common/src/main/java/io/druid/java/util/emitter/service/AlertEvent.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/emitter/service/AlertEvent.java rename to common/src/main/java/io/druid/java/util/emitter/service/AlertEvent.java diff --git a/java-util/src/main/java/io/druid/java/util/emitter/service/ServiceEmitter.java b/common/src/main/java/io/druid/java/util/emitter/service/ServiceEmitter.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/emitter/service/ServiceEmitter.java rename to common/src/main/java/io/druid/java/util/emitter/service/ServiceEmitter.java diff --git a/java-util/src/main/java/io/druid/java/util/emitter/service/ServiceEvent.java b/common/src/main/java/io/druid/java/util/emitter/service/ServiceEvent.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/emitter/service/ServiceEvent.java rename to common/src/main/java/io/druid/java/util/emitter/service/ServiceEvent.java diff --git a/java-util/src/main/java/io/druid/java/util/emitter/service/ServiceEventBuilder.java b/common/src/main/java/io/druid/java/util/emitter/service/ServiceEventBuilder.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/emitter/service/ServiceEventBuilder.java rename to common/src/main/java/io/druid/java/util/emitter/service/ServiceEventBuilder.java diff --git a/java-util/src/main/java/io/druid/java/util/emitter/service/ServiceMetricEvent.java b/common/src/main/java/io/druid/java/util/emitter/service/ServiceMetricEvent.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/emitter/service/ServiceMetricEvent.java rename to common/src/main/java/io/druid/java/util/emitter/service/ServiceMetricEvent.java diff --git a/java-util/src/main/java/io/druid/java/util/http/client/AbstractHttpClient.java b/common/src/main/java/io/druid/java/util/http/client/AbstractHttpClient.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/http/client/AbstractHttpClient.java rename to common/src/main/java/io/druid/java/util/http/client/AbstractHttpClient.java diff --git a/java-util/src/main/java/io/druid/java/util/http/client/CredentialedHttpClient.java b/common/src/main/java/io/druid/java/util/http/client/CredentialedHttpClient.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/http/client/CredentialedHttpClient.java rename to common/src/main/java/io/druid/java/util/http/client/CredentialedHttpClient.java diff --git a/java-util/src/main/java/io/druid/java/util/http/client/EnforceSslHttpClient.java b/common/src/main/java/io/druid/java/util/http/client/EnforceSslHttpClient.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/http/client/EnforceSslHttpClient.java rename to common/src/main/java/io/druid/java/util/http/client/EnforceSslHttpClient.java diff --git a/java-util/src/main/java/io/druid/java/util/http/client/HttpClient.java b/common/src/main/java/io/druid/java/util/http/client/HttpClient.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/http/client/HttpClient.java rename to common/src/main/java/io/druid/java/util/http/client/HttpClient.java diff --git a/java-util/src/main/java/io/druid/java/util/http/client/HttpClientConfig.java b/common/src/main/java/io/druid/java/util/http/client/HttpClientConfig.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/http/client/HttpClientConfig.java rename to common/src/main/java/io/druid/java/util/http/client/HttpClientConfig.java diff --git a/java-util/src/main/java/io/druid/java/util/http/client/HttpClientInit.java b/common/src/main/java/io/druid/java/util/http/client/HttpClientInit.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/http/client/HttpClientInit.java rename to common/src/main/java/io/druid/java/util/http/client/HttpClientInit.java diff --git a/java-util/src/main/java/io/druid/java/util/http/client/NettyHttpClient.java b/common/src/main/java/io/druid/java/util/http/client/NettyHttpClient.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/http/client/NettyHttpClient.java rename to common/src/main/java/io/druid/java/util/http/client/NettyHttpClient.java diff --git a/java-util/src/main/java/io/druid/java/util/http/client/Request.java b/common/src/main/java/io/druid/java/util/http/client/Request.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/http/client/Request.java rename to common/src/main/java/io/druid/java/util/http/client/Request.java diff --git a/java-util/src/main/java/io/druid/java/util/http/client/auth/BasicCredentials.java b/common/src/main/java/io/druid/java/util/http/client/auth/BasicCredentials.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/http/client/auth/BasicCredentials.java rename to common/src/main/java/io/druid/java/util/http/client/auth/BasicCredentials.java diff --git a/java-util/src/main/java/io/druid/java/util/http/client/auth/Credentials.java b/common/src/main/java/io/druid/java/util/http/client/auth/Credentials.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/http/client/auth/Credentials.java rename to common/src/main/java/io/druid/java/util/http/client/auth/Credentials.java diff --git a/java-util/src/main/java/io/druid/java/util/http/client/io/AppendableByteArrayInputStream.java b/common/src/main/java/io/druid/java/util/http/client/io/AppendableByteArrayInputStream.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/http/client/io/AppendableByteArrayInputStream.java rename to common/src/main/java/io/druid/java/util/http/client/io/AppendableByteArrayInputStream.java diff --git a/java-util/src/main/java/io/druid/java/util/http/client/netty/HttpClientPipelineFactory.java b/common/src/main/java/io/druid/java/util/http/client/netty/HttpClientPipelineFactory.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/http/client/netty/HttpClientPipelineFactory.java rename to common/src/main/java/io/druid/java/util/http/client/netty/HttpClientPipelineFactory.java diff --git a/java-util/src/main/java/io/druid/java/util/http/client/pool/ChannelResourceFactory.java b/common/src/main/java/io/druid/java/util/http/client/pool/ChannelResourceFactory.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/http/client/pool/ChannelResourceFactory.java rename to common/src/main/java/io/druid/java/util/http/client/pool/ChannelResourceFactory.java diff --git a/java-util/src/main/java/io/druid/java/util/http/client/pool/ResourceContainer.java b/common/src/main/java/io/druid/java/util/http/client/pool/ResourceContainer.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/http/client/pool/ResourceContainer.java rename to common/src/main/java/io/druid/java/util/http/client/pool/ResourceContainer.java diff --git a/java-util/src/main/java/io/druid/java/util/http/client/pool/ResourceFactory.java b/common/src/main/java/io/druid/java/util/http/client/pool/ResourceFactory.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/http/client/pool/ResourceFactory.java rename to common/src/main/java/io/druid/java/util/http/client/pool/ResourceFactory.java diff --git a/java-util/src/main/java/io/druid/java/util/http/client/pool/ResourcePool.java b/common/src/main/java/io/druid/java/util/http/client/pool/ResourcePool.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/http/client/pool/ResourcePool.java rename to common/src/main/java/io/druid/java/util/http/client/pool/ResourcePool.java diff --git a/java-util/src/main/java/io/druid/java/util/http/client/pool/ResourcePoolConfig.java b/common/src/main/java/io/druid/java/util/http/client/pool/ResourcePoolConfig.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/http/client/pool/ResourcePoolConfig.java rename to common/src/main/java/io/druid/java/util/http/client/pool/ResourcePoolConfig.java diff --git a/java-util/src/main/java/io/druid/java/util/http/client/pool/ResourceVerifier.java b/common/src/main/java/io/druid/java/util/http/client/pool/ResourceVerifier.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/http/client/pool/ResourceVerifier.java rename to common/src/main/java/io/druid/java/util/http/client/pool/ResourceVerifier.java diff --git a/java-util/src/main/java/io/druid/java/util/http/client/response/ClientResponse.java b/common/src/main/java/io/druid/java/util/http/client/response/ClientResponse.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/http/client/response/ClientResponse.java rename to common/src/main/java/io/druid/java/util/http/client/response/ClientResponse.java diff --git a/java-util/src/main/java/io/druid/java/util/http/client/response/FullResponseHandler.java b/common/src/main/java/io/druid/java/util/http/client/response/FullResponseHandler.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/http/client/response/FullResponseHandler.java rename to common/src/main/java/io/druid/java/util/http/client/response/FullResponseHandler.java diff --git a/java-util/src/main/java/io/druid/java/util/http/client/response/FullResponseHolder.java b/common/src/main/java/io/druid/java/util/http/client/response/FullResponseHolder.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/http/client/response/FullResponseHolder.java rename to common/src/main/java/io/druid/java/util/http/client/response/FullResponseHolder.java diff --git a/java-util/src/main/java/io/druid/java/util/http/client/response/HttpResponseHandler.java b/common/src/main/java/io/druid/java/util/http/client/response/HttpResponseHandler.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/http/client/response/HttpResponseHandler.java rename to common/src/main/java/io/druid/java/util/http/client/response/HttpResponseHandler.java diff --git a/java-util/src/main/java/io/druid/java/util/http/client/response/InputStreamResponseHandler.java b/common/src/main/java/io/druid/java/util/http/client/response/InputStreamResponseHandler.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/http/client/response/InputStreamResponseHandler.java rename to common/src/main/java/io/druid/java/util/http/client/response/InputStreamResponseHandler.java diff --git a/java-util/src/main/java/io/druid/java/util/http/client/response/SequenceInputStreamResponseHandler.java b/common/src/main/java/io/druid/java/util/http/client/response/SequenceInputStreamResponseHandler.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/http/client/response/SequenceInputStreamResponseHandler.java rename to common/src/main/java/io/druid/java/util/http/client/response/SequenceInputStreamResponseHandler.java diff --git a/java-util/src/main/java/io/druid/java/util/http/client/response/StatusResponseHandler.java b/common/src/main/java/io/druid/java/util/http/client/response/StatusResponseHandler.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/http/client/response/StatusResponseHandler.java rename to common/src/main/java/io/druid/java/util/http/client/response/StatusResponseHandler.java diff --git a/java-util/src/main/java/io/druid/java/util/http/client/response/StatusResponseHolder.java b/common/src/main/java/io/druid/java/util/http/client/response/StatusResponseHolder.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/http/client/response/StatusResponseHolder.java rename to common/src/main/java/io/druid/java/util/http/client/response/StatusResponseHolder.java diff --git a/java-util/src/main/java/io/druid/java/util/http/client/response/ToStringResponseHandler.java b/common/src/main/java/io/druid/java/util/http/client/response/ToStringResponseHandler.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/http/client/response/ToStringResponseHandler.java rename to common/src/main/java/io/druid/java/util/http/client/response/ToStringResponseHandler.java diff --git a/java-util/src/main/java/io/druid/java/util/metrics/AbstractMonitor.java b/common/src/main/java/io/druid/java/util/metrics/AbstractMonitor.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/metrics/AbstractMonitor.java rename to common/src/main/java/io/druid/java/util/metrics/AbstractMonitor.java diff --git a/java-util/src/main/java/io/druid/java/util/metrics/CgroupUtil.java b/common/src/main/java/io/druid/java/util/metrics/CgroupUtil.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/metrics/CgroupUtil.java rename to common/src/main/java/io/druid/java/util/metrics/CgroupUtil.java diff --git a/java-util/src/main/java/io/druid/java/util/metrics/CompoundMonitor.java b/common/src/main/java/io/druid/java/util/metrics/CompoundMonitor.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/metrics/CompoundMonitor.java rename to common/src/main/java/io/druid/java/util/metrics/CompoundMonitor.java diff --git a/java-util/src/main/java/io/druid/java/util/metrics/CpuAcctDeltaMonitor.java b/common/src/main/java/io/druid/java/util/metrics/CpuAcctDeltaMonitor.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/metrics/CpuAcctDeltaMonitor.java rename to common/src/main/java/io/druid/java/util/metrics/CpuAcctDeltaMonitor.java diff --git a/java-util/src/main/java/io/druid/java/util/metrics/FeedDefiningMonitor.java b/common/src/main/java/io/druid/java/util/metrics/FeedDefiningMonitor.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/metrics/FeedDefiningMonitor.java rename to common/src/main/java/io/druid/java/util/metrics/FeedDefiningMonitor.java diff --git a/java-util/src/main/java/io/druid/java/util/metrics/HttpPostEmitterMonitor.java b/common/src/main/java/io/druid/java/util/metrics/HttpPostEmitterMonitor.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/metrics/HttpPostEmitterMonitor.java rename to common/src/main/java/io/druid/java/util/metrics/HttpPostEmitterMonitor.java diff --git a/java-util/src/main/java/io/druid/java/util/metrics/JvmCpuMonitor.java b/common/src/main/java/io/druid/java/util/metrics/JvmCpuMonitor.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/metrics/JvmCpuMonitor.java rename to common/src/main/java/io/druid/java/util/metrics/JvmCpuMonitor.java diff --git a/java-util/src/main/java/io/druid/java/util/metrics/JvmMonitor.java b/common/src/main/java/io/druid/java/util/metrics/JvmMonitor.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/metrics/JvmMonitor.java rename to common/src/main/java/io/druid/java/util/metrics/JvmMonitor.java diff --git a/java-util/src/main/java/io/druid/java/util/metrics/JvmPidDiscoverer.java b/common/src/main/java/io/druid/java/util/metrics/JvmPidDiscoverer.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/metrics/JvmPidDiscoverer.java rename to common/src/main/java/io/druid/java/util/metrics/JvmPidDiscoverer.java diff --git a/java-util/src/main/java/io/druid/java/util/metrics/JvmThreadsMonitor.java b/common/src/main/java/io/druid/java/util/metrics/JvmThreadsMonitor.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/metrics/JvmThreadsMonitor.java rename to common/src/main/java/io/druid/java/util/metrics/JvmThreadsMonitor.java diff --git a/java-util/src/main/java/io/druid/java/util/metrics/KeyedDiff.java b/common/src/main/java/io/druid/java/util/metrics/KeyedDiff.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/metrics/KeyedDiff.java rename to common/src/main/java/io/druid/java/util/metrics/KeyedDiff.java diff --git a/java-util/src/main/java/io/druid/java/util/metrics/Monitor.java b/common/src/main/java/io/druid/java/util/metrics/Monitor.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/metrics/Monitor.java rename to common/src/main/java/io/druid/java/util/metrics/Monitor.java diff --git a/java-util/src/main/java/io/druid/java/util/metrics/MonitorOfTheMonitors.java b/common/src/main/java/io/druid/java/util/metrics/MonitorOfTheMonitors.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/metrics/MonitorOfTheMonitors.java rename to common/src/main/java/io/druid/java/util/metrics/MonitorOfTheMonitors.java diff --git a/java-util/src/main/java/io/druid/java/util/metrics/MonitorScheduler.java b/common/src/main/java/io/druid/java/util/metrics/MonitorScheduler.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/metrics/MonitorScheduler.java rename to common/src/main/java/io/druid/java/util/metrics/MonitorScheduler.java diff --git a/java-util/src/main/java/io/druid/java/util/metrics/MonitorSchedulerConfig.java b/common/src/main/java/io/druid/java/util/metrics/MonitorSchedulerConfig.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/metrics/MonitorSchedulerConfig.java rename to common/src/main/java/io/druid/java/util/metrics/MonitorSchedulerConfig.java diff --git a/java-util/src/main/java/io/druid/java/util/metrics/MonitorUtils.java b/common/src/main/java/io/druid/java/util/metrics/MonitorUtils.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/metrics/MonitorUtils.java rename to common/src/main/java/io/druid/java/util/metrics/MonitorUtils.java diff --git a/java-util/src/main/java/io/druid/java/util/metrics/Monitors.java b/common/src/main/java/io/druid/java/util/metrics/Monitors.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/metrics/Monitors.java rename to common/src/main/java/io/druid/java/util/metrics/Monitors.java diff --git a/java-util/src/main/java/io/druid/java/util/metrics/ParametrizedUriEmitterMonitor.java b/common/src/main/java/io/druid/java/util/metrics/ParametrizedUriEmitterMonitor.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/metrics/ParametrizedUriEmitterMonitor.java rename to common/src/main/java/io/druid/java/util/metrics/ParametrizedUriEmitterMonitor.java diff --git a/java-util/src/main/java/io/druid/java/util/metrics/PidDiscoverer.java b/common/src/main/java/io/druid/java/util/metrics/PidDiscoverer.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/metrics/PidDiscoverer.java rename to common/src/main/java/io/druid/java/util/metrics/PidDiscoverer.java diff --git a/java-util/src/main/java/io/druid/java/util/metrics/SigarPidDiscoverer.java b/common/src/main/java/io/druid/java/util/metrics/SigarPidDiscoverer.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/metrics/SigarPidDiscoverer.java rename to common/src/main/java/io/druid/java/util/metrics/SigarPidDiscoverer.java diff --git a/java-util/src/main/java/io/druid/java/util/metrics/SigarUtil.java b/common/src/main/java/io/druid/java/util/metrics/SigarUtil.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/metrics/SigarUtil.java rename to common/src/main/java/io/druid/java/util/metrics/SigarUtil.java diff --git a/java-util/src/main/java/io/druid/java/util/metrics/SysMonitor.java b/common/src/main/java/io/druid/java/util/metrics/SysMonitor.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/metrics/SysMonitor.java rename to common/src/main/java/io/druid/java/util/metrics/SysMonitor.java diff --git a/java-util/src/main/java/io/druid/java/util/metrics/cgroups/CgroupDiscoverer.java b/common/src/main/java/io/druid/java/util/metrics/cgroups/CgroupDiscoverer.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/metrics/cgroups/CgroupDiscoverer.java rename to common/src/main/java/io/druid/java/util/metrics/cgroups/CgroupDiscoverer.java diff --git a/java-util/src/main/java/io/druid/java/util/metrics/cgroups/CpuAcct.java b/common/src/main/java/io/druid/java/util/metrics/cgroups/CpuAcct.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/metrics/cgroups/CpuAcct.java rename to common/src/main/java/io/druid/java/util/metrics/cgroups/CpuAcct.java diff --git a/java-util/src/main/java/io/druid/java/util/metrics/cgroups/ProcCgroupDiscoverer.java b/common/src/main/java/io/druid/java/util/metrics/cgroups/ProcCgroupDiscoverer.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/metrics/cgroups/ProcCgroupDiscoverer.java rename to common/src/main/java/io/druid/java/util/metrics/cgroups/ProcCgroupDiscoverer.java diff --git a/java-util/src/main/java/io/druid/java/util/metrics/cgroups/ProcPidCgroupDiscoverer.java b/common/src/main/java/io/druid/java/util/metrics/cgroups/ProcPidCgroupDiscoverer.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/metrics/cgroups/ProcPidCgroupDiscoverer.java rename to common/src/main/java/io/druid/java/util/metrics/cgroups/ProcPidCgroupDiscoverer.java diff --git a/java-util/src/main/java/io/druid/java/util/metrics/cgroups/ProcSelfCgroupDiscoverer.java b/common/src/main/java/io/druid/java/util/metrics/cgroups/ProcSelfCgroupDiscoverer.java similarity index 100% rename from java-util/src/main/java/io/druid/java/util/metrics/cgroups/ProcSelfCgroupDiscoverer.java rename to common/src/main/java/io/druid/java/util/metrics/cgroups/ProcSelfCgroupDiscoverer.java diff --git a/api/src/main/java/io/druid/js/JavaScriptConfig.java b/common/src/main/java/io/druid/js/JavaScriptConfig.java similarity index 100% rename from api/src/main/java/io/druid/js/JavaScriptConfig.java rename to common/src/main/java/io/druid/js/JavaScriptConfig.java diff --git a/api/src/main/java/io/druid/query/SegmentDescriptor.java b/common/src/main/java/io/druid/query/SegmentDescriptor.java similarity index 100% rename from api/src/main/java/io/druid/query/SegmentDescriptor.java rename to common/src/main/java/io/druid/query/SegmentDescriptor.java diff --git a/api/src/main/java/io/druid/segment/SegmentUtils.java b/common/src/main/java/io/druid/segment/SegmentUtils.java similarity index 100% rename from api/src/main/java/io/druid/segment/SegmentUtils.java rename to common/src/main/java/io/druid/segment/SegmentUtils.java diff --git a/api/src/main/java/io/druid/segment/loading/DataSegmentArchiver.java b/common/src/main/java/io/druid/segment/loading/DataSegmentArchiver.java similarity index 100% rename from api/src/main/java/io/druid/segment/loading/DataSegmentArchiver.java rename to common/src/main/java/io/druid/segment/loading/DataSegmentArchiver.java diff --git a/api/src/main/java/io/druid/segment/loading/DataSegmentFinder.java b/common/src/main/java/io/druid/segment/loading/DataSegmentFinder.java similarity index 100% rename from api/src/main/java/io/druid/segment/loading/DataSegmentFinder.java rename to common/src/main/java/io/druid/segment/loading/DataSegmentFinder.java diff --git a/api/src/main/java/io/druid/segment/loading/DataSegmentKiller.java b/common/src/main/java/io/druid/segment/loading/DataSegmentKiller.java similarity index 100% rename from api/src/main/java/io/druid/segment/loading/DataSegmentKiller.java rename to common/src/main/java/io/druid/segment/loading/DataSegmentKiller.java diff --git a/api/src/main/java/io/druid/segment/loading/DataSegmentMover.java b/common/src/main/java/io/druid/segment/loading/DataSegmentMover.java similarity index 100% rename from api/src/main/java/io/druid/segment/loading/DataSegmentMover.java rename to common/src/main/java/io/druid/segment/loading/DataSegmentMover.java diff --git a/api/src/main/java/io/druid/segment/loading/DataSegmentPuller.java b/common/src/main/java/io/druid/segment/loading/DataSegmentPuller.java similarity index 100% rename from api/src/main/java/io/druid/segment/loading/DataSegmentPuller.java rename to common/src/main/java/io/druid/segment/loading/DataSegmentPuller.java diff --git a/api/src/main/java/io/druid/segment/loading/DataSegmentPusher.java b/common/src/main/java/io/druid/segment/loading/DataSegmentPusher.java similarity index 100% rename from api/src/main/java/io/druid/segment/loading/DataSegmentPusher.java rename to common/src/main/java/io/druid/segment/loading/DataSegmentPusher.java diff --git a/api/src/main/java/io/druid/segment/loading/LoadSpec.java b/common/src/main/java/io/druid/segment/loading/LoadSpec.java similarity index 100% rename from api/src/main/java/io/druid/segment/loading/LoadSpec.java rename to common/src/main/java/io/druid/segment/loading/LoadSpec.java diff --git a/api/src/main/java/io/druid/segment/loading/SegmentLoadingException.java b/common/src/main/java/io/druid/segment/loading/SegmentLoadingException.java similarity index 100% rename from api/src/main/java/io/druid/segment/loading/SegmentLoadingException.java rename to common/src/main/java/io/druid/segment/loading/SegmentLoadingException.java diff --git a/api/src/main/java/io/druid/segment/loading/URIDataPuller.java b/common/src/main/java/io/druid/segment/loading/URIDataPuller.java similarity index 100% rename from api/src/main/java/io/druid/segment/loading/URIDataPuller.java rename to common/src/main/java/io/druid/segment/loading/URIDataPuller.java diff --git a/api/src/main/java/io/druid/tasklogs/NoopTaskLogs.java b/common/src/main/java/io/druid/tasklogs/NoopTaskLogs.java similarity index 100% rename from api/src/main/java/io/druid/tasklogs/NoopTaskLogs.java rename to common/src/main/java/io/druid/tasklogs/NoopTaskLogs.java diff --git a/api/src/main/java/io/druid/tasklogs/TaskLogKiller.java b/common/src/main/java/io/druid/tasklogs/TaskLogKiller.java similarity index 100% rename from api/src/main/java/io/druid/tasklogs/TaskLogKiller.java rename to common/src/main/java/io/druid/tasklogs/TaskLogKiller.java diff --git a/api/src/main/java/io/druid/tasklogs/TaskLogPusher.java b/common/src/main/java/io/druid/tasklogs/TaskLogPusher.java similarity index 100% rename from api/src/main/java/io/druid/tasklogs/TaskLogPusher.java rename to common/src/main/java/io/druid/tasklogs/TaskLogPusher.java diff --git a/api/src/main/java/io/druid/tasklogs/TaskLogStreamer.java b/common/src/main/java/io/druid/tasklogs/TaskLogStreamer.java similarity index 100% rename from api/src/main/java/io/druid/tasklogs/TaskLogStreamer.java rename to common/src/main/java/io/druid/tasklogs/TaskLogStreamer.java diff --git a/api/src/main/java/io/druid/tasklogs/TaskLogs.java b/common/src/main/java/io/druid/tasklogs/TaskLogs.java similarity index 100% rename from api/src/main/java/io/druid/tasklogs/TaskLogs.java rename to common/src/main/java/io/druid/tasklogs/TaskLogs.java diff --git a/api/src/main/java/io/druid/timeline/DataSegment.java b/common/src/main/java/io/druid/timeline/DataSegment.java similarity index 100% rename from api/src/main/java/io/druid/timeline/DataSegment.java rename to common/src/main/java/io/druid/timeline/DataSegment.java diff --git a/api/src/main/java/io/druid/timeline/DataSegmentUtils.java b/common/src/main/java/io/druid/timeline/DataSegmentUtils.java similarity index 100% rename from api/src/main/java/io/druid/timeline/DataSegmentUtils.java rename to common/src/main/java/io/druid/timeline/DataSegmentUtils.java diff --git a/api/src/main/java/io/druid/timeline/PruneLoadSpec.java b/common/src/main/java/io/druid/timeline/PruneLoadSpec.java similarity index 100% rename from api/src/main/java/io/druid/timeline/PruneLoadSpec.java rename to common/src/main/java/io/druid/timeline/PruneLoadSpec.java diff --git a/api/src/main/java/io/druid/timeline/partition/NoneShardSpec.java b/common/src/main/java/io/druid/timeline/partition/NoneShardSpec.java similarity index 100% rename from api/src/main/java/io/druid/timeline/partition/NoneShardSpec.java rename to common/src/main/java/io/druid/timeline/partition/NoneShardSpec.java diff --git a/api/src/main/java/io/druid/timeline/partition/PartitionChunk.java b/common/src/main/java/io/druid/timeline/partition/PartitionChunk.java similarity index 100% rename from api/src/main/java/io/druid/timeline/partition/PartitionChunk.java rename to common/src/main/java/io/druid/timeline/partition/PartitionChunk.java diff --git a/api/src/main/java/io/druid/timeline/partition/ShardSpec.java b/common/src/main/java/io/druid/timeline/partition/ShardSpec.java similarity index 100% rename from api/src/main/java/io/druid/timeline/partition/ShardSpec.java rename to common/src/main/java/io/druid/timeline/partition/ShardSpec.java diff --git a/api/src/main/java/io/druid/timeline/partition/ShardSpecLookup.java b/common/src/main/java/io/druid/timeline/partition/ShardSpecLookup.java similarity index 100% rename from api/src/main/java/io/druid/timeline/partition/ShardSpecLookup.java rename to common/src/main/java/io/druid/timeline/partition/ShardSpecLookup.java diff --git a/api/src/main/java/io/druid/timeline/partition/SingleElementPartitionChunk.java b/common/src/main/java/io/druid/timeline/partition/SingleElementPartitionChunk.java similarity index 100% rename from api/src/main/java/io/druid/timeline/partition/SingleElementPartitionChunk.java rename to common/src/main/java/io/druid/timeline/partition/SingleElementPartitionChunk.java diff --git a/api/src/main/java/io/druid/utils/CompressionUtils.java b/common/src/main/java/io/druid/utils/CompressionUtils.java similarity index 100% rename from api/src/main/java/io/druid/utils/CompressionUtils.java rename to common/src/main/java/io/druid/utils/CompressionUtils.java diff --git a/api/src/main/java/io/druid/utils/Runnables.java b/common/src/main/java/io/druid/utils/Runnables.java similarity index 100% rename from api/src/main/java/io/druid/utils/Runnables.java rename to common/src/main/java/io/druid/utils/Runnables.java diff --git a/api/src/test/java/io/druid/TestObjectMapper.java b/common/src/test/java/io/druid/TestObjectMapper.java similarity index 100% rename from api/src/test/java/io/druid/TestObjectMapper.java rename to common/src/test/java/io/druid/TestObjectMapper.java diff --git a/common/src/test/java/io/druid/concurrent/ConcurrentAwaitableCounterTest.java b/common/src/test/java/io/druid/concurrent/ConcurrentAwaitableCounterTest.java new file mode 100644 index 000000000000..1b3e010ea124 --- /dev/null +++ b/common/src/test/java/io/druid/concurrent/ConcurrentAwaitableCounterTest.java @@ -0,0 +1,65 @@ +/* + * Licensed to Metamarkets Group Inc. (Metamarkets) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. Metamarkets licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +package io.druid.concurrent; + +import org.junit.Test; + +import java.util.concurrent.CountDownLatch; + +public class ConcurrentAwaitableCounterTest +{ + + @Test(timeout = 1000) + public void smokeTest() throws InterruptedException + { + ConcurrentAwaitableCounter counter = new ConcurrentAwaitableCounter(); + CountDownLatch start = new CountDownLatch(1); + CountDownLatch finish = new CountDownLatch(7); + for (int i = 0; i < 2; i++) { + new Thread(() -> { + try { + start.await(); + for (int j = 0; j < 10_000; j++) { + counter.increment(); + } + finish.countDown(); + } + catch (InterruptedException e) { + throw new RuntimeException(e); + } + + }).start(); + } + for (int awaitCount : new int[] {0, 1, 100, 10_000, 20_000}) { + new Thread(() -> { + try { + start.await(); + counter.awaitCount(awaitCount); + finish.countDown(); + } + catch (InterruptedException e) { + throw new RuntimeException(e); + } + }).start(); + } + start.countDown(); + finish.await(); + } +} diff --git a/api/src/test/java/io/druid/data/input/MapBasedRowTest.java b/common/src/test/java/io/druid/data/input/MapBasedRowTest.java similarity index 100% rename from api/src/test/java/io/druid/data/input/MapBasedRowTest.java rename to common/src/test/java/io/druid/data/input/MapBasedRowTest.java diff --git a/api/src/test/java/io/druid/data/input/impl/CSVParseSpecTest.java b/common/src/test/java/io/druid/data/input/impl/CSVParseSpecTest.java similarity index 100% rename from api/src/test/java/io/druid/data/input/impl/CSVParseSpecTest.java rename to common/src/test/java/io/druid/data/input/impl/CSVParseSpecTest.java diff --git a/api/src/test/java/io/druid/data/input/impl/DelimitedParseSpecTest.java b/common/src/test/java/io/druid/data/input/impl/DelimitedParseSpecTest.java similarity index 100% rename from api/src/test/java/io/druid/data/input/impl/DelimitedParseSpecTest.java rename to common/src/test/java/io/druid/data/input/impl/DelimitedParseSpecTest.java diff --git a/api/src/test/java/io/druid/data/input/impl/DimensionSchemaTest.java b/common/src/test/java/io/druid/data/input/impl/DimensionSchemaTest.java similarity index 100% rename from api/src/test/java/io/druid/data/input/impl/DimensionSchemaTest.java rename to common/src/test/java/io/druid/data/input/impl/DimensionSchemaTest.java diff --git a/api/src/test/java/io/druid/data/input/impl/DimensionsSpecSerdeTest.java b/common/src/test/java/io/druid/data/input/impl/DimensionsSpecSerdeTest.java similarity index 100% rename from api/src/test/java/io/druid/data/input/impl/DimensionsSpecSerdeTest.java rename to common/src/test/java/io/druid/data/input/impl/DimensionsSpecSerdeTest.java diff --git a/api/src/test/java/io/druid/data/input/impl/FileIteratingFirehoseTest.java b/common/src/test/java/io/druid/data/input/impl/FileIteratingFirehoseTest.java similarity index 100% rename from api/src/test/java/io/druid/data/input/impl/FileIteratingFirehoseTest.java rename to common/src/test/java/io/druid/data/input/impl/FileIteratingFirehoseTest.java diff --git a/api/src/test/java/io/druid/data/input/impl/InputRowParserSerdeTest.java b/common/src/test/java/io/druid/data/input/impl/InputRowParserSerdeTest.java similarity index 100% rename from api/src/test/java/io/druid/data/input/impl/InputRowParserSerdeTest.java rename to common/src/test/java/io/druid/data/input/impl/InputRowParserSerdeTest.java diff --git a/api/src/test/java/io/druid/data/input/impl/JSONLowercaseParseSpecTest.java b/common/src/test/java/io/druid/data/input/impl/JSONLowercaseParseSpecTest.java similarity index 100% rename from api/src/test/java/io/druid/data/input/impl/JSONLowercaseParseSpecTest.java rename to common/src/test/java/io/druid/data/input/impl/JSONLowercaseParseSpecTest.java diff --git a/api/src/test/java/io/druid/data/input/impl/JSONParseSpecTest.java b/common/src/test/java/io/druid/data/input/impl/JSONParseSpecTest.java similarity index 100% rename from api/src/test/java/io/druid/data/input/impl/JSONParseSpecTest.java rename to common/src/test/java/io/druid/data/input/impl/JSONParseSpecTest.java diff --git a/api/src/test/java/io/druid/data/input/impl/JSONPathSpecTest.java b/common/src/test/java/io/druid/data/input/impl/JSONPathSpecTest.java similarity index 100% rename from api/src/test/java/io/druid/data/input/impl/JSONPathSpecTest.java rename to common/src/test/java/io/druid/data/input/impl/JSONPathSpecTest.java diff --git a/api/src/test/java/io/druid/data/input/impl/JavaScriptParseSpecTest.java b/common/src/test/java/io/druid/data/input/impl/JavaScriptParseSpecTest.java similarity index 100% rename from api/src/test/java/io/druid/data/input/impl/JavaScriptParseSpecTest.java rename to common/src/test/java/io/druid/data/input/impl/JavaScriptParseSpecTest.java diff --git a/api/src/test/java/io/druid/data/input/impl/NoopInputRowParserTest.java b/common/src/test/java/io/druid/data/input/impl/NoopInputRowParserTest.java similarity index 100% rename from api/src/test/java/io/druid/data/input/impl/NoopInputRowParserTest.java rename to common/src/test/java/io/druid/data/input/impl/NoopInputRowParserTest.java diff --git a/api/src/test/java/io/druid/data/input/impl/ParseSpecTest.java b/common/src/test/java/io/druid/data/input/impl/ParseSpecTest.java similarity index 100% rename from api/src/test/java/io/druid/data/input/impl/ParseSpecTest.java rename to common/src/test/java/io/druid/data/input/impl/ParseSpecTest.java diff --git a/api/src/test/java/io/druid/data/input/impl/RegexParseSpecTest.java b/common/src/test/java/io/druid/data/input/impl/RegexParseSpecTest.java similarity index 100% rename from api/src/test/java/io/druid/data/input/impl/RegexParseSpecTest.java rename to common/src/test/java/io/druid/data/input/impl/RegexParseSpecTest.java diff --git a/api/src/test/java/io/druid/data/input/impl/StringInputRowParserTest.java b/common/src/test/java/io/druid/data/input/impl/StringInputRowParserTest.java similarity index 100% rename from api/src/test/java/io/druid/data/input/impl/StringInputRowParserTest.java rename to common/src/test/java/io/druid/data/input/impl/StringInputRowParserTest.java diff --git a/api/src/test/java/io/druid/data/input/impl/TimeAndDimsParseSpecTest.java b/common/src/test/java/io/druid/data/input/impl/TimeAndDimsParseSpecTest.java similarity index 100% rename from api/src/test/java/io/druid/data/input/impl/TimeAndDimsParseSpecTest.java rename to common/src/test/java/io/druid/data/input/impl/TimeAndDimsParseSpecTest.java diff --git a/api/src/test/java/io/druid/data/input/impl/TimestampSpecTest.java b/common/src/test/java/io/druid/data/input/impl/TimestampSpecTest.java similarity index 100% rename from api/src/test/java/io/druid/data/input/impl/TimestampSpecTest.java rename to common/src/test/java/io/druid/data/input/impl/TimestampSpecTest.java diff --git a/api/src/test/java/io/druid/data/input/impl/prefetch/PrefetchableTextFilesFirehoseFactoryTest.java b/common/src/test/java/io/druid/data/input/impl/prefetch/PrefetchableTextFilesFirehoseFactoryTest.java similarity index 100% rename from api/src/test/java/io/druid/data/input/impl/prefetch/PrefetchableTextFilesFirehoseFactoryTest.java rename to common/src/test/java/io/druid/data/input/impl/prefetch/PrefetchableTextFilesFirehoseFactoryTest.java diff --git a/api/src/test/java/io/druid/data/input/impl/prefetch/RetryingInputStreamTest.java b/common/src/test/java/io/druid/data/input/impl/prefetch/RetryingInputStreamTest.java similarity index 100% rename from api/src/test/java/io/druid/data/input/impl/prefetch/RetryingInputStreamTest.java rename to common/src/test/java/io/druid/data/input/impl/prefetch/RetryingInputStreamTest.java diff --git a/api/src/test/java/io/druid/guice/ConditionalMultibindTest.java b/common/src/test/java/io/druid/guice/ConditionalMultibindTest.java similarity index 100% rename from api/src/test/java/io/druid/guice/ConditionalMultibindTest.java rename to common/src/test/java/io/druid/guice/ConditionalMultibindTest.java diff --git a/api/src/test/java/io/druid/guice/JsonConfiguratorTest.java b/common/src/test/java/io/druid/guice/JsonConfiguratorTest.java similarity index 100% rename from api/src/test/java/io/druid/guice/JsonConfiguratorTest.java rename to common/src/test/java/io/druid/guice/JsonConfiguratorTest.java diff --git a/api/src/test/java/io/druid/guice/PolyBindTest.java b/common/src/test/java/io/druid/guice/PolyBindTest.java similarity index 100% rename from api/src/test/java/io/druid/guice/PolyBindTest.java rename to common/src/test/java/io/druid/guice/PolyBindTest.java diff --git a/api/src/test/java/io/druid/indexer/TaskStatusPlusTest.java b/common/src/test/java/io/druid/indexer/TaskStatusPlusTest.java similarity index 100% rename from api/src/test/java/io/druid/indexer/TaskStatusPlusTest.java rename to common/src/test/java/io/druid/indexer/TaskStatusPlusTest.java diff --git a/api/src/test/java/io/druid/jackson/JacksonExtremeDoubleValuesSerdeTest.java b/common/src/test/java/io/druid/jackson/JacksonExtremeDoubleValuesSerdeTest.java similarity index 100% rename from api/src/test/java/io/druid/jackson/JacksonExtremeDoubleValuesSerdeTest.java rename to common/src/test/java/io/druid/jackson/JacksonExtremeDoubleValuesSerdeTest.java diff --git a/java-util/src/test/java/io/druid/java/util/common/BufferUtils.java b/common/src/test/java/io/druid/java/util/common/BufferUtils.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/common/BufferUtils.java rename to common/src/test/java/io/druid/java/util/common/BufferUtils.java diff --git a/java-util/src/test/java/io/druid/java/util/common/ByteBufferUtilsTest.java b/common/src/test/java/io/druid/java/util/common/ByteBufferUtilsTest.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/common/ByteBufferUtilsTest.java rename to common/src/test/java/io/druid/java/util/common/ByteBufferUtilsTest.java diff --git a/java-util/src/test/java/io/druid/java/util/common/CompressionUtilsTest.java b/common/src/test/java/io/druid/java/util/common/CompressionUtilsTest.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/common/CompressionUtilsTest.java rename to common/src/test/java/io/druid/java/util/common/CompressionUtilsTest.java diff --git a/java-util/src/test/java/io/druid/java/util/common/FileUtilsTest.java b/common/src/test/java/io/druid/java/util/common/FileUtilsTest.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/common/FileUtilsTest.java rename to common/src/test/java/io/druid/java/util/common/FileUtilsTest.java diff --git a/java-util/src/test/java/io/druid/java/util/common/GranularityTest.java b/common/src/test/java/io/druid/java/util/common/GranularityTest.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/common/GranularityTest.java rename to common/src/test/java/io/druid/java/util/common/GranularityTest.java diff --git a/java-util/src/test/java/io/druid/java/util/common/RetryUtilsTest.java b/common/src/test/java/io/druid/java/util/common/RetryUtilsTest.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/common/RetryUtilsTest.java rename to common/src/test/java/io/druid/java/util/common/RetryUtilsTest.java diff --git a/java-util/src/test/java/io/druid/java/util/common/StreamUtilsTest.java b/common/src/test/java/io/druid/java/util/common/StreamUtilsTest.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/common/StreamUtilsTest.java rename to common/src/test/java/io/druid/java/util/common/StreamUtilsTest.java diff --git a/java-util/src/test/java/io/druid/java/util/common/StringUtilsTest.java b/common/src/test/java/io/druid/java/util/common/StringUtilsTest.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/common/StringUtilsTest.java rename to common/src/test/java/io/druid/java/util/common/StringUtilsTest.java diff --git a/java-util/src/test/java/io/druid/java/util/common/guava/BaseSequenceTest.java b/common/src/test/java/io/druid/java/util/common/guava/BaseSequenceTest.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/common/guava/BaseSequenceTest.java rename to common/src/test/java/io/druid/java/util/common/guava/BaseSequenceTest.java diff --git a/java-util/src/test/java/io/druid/java/util/common/guava/ComparatorsTest.java b/common/src/test/java/io/druid/java/util/common/guava/ComparatorsTest.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/common/guava/ComparatorsTest.java rename to common/src/test/java/io/druid/java/util/common/guava/ComparatorsTest.java diff --git a/java-util/src/test/java/io/druid/java/util/common/guava/ConcatSequenceTest.java b/common/src/test/java/io/druid/java/util/common/guava/ConcatSequenceTest.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/common/guava/ConcatSequenceTest.java rename to common/src/test/java/io/druid/java/util/common/guava/ConcatSequenceTest.java diff --git a/java-util/src/test/java/io/druid/java/util/common/guava/FilteredSequenceTest.java b/common/src/test/java/io/druid/java/util/common/guava/FilteredSequenceTest.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/common/guava/FilteredSequenceTest.java rename to common/src/test/java/io/druid/java/util/common/guava/FilteredSequenceTest.java diff --git a/java-util/src/test/java/io/druid/java/util/common/guava/FunctionalIterableTest.java b/common/src/test/java/io/druid/java/util/common/guava/FunctionalIterableTest.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/common/guava/FunctionalIterableTest.java rename to common/src/test/java/io/druid/java/util/common/guava/FunctionalIterableTest.java diff --git a/java-util/src/test/java/io/druid/java/util/common/guava/FunctionalIteratorTest.java b/common/src/test/java/io/druid/java/util/common/guava/FunctionalIteratorTest.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/common/guava/FunctionalIteratorTest.java rename to common/src/test/java/io/druid/java/util/common/guava/FunctionalIteratorTest.java diff --git a/java-util/src/test/java/io/druid/java/util/common/guava/LimitedSequenceTest.java b/common/src/test/java/io/druid/java/util/common/guava/LimitedSequenceTest.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/common/guava/LimitedSequenceTest.java rename to common/src/test/java/io/druid/java/util/common/guava/LimitedSequenceTest.java diff --git a/java-util/src/test/java/io/druid/java/util/common/guava/MappedSequenceTest.java b/common/src/test/java/io/druid/java/util/common/guava/MappedSequenceTest.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/common/guava/MappedSequenceTest.java rename to common/src/test/java/io/druid/java/util/common/guava/MappedSequenceTest.java diff --git a/java-util/src/test/java/io/druid/java/util/common/guava/MergeIteratorTest.java b/common/src/test/java/io/druid/java/util/common/guava/MergeIteratorTest.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/common/guava/MergeIteratorTest.java rename to common/src/test/java/io/druid/java/util/common/guava/MergeIteratorTest.java diff --git a/java-util/src/test/java/io/druid/java/util/common/guava/MergeSequenceTest.java b/common/src/test/java/io/druid/java/util/common/guava/MergeSequenceTest.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/common/guava/MergeSequenceTest.java rename to common/src/test/java/io/druid/java/util/common/guava/MergeSequenceTest.java diff --git a/java-util/src/test/java/io/druid/java/util/common/guava/SequenceTestHelper.java b/common/src/test/java/io/druid/java/util/common/guava/SequenceTestHelper.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/common/guava/SequenceTestHelper.java rename to common/src/test/java/io/druid/java/util/common/guava/SequenceTestHelper.java diff --git a/java-util/src/test/java/io/druid/java/util/common/guava/TestSequence.java b/common/src/test/java/io/druid/java/util/common/guava/TestSequence.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/common/guava/TestSequence.java rename to common/src/test/java/io/druid/java/util/common/guava/TestSequence.java diff --git a/java-util/src/test/java/io/druid/java/util/common/guava/UnsupportedSequence.java b/common/src/test/java/io/druid/java/util/common/guava/UnsupportedSequence.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/common/guava/UnsupportedSequence.java rename to common/src/test/java/io/druid/java/util/common/guava/UnsupportedSequence.java diff --git a/java-util/src/test/java/io/druid/java/util/common/guava/WithEffectSequenceTest.java b/common/src/test/java/io/druid/java/util/common/guava/WithEffectSequenceTest.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/common/guava/WithEffectSequenceTest.java rename to common/src/test/java/io/druid/java/util/common/guava/WithEffectSequenceTest.java diff --git a/java-util/src/test/java/io/druid/java/util/common/guava/WrappingSequenceTest.java b/common/src/test/java/io/druid/java/util/common/guava/WrappingSequenceTest.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/common/guava/WrappingSequenceTest.java rename to common/src/test/java/io/druid/java/util/common/guava/WrappingSequenceTest.java diff --git a/java-util/src/test/java/io/druid/java/util/common/guava/nary/SortedMergeIteratorTest.java b/common/src/test/java/io/druid/java/util/common/guava/nary/SortedMergeIteratorTest.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/common/guava/nary/SortedMergeIteratorTest.java rename to common/src/test/java/io/druid/java/util/common/guava/nary/SortedMergeIteratorTest.java diff --git a/java-util/src/test/java/io/druid/java/util/common/io/NativeIOTest.java b/common/src/test/java/io/druid/java/util/common/io/NativeIOTest.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/common/io/NativeIOTest.java rename to common/src/test/java/io/druid/java/util/common/io/NativeIOTest.java diff --git a/java-util/src/test/java/io/druid/java/util/common/io/smoosh/SmooshedFileMapperTest.java b/common/src/test/java/io/druid/java/util/common/io/smoosh/SmooshedFileMapperTest.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/common/io/smoosh/SmooshedFileMapperTest.java rename to common/src/test/java/io/druid/java/util/common/io/smoosh/SmooshedFileMapperTest.java diff --git a/java-util/src/test/java/io/druid/java/util/common/lifecycle/LifecycleTest.java b/common/src/test/java/io/druid/java/util/common/lifecycle/LifecycleTest.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/common/lifecycle/LifecycleTest.java rename to common/src/test/java/io/druid/java/util/common/lifecycle/LifecycleTest.java diff --git a/java-util/src/test/java/io/druid/java/util/common/logger/LoggerTest.java b/common/src/test/java/io/druid/java/util/common/logger/LoggerTest.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/common/logger/LoggerTest.java rename to common/src/test/java/io/druid/java/util/common/logger/LoggerTest.java diff --git a/java-util/src/test/java/io/druid/java/util/common/parsers/FlatTextFormatParserTest.java b/common/src/test/java/io/druid/java/util/common/parsers/FlatTextFormatParserTest.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/common/parsers/FlatTextFormatParserTest.java rename to common/src/test/java/io/druid/java/util/common/parsers/FlatTextFormatParserTest.java diff --git a/java-util/src/test/java/io/druid/java/util/common/parsers/JSONPathParserTest.java b/common/src/test/java/io/druid/java/util/common/parsers/JSONPathParserTest.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/common/parsers/JSONPathParserTest.java rename to common/src/test/java/io/druid/java/util/common/parsers/JSONPathParserTest.java diff --git a/java-util/src/test/java/io/druid/java/util/common/parsers/JavaScriptParserTest.java b/common/src/test/java/io/druid/java/util/common/parsers/JavaScriptParserTest.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/common/parsers/JavaScriptParserTest.java rename to common/src/test/java/io/druid/java/util/common/parsers/JavaScriptParserTest.java diff --git a/java-util/src/test/java/io/druid/java/util/common/parsers/RegexParserTest.java b/common/src/test/java/io/druid/java/util/common/parsers/RegexParserTest.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/common/parsers/RegexParserTest.java rename to common/src/test/java/io/druid/java/util/common/parsers/RegexParserTest.java diff --git a/java-util/src/test/java/io/druid/java/util/common/parsers/TimestampParserTest.java b/common/src/test/java/io/druid/java/util/common/parsers/TimestampParserTest.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/common/parsers/TimestampParserTest.java rename to common/src/test/java/io/druid/java/util/common/parsers/TimestampParserTest.java diff --git a/java-util/src/test/java/io/druid/java/util/emitter/core/ComposingEmitterTest.java b/common/src/test/java/io/druid/java/util/emitter/core/ComposingEmitterTest.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/emitter/core/ComposingEmitterTest.java rename to common/src/test/java/io/druid/java/util/emitter/core/ComposingEmitterTest.java diff --git a/java-util/src/test/java/io/druid/java/util/emitter/core/CustomEmitterFactoryTest.java b/common/src/test/java/io/druid/java/util/emitter/core/CustomEmitterFactoryTest.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/emitter/core/CustomEmitterFactoryTest.java rename to common/src/test/java/io/druid/java/util/emitter/core/CustomEmitterFactoryTest.java diff --git a/java-util/src/test/java/io/druid/java/util/emitter/core/EmitterTest.java b/common/src/test/java/io/druid/java/util/emitter/core/EmitterTest.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/emitter/core/EmitterTest.java rename to common/src/test/java/io/druid/java/util/emitter/core/EmitterTest.java diff --git a/java-util/src/test/java/io/druid/java/util/emitter/core/GoHandler.java b/common/src/test/java/io/druid/java/util/emitter/core/GoHandler.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/emitter/core/GoHandler.java rename to common/src/test/java/io/druid/java/util/emitter/core/GoHandler.java diff --git a/java-util/src/test/java/io/druid/java/util/emitter/core/GoHandlers.java b/common/src/test/java/io/druid/java/util/emitter/core/GoHandlers.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/emitter/core/GoHandlers.java rename to common/src/test/java/io/druid/java/util/emitter/core/GoHandlers.java diff --git a/java-util/src/test/java/io/druid/java/util/emitter/core/HttpEmitterConfigTest.java b/common/src/test/java/io/druid/java/util/emitter/core/HttpEmitterConfigTest.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/emitter/core/HttpEmitterConfigTest.java rename to common/src/test/java/io/druid/java/util/emitter/core/HttpEmitterConfigTest.java diff --git a/java-util/src/test/java/io/druid/java/util/emitter/core/HttpEmitterTest.java b/common/src/test/java/io/druid/java/util/emitter/core/HttpEmitterTest.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/emitter/core/HttpEmitterTest.java rename to common/src/test/java/io/druid/java/util/emitter/core/HttpEmitterTest.java diff --git a/java-util/src/test/java/io/druid/java/util/emitter/core/HttpPostEmitterStressTest.java b/common/src/test/java/io/druid/java/util/emitter/core/HttpPostEmitterStressTest.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/emitter/core/HttpPostEmitterStressTest.java rename to common/src/test/java/io/druid/java/util/emitter/core/HttpPostEmitterStressTest.java diff --git a/java-util/src/test/java/io/druid/java/util/emitter/core/IntEvent.java b/common/src/test/java/io/druid/java/util/emitter/core/IntEvent.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/emitter/core/IntEvent.java rename to common/src/test/java/io/druid/java/util/emitter/core/IntEvent.java diff --git a/java-util/src/test/java/io/druid/java/util/emitter/core/LoggingEmitterConfigTest.java b/common/src/test/java/io/druid/java/util/emitter/core/LoggingEmitterConfigTest.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/emitter/core/LoggingEmitterConfigTest.java rename to common/src/test/java/io/druid/java/util/emitter/core/LoggingEmitterConfigTest.java diff --git a/java-util/src/test/java/io/druid/java/util/emitter/core/MockHttpClient.java b/common/src/test/java/io/druid/java/util/emitter/core/MockHttpClient.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/emitter/core/MockHttpClient.java rename to common/src/test/java/io/druid/java/util/emitter/core/MockHttpClient.java diff --git a/java-util/src/test/java/io/druid/java/util/emitter/core/ParametrizedUriEmitterConfigTest.java b/common/src/test/java/io/druid/java/util/emitter/core/ParametrizedUriEmitterConfigTest.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/emitter/core/ParametrizedUriEmitterConfigTest.java rename to common/src/test/java/io/druid/java/util/emitter/core/ParametrizedUriEmitterConfigTest.java diff --git a/java-util/src/test/java/io/druid/java/util/emitter/core/ParametrizedUriEmitterTest.java b/common/src/test/java/io/druid/java/util/emitter/core/ParametrizedUriEmitterTest.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/emitter/core/ParametrizedUriEmitterTest.java rename to common/src/test/java/io/druid/java/util/emitter/core/ParametrizedUriEmitterTest.java diff --git a/java-util/src/test/java/io/druid/java/util/emitter/service/AlertEventTest.java b/common/src/test/java/io/druid/java/util/emitter/service/AlertEventTest.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/emitter/service/AlertEventTest.java rename to common/src/test/java/io/druid/java/util/emitter/service/AlertEventTest.java diff --git a/java-util/src/test/java/io/druid/java/util/emitter/service/ServiceMetricEventTest.java b/common/src/test/java/io/druid/java/util/emitter/service/ServiceMetricEventTest.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/emitter/service/ServiceMetricEventTest.java rename to common/src/test/java/io/druid/java/util/emitter/service/ServiceMetricEventTest.java diff --git a/java-util/src/test/java/io/druid/java/util/emitter/service/UnitEvent.java b/common/src/test/java/io/druid/java/util/emitter/service/UnitEvent.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/emitter/service/UnitEvent.java rename to common/src/test/java/io/druid/java/util/emitter/service/UnitEvent.java diff --git a/java-util/src/test/java/io/druid/java/util/http/client/AsyncHttpClientTest.java b/common/src/test/java/io/druid/java/util/http/client/AsyncHttpClientTest.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/http/client/AsyncHttpClientTest.java rename to common/src/test/java/io/druid/java/util/http/client/AsyncHttpClientTest.java diff --git a/java-util/src/test/java/io/druid/java/util/http/client/FriendlyServersTest.java b/common/src/test/java/io/druid/java/util/http/client/FriendlyServersTest.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/http/client/FriendlyServersTest.java rename to common/src/test/java/io/druid/java/util/http/client/FriendlyServersTest.java diff --git a/java-util/src/test/java/io/druid/java/util/http/client/JankyServersTest.java b/common/src/test/java/io/druid/java/util/http/client/JankyServersTest.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/http/client/JankyServersTest.java rename to common/src/test/java/io/druid/java/util/http/client/JankyServersTest.java diff --git a/java-util/src/test/java/io/druid/java/util/http/client/io/AppendableByteArrayInputStreamTest.java b/common/src/test/java/io/druid/java/util/http/client/io/AppendableByteArrayInputStreamTest.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/http/client/io/AppendableByteArrayInputStreamTest.java rename to common/src/test/java/io/druid/java/util/http/client/io/AppendableByteArrayInputStreamTest.java diff --git a/java-util/src/test/java/io/druid/java/util/http/client/pool/ResourcePoolTest.java b/common/src/test/java/io/druid/java/util/http/client/pool/ResourcePoolTest.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/http/client/pool/ResourcePoolTest.java rename to common/src/test/java/io/druid/java/util/http/client/pool/ResourcePoolTest.java diff --git a/java-util/src/test/java/io/druid/java/util/http/client/response/SequenceInputStreamResponseHandlerTest.java b/common/src/test/java/io/druid/java/util/http/client/response/SequenceInputStreamResponseHandlerTest.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/http/client/response/SequenceInputStreamResponseHandlerTest.java rename to common/src/test/java/io/druid/java/util/http/client/response/SequenceInputStreamResponseHandlerTest.java diff --git a/java-util/src/test/java/io/druid/java/util/metrics/CpuAcctDeltaMonitorTest.java b/common/src/test/java/io/druid/java/util/metrics/CpuAcctDeltaMonitorTest.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/metrics/CpuAcctDeltaMonitorTest.java rename to common/src/test/java/io/druid/java/util/metrics/CpuAcctDeltaMonitorTest.java diff --git a/java-util/src/test/java/io/druid/java/util/metrics/GcNameTest.java b/common/src/test/java/io/druid/java/util/metrics/GcNameTest.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/metrics/GcNameTest.java rename to common/src/test/java/io/druid/java/util/metrics/GcNameTest.java diff --git a/java-util/src/test/java/io/druid/java/util/metrics/JvmMonitorTest.java b/common/src/test/java/io/druid/java/util/metrics/JvmMonitorTest.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/metrics/JvmMonitorTest.java rename to common/src/test/java/io/druid/java/util/metrics/JvmMonitorTest.java diff --git a/java-util/src/test/java/io/druid/java/util/metrics/JvmPidDiscovererTest.java b/common/src/test/java/io/druid/java/util/metrics/JvmPidDiscovererTest.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/metrics/JvmPidDiscovererTest.java rename to common/src/test/java/io/druid/java/util/metrics/JvmPidDiscovererTest.java diff --git a/java-util/src/test/java/io/druid/java/util/metrics/MonitorUtilsTest.java b/common/src/test/java/io/druid/java/util/metrics/MonitorUtilsTest.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/metrics/MonitorUtilsTest.java rename to common/src/test/java/io/druid/java/util/metrics/MonitorUtilsTest.java diff --git a/java-util/src/test/java/io/druid/java/util/metrics/MonitorsTest.java b/common/src/test/java/io/druid/java/util/metrics/MonitorsTest.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/metrics/MonitorsTest.java rename to common/src/test/java/io/druid/java/util/metrics/MonitorsTest.java diff --git a/java-util/src/test/java/io/druid/java/util/metrics/SigarLoadTest.java b/common/src/test/java/io/druid/java/util/metrics/SigarLoadTest.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/metrics/SigarLoadTest.java rename to common/src/test/java/io/druid/java/util/metrics/SigarLoadTest.java diff --git a/java-util/src/test/java/io/druid/java/util/metrics/SigarPidDiscovererTest.java b/common/src/test/java/io/druid/java/util/metrics/SigarPidDiscovererTest.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/metrics/SigarPidDiscovererTest.java rename to common/src/test/java/io/druid/java/util/metrics/SigarPidDiscovererTest.java diff --git a/java-util/src/test/java/io/druid/java/util/metrics/StubServiceEmitter.java b/common/src/test/java/io/druid/java/util/metrics/StubServiceEmitter.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/metrics/StubServiceEmitter.java rename to common/src/test/java/io/druid/java/util/metrics/StubServiceEmitter.java diff --git a/java-util/src/test/java/io/druid/java/util/metrics/cgroups/CpuAcctTest.java b/common/src/test/java/io/druid/java/util/metrics/cgroups/CpuAcctTest.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/metrics/cgroups/CpuAcctTest.java rename to common/src/test/java/io/druid/java/util/metrics/cgroups/CpuAcctTest.java diff --git a/java-util/src/test/java/io/druid/java/util/metrics/cgroups/ProcCgroupDiscovererTest.java b/common/src/test/java/io/druid/java/util/metrics/cgroups/ProcCgroupDiscovererTest.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/metrics/cgroups/ProcCgroupDiscovererTest.java rename to common/src/test/java/io/druid/java/util/metrics/cgroups/ProcCgroupDiscovererTest.java diff --git a/java-util/src/test/java/io/druid/java/util/metrics/cgroups/TestUtils.java b/common/src/test/java/io/druid/java/util/metrics/cgroups/TestUtils.java similarity index 100% rename from java-util/src/test/java/io/druid/java/util/metrics/cgroups/TestUtils.java rename to common/src/test/java/io/druid/java/util/metrics/cgroups/TestUtils.java diff --git a/api/src/test/java/io/druid/js/JavaScriptConfigTest.java b/common/src/test/java/io/druid/js/JavaScriptConfigTest.java similarity index 100% rename from api/src/test/java/io/druid/js/JavaScriptConfigTest.java rename to common/src/test/java/io/druid/js/JavaScriptConfigTest.java diff --git a/api/src/test/java/io/druid/segment/SegmentUtilsTest.java b/common/src/test/java/io/druid/segment/SegmentUtilsTest.java similarity index 100% rename from api/src/test/java/io/druid/segment/SegmentUtilsTest.java rename to common/src/test/java/io/druid/segment/SegmentUtilsTest.java diff --git a/api/src/test/java/io/druid/timeline/DataSegmentTest.java b/common/src/test/java/io/druid/timeline/DataSegmentTest.java similarity index 100% rename from api/src/test/java/io/druid/timeline/DataSegmentTest.java rename to common/src/test/java/io/druid/timeline/DataSegmentTest.java diff --git a/api/src/test/java/io/druid/timeline/DataSegmentUtilsTest.java b/common/src/test/java/io/druid/timeline/DataSegmentUtilsTest.java similarity index 100% rename from api/src/test/java/io/druid/timeline/DataSegmentUtilsTest.java rename to common/src/test/java/io/druid/timeline/DataSegmentUtilsTest.java diff --git a/api/src/test/java/io/druid/timeline/partition/NoneShardSpecTest.java b/common/src/test/java/io/druid/timeline/partition/NoneShardSpecTest.java similarity index 100% rename from api/src/test/java/io/druid/timeline/partition/NoneShardSpecTest.java rename to common/src/test/java/io/druid/timeline/partition/NoneShardSpecTest.java diff --git a/docs/content/design/realtime.md b/docs/content/design/realtime.md index d2cb39c3f531..1e22dd87f16b 100644 --- a/docs/content/design/realtime.md +++ b/docs/content/design/realtime.md @@ -38,7 +38,7 @@ Extending the code Realtime integration is intended to be extended in two ways: -1. Connect to data streams from varied systems ([Firehose](https://github.com/druid-io/druid-api/blob/master/src/main/java/io/druid/data/input/FirehoseFactory.java)) +1. Connect to data streams from varied systems ([Firehose](https://github.com/druid-io/druid/blob/master/common/src/main/java/io/druid/data/input/FirehoseFactory.java)) 2. Adjust the publishing strategy to match your needs ([Plumber](https://github.com/druid-io/druid/blob/master/server/src/main/java/io/druid/segment/realtime/plumber/PlumberSchool.java)) The expectations are that the former will be very common and something that users of Druid will do on a fairly regular basis. Most users will probably never have to deal with the latter form of customization. Indeed, we hope that all potential use cases can be packaged up as part of Druid proper without requiring proprietary customization. diff --git a/docs/content/development/modules.md b/docs/content/development/modules.md index db529f3029a3..acf34c9369e3 100644 --- a/docs/content/development/modules.md +++ b/docs/content/development/modules.md @@ -72,7 +72,7 @@ Binders.dataSegmentPusherBinder(binder) .to(HdfsDataSegmentPusher.class).in(LazySingleton.class); ``` -`Binders.dataSegment*Binder()` is a call provided by the druid-api jar which sets up a Guice multibind "MapBinder". If that doesn't make sense, don't worry about it, just think of it as a magical incantation. +`Binders.dataSegment*Binder()` is a call provided by the druid-common jar which sets up a Guice multibind "MapBinder". If that doesn't make sense, don't worry about it, just think of it as a magical incantation. `addBinding("hdfs")` for the Puller binder creates a new handler for loadSpec objects of type "hdfs". For the Pusher binder it creates a new type value that you can specify for the `druid.storage.type` parameter. diff --git a/extendedset/pom.xml b/extendedset/pom.xml index e54f32d8279a..a7dfaed5358d 100755 --- a/extendedset/pom.xml +++ b/extendedset/pom.xml @@ -39,7 +39,7 @@ io.druid - java-util + druid-common ${project.parent.version} diff --git a/extensions-contrib/ambari-metrics-emitter/pom.xml b/extensions-contrib/ambari-metrics-emitter/pom.xml index 2cd8cb13acc8..47b021b9b240 100644 --- a/extensions-contrib/ambari-metrics-emitter/pom.xml +++ b/extensions-contrib/ambari-metrics-emitter/pom.xml @@ -41,18 +41,6 @@ ${project.parent.version} provided - - io.druid - druid-api - ${project.parent.version} - provided - - - io.druid - java-util - ${project.parent.version} - provided - io.druid druid-server diff --git a/extensions-contrib/azure-extensions/pom.xml b/extensions-contrib/azure-extensions/pom.xml index b408e0dba636..1b96cb072660 100644 --- a/extensions-contrib/azure-extensions/pom.xml +++ b/extensions-contrib/azure-extensions/pom.xml @@ -37,7 +37,7 @@ io.druid - druid-api + druid-common ${project.parent.version} provided diff --git a/extensions-contrib/cassandra-storage/pom.xml b/extensions-contrib/cassandra-storage/pom.xml index 56c425c4520b..14b87e105bdf 100644 --- a/extensions-contrib/cassandra-storage/pom.xml +++ b/extensions-contrib/cassandra-storage/pom.xml @@ -36,7 +36,7 @@ io.druid - druid-api + druid-common ${project.parent.version} provided diff --git a/extensions-contrib/cloudfiles-extensions/pom.xml b/extensions-contrib/cloudfiles-extensions/pom.xml index 060904af1a7b..de55441ea9b4 100644 --- a/extensions-contrib/cloudfiles-extensions/pom.xml +++ b/extensions-contrib/cloudfiles-extensions/pom.xml @@ -45,7 +45,7 @@ io.druid - druid-api + druid-common ${project.parent.version} provided diff --git a/extensions-contrib/druid-rocketmq/pom.xml b/extensions-contrib/druid-rocketmq/pom.xml index 8d5164e26032..7c3456a5fea8 100644 --- a/extensions-contrib/druid-rocketmq/pom.xml +++ b/extensions-contrib/druid-rocketmq/pom.xml @@ -43,7 +43,7 @@ io.druid - druid-api + druid-common ${project.parent.version} provided diff --git a/extensions-contrib/google-extensions/pom.xml b/extensions-contrib/google-extensions/pom.xml index 889fd343d1a6..5349b06a1d16 100644 --- a/extensions-contrib/google-extensions/pom.xml +++ b/extensions-contrib/google-extensions/pom.xml @@ -36,7 +36,7 @@ io.druid - druid-api + druid-common ${project.parent.version} provided diff --git a/extensions-contrib/graphite-emitter/pom.xml b/extensions-contrib/graphite-emitter/pom.xml index d3733c1990d7..e923fa0a7bd9 100644 --- a/extensions-contrib/graphite-emitter/pom.xml +++ b/extensions-contrib/graphite-emitter/pom.xml @@ -35,30 +35,12 @@ Druid emitter extension to support graphite - - io.druid - druid-common - ${project.parent.version} - provided - - - io.druid - druid-api - ${project.parent.version} - provided - io.druid druid-server ${project.parent.version} provided - - io.druid - java-util - ${project.parent.version} - provided - io.dropwizard.metrics metrics-graphite diff --git a/extensions-contrib/kafka-eight-simpleConsumer/pom.xml b/extensions-contrib/kafka-eight-simpleConsumer/pom.xml index 598e46cfd943..66f821054afc 100644 --- a/extensions-contrib/kafka-eight-simpleConsumer/pom.xml +++ b/extensions-contrib/kafka-eight-simpleConsumer/pom.xml @@ -34,13 +34,7 @@ io.druid - druid-api - ${project.parent.version} - provided - - - io.druid - java-util + druid-common ${project.parent.version} provided diff --git a/extensions-contrib/kafka-emitter/pom.xml b/extensions-contrib/kafka-emitter/pom.xml index d2aabf3fa671..95be7957bcdb 100644 --- a/extensions-contrib/kafka-emitter/pom.xml +++ b/extensions-contrib/kafka-emitter/pom.xml @@ -35,11 +35,6 @@ Druid emitter extension to support kafka - - org.apache.kafka - kafka-clients - 0.10.2.0 - io.druid druid-common @@ -47,16 +42,9 @@ provided - io.druid - druid-api - ${project.parent.version} - provided - - - io.druid - java-util - ${project.parent.version} - provided + org.apache.kafka + kafka-clients + 0.10.2.0 junit diff --git a/extensions-contrib/opentsdb-emitter/pom.xml b/extensions-contrib/opentsdb-emitter/pom.xml index 22f475dd5fc7..ec749fbb7bf3 100644 --- a/extensions-contrib/opentsdb-emitter/pom.xml +++ b/extensions-contrib/opentsdb-emitter/pom.xml @@ -36,12 +36,6 @@ - - io.druid - druid-api - ${project.parent.version} - provided - io.druid druid-server diff --git a/extensions-contrib/rabbitmq/pom.xml b/extensions-contrib/rabbitmq/pom.xml index dd68599a48ba..54082ce5d3c0 100644 --- a/extensions-contrib/rabbitmq/pom.xml +++ b/extensions-contrib/rabbitmq/pom.xml @@ -36,7 +36,7 @@ io.druid - druid-api + druid-common ${project.parent.version} provided diff --git a/extensions-contrib/redis-cache/pom.xml b/extensions-contrib/redis-cache/pom.xml index c971a2a09a3d..18042316e011 100644 --- a/extensions-contrib/redis-cache/pom.xml +++ b/extensions-contrib/redis-cache/pom.xml @@ -35,12 +35,6 @@ - - io.druid - druid-api - ${project.parent.version} - provided - io.druid druid-server diff --git a/extensions-contrib/sqlserver-metadata-storage/pom.xml b/extensions-contrib/sqlserver-metadata-storage/pom.xml index 7d91c2d88207..f11135efecc0 100644 --- a/extensions-contrib/sqlserver-metadata-storage/pom.xml +++ b/extensions-contrib/sqlserver-metadata-storage/pom.xml @@ -31,19 +31,6 @@ - - - io.druid - druid-api - ${project.parent.version} - provided - - - io.druid - druid-common - ${project.parent.version} - provided - io.druid druid-server diff --git a/extensions-contrib/statsd-emitter/pom.xml b/extensions-contrib/statsd-emitter/pom.xml index 5ce5f070f177..d38c05617aed 100644 --- a/extensions-contrib/statsd-emitter/pom.xml +++ b/extensions-contrib/statsd-emitter/pom.xml @@ -40,18 +40,6 @@ ${project.parent.version} provided - - io.druid - druid-api - ${project.parent.version} - provided - - - io.druid - java-util - ${project.parent.version} - provided - com.timgroup java-statsd-client diff --git a/extensions-contrib/time-min-max/pom.xml b/extensions-contrib/time-min-max/pom.xml index b44049def5d5..dbf9a99a6c78 100644 --- a/extensions-contrib/time-min-max/pom.xml +++ b/extensions-contrib/time-min-max/pom.xml @@ -34,12 +34,6 @@ Min/Max of timestamp - - io.druid - druid-api - ${project.parent.version} - provided - io.druid druid-processing diff --git a/extensions-contrib/virtual-columns/pom.xml b/extensions-contrib/virtual-columns/pom.xml index 6095f37a87b5..3784c15fae04 100644 --- a/extensions-contrib/virtual-columns/pom.xml +++ b/extensions-contrib/virtual-columns/pom.xml @@ -34,18 +34,6 @@ - - io.druid - druid-api - ${project.parent.version} - provided - - - io.druid - druid-common - ${project.parent.version} - provided - io.druid druid-processing diff --git a/extensions-core/avro-extensions/pom.xml b/extensions-core/avro-extensions/pom.xml index 2491a3506cc7..10f411c71c45 100644 --- a/extensions-core/avro-extensions/pom.xml +++ b/extensions-core/avro-extensions/pom.xml @@ -62,7 +62,7 @@ io.druid - druid-api + druid-common ${project.parent.version} provided diff --git a/extensions-core/datasketches/pom.xml b/extensions-core/datasketches/pom.xml index 54e9ceaa5f8a..2f7c4128e051 100644 --- a/extensions-core/datasketches/pom.xml +++ b/extensions-core/datasketches/pom.xml @@ -40,12 +40,6 @@ sketches-core 0.10.3 - - io.druid - druid-api - ${project.parent.version} - provided - io.druid druid-processing diff --git a/extensions-core/hdfs-storage/pom.xml b/extensions-core/hdfs-storage/pom.xml index f737da39c3e1..2b53d4eca1dd 100644 --- a/extensions-core/hdfs-storage/pom.xml +++ b/extensions-core/hdfs-storage/pom.xml @@ -32,24 +32,12 @@ - - io.druid - druid-api - ${project.parent.version} - provided - io.druid druid-common ${project.parent.version} provided - - io.druid - java-util - ${project.parent.version} - provided - org.apache.hadoop hadoop-client diff --git a/extensions-core/kafka-eight/pom.xml b/extensions-core/kafka-eight/pom.xml index 155aae49763b..7e4062e0091e 100644 --- a/extensions-core/kafka-eight/pom.xml +++ b/extensions-core/kafka-eight/pom.xml @@ -34,7 +34,7 @@ io.druid - druid-api + druid-common ${project.parent.version} provided diff --git a/extensions-core/kafka-extraction-namespace/pom.xml b/extensions-core/kafka-extraction-namespace/pom.xml index d2e13ed23b76..cd46ad1f9948 100644 --- a/extensions-core/kafka-extraction-namespace/pom.xml +++ b/extensions-core/kafka-extraction-namespace/pom.xml @@ -34,12 +34,6 @@ - - io.druid - druid-api - ${project.parent.version} - provided - io.druid druid-processing diff --git a/extensions-core/kafka-indexing-service/pom.xml b/extensions-core/kafka-indexing-service/pom.xml index a9412a6f1715..16d970a94d2b 100644 --- a/extensions-core/kafka-indexing-service/pom.xml +++ b/extensions-core/kafka-indexing-service/pom.xml @@ -38,12 +38,6 @@ - - io.druid - druid-api - ${project.parent.version} - provided - io.druid druid-indexing-service diff --git a/extensions-core/lookups-cached-global/pom.xml b/extensions-core/lookups-cached-global/pom.xml index f642d904cec9..402c090b01b2 100644 --- a/extensions-core/lookups-cached-global/pom.xml +++ b/extensions-core/lookups-cached-global/pom.xml @@ -34,12 +34,6 @@ - - io.druid - druid-api - ${project.parent.version} - provided - io.druid druid-processing diff --git a/extensions-core/lookups-cached-global/src/main/java/io/druid/server/lookup/namespace/cache/CacheScheduler.java b/extensions-core/lookups-cached-global/src/main/java/io/druid/server/lookup/namespace/cache/CacheScheduler.java index 7669168d1f4a..60bdbef9581e 100644 --- a/extensions-core/lookups-cached-global/src/main/java/io/druid/server/lookup/namespace/cache/CacheScheduler.java +++ b/extensions-core/lookups-cached-global/src/main/java/io/druid/server/lookup/namespace/cache/CacheScheduler.java @@ -22,6 +22,7 @@ import com.google.common.annotations.VisibleForTesting; import com.google.common.base.Throwables; import com.google.inject.Inject; +import io.druid.concurrent.ConcurrentAwaitableCounter; import io.druid.java.util.emitter.service.ServiceEmitter; import io.druid.java.util.emitter.service.ServiceMetricEvent; import io.druid.guice.LazySingleton; @@ -51,11 +52,11 @@ * // cacheState could be either NoCache or VersionedCache. * if (cacheState instanceof NoCache) { * // the cache is not yet created, or already closed - * } else if (cacheState instanceof VersionedCache) { + * } else { * Map cache = ((VersionedCache) cacheState).getCache(); // use the cache * // Although VersionedCache implements AutoCloseable, versionedCache shouldn't be manually closed * // when obtained from entry.getCacheState(). If the namespace updates should be ceased completely, - * // entry.close() (see below) should be called, it will close the last VersionedCache itself. + * // entry.close() (see below) should be called, it will close the last VersionedCache as well. * // On scheduled updates, outdated VersionedCaches are also closed automatically. * } * ... @@ -107,12 +108,12 @@ Future getUpdaterFuture() public void awaitTotalUpdates(int totalUpdates) throws InterruptedException { - impl.updateCounter.awaitTotalUpdates(totalUpdates); + impl.updateCounter.awaitCount(totalUpdates); } void awaitNextUpdates(int nextUpdates) throws InterruptedException { - impl.updateCounter.awaitNextUpdates(nextUpdates); + impl.updateCounter.awaitNextIncrements(nextUpdates); } /** @@ -145,7 +146,7 @@ public class EntryImpl implements AutoCloseable private final Future updaterFuture; private final Cleaner entryCleaner; private final CacheGenerator cacheGenerator; - private final UpdateCounter updateCounter = new UpdateCounter(); + private final ConcurrentAwaitableCounter updateCounter = new ConcurrentAwaitableCounter(); private final CountDownLatch startLatch = new CountDownLatch(1); private EntryImpl(final T namespace, final Entry entry, final CacheGenerator cacheGenerator) @@ -276,7 +277,7 @@ private CacheState swapCacheState(VersionedCache newVersionedCache) return lastCacheState; } } while (!cacheStateHolder.compareAndSet(lastCacheState, newVersionedCache)); - updateCounter.update(); + updateCounter.increment(); return lastCacheState; } @@ -485,7 +486,7 @@ public Entry scheduleAndWait(ExtractionNamespace namespace, long waitForFirstRun log.debug("Scheduled new %s", entry); boolean success = false; try { - success = entry.impl.updateCounter.awaitFirstUpdate(waitForFirstRunMs, TimeUnit.MILLISECONDS); + success = entry.impl.updateCounter.awaitFirstIncrement(waitForFirstRunMs, TimeUnit.MILLISECONDS); if (success) { return entry; } else { diff --git a/extensions-core/lookups-cached-global/src/main/java/io/druid/server/lookup/namespace/cache/UpdateCounter.java b/extensions-core/lookups-cached-global/src/main/java/io/druid/server/lookup/namespace/cache/UpdateCounter.java deleted file mode 100644 index ed229b45f891..000000000000 --- a/extensions-core/lookups-cached-global/src/main/java/io/druid/server/lookup/namespace/cache/UpdateCounter.java +++ /dev/null @@ -1,88 +0,0 @@ -/* - * Licensed to Metamarkets Group Inc. (Metamarkets) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. Metamarkets licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package io.druid.server.lookup.namespace.cache; - -import java.util.concurrent.Phaser; -import java.util.concurrent.TimeUnit; -import java.util.concurrent.TimeoutException; - -final class UpdateCounter -{ - /** - * Max {@link Phaser}'s phase, specified in it's javadoc. Then it wraps to zero. - */ - private static final int MAX_PHASE = Integer.MAX_VALUE; - - private final Phaser phaser = new Phaser(1); - - void update() - { - phaser.arrive(); - } - - void awaitTotalUpdates(int totalUpdates) throws InterruptedException - { - totalUpdates &= MAX_PHASE; - int currentUpdates = phaser.getPhase(); - checkNotTerminated(currentUpdates); - while (comparePhases(totalUpdates, currentUpdates) > 0) { - currentUpdates = phaser.awaitAdvanceInterruptibly(currentUpdates); - checkNotTerminated(currentUpdates); - } - } - - private static int comparePhases(int phase1, int phase2) - { - int diff = (phase1 - phase2) & MAX_PHASE; - if (diff == 0) { - return 0; - } - return diff < MAX_PHASE / 2 ? 1 : -1; - } - - private void checkNotTerminated(int phase) - { - if (phase < 0) { - throw new IllegalStateException("Phaser[" + phaser + "] unexpectedly terminated."); - } - } - - void awaitNextUpdates(int nextUpdates) throws InterruptedException - { - if (nextUpdates <= 0) { - throw new IllegalArgumentException("nextUpdates is not positive: " + nextUpdates); - } - if (nextUpdates > MAX_PHASE / 4) { - throw new UnsupportedOperationException("Couldn't wait for so many updates: " + nextUpdates); - } - awaitTotalUpdates(phaser.getPhase() + nextUpdates); - } - - boolean awaitFirstUpdate(long timeout, TimeUnit unit) throws InterruptedException - { - try { - phaser.awaitAdvanceInterruptibly(0, timeout, unit); - return true; - } - catch (TimeoutException e) { - return false; - } - } -} diff --git a/extensions-core/lookups-cached-single/pom.xml b/extensions-core/lookups-cached-single/pom.xml index 3d467d5029ba..3ea62d27b7c2 100644 --- a/extensions-core/lookups-cached-single/pom.xml +++ b/extensions-core/lookups-cached-single/pom.xml @@ -34,12 +34,6 @@ - - io.druid - druid-api - ${project.parent.version} - provided - io.druid druid-processing diff --git a/extensions-core/mysql-metadata-storage/pom.xml b/extensions-core/mysql-metadata-storage/pom.xml index a3b8fa7cd80a..2870523c0ed5 100644 --- a/extensions-core/mysql-metadata-storage/pom.xml +++ b/extensions-core/mysql-metadata-storage/pom.xml @@ -33,18 +33,6 @@ - - io.druid - druid-api - ${project.parent.version} - provided - - - io.druid - druid-common - ${project.parent.version} - provided - io.druid druid-server diff --git a/extensions-core/postgresql-metadata-storage/pom.xml b/extensions-core/postgresql-metadata-storage/pom.xml index 05591967d3c0..af11c80f0d8b 100644 --- a/extensions-core/postgresql-metadata-storage/pom.xml +++ b/extensions-core/postgresql-metadata-storage/pom.xml @@ -33,18 +33,6 @@ - - io.druid - druid-api - ${project.parent.version} - provided - - - io.druid - druid-common - ${project.parent.version} - provided - io.druid druid-server diff --git a/extensions-core/s3-extensions/pom.xml b/extensions-core/s3-extensions/pom.xml index 3d389eab4d3f..778e4ac357e1 100644 --- a/extensions-core/s3-extensions/pom.xml +++ b/extensions-core/s3-extensions/pom.xml @@ -33,24 +33,12 @@ - - io.druid - druid-api - ${project.parent.version} - provided - io.druid druid-aws-common ${project.parent.version} provided - - io.druid - java-util - ${project.parent.version} - provided - net.java.dev.jets3t jets3t diff --git a/extensions-core/simple-client-sslcontext/pom.xml b/extensions-core/simple-client-sslcontext/pom.xml index 030436b431c2..e6d99f6c0664 100644 --- a/extensions-core/simple-client-sslcontext/pom.xml +++ b/extensions-core/simple-client-sslcontext/pom.xml @@ -16,29 +16,11 @@ simple-client-sslcontext - - io.druid - druid-api - ${project.parent.version} - provided - - - io.druid - druid-common - ${project.parent.version} - provided - io.druid druid-server ${project.parent.version} provided - - io.druid - java-util - ${project.parent.version} - provided - diff --git a/hll/pom.xml b/hll/pom.xml index 676a4eb92b7b..299451232b21 100644 --- a/hll/pom.xml +++ b/hll/pom.xml @@ -41,7 +41,7 @@ io.druid - java-util + druid-common ${project.parent.version} diff --git a/indexing-hadoop/pom.xml b/indexing-hadoop/pom.xml index e2bf002c3d55..690418495d70 100644 --- a/indexing-hadoop/pom.xml +++ b/indexing-hadoop/pom.xml @@ -36,18 +36,6 @@ ${project.parent.version} - - io.druid - java-util - ${project.parent.version} - - - org.slf4j - slf4j-api - - - - commons-io commons-io diff --git a/java-util/pom.xml b/java-util/pom.xml deleted file mode 100644 index 150c332a3ca7..000000000000 --- a/java-util/pom.xml +++ /dev/null @@ -1,279 +0,0 @@ - - - - - 4.0.0 - - - io.druid - druid - 0.13.0-SNAPSHOT - - - java-util - java-util - java-util - - - - Apache License, Version 2.0 - http://www.apache.org/licenses/LICENSE-2.0 - - - - - UTF-8 - 1.6.5 - ${sigar.base.version}.132 - - - - - org.slf4j - slf4j-api - - - org.skife.config - config-magic - - - com.google.guava - guava - - - com.fasterxml.jackson.core - jackson-annotations - - - com.fasterxml.jackson.core - jackson-core - - - com.fasterxml.jackson.core - jackson-databind - - - net.sf.opencsv - opencsv - - - joda-time - joda-time - - - org.mozilla - rhino - - - com.jayway.jsonpath - json-path - - - net.minidev - json-smart - - - - - net.thisptr - jackson-jq - - - - - com.google.code.findbugs - jsr305 - - - net.java.dev.jna - jna - - - javax.validation - validation-api - - - org.asynchttpclient - async-http-client - - - - - org.hyperic - sigar - ${sigar.version} - true - - - org.hyperic - sigar-dist - ${sigar.version} - zip - - provided - - - org.gridkit.lab - jvm-attach-api - - - - - io.netty - netty - - - - - junit - junit - test - - - org.easymock - easymock - test - - - org.slf4j - slf4j-simple - test - true - - - org.apache.logging.log4j - log4j-api - test - - - org.apache.logging.log4j - log4j-core - test - - - org.apache.logging.log4j - log4j-slf4j-impl - test - - - org.apache.logging.log4j - log4j-1.2-api - test - - - org.apache.logging.log4j - log4j-jul - test - - - org.eclipse.jetty - jetty-server - test - - - org.eclipse.jetty - jetty-servlet - test - - - it.unimi.dsi - fastutil - test - - - - - - - org.apache.maven.plugins - maven-jar-plugin - - - - test-jar - - - - - - org.antlr - antlr4-maven-plugin - - - - antlr4 - - - - - - org.apache.maven.plugins - maven-dependency-plugin - - - copy-sigar-lib-to-resources - generate-resources - - unpack-dependencies - - - org.hyperic - sigar-dist - **/sigar-bin/lib/* - **/sigar-bin/lib/*jar - - ${project.build.directory} - - - - - - - org.apache.maven.plugins - maven-surefire-plugin - - - - java.library.path - ${project.build.directory}/hyperic-sigar-${sigar.base.version}/sigar-bin/lib/ - - - - - - - - - - ${project.build.directory}/hyperic-sigar-${sigar.base.version}/sigar-bin/lib - - - - - - - - sigar - https://repository.jboss.org/nexus/content/repositories/thirdparty-uploads/ - - - - diff --git a/java-util/src/main/java/io/druid/java/util/emitter/core/EmittedBatchCounter.java b/java-util/src/main/java/io/druid/java/util/emitter/core/EmittedBatchCounter.java deleted file mode 100644 index 860e6957fe94..000000000000 --- a/java-util/src/main/java/io/druid/java/util/emitter/core/EmittedBatchCounter.java +++ /dev/null @@ -1,73 +0,0 @@ -/* - * Licensed to Metamarkets Group Inc. (Metamarkets) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. Metamarkets licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package io.druid.java.util.emitter.core; - -import java.util.concurrent.Phaser; -import java.util.concurrent.TimeUnit; -import java.util.concurrent.TimeoutException; - - -final class EmittedBatchCounter -{ - /** - * Max {@link Phaser}'s phase, specified in it's javadoc. Then it wraps to zero. - */ - private static final int MAX_PHASE = Integer.MAX_VALUE; - - static int nextBatchNumber(int prevBatchNumber) - { - return (prevBatchNumber + 1) & MAX_PHASE; - } - - private final Phaser phaser = new Phaser(1); - - void batchEmitted() - { - phaser.arrive(); - } - - void awaitBatchEmitted(int batchNumberToAwait, long timeout, TimeUnit unit) - throws InterruptedException, TimeoutException - { - batchNumberToAwait &= MAX_PHASE; - int currentBatch = phaser.getPhase(); - checkNotTerminated(currentBatch); - while (comparePhases(batchNumberToAwait, currentBatch) >= 0) { - currentBatch = phaser.awaitAdvanceInterruptibly(currentBatch, timeout, unit); - checkNotTerminated(currentBatch); - } - } - - private static int comparePhases(int phase1, int phase2) - { - int diff = (phase1 - phase2) & MAX_PHASE; - if (diff == 0) { - return 0; - } - return diff < MAX_PHASE / 2 ? 1 : -1; - } - - private void checkNotTerminated(int phase) - { - if (phase < 0) { - throw new IllegalStateException("Phaser[" + phaser + "] unexpectedly terminated."); - } - } -} diff --git a/java-util/src/test/resources/cpuacct.usage_all b/java-util/src/test/resources/cpuacct.usage_all deleted file mode 100644 index f3d1c534708a..000000000000 --- a/java-util/src/test/resources/cpuacct.usage_all +++ /dev/null @@ -1,129 +0,0 @@ -cpu user system -0 7344294132655 4583688852335 -1 28183572804378 385888457233 -2 29552215219002 370465239852 -3 29478124053329 363572894675 -4 29829248571038 334329517808 -5 30290864470719 327800567541 -6 30561719193413 289395249935 -7 30638606697446 302853990791 -8 39251561450889 255558344564 -9 39082643428276 274043522998 -10 38829852195583 256014012773 -11 39158341842449 253276920707 -12 39490263697181 257971375228 -13 39363774325162 244926573383 -14 39569806302164 240692265222 -15 39410558504372 241820386298 -16 44907796060505 74203786299 -17 42522297123640 79965589957 -18 41920625622542 73735621808 -19 40593391967420 74851270413 -20 40350585953295 84689908189 -21 40139554930678 69618323977 -22 40019783380923 76316055513 -23 40182686097717 87434816528 -24 39778858132385 80680588218 -25 40252938541440 70083776283 -26 40476150948365 59931280896 -27 40277874584618 67678277638 -28 39938509407084 85713335794 -29 39914644718371 74594785949 -30 40010393213659 69367790895 -31 39938252119551 68817875729 -32 44958993952996 83346318662 -33 42967015146867 80872459027 -34 41742610896758 69882000641 -35 40751067975683 59230207177 -36 40390633464986 80985355290 -37 40143331504478 88305162767 -38 40486014164571 79610055475 -39 40565630824649 77097429500 -40 39976774290845 72748340407 -41 39942348143441 77647202034 -42 40149234675554 61982641775 -43 39895306827546 63292828955 -44 40062736204343 71501429739 -45 39208930836306 101050648913 -46 40098687814379 67603152691 -47 39803234124100 85242844849 -48 44894501101599 53320735254 -49 43470418903266 59480233446 -50 41844924510711 53738738094 -51 41137017142223 50064771695 -52 40958534485692 49322497528 -53 40996749346830 60437383202 -54 40722256755299 58974386647 -55 40715123538100 57254872107 -56 40756697196452 59214245666 -57 40388351638364 60135823463 -58 40607150623932 53295222550 -59 40799783862688 54850380995 -60 41085552637672 55260978656 -61 40406189914954 58478426264 -62 40723714534227 54870256138 -63 40594766265305 57541909382 -64 47966186930606 563254758724 -65 40950398764685 310547129324 -66 39773685629470 297956013630 -67 39799299693868 314333221636 -68 39962809136735 301425507083 -69 39621597321912 307849203392 -70 39576312003193 302818464346 -71 39306677714061 300708730620 -72 37450385749152 201706674463 -73 37262591956707 237643132530 -74 37867848418162 203202644049 -75 37583170923549 200889116684 -76 37565074790371 211272183842 -77 37490674520644 211346947120 -78 37627356285158 204440036165 -79 37841963931932 214268740497 -80 36467248910690 79712665639 -81 37168392893625 75090730135 -82 37299551044970 78826984017 -83 37765703017416 80223883420 -84 37799573327332 74309961837 -85 38049895238765 73501632933 -86 37985869086888 84726122364 -87 37696241330128 89432904192 -88 38292683839783 86169574674 -89 38120890685615 61631022854 -90 38045845683675 63064271269 -91 38182343881607 71350572902 -92 37729375994055 79603442903 -93 38074905443126 80632248259 -94 37912923241296 73143984225 -95 37937307782462 68368595815 -96 36325058440018 93212419757 -97 37157290185847 79875769874 -98 37403692187351 71939175528 -99 38153199365119 61279926839 -100 37880374831086 80531076242 -101 37651504251556 97919090064 -102 37739944955714 62379356509 -103 37627835848111 73687439569 -104 37903369827551 65237344029 -105 37981555620129 88874846168 -106 37848203152449 73032242506 -107 37990323769817 66715221936 -108 38347560243684 75213471783 -109 37887959856632 85339287415 -110 37937702600487 70516346051 -111 38221455324656 80265423715 -112 37035158753494 55020848133 -113 37519359498531 68103451501 -114 38185495941617 56282008328 -115 38947633192125 57420205172 -116 38497334926906 51517654341 -117 38621231881393 53668755335 -118 38817038222494 58390679981 -119 38911615674430 59254129440 -120 38384669525324 60781018005 -121 38597980524270 60445939750 -122 38477107776771 62771597837 -123 38483564156449 57294449683 -124 38471547310020 57716404007 -125 38827188957783 55643587481 -126 38554167083817 53593212339 -127 38870461161179 52866253864 diff --git a/java-util/src/test/resources/keystore.jks b/java-util/src/test/resources/keystore.jks deleted file mode 100644 index a98918283982d72a7bd8cf97fa80219f04b3d757..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2331 zcmd5-`8N~{7oHh|#x$rI`wU~rl5OT4hDcc=vNl7O$kvpx4YMdoGPX$GL>RJ1Bc&)J z8cSh@kX`o5ny9oO$*0bFzwiAMz8~%n&-0vn&ppq1&b_~ue=P$50MJeW{}d#U;_Dsg zN1@Som}4e;TQvXxeh`KU{)G`15K%_WyF0IZtH;5EtnS~tp&D*yc>CgT(^lb-p5H6gLaDyGzS00ddC7Fw1sE~lk_gs- z;Jm2RzKS z|9sR0c`=}LI}Ro}`0chRJDrs<_nO~fe?s%SH`~3%H}u}r>Wj*lV#l7(n=^h^GZ|3| zuM&NVskU{286{cz0){t&E`EDFNtyfpQSzYTGI6;B>?p6qzpM^-s8^A%m+J(ZC=@4k zIU0>#8);H+{J`UT*in;h8*0?1+V>3qk-a&z`_>s!&5_4n2{Xc`TxF)TaX?Np^qEnf zu;~{BmR_WoYH~7VP(Hg0bhpu-Uw~5I}Xi7+3xEsmjFq7?9({|Yw8LsS~1_Y-PbCFyB>Ikj~M&|~?v z${hC-A!BKW4#dNZZ5B3ZCoHyC6Uc`&X$Co9o9?yp!V-5AHS*CBfdRm)99GVSQ z%@N|G(_1HSOQ=+SA@;5I>Alh{*3*7Gr>O4oQG8=%-oe6rn88}tN-2c(Jj}KneGruh z6}ks!EJQilX+Bh#Wst=y*d4Duvc&He1`jMD}QbV4QeYRg}85nc*S zXPoq?-_p$QnW_7P@|sR1?(-~_NcIXz$w+v%@uI)OBq^IzpgcO)iz^b{ZSj#k)3Pi1 zmQ5ez#En-=3Z3Vj3tD(;y*I6w+GUklR2BH+znTKI?SEDUU zY`f9=m~HaxWOy=9)rMfO9s`6Y*cz_oNga=_U?A1orNwH?)h$$^sAC zftgR=WsAlV2SmS6|K^0? z@IM?4O*w<6?{qs;sDY=kXpHP{6$+QIr=BKJ{}C;`0|QCHXnXH~e`fN*|993gvJxSEn?pe_dYU-*B!HxsDvZ;N+65FZmL0>ChVLLep(2za(}^SkwM;kG1c zc%`?yg;kRk-?3!0Nf_a5lo%h?KZ6(r2u^9p&>AHg;t=Fj~SgboW<%=rS8fsY;o@_w|%|FduCvrZ6?Ld(((7%`V z%npbAq3C5_J?!6eiU@a_F3)8gF{CCJYMKEn{CJ1HonnfC_<#Ulu{=f&gW5?2N*F8- zMznoFAFwBzxwzxKZa#*u4%jV>2>#o|ot*BN2n2v9H@cNHn&kcGE&Zje<*8ree6o_b z`|p)d9I>$(YWY$!!Evr;o6Hzvj!yVd-zdY}FywiyQ9nbyypLD4%sOLVNWL+~(~mP2 zcteM~fp01@#GMgo*NmBUxhhFP%TnHnjrY09@m2O>f-z#&4WrbE*(h06ijov{wq9b7 zr#G=>;Hbcadh0N+ob2~-nRMcn+WUk#x-t^WabNBIK) diff --git a/java-util/src/test/resources/log4j2.xml b/java-util/src/test/resources/log4j2.xml deleted file mode 100644 index 689cbbf6b1c2..000000000000 --- a/java-util/src/test/resources/log4j2.xml +++ /dev/null @@ -1,32 +0,0 @@ - - - - - - - - - - - - - - - diff --git a/java-util/src/test/resources/loremipsum.txt b/java-util/src/test/resources/loremipsum.txt deleted file mode 100644 index 699c202b3694..000000000000 --- a/java-util/src/test/resources/loremipsum.txt +++ /dev/null @@ -1,39 +0,0 @@ -Lorem ipsum dolor sit amet, consectetur adipiscing elit. Phasellus suscipit a est id maximus. Vivamus venenatis turpis eget ullamcorper tincidunt. Nam venenatis lorem ac condimentum imperdiet. Curabitur accumsan orci sed mollis elementum. Morbi quam augue, porttitor non lorem a, sollicitudin efficitur mi. Nunc et nulla mauris. Phasellus volutpat dignissim congue. Maecenas hendrerit, dolor sit amet rhoncus maximus, dolor tellus auctor purus, id molestie quam quam vitae arcu. Nunc nec fringilla ante. - -Duis at scelerisque est. Sed eget interdum turpis, nec pellentesque odio. Cras eu dapibus dolor, malesuada iaculis arcu. Integer placerat leo id convallis vestibulum. Aliquam dictum velit diam, in commodo libero vehicula at. Fusce vulputate, purus ac condimentum vulputate, odio ex commodo sem, in tincidunt urna diam porta justo. Sed non malesuada libero. Curabitur eget neque eu lorem porttitor cursus. Vestibulum massa nisi, eleifend sit amet faucibus a, interdum sed risus. Donec ultricies leo sed feugiat tincidunt. Pellentesque urna enim, pellentesque eget fringilla id, vestibulum ac magna. Vivamus a rhoncus purus, aliquam hendrerit ante. - -Curabitur erat ex, efficitur nec sollicitudin sed, venenatis ut eros. In elementum imperdiet sem quis venenatis. Duis id posuere ante. Integer laoreet dui ligula, ac fringilla sapien egestas at. Donec at venenatis arcu, eu imperdiet odio. Phasellus felis nisi, suscipit maximus convallis vitae, rutrum a quam. Donec in fringilla mauris, ac varius ipsum. Aliquam suscipit metus sit amet porta suscipit. Donec id vulputate nisi. Proin non consequat ipsum. Fusce sagittis, mi sit amet gravida pulvinar, neque ante posuere magna, eu placerat purus ligula a ex. Nam aliquam suscipit mi eu auctor. Nunc imperdiet ipsum quis lectus gravida, id accumsan orci pretium. - -Phasellus mollis ac tortor a tempus. Integer sed augue convallis, dictum libero a, consectetur augue. Sed vitae lectus eros. Sed vel augue dignissim, vulputate diam viverra, hendrerit neque. Nam id magna vehicula, bibendum nisi id, mattis turpis. Cras consequat at metus at volutpat. Maecenas sed eleifend felis, at euismod nulla. Donec tincidunt ex a lacus tincidunt, rhoncus suscipit ex tincidunt. Sed sed justo nec orci pellentesque sollicitudin. - -Donec tortor ligula, mollis vel euismod ut, semper vitae felis. Curabitur eget est ac mauris ullamcorper facilisis. Integer condimentum, arcu eu viverra interdum, diam purus fringilla felis, non gravida ipsum lectus ac purus. Phasellus consectetur, odio at condimentum ultrices, massa ligula tempus massa, id tempus quam nisl scelerisque odio. Cras elementum mattis turpis venenatis euismod. Quisque vestibulum eros nulla, sit amet pellentesque erat rutrum ac. Pellentesque eu dolor id tortor ullamcorper consectetur. Curabitur venenatis sapien vitae nulla euismod dignissim. Donec viverra, nisl sit amet faucibus mattis, felis mi euismod erat, sed blandit erat justo ac nisi. - -Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin bibendum molestie lorem eget aliquet. Nulla hendrerit ligula non diam finibus, vitae placerat metus condimentum. In eget quam ullamcorper est facilisis tempus eget nec magna. Nulla nec metus non nisl semper luctus. Etiam tortor nisl, mattis vitae ornare vel, facilisis at metus. Fusce lobortis lorem sem, sed porttitor nisl gravida non. Nullam massa nibh, pellentesque nec porttitor non, vestibulum at mauris. Praesent condimentum arcu ligula, condimentum tristique nulla euismod a. Aliquam urna massa, laoreet et lacus in, eleifend euismod eros. In dignissim elit quis purus vehicula viverra. Etiam in molestie lectus. Nunc convallis nec erat fringilla consequat. Pellentesque nec massa sed mauris venenatis lacinia. - -Nullam commodo efficitur magna, nec dictum justo maximus iaculis. Ut pellentesque urna sit amet iaculis viverra. Duis a tristique nisi. Sed cursus vitae felis eu tincidunt. Vestibulum euismod porttitor libero, eu euismod magna feugiat at. In egestas orci finibus nulla faucibus cursus. Praesent at placerat nulla. Duis nec molestie velit. Nulla facilisi. Donec at ex ut ex maximus fringilla et ac mi. Proin massa nibh, pellentesque vitae dolor eu, aliquet tempus libero. Donec vel turpis lorem. - -Quisque ac velit a turpis semper gravida. Vestibulum at elit non dui pulvinar porta ut eu felis. Etiam felis ante, tempus at turpis ac, finibus feugiat arcu. Aenean porttitor sed sapien nec feugiat. In egestas, tortor vel pulvinar hendrerit, felis massa euismod lectus, non tincidunt ipsum ex ac dolor. Praesent scelerisque posuere enim varius aliquam. Nam imperdiet massa ac vehicula luctus. Cras auctor sagittis lacus non pretium. - -In vestibulum pretium euismod. Curabitur sagittis magna turpis, sed bibendum tellus facilisis a. Proin a eros nec justo vulputate posuere vel venenatis justo. Suspendisse nisl felis, eleifend in est vel, blandit pharetra quam. Suspendisse ac velit metus. Vivamus pharetra imperdiet dolor at faucibus. Nunc ultricies id mauris pellentesque lacinia. Nam pretium velit nec augue porttitor placerat non eget mauris. Nulla dapibus aliquam mattis. Aliquam at vestibulum ex. Cras viverra, turpis in ornare venenatis, velit lectus imperdiet dolor, eget tempus odio odio sit amet lacus. Mauris pulvinar ut lorem non sagittis. Aliquam in sapien at erat dictum rutrum. - -Etiam suscipit malesuada dapibus. Maecenas pretium, tortor faucibus interdum condimentum, orci velit laoreet felis, sed feugiat purus ex nec erat. In ut elementum dolor, sit amet venenatis tortor. Vestibulum laoreet feugiat odio, at consequat sapien auctor sed. Proin a velit aliquet, pulvinar metus id, scelerisque orci. Morbi vitae elit sed nisl pharetra maximus. Praesent aliquet risus nisi, ac gravida tellus convallis a. Nunc sollicitudin urna feugiat, cursus metus malesuada, posuere ipsum. Quisque et nisl a nulla posuere imperdiet. - -Donec porttitor lorem ex, non volutpat tortor consequat in. Sed mattis, nulla a elementum placerat, velit enim malesuada tortor, ut sollicitudin ligula dolor efficitur risus. Nullam vel mollis urna. Duis vestibulum turpis neque, ut facilisis odio suscipit sed. Cras tincidunt ullamcorper nulla, vitae commodo dolor lacinia nec. Nulla aliquam posuere lectus vehicula varius. Nam ultrices eros quis vulputate blandit. Phasellus commodo mi ac aliquet bibendum. Ut quis venenatis purus, eget pellentesque diam. - -Aenean non nunc neque. Ut mattis metus massa, ac faucibus elit porttitor porttitor. Curabitur sagittis finibus enim ut varius. Donec vitae erat lacus. Vestibulum gravida gravida justo feugiat condimentum. Morbi fringilla id nisi ut sodales. Proin mollis congue hendrerit. Maecenas convallis arcu ut semper dapibus. - -Sed consectetur dignissim metus, ut laoreet ipsum pharetra vel. Sed tristique semper sapien in congue. Nullam imperdiet consequat massa non cursus. Etiam ac cursus mauris. Maecenas consequat sollicitudin dignissim. Sed lobortis, ex non luctus ornare, tortor nibh scelerisque urna, quis congue sem orci non odio. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Nam porta non est ut accumsan. Nulla blandit vehicula ex, ac tristique nulla sodales vitae. Morbi est ligula, hendrerit et nisi ac, auctor congue sapien. Vestibulum luctus libero id enim pulvinar molestie. Aliquam faucibus malesuada lacus, nec luctus sem consectetur ac. Proin sit amet arcu lorem. Aenean diam libero, posuere ornare nulla quis, euismod tempor mi. Praesent sagittis urna sit amet diam ultrices, quis pharetra orci dignissim. Interdum et malesuada fames ac ante ipsum primis in faucibus. - -Aliquam maximus diam sed purus tempus, nec sollicitudin mi laoreet. Quisque pretium vulputate magna a ultrices. Etiam felis odio, egestas at nisi eget, malesuada dignissim est. Pellentesque ac blandit sapien, et lacinia magna. Donec malesuada consectetur quam sit amet sagittis. Donec sed pulvinar dui. Nulla facilisis gravida cursus. Integer eleifend ullamcorper nunc eget blandit. Cras iaculis lacinia neque, sed placerat ex luctus a. Vestibulum molestie rutrum tellus nec pulvinar. Duis arcu neque, semper et dignissim ut, auctor eu turpis. Nullam velit est, feugiat id mollis vitae, hendrerit auctor est. - -Maecenas quis massa id sem vulputate accumsan. Sed sed faucibus erat. Duis consequat ligula magna, at faucibus sem efficitur ut. Interdum et malesuada fames ac ante ipsum primis in faucibus. Nam molestie orci eu magna congue, ut viverra ligula iaculis. Fusce mollis scelerisque nulla, vel viverra augue dignissim non. Nullam a sem a urna pharetra pretium. In vel ligula suscipit, maximus quam quis, iaculis risus. Pellentesque tristique molestie pharetra. Proin porttitor purus vel sapien cursus, venenatis commodo lacus mollis. Duis pretium augue imperdiet venenatis dignissim. Integer est arcu, vestibulum et lacus vitae, aliquam fermentum magna. - -Pellentesque faucibus molestie eros ac molestie. Integer sed risus nunc. Donec viverra volutpat metus, at sagittis ipsum vehicula in. Quisque semper justo semper odio aliquam mollis. Nunc auctor eros viverra enim vulputate efficitur. Nulla placerat elit lectus, sit amet facilisis magna tincidunt eget. Etiam mollis ex vel felis maximus, ut auctor nunc dignissim. Nunc cursus, lacus non lobortis sagittis, eros elit bibendum ex, vitae commodo elit ligula id nibh. - -Ut iaculis ornare lacinia. Donec pharetra tellus ipsum, sollicitudin finibus justo pharetra ut. Phasellus feugiat sem eget neque congue pharetra. Maecenas cursus in velit ut hendrerit. Fusce non pellentesque ex. Aliquam erat volutpat. Vestibulum eleifend egestas arcu in varius. Aliquam egestas nisl metus, eu sodales orci porttitor fermentum. In volutpat, nulla vitae sodales laoreet, augue lectus molestie quam, nec posuere metus lectus at orci. Phasellus porttitor orci a erat sodales, nec convallis diam venenatis. Sed molestie id lorem eu ultricies. - -Fusce mattis tempus pulvinar. Sed condimentum vulputate sem, nec efficitur magna molestie in. Nulla mattis odio at nibh dignissim, in hendrerit orci sodales. Maecenas tellus tortor, vulputate at pulvinar ac, luctus quis erat. Curabitur orci ex, pharetra quis est eu, aliquam pharetra augue. Phasellus magna neque, tempus gravida interdum sit amet, eleifend non velit. Morbi fermentum congue suscipit. Etiam mattis mattis dui sed consectetur. Duis purus dolor, convallis eget odio et, iaculis vestibulum neque. Etiam sagittis eros felis, ac dapibus tortor pharetra eget. Quisque ullamcorper purus sed magna cursus pharetra. - -Nam vitae eleifend nibh, ut laoreet nisl. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin vestibulum quam mi, ac lacinia libero aliquet nec. Nunc aliquam quam velit, in consequat ex aliquet at. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Sed pellentesque, nisl nec pellentesque blandit, lorem turpis blandit quam, sed scelerisque sapien sem id quam. Maecenas vehicula a diam in pretium. - -In massa lectus, elementum et laoreet sed, elementum et est. Sed et eleifend mi. Pellentesque urna elit, interdum eget nibh a, scelerisque ornare leo. In lobortis vehicula lectus sit amet fringilla. In dapibus in mauris nec vehicula. Nullam massa mi, cursus id urna dignissim, venenatis mollis ligula. Curabitur fringilla nec orci at fringilla. \ No newline at end of file diff --git a/java-util/src/test/resources/proc.cgroups b/java-util/src/test/resources/proc.cgroups deleted file mode 100644 index 09eff7760532..000000000000 --- a/java-util/src/test/resources/proc.cgroups +++ /dev/null @@ -1,13 +0,0 @@ -#subsys_name hierarchy num_cgroups enabled -cpuset 4 1 1 -cpu 9 108 1 -cpuacct 9 108 1 -blkio 8 60 1 -memory 3 160 1 -devices 7 60 1 -freezer 6 52 1 -net_cls 2 1 1 -perf_event 10 1 1 -net_prio 2 1 1 -hugetlb 5 1 1 -pids 11 63 1 diff --git a/java-util/src/test/resources/proc.mounts b/java-util/src/test/resources/proc.mounts deleted file mode 100644 index c1b3ee74fe3a..000000000000 --- a/java-util/src/test/resources/proc.mounts +++ /dev/null @@ -1,36 +0,0 @@ -sysfs /sys sysfs rw,seclabel,nosuid,nodev,noexec,relatime 0 0 -proc /proc proc rw,nosuid,nodev,noexec,relatime 0 0 -devtmpfs /dev devtmpfs rw,seclabel,nosuid,size=1007354668k,nr_inodes=251838667,mode=755 0 0 -securityfs /sys/kernel/security securityfs rw,nosuid,nodev,noexec,relatime 0 0 -tmpfs /dev/shm tmpfs rw,seclabel,nosuid,nodev 0 0 -devpts /dev/pts devpts rw,seclabel,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000 0 0 -tmpfs /run tmpfs rw,seclabel,nosuid,nodev,mode=755 0 0 -tmpfs /sys/fs/cgroup tmpfs ro,seclabel,nosuid,nodev,noexec,mode=755 0 0 -cgroup /sys/fs/cgroup/systemd cgroup rw,nosuid,nodev,noexec,relatime,xattr,release_agent=/usr/lib/systemd/systemd-cgroups-agent,name=systemd 0 0 -pstore /sys/fs/pstore pstore rw,seclabel,nosuid,nodev,noexec,relatime 0 0 -cgroup /sys/fs/cgroup/net_cls,net_prio cgroup rw,nosuid,nodev,noexec,relatime,net_cls,net_prio 0 0 -cgroup /sys/fs/cgroup/memory cgroup rw,nosuid,nodev,noexec,relatime,memory 0 0 -cgroup /sys/fs/cgroup/cpuset cgroup rw,nosuid,nodev,noexec,relatime,cpuset 0 0 -cgroup /sys/fs/cgroup/hugetlb cgroup rw,nosuid,nodev,noexec,relatime,hugetlb 0 0 -cgroup /sys/fs/cgroup/freezer cgroup rw,nosuid,nodev,noexec,relatime,freezer 0 0 -cgroup /sys/fs/cgroup/devices cgroup rw,nosuid,nodev,noexec,relatime,devices 0 0 -cgroup /sys/fs/cgroup/blkio cgroup rw,nosuid,nodev,noexec,relatime,blkio 0 0 -cgroup /sys/fs/cgroup/cpu,cpuacct cgroup rw,nosuid,nodev,noexec,relatime,cpu,cpuacct 0 0 -cgroup /sys/fs/cgroup/perf_event cgroup rw,nosuid,nodev,noexec,relatime,perf_event 0 0 -cgroup /sys/fs/cgroup/pids cgroup rw,nosuid,nodev,noexec,relatime,pids 0 0 -/dev/xvda9 / ext4 rw,seclabel,relatime,data=ordered 0 0 -/dev/mapper/usr /usr ext4 ro,seclabel,relatime,block_validity,delalloc,barrier,user_xattr,acl 0 0 -selinuxfs /sys/fs/selinux selinuxfs rw,relatime 0 0 -tmpfs /media tmpfs rw,seclabel,nosuid,nodev,noexec,relatime 0 0 -systemd-1 /boot autofs rw,relatime,fd=34,pgrp=1,timeout=0,minproto=5,maxproto=5,direct,pipe_ino=18428 0 0 -xenfs /proc/xen xenfs rw,relatime 0 0 -tmpfs /tmp tmpfs rw,seclabel,nosuid,nodev 0 0 -hugetlbfs /dev/hugepages hugetlbfs rw,seclabel,relatime 0 0 -systemd-1 /proc/sys/fs/binfmt_misc autofs rw,relatime,fd=38,pgrp=1,timeout=0,minproto=5,maxproto=5,direct,pipe_ino=140296 0 0 -debugfs /sys/kernel/debug debugfs rw,seclabel,relatime 0 0 -mqueue /dev/mqueue mqueue rw,seclabel,relatime 0 0 -/dev/xvda6 /usr/share/oem ext4 rw,seclabel,nodev,relatime,commit=600,data=ordered 0 0 -/dev/xvda1 /boot vfat rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=ascii,shortname=mixed,errors=remount-ro 0 0 -/dev/md127 /mnt xfs rw,seclabel,noatime,attr2,inode64,sunit=1024,swidth=2048,noquota 0 0 -/dev/md126 /ebs xfs rw,seclabel,noatime,attr2,inode64,sunit=1024,swidth=16384,noquota 0 0 -/dev/xvda9 /var/lib/docker/overlay ext4 rw,seclabel,relatime,data=ordered 0 0 diff --git a/java-util/src/test/resources/proc.pid.cgroup b/java-util/src/test/resources/proc.pid.cgroup deleted file mode 100644 index 139f81b29c8f..000000000000 --- a/java-util/src/test/resources/proc.pid.cgroup +++ /dev/null @@ -1,11 +0,0 @@ -11:pids:/system.slice/mesos-agent-druid.service -10:perf_event:/ -9:cpu,cpuacct:/system.slice/mesos-agent-druid.service/f12ba7e0-fa16-462e-bb9d-652ccc27f0ee -8:blkio:/system.slice/mesos-agent-druid.service -7:devices:/system.slice/mesos-agent-druid.service -6:freezer:/system.slice/mesos-agent-druid.service/f12ba7e0-fa16-462e-bb9d-652ccc27f0ee -5:hugetlb:/ -4:cpuset:/ -3:memory:/system.slice/mesos-agent-druid.service -2:net_cls,net_prio:/ -1:name=systemd:/mesos_executors.slice diff --git a/pom.xml b/pom.xml index 77b17ff454de..1c05e641e052 100644 --- a/pom.xml +++ b/pom.xml @@ -93,7 +93,6 @@ - api common examples indexing-hadoop @@ -105,7 +104,6 @@ integration-tests benchmarks aws-common - java-util extendedset hll diff --git a/processing/pom.xml b/processing/pom.xml index 220abc4192f3..ce1983c5e5cc 100644 --- a/processing/pom.xml +++ b/processing/pom.xml @@ -35,11 +35,6 @@ druid-common ${project.parent.version} - - io.druid - java-util - ${project.parent.version} - io.druid druid-hll diff --git a/processing/src/main/java/io/druid/segment/column/ValueType.java b/processing/src/main/java/io/druid/segment/column/ValueType.java index d7154eaaf0b7..d697e7d7cb77 100644 --- a/processing/src/main/java/io/druid/segment/column/ValueType.java +++ b/processing/src/main/java/io/druid/segment/column/ValueType.java @@ -30,7 +30,7 @@ /** * Should be the same as {@link io.druid.data.input.impl.DimensionSchema.ValueType}. - * TODO merge them when druid-api is merged back into the main repo + * TODO merge them when druid-common is merged with druid-processing into a single druid-core module. */ public enum ValueType { diff --git a/processing/src/main/java/io/druid/segment/incremental/IncrementalIndex.java b/processing/src/main/java/io/druid/segment/incremental/IncrementalIndex.java index 332781b9beeb..bbe39903fde3 100644 --- a/processing/src/main/java/io/druid/segment/incremental/IncrementalIndex.java +++ b/processing/src/main/java/io/druid/segment/incremental/IncrementalIndex.java @@ -103,7 +103,7 @@ public abstract class IncrementalIndex extends AbstractIndex imp private volatile DateTime maxIngestedEventTime; // Used to discover ValueType based on the class of values in a row - // Also used to convert between the duplicate ValueType enums in DimensionSchema (druid-api) and main druid. + // Also used to convert between the duplicate ValueType enums in DimensionSchema (druid-common) and druid-processing. public static final Map TYPE_MAP = ImmutableMap.builder() .put(Long.class, ValueType.LONG) .put(Double.class, ValueType.DOUBLE) diff --git a/server/pom.xml b/server/pom.xml index 0b9a07a3b9ef..31116cad32ea 100644 --- a/server/pom.xml +++ b/server/pom.xml @@ -45,11 +45,6 @@ druid-console 0.0.2 - - io.druid - java-util - ${project.parent.version} - commons-cli commons-cli diff --git a/server/src/main/java/io/druid/server/emitter/HttpEmitterSSLClientConfig.java b/server/src/main/java/io/druid/server/emitter/HttpEmitterSSLClientConfig.java index 0086160e9021..c79d257a3171 100644 --- a/server/src/main/java/io/druid/server/emitter/HttpEmitterSSLClientConfig.java +++ b/server/src/main/java/io/druid/server/emitter/HttpEmitterSSLClientConfig.java @@ -24,15 +24,7 @@ import io.druid.metadata.PasswordProvider; /** - * This is kept separate from {@link io.druid.java.util.emitter.core.HttpEmitterConfig} because {@link PasswordProvider} - * is currently located in druid-api. The java-util module which contains HttpEmitterConfig cannot import - * PasswordProvider because this would introduce a circular dependence between java-util and druid-api. - * - * PasswordProvider could be moved to java-util, but PasswordProvider is annotated with - * {@link io.druid.guice.annotations.ExtensionPoint}, which would also have to be moved. - * - * It would be easier to resolve these issues and merge the TLS-related config with HttpEmitterConfig once - * https://github.com/druid-io/druid/issues/4312 is resolved, so the TLS config is kept separate for now. + * TODO merge with {@link io.druid.java.util.emitter.core.HttpEmitterConfig} */ public class HttpEmitterSSLClientConfig { From d4cae2e7bcbfde518b43afb3aa4578cc396910b2 Mon Sep 17 00:00:00 2001 From: leventov Date: Wed, 14 Mar 2018 22:46:44 +0100 Subject: [PATCH 2/2] Restore resources --- common/src/test/resources/cpuacct.usage_all | 129 ++++++++++++++++++++ common/src/test/resources/keystore.jks | Bin 0 -> 2331 bytes common/src/test/resources/log4j2.xml | 35 ++++++ common/src/test/resources/loremipsum.txt | 39 ++++++ common/src/test/resources/proc.cgroups | 13 ++ common/src/test/resources/proc.mounts | 36 ++++++ common/src/test/resources/proc.pid.cgroup | 11 ++ 7 files changed, 263 insertions(+) create mode 100644 common/src/test/resources/cpuacct.usage_all create mode 100644 common/src/test/resources/keystore.jks create mode 100644 common/src/test/resources/log4j2.xml create mode 100644 common/src/test/resources/loremipsum.txt create mode 100644 common/src/test/resources/proc.cgroups create mode 100644 common/src/test/resources/proc.mounts create mode 100644 common/src/test/resources/proc.pid.cgroup diff --git a/common/src/test/resources/cpuacct.usage_all b/common/src/test/resources/cpuacct.usage_all new file mode 100644 index 000000000000..f3d1c534708a --- /dev/null +++ b/common/src/test/resources/cpuacct.usage_all @@ -0,0 +1,129 @@ +cpu user system +0 7344294132655 4583688852335 +1 28183572804378 385888457233 +2 29552215219002 370465239852 +3 29478124053329 363572894675 +4 29829248571038 334329517808 +5 30290864470719 327800567541 +6 30561719193413 289395249935 +7 30638606697446 302853990791 +8 39251561450889 255558344564 +9 39082643428276 274043522998 +10 38829852195583 256014012773 +11 39158341842449 253276920707 +12 39490263697181 257971375228 +13 39363774325162 244926573383 +14 39569806302164 240692265222 +15 39410558504372 241820386298 +16 44907796060505 74203786299 +17 42522297123640 79965589957 +18 41920625622542 73735621808 +19 40593391967420 74851270413 +20 40350585953295 84689908189 +21 40139554930678 69618323977 +22 40019783380923 76316055513 +23 40182686097717 87434816528 +24 39778858132385 80680588218 +25 40252938541440 70083776283 +26 40476150948365 59931280896 +27 40277874584618 67678277638 +28 39938509407084 85713335794 +29 39914644718371 74594785949 +30 40010393213659 69367790895 +31 39938252119551 68817875729 +32 44958993952996 83346318662 +33 42967015146867 80872459027 +34 41742610896758 69882000641 +35 40751067975683 59230207177 +36 40390633464986 80985355290 +37 40143331504478 88305162767 +38 40486014164571 79610055475 +39 40565630824649 77097429500 +40 39976774290845 72748340407 +41 39942348143441 77647202034 +42 40149234675554 61982641775 +43 39895306827546 63292828955 +44 40062736204343 71501429739 +45 39208930836306 101050648913 +46 40098687814379 67603152691 +47 39803234124100 85242844849 +48 44894501101599 53320735254 +49 43470418903266 59480233446 +50 41844924510711 53738738094 +51 41137017142223 50064771695 +52 40958534485692 49322497528 +53 40996749346830 60437383202 +54 40722256755299 58974386647 +55 40715123538100 57254872107 +56 40756697196452 59214245666 +57 40388351638364 60135823463 +58 40607150623932 53295222550 +59 40799783862688 54850380995 +60 41085552637672 55260978656 +61 40406189914954 58478426264 +62 40723714534227 54870256138 +63 40594766265305 57541909382 +64 47966186930606 563254758724 +65 40950398764685 310547129324 +66 39773685629470 297956013630 +67 39799299693868 314333221636 +68 39962809136735 301425507083 +69 39621597321912 307849203392 +70 39576312003193 302818464346 +71 39306677714061 300708730620 +72 37450385749152 201706674463 +73 37262591956707 237643132530 +74 37867848418162 203202644049 +75 37583170923549 200889116684 +76 37565074790371 211272183842 +77 37490674520644 211346947120 +78 37627356285158 204440036165 +79 37841963931932 214268740497 +80 36467248910690 79712665639 +81 37168392893625 75090730135 +82 37299551044970 78826984017 +83 37765703017416 80223883420 +84 37799573327332 74309961837 +85 38049895238765 73501632933 +86 37985869086888 84726122364 +87 37696241330128 89432904192 +88 38292683839783 86169574674 +89 38120890685615 61631022854 +90 38045845683675 63064271269 +91 38182343881607 71350572902 +92 37729375994055 79603442903 +93 38074905443126 80632248259 +94 37912923241296 73143984225 +95 37937307782462 68368595815 +96 36325058440018 93212419757 +97 37157290185847 79875769874 +98 37403692187351 71939175528 +99 38153199365119 61279926839 +100 37880374831086 80531076242 +101 37651504251556 97919090064 +102 37739944955714 62379356509 +103 37627835848111 73687439569 +104 37903369827551 65237344029 +105 37981555620129 88874846168 +106 37848203152449 73032242506 +107 37990323769817 66715221936 +108 38347560243684 75213471783 +109 37887959856632 85339287415 +110 37937702600487 70516346051 +111 38221455324656 80265423715 +112 37035158753494 55020848133 +113 37519359498531 68103451501 +114 38185495941617 56282008328 +115 38947633192125 57420205172 +116 38497334926906 51517654341 +117 38621231881393 53668755335 +118 38817038222494 58390679981 +119 38911615674430 59254129440 +120 38384669525324 60781018005 +121 38597980524270 60445939750 +122 38477107776771 62771597837 +123 38483564156449 57294449683 +124 38471547310020 57716404007 +125 38827188957783 55643587481 +126 38554167083817 53593212339 +127 38870461161179 52866253864 diff --git a/common/src/test/resources/keystore.jks b/common/src/test/resources/keystore.jks new file mode 100644 index 0000000000000000000000000000000000000000..a98918283982d72a7bd8cf97fa80219f04b3d757 GIT binary patch literal 2331 zcmd5-`8N~{7oHh|#x$rI`wU~rl5OT4hDcc=vNl7O$kvpx4YMdoGPX$GL>RJ1Bc&)J z8cSh@kX`o5ny9oO$*0bFzwiAMz8~%n&-0vn&ppq1&b_~ue=P$50MJeW{}d#U;_Dsg zN1@Som}4e;TQvXxeh`KU{)G`15K%_WyF0IZtH;5EtnS~tp&D*yc>CgT(^lb-p5H6gLaDyGzS00ddC7Fw1sE~lk_gs- z;Jm2RzKS z|9sR0c`=}LI}Ro}`0chRJDrs<_nO~fe?s%SH`~3%H}u}r>Wj*lV#l7(n=^h^GZ|3| zuM&NVskU{286{cz0){t&E`EDFNtyfpQSzYTGI6;B>?p6qzpM^-s8^A%m+J(ZC=@4k zIU0>#8);H+{J`UT*in;h8*0?1+V>3qk-a&z`_>s!&5_4n2{Xc`TxF)TaX?Np^qEnf zu;~{BmR_WoYH~7VP(Hg0bhpu-Uw~5I}Xi7+3xEsmjFq7?9({|Yw8LsS~1_Y-PbCFyB>Ikj~M&|~?v z${hC-A!BKW4#dNZZ5B3ZCoHyC6Uc`&X$Co9o9?yp!V-5AHS*CBfdRm)99GVSQ z%@N|G(_1HSOQ=+SA@;5I>Alh{*3*7Gr>O4oQG8=%-oe6rn88}tN-2c(Jj}KneGruh z6}ks!EJQilX+Bh#Wst=y*d4Duvc&He1`jMD}QbV4QeYRg}85nc*S zXPoq?-_p$QnW_7P@|sR1?(-~_NcIXz$w+v%@uI)OBq^IzpgcO)iz^b{ZSj#k)3Pi1 zmQ5ez#En-=3Z3Vj3tD(;y*I6w+GUklR2BH+znTKI?SEDUU zY`f9=m~HaxWOy=9)rMfO9s`6Y*cz_oNga=_U?A1orNwH?)h$$^sAC zftgR=WsAlV2SmS6|K^0? z@IM?4O*w<6?{qs;sDY=kXpHP{6$+QIr=BKJ{}C;`0|QCHXnXH~e`fN*|993gvJxSEn?pe_dYU-*B!HxsDvZ;N+65FZmL0>ChVLLep(2za(}^SkwM;kG1c zc%`?yg;kRk-?3!0Nf_a5lo%h?KZ6(r2u^9p&>AHg;t=Fj~SgboW<%=rS8fsY;o@_w|%|FduCvrZ6?Ld(((7%`V z%npbAq3C5_J?!6eiU@a_F3)8gF{CCJYMKEn{CJ1HonnfC_<#Ulu{=f&gW5?2N*F8- zMznoFAFwBzxwzxKZa#*u4%jV>2>#o|ot*BN2n2v9H@cNHn&kcGE&Zje<*8ree6o_b z`|p)d9I>$(YWY$!!Evr;o6Hzvj!yVd-zdY}FywiyQ9nbyypLD4%sOLVNWL+~(~mP2 zcteM~fp01@#GMgo*NmBUxhhFP%TnHnjrY09@m2O>f-z#&4WrbE*(h06ijov{wq9b7 zr#G=>;Hbcadh0N+ob2~-nRMcn+WUk#x-t^WabNBIK) literal 0 HcmV?d00001 diff --git a/common/src/test/resources/log4j2.xml b/common/src/test/resources/log4j2.xml new file mode 100644 index 000000000000..625f9fe1516e --- /dev/null +++ b/common/src/test/resources/log4j2.xml @@ -0,0 +1,35 @@ + + + + + + + + + + + + + + + + + + diff --git a/common/src/test/resources/loremipsum.txt b/common/src/test/resources/loremipsum.txt new file mode 100644 index 000000000000..699c202b3694 --- /dev/null +++ b/common/src/test/resources/loremipsum.txt @@ -0,0 +1,39 @@ +Lorem ipsum dolor sit amet, consectetur adipiscing elit. Phasellus suscipit a est id maximus. Vivamus venenatis turpis eget ullamcorper tincidunt. Nam venenatis lorem ac condimentum imperdiet. Curabitur accumsan orci sed mollis elementum. Morbi quam augue, porttitor non lorem a, sollicitudin efficitur mi. Nunc et nulla mauris. Phasellus volutpat dignissim congue. Maecenas hendrerit, dolor sit amet rhoncus maximus, dolor tellus auctor purus, id molestie quam quam vitae arcu. Nunc nec fringilla ante. + +Duis at scelerisque est. Sed eget interdum turpis, nec pellentesque odio. Cras eu dapibus dolor, malesuada iaculis arcu. Integer placerat leo id convallis vestibulum. Aliquam dictum velit diam, in commodo libero vehicula at. Fusce vulputate, purus ac condimentum vulputate, odio ex commodo sem, in tincidunt urna diam porta justo. Sed non malesuada libero. Curabitur eget neque eu lorem porttitor cursus. Vestibulum massa nisi, eleifend sit amet faucibus a, interdum sed risus. Donec ultricies leo sed feugiat tincidunt. Pellentesque urna enim, pellentesque eget fringilla id, vestibulum ac magna. Vivamus a rhoncus purus, aliquam hendrerit ante. + +Curabitur erat ex, efficitur nec sollicitudin sed, venenatis ut eros. In elementum imperdiet sem quis venenatis. Duis id posuere ante. Integer laoreet dui ligula, ac fringilla sapien egestas at. Donec at venenatis arcu, eu imperdiet odio. Phasellus felis nisi, suscipit maximus convallis vitae, rutrum a quam. Donec in fringilla mauris, ac varius ipsum. Aliquam suscipit metus sit amet porta suscipit. Donec id vulputate nisi. Proin non consequat ipsum. Fusce sagittis, mi sit amet gravida pulvinar, neque ante posuere magna, eu placerat purus ligula a ex. Nam aliquam suscipit mi eu auctor. Nunc imperdiet ipsum quis lectus gravida, id accumsan orci pretium. + +Phasellus mollis ac tortor a tempus. Integer sed augue convallis, dictum libero a, consectetur augue. Sed vitae lectus eros. Sed vel augue dignissim, vulputate diam viverra, hendrerit neque. Nam id magna vehicula, bibendum nisi id, mattis turpis. Cras consequat at metus at volutpat. Maecenas sed eleifend felis, at euismod nulla. Donec tincidunt ex a lacus tincidunt, rhoncus suscipit ex tincidunt. Sed sed justo nec orci pellentesque sollicitudin. + +Donec tortor ligula, mollis vel euismod ut, semper vitae felis. Curabitur eget est ac mauris ullamcorper facilisis. Integer condimentum, arcu eu viverra interdum, diam purus fringilla felis, non gravida ipsum lectus ac purus. Phasellus consectetur, odio at condimentum ultrices, massa ligula tempus massa, id tempus quam nisl scelerisque odio. Cras elementum mattis turpis venenatis euismod. Quisque vestibulum eros nulla, sit amet pellentesque erat rutrum ac. Pellentesque eu dolor id tortor ullamcorper consectetur. Curabitur venenatis sapien vitae nulla euismod dignissim. Donec viverra, nisl sit amet faucibus mattis, felis mi euismod erat, sed blandit erat justo ac nisi. + +Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin bibendum molestie lorem eget aliquet. Nulla hendrerit ligula non diam finibus, vitae placerat metus condimentum. In eget quam ullamcorper est facilisis tempus eget nec magna. Nulla nec metus non nisl semper luctus. Etiam tortor nisl, mattis vitae ornare vel, facilisis at metus. Fusce lobortis lorem sem, sed porttitor nisl gravida non. Nullam massa nibh, pellentesque nec porttitor non, vestibulum at mauris. Praesent condimentum arcu ligula, condimentum tristique nulla euismod a. Aliquam urna massa, laoreet et lacus in, eleifend euismod eros. In dignissim elit quis purus vehicula viverra. Etiam in molestie lectus. Nunc convallis nec erat fringilla consequat. Pellentesque nec massa sed mauris venenatis lacinia. + +Nullam commodo efficitur magna, nec dictum justo maximus iaculis. Ut pellentesque urna sit amet iaculis viverra. Duis a tristique nisi. Sed cursus vitae felis eu tincidunt. Vestibulum euismod porttitor libero, eu euismod magna feugiat at. In egestas orci finibus nulla faucibus cursus. Praesent at placerat nulla. Duis nec molestie velit. Nulla facilisi. Donec at ex ut ex maximus fringilla et ac mi. Proin massa nibh, pellentesque vitae dolor eu, aliquet tempus libero. Donec vel turpis lorem. + +Quisque ac velit a turpis semper gravida. Vestibulum at elit non dui pulvinar porta ut eu felis. Etiam felis ante, tempus at turpis ac, finibus feugiat arcu. Aenean porttitor sed sapien nec feugiat. In egestas, tortor vel pulvinar hendrerit, felis massa euismod lectus, non tincidunt ipsum ex ac dolor. Praesent scelerisque posuere enim varius aliquam. Nam imperdiet massa ac vehicula luctus. Cras auctor sagittis lacus non pretium. + +In vestibulum pretium euismod. Curabitur sagittis magna turpis, sed bibendum tellus facilisis a. Proin a eros nec justo vulputate posuere vel venenatis justo. Suspendisse nisl felis, eleifend in est vel, blandit pharetra quam. Suspendisse ac velit metus. Vivamus pharetra imperdiet dolor at faucibus. Nunc ultricies id mauris pellentesque lacinia. Nam pretium velit nec augue porttitor placerat non eget mauris. Nulla dapibus aliquam mattis. Aliquam at vestibulum ex. Cras viverra, turpis in ornare venenatis, velit lectus imperdiet dolor, eget tempus odio odio sit amet lacus. Mauris pulvinar ut lorem non sagittis. Aliquam in sapien at erat dictum rutrum. + +Etiam suscipit malesuada dapibus. Maecenas pretium, tortor faucibus interdum condimentum, orci velit laoreet felis, sed feugiat purus ex nec erat. In ut elementum dolor, sit amet venenatis tortor. Vestibulum laoreet feugiat odio, at consequat sapien auctor sed. Proin a velit aliquet, pulvinar metus id, scelerisque orci. Morbi vitae elit sed nisl pharetra maximus. Praesent aliquet risus nisi, ac gravida tellus convallis a. Nunc sollicitudin urna feugiat, cursus metus malesuada, posuere ipsum. Quisque et nisl a nulla posuere imperdiet. + +Donec porttitor lorem ex, non volutpat tortor consequat in. Sed mattis, nulla a elementum placerat, velit enim malesuada tortor, ut sollicitudin ligula dolor efficitur risus. Nullam vel mollis urna. Duis vestibulum turpis neque, ut facilisis odio suscipit sed. Cras tincidunt ullamcorper nulla, vitae commodo dolor lacinia nec. Nulla aliquam posuere lectus vehicula varius. Nam ultrices eros quis vulputate blandit. Phasellus commodo mi ac aliquet bibendum. Ut quis venenatis purus, eget pellentesque diam. + +Aenean non nunc neque. Ut mattis metus massa, ac faucibus elit porttitor porttitor. Curabitur sagittis finibus enim ut varius. Donec vitae erat lacus. Vestibulum gravida gravida justo feugiat condimentum. Morbi fringilla id nisi ut sodales. Proin mollis congue hendrerit. Maecenas convallis arcu ut semper dapibus. + +Sed consectetur dignissim metus, ut laoreet ipsum pharetra vel. Sed tristique semper sapien in congue. Nullam imperdiet consequat massa non cursus. Etiam ac cursus mauris. Maecenas consequat sollicitudin dignissim. Sed lobortis, ex non luctus ornare, tortor nibh scelerisque urna, quis congue sem orci non odio. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Nam porta non est ut accumsan. Nulla blandit vehicula ex, ac tristique nulla sodales vitae. Morbi est ligula, hendrerit et nisi ac, auctor congue sapien. Vestibulum luctus libero id enim pulvinar molestie. Aliquam faucibus malesuada lacus, nec luctus sem consectetur ac. Proin sit amet arcu lorem. Aenean diam libero, posuere ornare nulla quis, euismod tempor mi. Praesent sagittis urna sit amet diam ultrices, quis pharetra orci dignissim. Interdum et malesuada fames ac ante ipsum primis in faucibus. + +Aliquam maximus diam sed purus tempus, nec sollicitudin mi laoreet. Quisque pretium vulputate magna a ultrices. Etiam felis odio, egestas at nisi eget, malesuada dignissim est. Pellentesque ac blandit sapien, et lacinia magna. Donec malesuada consectetur quam sit amet sagittis. Donec sed pulvinar dui. Nulla facilisis gravida cursus. Integer eleifend ullamcorper nunc eget blandit. Cras iaculis lacinia neque, sed placerat ex luctus a. Vestibulum molestie rutrum tellus nec pulvinar. Duis arcu neque, semper et dignissim ut, auctor eu turpis. Nullam velit est, feugiat id mollis vitae, hendrerit auctor est. + +Maecenas quis massa id sem vulputate accumsan. Sed sed faucibus erat. Duis consequat ligula magna, at faucibus sem efficitur ut. Interdum et malesuada fames ac ante ipsum primis in faucibus. Nam molestie orci eu magna congue, ut viverra ligula iaculis. Fusce mollis scelerisque nulla, vel viverra augue dignissim non. Nullam a sem a urna pharetra pretium. In vel ligula suscipit, maximus quam quis, iaculis risus. Pellentesque tristique molestie pharetra. Proin porttitor purus vel sapien cursus, venenatis commodo lacus mollis. Duis pretium augue imperdiet venenatis dignissim. Integer est arcu, vestibulum et lacus vitae, aliquam fermentum magna. + +Pellentesque faucibus molestie eros ac molestie. Integer sed risus nunc. Donec viverra volutpat metus, at sagittis ipsum vehicula in. Quisque semper justo semper odio aliquam mollis. Nunc auctor eros viverra enim vulputate efficitur. Nulla placerat elit lectus, sit amet facilisis magna tincidunt eget. Etiam mollis ex vel felis maximus, ut auctor nunc dignissim. Nunc cursus, lacus non lobortis sagittis, eros elit bibendum ex, vitae commodo elit ligula id nibh. + +Ut iaculis ornare lacinia. Donec pharetra tellus ipsum, sollicitudin finibus justo pharetra ut. Phasellus feugiat sem eget neque congue pharetra. Maecenas cursus in velit ut hendrerit. Fusce non pellentesque ex. Aliquam erat volutpat. Vestibulum eleifend egestas arcu in varius. Aliquam egestas nisl metus, eu sodales orci porttitor fermentum. In volutpat, nulla vitae sodales laoreet, augue lectus molestie quam, nec posuere metus lectus at orci. Phasellus porttitor orci a erat sodales, nec convallis diam venenatis. Sed molestie id lorem eu ultricies. + +Fusce mattis tempus pulvinar. Sed condimentum vulputate sem, nec efficitur magna molestie in. Nulla mattis odio at nibh dignissim, in hendrerit orci sodales. Maecenas tellus tortor, vulputate at pulvinar ac, luctus quis erat. Curabitur orci ex, pharetra quis est eu, aliquam pharetra augue. Phasellus magna neque, tempus gravida interdum sit amet, eleifend non velit. Morbi fermentum congue suscipit. Etiam mattis mattis dui sed consectetur. Duis purus dolor, convallis eget odio et, iaculis vestibulum neque. Etiam sagittis eros felis, ac dapibus tortor pharetra eget. Quisque ullamcorper purus sed magna cursus pharetra. + +Nam vitae eleifend nibh, ut laoreet nisl. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin vestibulum quam mi, ac lacinia libero aliquet nec. Nunc aliquam quam velit, in consequat ex aliquet at. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Sed pellentesque, nisl nec pellentesque blandit, lorem turpis blandit quam, sed scelerisque sapien sem id quam. Maecenas vehicula a diam in pretium. + +In massa lectus, elementum et laoreet sed, elementum et est. Sed et eleifend mi. Pellentesque urna elit, interdum eget nibh a, scelerisque ornare leo. In lobortis vehicula lectus sit amet fringilla. In dapibus in mauris nec vehicula. Nullam massa mi, cursus id urna dignissim, venenatis mollis ligula. Curabitur fringilla nec orci at fringilla. \ No newline at end of file diff --git a/common/src/test/resources/proc.cgroups b/common/src/test/resources/proc.cgroups new file mode 100644 index 000000000000..09eff7760532 --- /dev/null +++ b/common/src/test/resources/proc.cgroups @@ -0,0 +1,13 @@ +#subsys_name hierarchy num_cgroups enabled +cpuset 4 1 1 +cpu 9 108 1 +cpuacct 9 108 1 +blkio 8 60 1 +memory 3 160 1 +devices 7 60 1 +freezer 6 52 1 +net_cls 2 1 1 +perf_event 10 1 1 +net_prio 2 1 1 +hugetlb 5 1 1 +pids 11 63 1 diff --git a/common/src/test/resources/proc.mounts b/common/src/test/resources/proc.mounts new file mode 100644 index 000000000000..c1b3ee74fe3a --- /dev/null +++ b/common/src/test/resources/proc.mounts @@ -0,0 +1,36 @@ +sysfs /sys sysfs rw,seclabel,nosuid,nodev,noexec,relatime 0 0 +proc /proc proc rw,nosuid,nodev,noexec,relatime 0 0 +devtmpfs /dev devtmpfs rw,seclabel,nosuid,size=1007354668k,nr_inodes=251838667,mode=755 0 0 +securityfs /sys/kernel/security securityfs rw,nosuid,nodev,noexec,relatime 0 0 +tmpfs /dev/shm tmpfs rw,seclabel,nosuid,nodev 0 0 +devpts /dev/pts devpts rw,seclabel,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000 0 0 +tmpfs /run tmpfs rw,seclabel,nosuid,nodev,mode=755 0 0 +tmpfs /sys/fs/cgroup tmpfs ro,seclabel,nosuid,nodev,noexec,mode=755 0 0 +cgroup /sys/fs/cgroup/systemd cgroup rw,nosuid,nodev,noexec,relatime,xattr,release_agent=/usr/lib/systemd/systemd-cgroups-agent,name=systemd 0 0 +pstore /sys/fs/pstore pstore rw,seclabel,nosuid,nodev,noexec,relatime 0 0 +cgroup /sys/fs/cgroup/net_cls,net_prio cgroup rw,nosuid,nodev,noexec,relatime,net_cls,net_prio 0 0 +cgroup /sys/fs/cgroup/memory cgroup rw,nosuid,nodev,noexec,relatime,memory 0 0 +cgroup /sys/fs/cgroup/cpuset cgroup rw,nosuid,nodev,noexec,relatime,cpuset 0 0 +cgroup /sys/fs/cgroup/hugetlb cgroup rw,nosuid,nodev,noexec,relatime,hugetlb 0 0 +cgroup /sys/fs/cgroup/freezer cgroup rw,nosuid,nodev,noexec,relatime,freezer 0 0 +cgroup /sys/fs/cgroup/devices cgroup rw,nosuid,nodev,noexec,relatime,devices 0 0 +cgroup /sys/fs/cgroup/blkio cgroup rw,nosuid,nodev,noexec,relatime,blkio 0 0 +cgroup /sys/fs/cgroup/cpu,cpuacct cgroup rw,nosuid,nodev,noexec,relatime,cpu,cpuacct 0 0 +cgroup /sys/fs/cgroup/perf_event cgroup rw,nosuid,nodev,noexec,relatime,perf_event 0 0 +cgroup /sys/fs/cgroup/pids cgroup rw,nosuid,nodev,noexec,relatime,pids 0 0 +/dev/xvda9 / ext4 rw,seclabel,relatime,data=ordered 0 0 +/dev/mapper/usr /usr ext4 ro,seclabel,relatime,block_validity,delalloc,barrier,user_xattr,acl 0 0 +selinuxfs /sys/fs/selinux selinuxfs rw,relatime 0 0 +tmpfs /media tmpfs rw,seclabel,nosuid,nodev,noexec,relatime 0 0 +systemd-1 /boot autofs rw,relatime,fd=34,pgrp=1,timeout=0,minproto=5,maxproto=5,direct,pipe_ino=18428 0 0 +xenfs /proc/xen xenfs rw,relatime 0 0 +tmpfs /tmp tmpfs rw,seclabel,nosuid,nodev 0 0 +hugetlbfs /dev/hugepages hugetlbfs rw,seclabel,relatime 0 0 +systemd-1 /proc/sys/fs/binfmt_misc autofs rw,relatime,fd=38,pgrp=1,timeout=0,minproto=5,maxproto=5,direct,pipe_ino=140296 0 0 +debugfs /sys/kernel/debug debugfs rw,seclabel,relatime 0 0 +mqueue /dev/mqueue mqueue rw,seclabel,relatime 0 0 +/dev/xvda6 /usr/share/oem ext4 rw,seclabel,nodev,relatime,commit=600,data=ordered 0 0 +/dev/xvda1 /boot vfat rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=ascii,shortname=mixed,errors=remount-ro 0 0 +/dev/md127 /mnt xfs rw,seclabel,noatime,attr2,inode64,sunit=1024,swidth=2048,noquota 0 0 +/dev/md126 /ebs xfs rw,seclabel,noatime,attr2,inode64,sunit=1024,swidth=16384,noquota 0 0 +/dev/xvda9 /var/lib/docker/overlay ext4 rw,seclabel,relatime,data=ordered 0 0 diff --git a/common/src/test/resources/proc.pid.cgroup b/common/src/test/resources/proc.pid.cgroup new file mode 100644 index 000000000000..139f81b29c8f --- /dev/null +++ b/common/src/test/resources/proc.pid.cgroup @@ -0,0 +1,11 @@ +11:pids:/system.slice/mesos-agent-druid.service +10:perf_event:/ +9:cpu,cpuacct:/system.slice/mesos-agent-druid.service/f12ba7e0-fa16-462e-bb9d-652ccc27f0ee +8:blkio:/system.slice/mesos-agent-druid.service +7:devices:/system.slice/mesos-agent-druid.service +6:freezer:/system.slice/mesos-agent-druid.service/f12ba7e0-fa16-462e-bb9d-652ccc27f0ee +5:hugetlb:/ +4:cpuset:/ +3:memory:/system.slice/mesos-agent-druid.service +2:net_cls,net_prio:/ +1:name=systemd:/mesos_executors.slice