diff --git a/ambari-metrics-common/pom.xml b/ambari-metrics-common/pom.xml index faedbf01..3da13c22 100644 --- a/ambari-metrics-common/pom.xml +++ b/ambari-metrics-common/pom.xml @@ -120,10 +120,15 @@ - + + + com.fasterxml.jackson.module + jackson-module-jaxb-annotations + ${fasterxml.jackson.version} org.apache.hadoop @@ -137,9 +142,19 @@ - org.codehaus.jackson - jackson-mapper-asl - 1.9.13 + com.fasterxml.jackson.core + jackson-databind + ${fasterxml.jackson.databind.version} + + + com.fasterxml.jackson.core + jackson-annotations + ${fasterxml.jackson.version} + + + com.fasterxml.jackson.jaxrs + jackson-jaxrs-json-provider + ${fasterxml.jackson.version} commons-lang diff --git a/ambari-metrics-common/src/main/java/org/apache/hadoop/metrics2/sink/timeline/AbstractTimelineMetricsSink.java b/ambari-metrics-common/src/main/java/org/apache/hadoop/metrics2/sink/timeline/AbstractTimelineMetricsSink.java index ee036ca8..74c5655e 100644 --- a/ambari-metrics-common/src/main/java/org/apache/hadoop/metrics2/sink/timeline/AbstractTimelineMetricsSink.java +++ b/ambari-metrics-common/src/main/java/org/apache/hadoop/metrics2/sink/timeline/AbstractTimelineMetricsSink.java @@ -33,10 +33,10 @@ import org.apache.hadoop.metrics2.sink.timeline.availability.MetricSinkWriteShardHostnameHashingStrategy; import org.apache.hadoop.metrics2.sink.timeline.availability.MetricSinkWriteShardStrategy; import org.apache.http.HttpStatus; -import org.codehaus.jackson.map.AnnotationIntrospector; -import org.codehaus.jackson.map.ObjectMapper; -import org.codehaus.jackson.map.annotate.JsonSerialize; -import org.codehaus.jackson.xc.JaxbAnnotationIntrospector; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.databind.AnnotationIntrospector; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.fasterxml.jackson.module.jaxb.JaxbAnnotationIntrospector; import javax.net.ssl.HttpsURLConnection; import javax.net.ssl.SSLContext; @@ -146,8 +146,7 @@ public abstract class AbstractTimelineMetricsSink { mapper = new ObjectMapper(); AnnotationIntrospector introspector = new JaxbAnnotationIntrospector(); mapper.setAnnotationIntrospector(introspector); - mapper.getSerializationConfig() - .withSerializationInclusion(JsonSerialize.Inclusion.NON_NULL); + mapper.setSerializationInclusion(JsonInclude.Include.NON_NULL); } private final class CollectorShardSupplier implements Supplier { diff --git a/ambari-metrics-common/src/main/java/org/apache/hadoop/metrics2/sink/timeline/MetricAggregate.java b/ambari-metrics-common/src/main/java/org/apache/hadoop/metrics2/sink/timeline/MetricAggregate.java index 84cba0ea..2e3360dd 100644 --- a/ambari-metrics-common/src/main/java/org/apache/hadoop/metrics2/sink/timeline/MetricAggregate.java +++ b/ambari-metrics-common/src/main/java/org/apache/hadoop/metrics2/sink/timeline/MetricAggregate.java @@ -20,9 +20,9 @@ import org.apache.hadoop.classification.InterfaceAudience; import org.apache.hadoop.classification.InterfaceStability; -import org.codehaus.jackson.annotate.JsonProperty; -import org.codehaus.jackson.annotate.JsonSubTypes; -import org.codehaus.jackson.map.ObjectMapper; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonSubTypes; +import com.fasterxml.jackson.databind.ObjectMapper; import java.io.IOException; diff --git a/ambari-metrics-common/src/main/java/org/apache/hadoop/metrics2/sink/timeline/MetricClusterAggregate.java b/ambari-metrics-common/src/main/java/org/apache/hadoop/metrics2/sink/timeline/MetricClusterAggregate.java index 7ef2c1df..cab582e7 100644 --- a/ambari-metrics-common/src/main/java/org/apache/hadoop/metrics2/sink/timeline/MetricClusterAggregate.java +++ b/ambari-metrics-common/src/main/java/org/apache/hadoop/metrics2/sink/timeline/MetricClusterAggregate.java @@ -18,8 +18,8 @@ package org.apache.hadoop.metrics2.sink.timeline; -import org.codehaus.jackson.annotate.JsonCreator; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonProperty; /** * diff --git a/ambari-metrics-common/src/main/java/org/apache/hadoop/metrics2/sink/timeline/MetricHostAggregate.java b/ambari-metrics-common/src/main/java/org/apache/hadoop/metrics2/sink/timeline/MetricHostAggregate.java index e1909133..fa726407 100644 --- a/ambari-metrics-common/src/main/java/org/apache/hadoop/metrics2/sink/timeline/MetricHostAggregate.java +++ b/ambari-metrics-common/src/main/java/org/apache/hadoop/metrics2/sink/timeline/MetricHostAggregate.java @@ -18,8 +18,8 @@ package org.apache.hadoop.metrics2.sink.timeline; -import org.codehaus.jackson.annotate.JsonCreator; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonProperty; /** * Represents a collection of minute based aggregation of values for diff --git a/ambari-metrics-common/src/main/java/org/apache/hadoop/metrics2/sink/timeline/TimelineMetric.java b/ambari-metrics-common/src/main/java/org/apache/hadoop/metrics2/sink/timeline/TimelineMetric.java index a5768c34..deb288a4 100644 --- a/ambari-metrics-common/src/main/java/org/apache/hadoop/metrics2/sink/timeline/TimelineMetric.java +++ b/ambari-metrics-common/src/main/java/org/apache/hadoop/metrics2/sink/timeline/TimelineMetric.java @@ -29,7 +29,6 @@ import org.apache.hadoop.classification.InterfaceAudience; import org.apache.hadoop.classification.InterfaceStability; -import org.codehaus.jackson.map.annotate.JsonDeserialize; @XmlRootElement(name = "metric") @XmlAccessorType(XmlAccessType.NONE) diff --git a/ambari-metrics-common/src/main/java/org/apache/hadoop/metrics2/sink/timeline/TimelineMetricMetadata.java b/ambari-metrics-common/src/main/java/org/apache/hadoop/metrics2/sink/timeline/TimelineMetricMetadata.java index b1266b1a..b26b3e10 100644 --- a/ambari-metrics-common/src/main/java/org/apache/hadoop/metrics2/sink/timeline/TimelineMetricMetadata.java +++ b/ambari-metrics-common/src/main/java/org/apache/hadoop/metrics2/sink/timeline/TimelineMetricMetadata.java @@ -21,7 +21,7 @@ import org.apache.commons.lang.StringUtils; import org.apache.hadoop.classification.InterfaceAudience; import org.apache.hadoop.classification.InterfaceStability; -import org.codehaus.jackson.annotate.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonIgnore; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlElement; diff --git a/ambari-metrics-hadoop-sink/pom.xml b/ambari-metrics-hadoop-sink/pom.xml index af23ccdb..50eaa706 100644 --- a/ambari-metrics-hadoop-sink/pom.xml +++ b/ambari-metrics-hadoop-sink/pom.xml @@ -146,9 +146,9 @@ limitations under the License. compile - org.codehaus.jackson - jackson-mapper-asl - 1.9.13 + com.fasterxml.jackson.core + jackson-databind + ${fasterxml.jackson.databind.version} junit diff --git a/ambari-metrics-host-aggregator/pom.xml b/ambari-metrics-host-aggregator/pom.xml index 130054ec..e39f3861 100644 --- a/ambari-metrics-host-aggregator/pom.xml +++ b/ambari-metrics-host-aggregator/pom.xml @@ -118,6 +118,11 @@ jetty-webapp 9.4.57.v20241219 + + com.fasterxml.jackson.jaxrs + jackson-jaxrs-json-provider + ${fasterxml.jackson.version} + diff --git a/ambari-metrics-host-aggregator/src/test/java/org/apache/hadoop/metrics2/host/aggregator/AggregatorWebServiceTest.java b/ambari-metrics-host-aggregator/src/test/java/org/apache/hadoop/metrics2/host/aggregator/AggregatorWebServiceTest.java index 0f15c208..fc7f5b20 100644 --- a/ambari-metrics-host-aggregator/src/test/java/org/apache/hadoop/metrics2/host/aggregator/AggregatorWebServiceTest.java +++ b/ambari-metrics-host-aggregator/src/test/java/org/apache/hadoop/metrics2/host/aggregator/AggregatorWebServiceTest.java @@ -28,9 +28,9 @@ import com.sun.jersey.test.framework.spi.container.grizzly2.GrizzlyTestContainerFactory; import junit.framework.Assert; import org.apache.hadoop.metrics2.sink.timeline.TimelineMetrics; -import org.codehaus.jackson.jaxrs.JacksonJaxbJsonProvider; import org.junit.Test; +import com.fasterxml.jackson.jaxrs.json.JacksonJaxbJsonProvider; import javax.ws.rs.core.MediaType; diff --git a/ambari-metrics-kafka-sink/pom.xml b/ambari-metrics-kafka-sink/pom.xml index cd78b98e..52ff19a1 100644 --- a/ambari-metrics-kafka-sink/pom.xml +++ b/ambari-metrics-kafka-sink/pom.xml @@ -43,7 +43,7 @@ limitations under the License. copy-dependencies - commons-codec,commons-collections,commons-lang,commons-logging,jackson-core-asl,jackson-mapper-asl,jackson-xc + commons-codec,commons-collections,commons-lang,commons-logging,jackson-core,jackson-databind,jackson-xc ${project.build.directory}/lib @@ -156,9 +156,9 @@ limitations under the License. 2.6 - org.codehaus.jackson - jackson-mapper-asl - 1.9.13 + com.fasterxml.jackson.core + jackson-databind + ${fasterxml.jackson.databind.version} junit diff --git a/ambari-metrics-storm-sink/pom.xml b/ambari-metrics-storm-sink/pom.xml index 2c3ae202..3724e9da 100644 --- a/ambari-metrics-storm-sink/pom.xml +++ b/ambari-metrics-storm-sink/pom.xml @@ -70,9 +70,9 @@ limitations under the License. org.apache.ambari:ambari-metrics-common - org.codehaus.jackson:jackson-mapper-asl - org.codehaus.jackson:jackson-core-asl - org.codehaus.jackson:jackson-xc + com.fasterxml.jackson.core:jackson-databind + com.fasterxml.jackson.core:jackson-core + com.fasterxml.jackson.core:jackson-annotations org.apache.hadoop:hadoop-annotations commons-logging:commons-logging org.apache.commons:commons-lang3 @@ -88,9 +88,13 @@ limitations under the License. org.apache.hadoop.classification org.apache.hadoop.metrics2.sink.relocated.hadoop.classification - + + + com.fasterxml.jackson + org.apache.ambari.metrics.sink.relocated.jackson org.apache.commons.lang3 @@ -153,9 +157,9 @@ limitations under the License. ${project.version} - org.codehaus.jackson - jackson-mapper-asl - 1.9.13 + com.fasterxml.jackson.core + jackson-databind + ${fasterxml.jackson.databind.version} junit diff --git a/ambari-metrics-timelineservice/pom.xml b/ambari-metrics-timelineservice/pom.xml index 6494d9b1..2dd5753f 100644 --- a/ambari-metrics-timelineservice/pom.xml +++ b/ambari-metrics-timelineservice/pom.xml @@ -269,20 +269,15 @@ org.apache.helix helix-core - 0.6.6 + 1.4.3 - - - zkclient - com.101tec - zookeeper org.apache.zookeeper - log4j - log4j + org.codehaus.jackson + jackson-core-asl org.yaml @@ -290,12 +285,6 @@ - - - com.101tec - zkclient - 0.9 - org.apache.zookeeper zookeeper @@ -457,6 +446,20 @@ com.sun.jersey jersey-json 1.11 + + + org.codehaus.jackson + jackson-mapper-asl + + + org.codehaus.jackson + jackson-core-asl + + + org.codehaus.jackson + jackson-xc + + com.sun.jersey.contribs @@ -472,6 +475,20 @@ com.sun.jersey jersey-core 1.11 + + + org.codehaus.jackson + jackson-mapper-asl + + + org.codehaus.jackson + jackson-core-asl + + + org.codehaus.jackson + jackson-xc + + com.sun.jersey @@ -676,9 +693,9 @@ - org.codehaus.jackson - jackson-core-asl - 1.9.9 + com.fasterxml.jackson.core + jackson-core + ${fasterxml.jackson.version} @@ -694,9 +711,9 @@ - org.codehaus.jackson - jackson-mapper-asl - 1.9.13 + com.fasterxml.jackson.core + jackson-databind + ${fasterxml.jackson.databind.version} @@ -878,6 +895,11 @@ com.fasterxml.jackson.core jackson-databind + + javax.ws.rs + javax.ws.rs-api + 2.1.1 + diff --git a/ambari-metrics-timelineservice/src/main/java/org/apache/ambari/metrics/core/loadsimulator/util/Json.java b/ambari-metrics-timelineservice/src/main/java/org/apache/ambari/metrics/core/loadsimulator/util/Json.java index 3e186a17..c4f4e73f 100644 --- a/ambari-metrics-timelineservice/src/main/java/org/apache/ambari/metrics/core/loadsimulator/util/Json.java +++ b/ambari-metrics-timelineservice/src/main/java/org/apache/ambari/metrics/core/loadsimulator/util/Json.java @@ -19,10 +19,10 @@ import java.io.IOException; -import org.codehaus.jackson.annotate.JsonAutoDetect; -import org.codehaus.jackson.annotate.JsonMethod; -import org.codehaus.jackson.map.ObjectMapper; -import org.codehaus.jackson.map.SerializationConfig; +import com.fasterxml.jackson.annotation.JsonAutoDetect; +import com.fasterxml.jackson.annotation.PropertyAccessor; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.fasterxml.jackson.databind.SerializationFeature; /** * Small wrapper that configures the ObjectMapper with some defaults. @@ -45,9 +45,9 @@ public Json() { */ public Json(boolean pretty) { myObjectMapper = new ObjectMapper(); - myObjectMapper.setVisibility(JsonMethod.FIELD, JsonAutoDetect.Visibility.ANY); + myObjectMapper.setVisibility(PropertyAccessor.FIELD,JsonAutoDetect.Visibility.ANY); if (pretty) { - myObjectMapper.configure(SerializationConfig.Feature.INDENT_OUTPUT, true); + myObjectMapper.configure(SerializationFeature.INDENT_OUTPUT, true); } } diff --git a/ambari-metrics-timelineservice/src/main/java/org/apache/ambari/metrics/core/timeline/PhoenixHBaseAccessor.java b/ambari-metrics-timelineservice/src/main/java/org/apache/ambari/metrics/core/timeline/PhoenixHBaseAccessor.java index cf976dd6..38088fe4 100644 --- a/ambari-metrics-timelineservice/src/main/java/org/apache/ambari/metrics/core/timeline/PhoenixHBaseAccessor.java +++ b/ambari-metrics-timelineservice/src/main/java/org/apache/ambari/metrics/core/timeline/PhoenixHBaseAccessor.java @@ -156,8 +156,8 @@ import org.apache.hadoop.yarn.api.records.ContainerId; import org.apache.hadoop.yarn.util.timeline.TimelineUtils; import org.apache.phoenix.exception.PhoenixIOException; -import org.codehaus.jackson.map.ObjectMapper; -import org.codehaus.jackson.type.TypeReference; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.fasterxml.jackson.core.type.TypeReference; import com.google.common.collect.Multimap; diff --git a/ambari-metrics-timelineservice/src/main/java/org/apache/ambari/metrics/core/timeline/availability/CheckpointManager.java b/ambari-metrics-timelineservice/src/main/java/org/apache/ambari/metrics/core/timeline/availability/CheckpointManager.java index 868fb931..595e645e 100644 --- a/ambari-metrics-timelineservice/src/main/java/org/apache/ambari/metrics/core/timeline/availability/CheckpointManager.java +++ b/ambari-metrics-timelineservice/src/main/java/org/apache/ambari/metrics/core/timeline/availability/CheckpointManager.java @@ -17,12 +17,12 @@ */ package org.apache.ambari.metrics.core.timeline.availability; -import org.I0Itec.zkclient.DataUpdater; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.apache.helix.AccessOption; -import org.apache.helix.ZNRecord; import org.apache.helix.store.zk.ZkHelixPropertyStore; +import org.apache.helix.zookeeper.datamodel.ZNRecord; +import org.apache.helix.zookeeper.zkclient.DataUpdater; import org.apache.zookeeper.data.Stat; public class CheckpointManager { diff --git a/ambari-metrics-timelineservice/src/main/java/org/apache/ambari/metrics/core/timeline/availability/MetricCollectorHAController.java b/ambari-metrics-timelineservice/src/main/java/org/apache/ambari/metrics/core/timeline/availability/MetricCollectorHAController.java index a5d43180..01b1c6ea 100644 --- a/ambari-metrics-timelineservice/src/main/java/org/apache/ambari/metrics/core/timeline/availability/MetricCollectorHAController.java +++ b/ambari-metrics-timelineservice/src/main/java/org/apache/ambari/metrics/core/timeline/availability/MetricCollectorHAController.java @@ -30,7 +30,6 @@ import java.util.concurrent.ScheduledExecutorService; import java.util.concurrent.TimeUnit; -import org.I0Itec.zkclient.exception.ZkNoNodeException; import org.apache.commons.lang.StringUtils; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; @@ -49,6 +48,7 @@ import org.apache.helix.model.InstanceConfig; import org.apache.helix.model.LiveInstance; import org.apache.helix.model.OnlineOfflineSMD; +import org.apache.helix.zookeeper.zkclient.exception.ZkNoNodeException; import com.google.common.annotations.VisibleForTesting; import com.google.common.base.Joiner; diff --git a/ambari-metrics-timelineservice/src/main/java/org/apache/ambari/metrics/core/timeline/sink/HttpSinkProvider.java b/ambari-metrics-timelineservice/src/main/java/org/apache/ambari/metrics/core/timeline/sink/HttpSinkProvider.java index cbb08341..c6f4ae88 100644 --- a/ambari-metrics-timelineservice/src/main/java/org/apache/ambari/metrics/core/timeline/sink/HttpSinkProvider.java +++ b/ambari-metrics-timelineservice/src/main/java/org/apache/ambari/metrics/core/timeline/sink/HttpSinkProvider.java @@ -43,10 +43,10 @@ import org.apache.ambari.metrics.core.timeline.TimelineMetricConfiguration; import org.apache.ambari.metrics.core.timeline.source.InternalSourceProvider; import org.apache.http.client.utils.URIBuilder; -import org.codehaus.jackson.map.AnnotationIntrospector; -import org.codehaus.jackson.map.ObjectMapper; -import org.codehaus.jackson.map.annotate.JsonSerialize; -import org.codehaus.jackson.xc.JaxbAnnotationIntrospector; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.databind.AnnotationIntrospector; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.fasterxml.jackson.module.jaxb.JaxbAnnotationIntrospector; public class HttpSinkProvider implements ExternalSinkProvider { private static final Log LOG = LogFactory.getLog(HttpSinkProvider.class); @@ -60,8 +60,7 @@ public class HttpSinkProvider implements ExternalSinkProvider { mapper = new ObjectMapper(); AnnotationIntrospector introspector = new JaxbAnnotationIntrospector(); mapper.setAnnotationIntrospector(introspector); - mapper.getSerializationConfig() - .withSerializationInclusion(JsonSerialize.Inclusion.NON_NULL); + mapper.setSerializationInclusion(JsonInclude.Include.NON_NULL); } public HttpSinkProvider() { diff --git a/ambari-metrics-timelineservice/src/main/java/org/apache/ambari/metrics/timeline/GenericObjectMapper.java b/ambari-metrics-timelineservice/src/main/java/org/apache/ambari/metrics/timeline/GenericObjectMapper.java index b802a887..c562f44a 100644 --- a/ambari-metrics-timelineservice/src/main/java/org/apache/ambari/metrics/timeline/GenericObjectMapper.java +++ b/ambari-metrics-timelineservice/src/main/java/org/apache/ambari/metrics/timeline/GenericObjectMapper.java @@ -21,9 +21,9 @@ import org.apache.hadoop.classification.InterfaceAudience; import org.apache.hadoop.classification.InterfaceStability; -import org.codehaus.jackson.map.ObjectMapper; -import org.codehaus.jackson.map.ObjectReader; -import org.codehaus.jackson.map.ObjectWriter; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.fasterxml.jackson.databind.ObjectReader; +import com.fasterxml.jackson.databind.ObjectWriter; /** * A utility class providing methods for serializing and deserializing diff --git a/ambari-metrics-timelineservice/src/test/java/org/apache/ambari/metrics/core/timeline/aggregators/TimelineMetricClusterAggregatorSecondTest.java b/ambari-metrics-timelineservice/src/test/java/org/apache/ambari/metrics/core/timeline/aggregators/TimelineMetricClusterAggregatorSecondTest.java index e44845b9..f3c01d26 100644 --- a/ambari-metrics-timelineservice/src/test/java/org/apache/ambari/metrics/core/timeline/aggregators/TimelineMetricClusterAggregatorSecondTest.java +++ b/ambari-metrics-timelineservice/src/test/java/org/apache/ambari/metrics/core/timeline/aggregators/TimelineMetricClusterAggregatorSecondTest.java @@ -40,7 +40,7 @@ import org.apache.hadoop.metrics2.sink.timeline.TimelineMetric; import org.apache.ambari.metrics.core.timeline.discovery.TimelineMetricMetadataKey; import org.apache.ambari.metrics.core.timeline.discovery.TimelineMetricMetadataManager; -import org.codehaus.jackson.map.ObjectMapper; +import com.fasterxml.jackson.databind.ObjectMapper; import org.junit.Test; import junit.framework.Assert; diff --git a/pom.xml b/pom.xml index 35ca644c..ad86e5c6 100644 --- a/pom.xml +++ b/pom.xml @@ -60,8 +60,9 @@ apache.staging.https Apache Release Distribution Repository https://repository.apache.org/service/local/staging/deploy/maven2 - 2.10.0 - false + 2.17.3 + 2.17.3 + false 1