mirror of
https://github.com/elastic/elasticsearch.git
synced 2025-04-25 07:37:19 -04:00
This commit upgrades the Azure SDK to 12.11.0 and Jackson to 2.12.2. The Jackson upgrade must happen at the same time due to Azure depending on this new version of Jackson. closes #66555 closes #67214 backport #72995 backport #73011 Co-authored-by: Francisco Fernández Castaño <francisco.fernandez.castano@gmail.com> Co-authored-by: Mark Vieira <portugee@gmail.com>
This commit is contained in:
parent
3182482701
commit
f454cefc26
126 changed files with 139 additions and 143 deletions
|
@ -99,7 +99,7 @@ if (System.getProperty('idea.active') == 'true') {
|
||||||
tasks.register('buildDependencyArtifacts') {
|
tasks.register('buildDependencyArtifacts') {
|
||||||
group = 'ide'
|
group = 'ide'
|
||||||
description = 'Builds artifacts needed as dependency for IDE modules'
|
description = 'Builds artifacts needed as dependency for IDE modules'
|
||||||
dependsOn ':plugins:repository-hdfs:hadoop-common:shadowJar', ':plugins:repository-azure:azure-storage-blob:shadowJar'
|
dependsOn ':plugins:repository-hdfs:hadoop-common:shadowJar'
|
||||||
}
|
}
|
||||||
|
|
||||||
idea {
|
idea {
|
||||||
|
|
|
@ -9,8 +9,8 @@ checkstyle = 8.39
|
||||||
# optional dependencies
|
# optional dependencies
|
||||||
spatial4j = 0.7
|
spatial4j = 0.7
|
||||||
jts = 1.15.0
|
jts = 1.15.0
|
||||||
jackson = 2.10.4
|
jackson = 2.12.2
|
||||||
snakeyaml = 1.26
|
snakeyaml = 1.27
|
||||||
icu4j = 62.1
|
icu4j = 62.1
|
||||||
supercsv = 2.4.0
|
supercsv = 2.4.0
|
||||||
# when updating log4j, please update also docs/java-api/index.asciidoc
|
# when updating log4j, please update also docs/java-api/index.asciidoc
|
||||||
|
@ -20,7 +20,7 @@ slf4j = 1.6.2
|
||||||
# when updating the JNA version, also update the version in buildSrc/build.gradle
|
# when updating the JNA version, also update the version in buildSrc/build.gradle
|
||||||
jna = 5.7.0-1
|
jna = 5.7.0-1
|
||||||
|
|
||||||
netty = 4.1.49.Final
|
netty = 4.1.63.Final
|
||||||
joda = 2.10.10
|
joda = 2.10.10
|
||||||
|
|
||||||
commons_lang3 = 3.9
|
commons_lang3 = 3.9
|
||||||
|
|
|
@ -1 +0,0 @@
|
||||||
8796585e716440d6dd5128b30359932a9eb74d0d
|
|
1
client/sniffer/licenses/jackson-core-2.12.2.jar.sha1
Normal file
1
client/sniffer/licenses/jackson-core-2.12.2.jar.sha1
Normal file
|
@ -0,0 +1 @@
|
||||||
|
8df50138521d05561a308ec2799cc8dda20c06df
|
|
@ -1 +0,0 @@
|
||||||
8796585e716440d6dd5128b30359932a9eb74d0d
|
|
1
libs/x-content/licenses/jackson-core-2.12.2.jar.sha1
Normal file
1
libs/x-content/licenses/jackson-core-2.12.2.jar.sha1
Normal file
|
@ -0,0 +1 @@
|
||||||
|
8df50138521d05561a308ec2799cc8dda20c06df
|
|
@ -1 +0,0 @@
|
||||||
c854bb2d46138198cb5d4aae86ef6c04b8bc1e70
|
|
|
@ -0,0 +1 @@
|
||||||
|
71866a16d9678d8d7718baea0a28c7d0e1a67360
|
|
@ -1 +0,0 @@
|
||||||
c872c2e224cfdcc5481037d477f5890f05c001b4
|
|
|
@ -0,0 +1 @@
|
||||||
|
110be3a2ac0acf51e68967669db47ca9a507e057
|
|
@ -1 +0,0 @@
|
||||||
8a7f3c6b640bd89214807af6d8160b4b3b16af93
|
|
|
@ -0,0 +1 @@
|
||||||
|
8c549fb29f390f6fd0c20cf0a1d83f7e38dc7ffb
|
|
@ -1 +0,0 @@
|
||||||
a78a8747147d2c5807683e76ec2b633e95c14fe9
|
|
1
libs/x-content/licenses/snakeyaml-1.27.jar.sha1
Normal file
1
libs/x-content/licenses/snakeyaml-1.27.jar.sha1
Normal file
|
@ -0,0 +1 @@
|
||||||
|
359d62567480b07a679dc643f82fc926b100eed5
|
|
@ -1 +0,0 @@
|
||||||
6ae6028aff033f194c9710ad87c224ccaadeed6c
|
|
|
@ -0,0 +1 @@
|
||||||
|
0a770cc4c0a1fb0bfd8a150a6a0004e42bc99fca
|
|
@ -1 +0,0 @@
|
||||||
76e9152e93d4cf052f93a64596f633ba5b1c8ed9
|
|
|
@ -0,0 +1 @@
|
||||||
|
5f9d79e09ebf5d54a46e9f4543924cf7ae7654e0
|
|
@ -122,6 +122,8 @@ tasks.named("thirdPartyAudit").configure {
|
||||||
'io.netty.internal.tcnative.SSL',
|
'io.netty.internal.tcnative.SSL',
|
||||||
'io.netty.internal.tcnative.SSLContext',
|
'io.netty.internal.tcnative.SSLContext',
|
||||||
'io.netty.internal.tcnative.SSLPrivateKeyMethod',
|
'io.netty.internal.tcnative.SSLPrivateKeyMethod',
|
||||||
|
'io.netty.internal.tcnative.SSLSession',
|
||||||
|
'io.netty.internal.tcnative.SSLSessionCache',
|
||||||
|
|
||||||
// from io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator (netty)
|
// from io.netty.handler.ssl.util.BouncyCastleSelfSignedCertGenerator (netty)
|
||||||
'org.bouncycastle.cert.X509v3CertificateBuilder',
|
'org.bouncycastle.cert.X509v3CertificateBuilder',
|
||||||
|
|
|
@ -1 +0,0 @@
|
||||||
8e819a81bca88d1e88137336f64531a53db0a4ad
|
|
|
@ -0,0 +1 @@
|
||||||
|
40028ce5ac7c43f1c9a1439f74637cad04013e23
|
|
@ -1 +0,0 @@
|
||||||
20218de83c906348283f548c255650fd06030424
|
|
|
@ -0,0 +1 @@
|
||||||
|
d4d2fccea88c80e56d59ce1053c53df0f9f4f5db
|
|
@ -1 +0,0 @@
|
||||||
4f30dbc462b26c588dffc0eb7552caef1a0f549e
|
|
|
@ -0,0 +1 @@
|
||||||
|
f8c9b159dcb76452dc98a370a5511ff993670419
|
|
@ -1 +0,0 @@
|
||||||
927c8563a1662d869b145e70ce82ad89100f2c90
|
|
|
@ -0,0 +1 @@
|
||||||
|
e1206b46384d4dcbecee2901f18ce65ecf02e8a4
|
|
@ -1 +0,0 @@
|
||||||
c73443adb9d085d5dc2d5b7f3bdd91d5963976f7
|
|
|
@ -0,0 +1 @@
|
||||||
|
879a43c2325b08e92e8967218b6ddb0ed4b7a0d3
|
|
@ -1 +0,0 @@
|
||||||
eb81e1f0eaa99e75983bf3d28cae2b103e0f3a34
|
|
|
@ -0,0 +1 @@
|
||||||
|
d07cd47c101dfa655d6d5cc304d523742fd78ca8
|
|
@ -1 +0,0 @@
|
||||||
415ea7f326635743aec952fe2349ca45959e94a7
|
|
|
@ -0,0 +1 @@
|
||||||
|
09a8bbe1ba082c9434e6f524d3864a53f340f2df
|
|
@ -1 +0,0 @@
|
||||||
6ae6028aff033f194c9710ad87c224ccaadeed6c
|
|
|
@ -0,0 +1 @@
|
||||||
|
0a770cc4c0a1fb0bfd8a150a6a0004e42bc99fca
|
|
@ -1 +0,0 @@
|
||||||
76e9152e93d4cf052f93a64596f633ba5b1c8ed9
|
|
|
@ -0,0 +1 @@
|
||||||
|
5f9d79e09ebf5d54a46e9f4543924cf7ae7654e0
|
|
@ -1,47 +0,0 @@
|
||||||
import org.elasticsearch.gradle.internal.JavaClassPublicifier;
|
|
||||||
|
|
||||||
apply plugin: 'elasticsearch.java'
|
|
||||||
apply plugin: 'com.github.johnrengelman.shadow'
|
|
||||||
|
|
||||||
configurations {
|
|
||||||
originalJar {
|
|
||||||
transitive = false
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
dependencies {
|
|
||||||
originalJar "com.azure:azure-storage-blob:${project.parent.versions.azure}"
|
|
||||||
implementation "com.azure:azure-storage-blob:${project.parent.versions.azure}"
|
|
||||||
}
|
|
||||||
|
|
||||||
// We have to rewrite the service classes to make them public to avoid
|
|
||||||
// granting the permission "java.lang.reflect.ReflectPermission" "newProxyInPackage"
|
|
||||||
// to this plugin.
|
|
||||||
//
|
|
||||||
// There are plans to make those public in the azure sdk side, but in the meanwhile
|
|
||||||
// we just do this workaround
|
|
||||||
// https://github.com/Azure/azure-sdk-for-java/issues/12829#issuecomment-736755543
|
|
||||||
List<String> classesToRewrite = ['com/azure/storage/blob/implementation/AppendBlobsImpl$AppendBlobsService.class',
|
|
||||||
'com/azure/storage/blob/implementation/BlobsImpl$BlobsService.class',
|
|
||||||
'com/azure/storage/blob/implementation/BlockBlobsImpl$BlockBlobsService.class',
|
|
||||||
'com/azure/storage/blob/implementation/ContainersImpl$ContainersService.class',
|
|
||||||
'com/azure/storage/blob/implementation/DirectorysImpl$DirectorysService.class',
|
|
||||||
'com/azure/storage/blob/implementation/PageBlobsImpl$PageBlobsService.class',
|
|
||||||
'com/azure/storage/blob/implementation/ServicesImpl$ServicesService.class']
|
|
||||||
|
|
||||||
tasks.register('extractClientClasses', Copy).configure {
|
|
||||||
from({ zipTree(configurations.originalJar.singleFile) }) {
|
|
||||||
include "com/azure/storage/blob/implementation/**"
|
|
||||||
}
|
|
||||||
into project.file('build/original')
|
|
||||||
}
|
|
||||||
|
|
||||||
def modifiedOutput = project.layout.buildDirectory.dir('modified')
|
|
||||||
def makePublic = tasks.register('makeClientClassesPublic', JavaClassPublicifier) {
|
|
||||||
dependsOn 'extractClientClasses'
|
|
||||||
classFiles = classesToRewrite
|
|
||||||
inputDir = project.layout.buildDirectory.dir('original')
|
|
||||||
outputDir = modifiedOutput
|
|
||||||
}
|
|
||||||
|
|
||||||
sourceSets.main.output.dir(modifiedOutput, builtBy: makePublic)
|
|
|
@ -22,38 +22,34 @@ esplugin {
|
||||||
}
|
}
|
||||||
|
|
||||||
versions << [
|
versions << [
|
||||||
'azure': '12.9.0',
|
'azure': '12.11.1',
|
||||||
'azureCore': '1.10.0',
|
'azureCore': '1.16.0',
|
||||||
'azureCoreHttpNetty': '1.6.3',
|
'azureCoreHttpNetty': '1.9.1',
|
||||||
|
'azureAvro': '12.0.4',
|
||||||
|
|
||||||
'jakartaActivation': '1.2.1',
|
'jakartaActivation': '1.2.1',
|
||||||
'jakartaXMLBind': '2.3.2',
|
'jakartaXMLBind': '2.3.2',
|
||||||
'stax2API': '4.2',
|
'stax2API': '4.2',
|
||||||
'woodstox': '6.0.2',
|
'woodstox': '6.2.4',
|
||||||
|
|
||||||
'reactorNetty': '0.9.12.RELEASE',
|
'reactorNetty': '1.0.6',
|
||||||
'reactorCore': '3.3.10.RELEASE',
|
'reactorCore': '3.4.5',
|
||||||
'reactiveStreams': '1.0.3',
|
'reactiveStreams': '1.0.3',
|
||||||
]
|
]
|
||||||
|
|
||||||
dependencies {
|
dependencies {
|
||||||
api project(path: 'azure-storage-blob', configuration: 'shadow')
|
|
||||||
if (isEclipse) {
|
|
||||||
/*
|
|
||||||
* Eclipse can't pick up the shadow dependency so we point it at *something*
|
|
||||||
* so it can compile things.
|
|
||||||
*/
|
|
||||||
api project(path: 'azure-storage-blob')
|
|
||||||
}
|
|
||||||
api "com.azure:azure-storage-common:${versions.azure}"
|
api "com.azure:azure-storage-common:${versions.azure}"
|
||||||
|
api "com.azure:azure-storage-blob:${versions.azure}"
|
||||||
api "com.azure:azure-core-http-netty:${versions.azureCoreHttpNetty}"
|
api "com.azure:azure-core-http-netty:${versions.azureCoreHttpNetty}"
|
||||||
api "com.azure:azure-core:${versions.azureCore}"
|
api "com.azure:azure-core:${versions.azureCore}"
|
||||||
|
api "com.azure:azure-storage-internal-avro:${versions.azureAvro}"
|
||||||
|
|
||||||
// jackson
|
// jackson
|
||||||
api "com.fasterxml.jackson.core:jackson-core:${versions.jackson}"
|
api "com.fasterxml.jackson.core:jackson-core:${versions.jackson}"
|
||||||
api "com.fasterxml.jackson.core:jackson-databind:${versions.jackson}"
|
api "com.fasterxml.jackson.core:jackson-databind:${versions.jackson}"
|
||||||
api "com.fasterxml.jackson.core:jackson-annotations:${versions.jackson}"
|
api "com.fasterxml.jackson.core:jackson-annotations:${versions.jackson}"
|
||||||
api "com.fasterxml.jackson.core:jackson-databind:${versions.jackson}"
|
api "com.fasterxml.jackson.core:jackson-databind:${versions.jackson}"
|
||||||
|
api "com.fasterxml.jackson:jackson-bom:${versions.jackson}"
|
||||||
|
|
||||||
// jackson xml
|
// jackson xml
|
||||||
api "com.fasterxml.jackson.dataformat:jackson-dataformat-xml:${versions.jackson}"
|
api "com.fasterxml.jackson.dataformat:jackson-dataformat-xml:${versions.jackson}"
|
||||||
|
@ -64,18 +60,23 @@ dependencies {
|
||||||
|
|
||||||
// netty
|
// netty
|
||||||
api "io.netty:netty-buffer:${versions.netty}"
|
api "io.netty:netty-buffer:${versions.netty}"
|
||||||
|
api "io.netty:netty-codec:${versions.netty}"
|
||||||
|
api "io.netty:netty-codec-dns:${versions.netty}"
|
||||||
api "io.netty:netty-codec-http:${versions.netty}"
|
api "io.netty:netty-codec-http:${versions.netty}"
|
||||||
api "io.netty:netty-codec-http2:${versions.netty}"
|
api "io.netty:netty-codec-http2:${versions.netty}"
|
||||||
api "io.netty:netty-codec-socks:${versions.netty}"
|
api "io.netty:netty-codec-socks:${versions.netty}"
|
||||||
api "io.netty:netty-codec:${versions.netty}"
|
|
||||||
api "io.netty:netty-common:${versions.netty}"
|
api "io.netty:netty-common:${versions.netty}"
|
||||||
api "io.netty:netty-handler-proxy:${versions.netty}"
|
|
||||||
api "io.netty:netty-handler:${versions.netty}"
|
api "io.netty:netty-handler:${versions.netty}"
|
||||||
|
api "io.netty:netty-handler-proxy:${versions.netty}"
|
||||||
api "io.netty:netty-resolver:${versions.netty}"
|
api "io.netty:netty-resolver:${versions.netty}"
|
||||||
|
api "io.netty:netty-resolver-dns:${versions.netty}"
|
||||||
api "io.netty:netty-transport:${versions.netty}"
|
api "io.netty:netty-transport:${versions.netty}"
|
||||||
|
api "io.netty:netty-transport-native-unix-common:${versions.netty}"
|
||||||
|
|
||||||
// reactor
|
// reactor
|
||||||
api "io.projectreactor.netty:reactor-netty:${versions.reactorNetty}"
|
api "io.projectreactor.netty:reactor-netty:${versions.reactorNetty}"
|
||||||
|
api "io.projectreactor.netty:reactor-netty-core:${versions.reactorNetty}"
|
||||||
|
api "io.projectreactor.netty:reactor-netty-http:${versions.reactorNetty}"
|
||||||
api "io.projectreactor:reactor-core:${versions.reactorCore}"
|
api "io.projectreactor:reactor-core:${versions.reactorCore}"
|
||||||
api "org.reactivestreams:reactive-streams:${versions.reactiveStreams}"
|
api "org.reactivestreams:reactive-streams:${versions.reactiveStreams}"
|
||||||
|
|
||||||
|
@ -105,6 +106,7 @@ tasks.named("dependencyLicenses").configure {
|
||||||
mapping from: /netty-.*/, to: 'netty'
|
mapping from: /netty-.*/, to: 'netty'
|
||||||
mapping from: /jaxb-.*/, to: 'jaxb'
|
mapping from: /jaxb-.*/, to: 'jaxb'
|
||||||
mapping from: /stax-.*/, to: 'stax'
|
mapping from: /stax-.*/, to: 'stax'
|
||||||
|
mapping from: /reactor-netty-.*/, to: 'reactor-netty'
|
||||||
mapping from: /reactive-streams.*/, to: 'reactive-streams'
|
mapping from: /reactive-streams.*/, to: 'reactive-streams'
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -238,6 +240,8 @@ tasks.named("thirdPartyAudit").configure {
|
||||||
'io.netty.internal.tcnative.CertificateVerifier',
|
'io.netty.internal.tcnative.CertificateVerifier',
|
||||||
'io.netty.internal.tcnative.SessionTicketKey',
|
'io.netty.internal.tcnative.SessionTicketKey',
|
||||||
'io.netty.internal.tcnative.SniHostNameMatcher',
|
'io.netty.internal.tcnative.SniHostNameMatcher',
|
||||||
|
'io.netty.internal.tcnative.SSLSession',
|
||||||
|
'io.netty.internal.tcnative.SSLSessionCache',
|
||||||
|
|
||||||
// from io.netty.util.internal.Hidden (netty-common optional dependency)
|
// from io.netty.util.internal.Hidden (netty-common optional dependency)
|
||||||
'reactor.blockhound.BlockHound$Builder',
|
'reactor.blockhound.BlockHound$Builder',
|
||||||
|
@ -246,14 +250,23 @@ tasks.named("thirdPartyAudit").configure {
|
||||||
// it uses NIO
|
// it uses NIO
|
||||||
'io.netty.channel.kqueue.KQueue',
|
'io.netty.channel.kqueue.KQueue',
|
||||||
'io.netty.channel.kqueue.KQueueDatagramChannel',
|
'io.netty.channel.kqueue.KQueueDatagramChannel',
|
||||||
|
'io.netty.channel.kqueue.KQueueDomainSocketChannel',
|
||||||
'io.netty.channel.kqueue.KQueueEventLoopGroup',
|
'io.netty.channel.kqueue.KQueueEventLoopGroup',
|
||||||
|
'io.netty.channel.kqueue.KQueueServerDomainSocketChannel',
|
||||||
'io.netty.channel.kqueue.KQueueServerSocketChannel',
|
'io.netty.channel.kqueue.KQueueServerSocketChannel',
|
||||||
'io.netty.channel.kqueue.KQueueSocketChannel',
|
'io.netty.channel.kqueue.KQueueSocketChannel',
|
||||||
'io.netty.channel.epoll.Epoll',
|
'io.netty.channel.epoll.Epoll',
|
||||||
'io.netty.channel.epoll.EpollDatagramChannel',
|
'io.netty.channel.epoll.EpollDatagramChannel',
|
||||||
|
'io.netty.channel.epoll.EpollDomainSocketChannel',
|
||||||
'io.netty.channel.epoll.EpollEventLoopGroup',
|
'io.netty.channel.epoll.EpollEventLoopGroup',
|
||||||
|
'io.netty.channel.epoll.EpollServerDomainSocketChannel',
|
||||||
'io.netty.channel.epoll.EpollServerSocketChannel',
|
'io.netty.channel.epoll.EpollServerSocketChannel',
|
||||||
'io.netty.channel.epoll.EpollSocketChannel',
|
'io.netty.channel.epoll.EpollSocketChannel',
|
||||||
|
'io.netty.incubator.channel.uring.IOUring',
|
||||||
|
'io.netty.incubator.channel.uring.IOUringDatagramChannel',
|
||||||
|
'io.netty.incubator.channel.uring.IOUringEventLoopGroup',
|
||||||
|
'io.netty.incubator.channel.uring.IOUringServerSocketChannel',
|
||||||
|
'io.netty.incubator.channel.uring.IOUringSocketChannel',
|
||||||
|
|
||||||
// from reactor.netty.http.server.HttpServer (reactor-netty)
|
// from reactor.netty.http.server.HttpServer (reactor-netty)
|
||||||
'io.netty.handler.codec.haproxy.HAProxyMessage',
|
'io.netty.handler.codec.haproxy.HAProxyMessage',
|
||||||
|
@ -265,7 +278,8 @@ tasks.named("thirdPartyAudit").configure {
|
||||||
|
|
||||||
'org.slf4j.impl.StaticLoggerBinder',
|
'org.slf4j.impl.StaticLoggerBinder',
|
||||||
'org.slf4j.impl.StaticMDCBinder',
|
'org.slf4j.impl.StaticMDCBinder',
|
||||||
'org.slf4j.impl.StaticMarkerBinder'
|
'org.slf4j.impl.StaticMarkerBinder',
|
||||||
|
'com.ctc.wstx.shaded.msv_core.driver.textui.Driver',
|
||||||
)
|
)
|
||||||
|
|
||||||
if (BuildParams.runtimeJavaVersion <= JavaVersion.VERSION_1_8) {
|
if (BuildParams.runtimeJavaVersion <= JavaVersion.VERSION_1_8) {
|
||||||
|
@ -281,8 +295,6 @@ tasks.named("thirdPartyAudit").configure {
|
||||||
)
|
)
|
||||||
} else {
|
} else {
|
||||||
ignoreMissingClasses(
|
ignoreMissingClasses(
|
||||||
'com.sun.org.apache.xml.internal.resolver.Catalog',
|
|
||||||
'com.sun.org.apache.xml.internal.resolver.tools.CatalogResolver',
|
|
||||||
'javax.activation.DataHandler',
|
'javax.activation.DataHandler',
|
||||||
'javax.activation.DataSource',
|
'javax.activation.DataSource',
|
||||||
'javax.xml.bind.JAXBElement',
|
'javax.xml.bind.JAXBElement',
|
||||||
|
@ -333,11 +345,7 @@ tasks.named("thirdPartyAudit").configure {
|
||||||
'io.netty.util.internal.shaded.org.jctools.util.UnsafeAccess',
|
'io.netty.util.internal.shaded.org.jctools.util.UnsafeAccess',
|
||||||
'io.netty.util.internal.shaded.org.jctools.util.UnsafeRefArrayAccess',
|
'io.netty.util.internal.shaded.org.jctools.util.UnsafeRefArrayAccess',
|
||||||
|
|
||||||
'reactor.core.publisher.MultiProducerRingBuffer',
|
|
||||||
'reactor.core.publisher.RingBufferFields',
|
|
||||||
'reactor.core.publisher.Traces$SharedSecretsCallSiteSupplierFactory$TracingException',
|
'reactor.core.publisher.Traces$SharedSecretsCallSiteSupplierFactory$TracingException',
|
||||||
'reactor.core.publisher.UnsafeSequence',
|
|
||||||
'reactor.core.publisher.UnsafeSupport'
|
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
boolean useFixture = false
|
boolean useFixture = false
|
||||||
|
|
|
@ -1 +0,0 @@
|
||||||
d5e1258ba153b5e27c90b7c9cad262e6fc171d24
|
|
|
@ -0,0 +1 @@
|
||||||
|
4942bfa35a89a1fc9cabd18427a9b450d392215b
|
|
@ -1 +0,0 @@
|
||||||
1c72bdc36faad65f53dd160becc38dd93a7356e2
|
|
|
@ -0,0 +1 @@
|
||||||
|
b78134e2715eaef150ae3786806ff640bd0439ba
|
|
@ -0,0 +1 @@
|
||||||
|
ac89edaa19ee481c832970e944af16b3b772881a
|
|
@ -0,0 +1 @@
|
||||||
|
61b336d02e1d8839d68db47d884574fe41535e04
|
|
@ -1 +0,0 @@
|
||||||
42d0439a676e51bb1dea809c60e8a925bb07477c
|
|
|
@ -0,0 +1 @@
|
||||||
|
39733586ba04415ce64b186e17e1f8d9e28f2972
|
|
@ -1 +0,0 @@
|
||||||
6ae6028aff033f194c9710ad87c224ccaadeed6c
|
|
|
@ -0,0 +1 @@
|
||||||
|
0a770cc4c0a1fb0bfd8a150a6a0004e42bc99fca
|
|
@ -1 +0,0 @@
|
||||||
76e9152e93d4cf052f93a64596f633ba5b1c8ed9
|
|
|
@ -0,0 +1 @@
|
||||||
|
5f9d79e09ebf5d54a46e9f4543924cf7ae7654e0
|
|
@ -1 +0,0 @@
|
||||||
ffd80322264922e7edb6b35139ec1f2f55824156
|
|
|
@ -0,0 +1 @@
|
||||||
|
dac1d21b5fe602d492273d35eb28918a91fc5412
|
|
@ -1 +0,0 @@
|
||||||
de00203e6fee3493c8978a0064a3dda2e8373545
|
|
|
@ -0,0 +1 @@
|
||||||
|
00012e36d12f47b4648e2cfe0b12bdcc2c4649bf
|
|
@ -1 +0,0 @@
|
||||||
68364602aed552c0dcfc5743b393bad95c85b009
|
|
|
@ -0,0 +1 @@
|
||||||
|
f226bd0766b4e81493822e8c81eaa6cab27e589f
|
|
@ -1 +0,0 @@
|
||||||
8e819a81bca88d1e88137336f64531a53db0a4ad
|
|
|
@ -0,0 +1 @@
|
||||||
|
40028ce5ac7c43f1c9a1439f74637cad04013e23
|
|
@ -1 +0,0 @@
|
||||||
20218de83c906348283f548c255650fd06030424
|
|
|
@ -0,0 +1 @@
|
||||||
|
d4d2fccea88c80e56d59ce1053c53df0f9f4f5db
|
|
@ -0,0 +1 @@
|
||||||
|
91c445232b12e13bf6757579a39bab81e1233af5
|
|
@ -1 +0,0 @@
|
||||||
4f30dbc462b26c588dffc0eb7552caef1a0f549e
|
|
|
@ -0,0 +1 @@
|
||||||
|
f8c9b159dcb76452dc98a370a5511ff993670419
|
|
@ -1 +0,0 @@
|
||||||
ca35293757f80cd2460c80791757db261615dbe7
|
|
|
@ -0,0 +1 @@
|
||||||
|
294e90696d8d6e20c889511d2484b37158cb9caa
|
|
@ -1 +0,0 @@
|
||||||
df75527823f9fd13f6bd9d9098bd9eb786dcafb5
|
|
|
@ -0,0 +1 @@
|
||||||
|
97707b764c9287836dcf626dd03c81f3bbfc86c6
|
|
@ -1 +0,0 @@
|
||||||
927c8563a1662d869b145e70ce82ad89100f2c90
|
|
|
@ -0,0 +1 @@
|
||||||
|
e1206b46384d4dcbecee2901f18ce65ecf02e8a4
|
|
@ -1 +0,0 @@
|
||||||
c73443adb9d085d5dc2d5b7f3bdd91d5963976f7
|
|
|
@ -0,0 +1 @@
|
||||||
|
879a43c2325b08e92e8967218b6ddb0ed4b7a0d3
|
|
@ -1 +0,0 @@
|
||||||
6a2064cc62c7d18719742e1e101199c04c66356c
|
|
|
@ -0,0 +1 @@
|
||||||
|
d8cbdc537d75f219c04a057b984b2f0b55c1dbff
|
|
@ -1 +0,0 @@
|
||||||
eb81e1f0eaa99e75983bf3d28cae2b103e0f3a34
|
|
|
@ -0,0 +1 @@
|
||||||
|
d07cd47c101dfa655d6d5cc304d523742fd78ca8
|
|
@ -0,0 +1 @@
|
||||||
|
f44dc8ed52ff8528a88c157879c9baffe464fa46
|
|
@ -1 +0,0 @@
|
||||||
415ea7f326635743aec952fe2349ca45959e94a7
|
|
|
@ -0,0 +1 @@
|
||||||
|
09a8bbe1ba082c9434e6f524d3864a53f340f2df
|
|
@ -0,0 +1 @@
|
||||||
|
85bd91382ec54b300ad3ff59efccbb4fccb22a88
|
|
@ -1 +0,0 @@
|
||||||
f5787f994a9a810c0986418232e06fcf4afc1216
|
|
|
@ -0,0 +1 @@
|
||||||
|
c8adeb48f74b16c2dfb4f06a880820b9eaed50cf
|
|
@ -1 +0,0 @@
|
||||||
41022546d07f1499fb9d8617bba4a1a89d3549db
|
|
|
@ -0,0 +1 @@
|
||||||
|
82e9508698715725c3e1882d3056cd3a743d6bfc
|
|
@ -0,0 +1 @@
|
||||||
|
c24e7e989913d50c2ed592892e55ce1284364ac4
|
|
@ -0,0 +1 @@
|
||||||
|
6a76dd233bdb1e6dc5364ae1b5c8627c2cb0288f
|
|
@ -1 +0,0 @@
|
||||||
bbd163bbdb4d6340298b61a6789cc174fb589868
|
|
|
@ -0,0 +1 @@
|
||||||
|
16b9f8ab972e67eb21872ea2c40046249d543989
|
|
@ -28,6 +28,7 @@ import io.netty.buffer.PooledByteBufAllocator;
|
||||||
import io.netty.channel.ChannelOption;
|
import io.netty.channel.ChannelOption;
|
||||||
import io.netty.channel.EventLoopGroup;
|
import io.netty.channel.EventLoopGroup;
|
||||||
import io.netty.channel.nio.NioEventLoopGroup;
|
import io.netty.channel.nio.NioEventLoopGroup;
|
||||||
|
import io.netty.resolver.DefaultAddressResolverGroup;
|
||||||
import org.apache.logging.log4j.LogManager;
|
import org.apache.logging.log4j.LogManager;
|
||||||
import org.apache.logging.log4j.Logger;
|
import org.apache.logging.log4j.Logger;
|
||||||
import org.elasticsearch.common.component.AbstractLifecycleComponent;
|
import org.elasticsearch.common.component.AbstractLifecycleComponent;
|
||||||
|
@ -87,6 +88,7 @@ class AzureClientProvider extends AbstractLifecycleComponent {
|
||||||
private final EventLoopGroup eventLoopGroup;
|
private final EventLoopGroup eventLoopGroup;
|
||||||
private final ConnectionProvider connectionProvider;
|
private final ConnectionProvider connectionProvider;
|
||||||
private final ByteBufAllocator byteBufAllocator;
|
private final ByteBufAllocator byteBufAllocator;
|
||||||
|
private final reactor.netty.http.client.HttpClient nettyHttpClient;
|
||||||
private final ClientLogger clientLogger = new ClientLogger(AzureClientProvider.class);
|
private final ClientLogger clientLogger = new ClientLogger(AzureClientProvider.class);
|
||||||
private volatile boolean closed = false;
|
private volatile boolean closed = false;
|
||||||
|
|
||||||
|
@ -94,12 +96,14 @@ class AzureClientProvider extends AbstractLifecycleComponent {
|
||||||
String reactorExecutorName,
|
String reactorExecutorName,
|
||||||
EventLoopGroup eventLoopGroup,
|
EventLoopGroup eventLoopGroup,
|
||||||
ConnectionProvider connectionProvider,
|
ConnectionProvider connectionProvider,
|
||||||
ByteBufAllocator byteBufAllocator) {
|
ByteBufAllocator byteBufAllocator,
|
||||||
|
reactor.netty.http.client.HttpClient nettyHttpClient) {
|
||||||
this.threadPool = threadPool;
|
this.threadPool = threadPool;
|
||||||
this.reactorExecutorName = reactorExecutorName;
|
this.reactorExecutorName = reactorExecutorName;
|
||||||
this.eventLoopGroup = eventLoopGroup;
|
this.eventLoopGroup = eventLoopGroup;
|
||||||
this.connectionProvider = connectionProvider;
|
this.connectionProvider = connectionProvider;
|
||||||
this.byteBufAllocator = byteBufAllocator;
|
this.byteBufAllocator = byteBufAllocator;
|
||||||
|
this.nettyHttpClient = nettyHttpClient;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int eventLoopThreadsFromSettings(Settings settings) {
|
static int eventLoopThreadsFromSettings(Settings settings) {
|
||||||
|
@ -117,7 +121,7 @@ class AzureClientProvider extends AbstractLifecycleComponent {
|
||||||
final TimeValue openConnectionTimeout = OPEN_CONNECTION_TIMEOUT.get(settings);
|
final TimeValue openConnectionTimeout = OPEN_CONNECTION_TIMEOUT.get(settings);
|
||||||
final TimeValue maxIdleTime = MAX_IDLE_TIME.get(settings);
|
final TimeValue maxIdleTime = MAX_IDLE_TIME.get(settings);
|
||||||
|
|
||||||
ConnectionProvider provider =
|
ConnectionProvider connectionProvider =
|
||||||
ConnectionProvider.builder("azure-sdk-connection-pool")
|
ConnectionProvider.builder("azure-sdk-connection-pool")
|
||||||
.maxConnections(MAX_OPEN_CONNECTIONS.get(settings))
|
.maxConnections(MAX_OPEN_CONNECTIONS.get(settings))
|
||||||
.pendingAcquireMaxCount(PENDING_CONNECTION_QUEUE_SIZE) // This determines the max outstanding queued requests
|
.pendingAcquireMaxCount(PENDING_CONNECTION_QUEUE_SIZE) // This determines the max outstanding queued requests
|
||||||
|
@ -127,9 +131,22 @@ class AzureClientProvider extends AbstractLifecycleComponent {
|
||||||
|
|
||||||
ByteBufAllocator pooledByteBufAllocator = createByteBufAllocator();
|
ByteBufAllocator pooledByteBufAllocator = createByteBufAllocator();
|
||||||
|
|
||||||
|
reactor.netty.http.client.HttpClient nettyHttpClient = reactor.netty.http.client.HttpClient.create(connectionProvider)
|
||||||
|
.runOn(eventLoopGroup)
|
||||||
|
.option(ChannelOption.ALLOCATOR, pooledByteBufAllocator)
|
||||||
|
.resolver(DefaultAddressResolverGroup.INSTANCE)
|
||||||
|
.port(80)
|
||||||
|
.wiretap(false);
|
||||||
|
|
||||||
// Just to verify that this executor exists
|
// Just to verify that this executor exists
|
||||||
threadPool.executor(REPOSITORY_THREAD_POOL_NAME);
|
threadPool.executor(REPOSITORY_THREAD_POOL_NAME);
|
||||||
return new AzureClientProvider(threadPool, REPOSITORY_THREAD_POOL_NAME, eventLoopGroup, provider, pooledByteBufAllocator);
|
return new AzureClientProvider(threadPool,
|
||||||
|
REPOSITORY_THREAD_POOL_NAME,
|
||||||
|
eventLoopGroup,
|
||||||
|
connectionProvider,
|
||||||
|
pooledByteBufAllocator,
|
||||||
|
nettyHttpClient
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
private static ByteBufAllocator createByteBufAllocator() {
|
private static ByteBufAllocator createByteBufAllocator() {
|
||||||
|
@ -160,17 +177,6 @@ class AzureClientProvider extends AbstractLifecycleComponent {
|
||||||
throw new IllegalStateException("AzureClientProvider is already closed");
|
throw new IllegalStateException("AzureClientProvider is already closed");
|
||||||
}
|
}
|
||||||
|
|
||||||
reactor.netty.http.client.HttpClient nettyHttpClient = reactor.netty.http.client.HttpClient.create(connectionProvider);
|
|
||||||
nettyHttpClient = nettyHttpClient
|
|
||||||
.port(80)
|
|
||||||
.wiretap(false);
|
|
||||||
|
|
||||||
nettyHttpClient = nettyHttpClient.tcpConfiguration(tcpClient -> {
|
|
||||||
tcpClient = tcpClient.runOn(eventLoopGroup);
|
|
||||||
tcpClient = tcpClient.option(ChannelOption.ALLOCATOR, byteBufAllocator);
|
|
||||||
return tcpClient;
|
|
||||||
});
|
|
||||||
|
|
||||||
final HttpClient httpClient = new NettyAsyncHttpClientBuilder(nettyHttpClient)
|
final HttpClient httpClient = new NettyAsyncHttpClientBuilder(nettyHttpClient)
|
||||||
.disableBufferCopy(true)
|
.disableBufferCopy(true)
|
||||||
.proxy(proxyOptions)
|
.proxy(proxyOptions)
|
||||||
|
|
|
@ -34,6 +34,8 @@ import org.elasticsearch.threadpool.ScalingExecutorBuilder;
|
||||||
import org.elasticsearch.threadpool.ThreadPool;
|
import org.elasticsearch.threadpool.ThreadPool;
|
||||||
import org.elasticsearch.watcher.ResourceWatcherService;
|
import org.elasticsearch.watcher.ResourceWatcherService;
|
||||||
|
|
||||||
|
import java.security.AccessController;
|
||||||
|
import java.security.PrivilegedAction;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
|
@ -53,6 +55,17 @@ public class AzureRepositoryPlugin extends Plugin implements RepositoryPlugin, R
|
||||||
// Trigger static initialization with the plugin class loader
|
// Trigger static initialization with the plugin class loader
|
||||||
// so we have access to the proper xml parser
|
// so we have access to the proper xml parser
|
||||||
JacksonAdapter.createDefaultSerializerAdapter();
|
JacksonAdapter.createDefaultSerializerAdapter();
|
||||||
|
|
||||||
|
// Even though we don't use it, we need to force static init
|
||||||
|
// of the default resolver which reads /etc/hosts so it doesn't init later
|
||||||
|
AccessController.doPrivileged((PrivilegedAction<Void>) () -> {
|
||||||
|
try {
|
||||||
|
Class.forName("io.netty.resolver.HostsFileEntriesResolver");
|
||||||
|
} catch (Exception e) {
|
||||||
|
throw new RuntimeException(e);
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
// protected for testing
|
// protected for testing
|
||||||
|
|
|
@ -14,4 +14,9 @@ grant {
|
||||||
// Used by jackson bean deserialization
|
// Used by jackson bean deserialization
|
||||||
permission java.lang.RuntimePermission "accessDeclaredMembers";
|
permission java.lang.RuntimePermission "accessDeclaredMembers";
|
||||||
permission java.lang.reflect.ReflectPermission "suppressAccessChecks";
|
permission java.lang.reflect.ReflectPermission "suppressAccessChecks";
|
||||||
|
// needed by netty dns resolver
|
||||||
|
permission java.io.FilePermission "/etc/hosts", "read";
|
||||||
|
permission java.io.FilePermission "/etc/resolv.conf", "read";
|
||||||
|
permission java.io.FilePermission "/etc/resolver", "read";
|
||||||
|
permission java.io.FilePermission "/etc/resolver/-", "read";
|
||||||
};
|
};
|
||||||
|
|
|
@ -1 +0,0 @@
|
||||||
6ae6028aff033f194c9710ad87c224ccaadeed6c
|
|
|
@ -0,0 +1 @@
|
||||||
|
0a770cc4c0a1fb0bfd8a150a6a0004e42bc99fca
|
|
@ -1 +0,0 @@
|
||||||
76e9152e93d4cf052f93a64596f633ba5b1c8ed9
|
|
|
@ -0,0 +1 @@
|
||||||
|
5f9d79e09ebf5d54a46e9f4543924cf7ae7654e0
|
|
@ -123,6 +123,8 @@ tasks.named("thirdPartyAudit").configure {
|
||||||
'io.netty.internal.tcnative.CertificateVerifier',
|
'io.netty.internal.tcnative.CertificateVerifier',
|
||||||
'io.netty.internal.tcnative.SessionTicketKey',
|
'io.netty.internal.tcnative.SessionTicketKey',
|
||||||
'io.netty.internal.tcnative.SniHostNameMatcher',
|
'io.netty.internal.tcnative.SniHostNameMatcher',
|
||||||
|
'io.netty.internal.tcnative.SSLSession',
|
||||||
|
'io.netty.internal.tcnative.SSLSessionCache',
|
||||||
|
|
||||||
'reactor.blockhound.BlockHound$Builder',
|
'reactor.blockhound.BlockHound$Builder',
|
||||||
'reactor.blockhound.integration.BlockHoundIntegration'
|
'reactor.blockhound.integration.BlockHoundIntegration'
|
||||||
|
|
|
@ -1 +0,0 @@
|
||||||
8e819a81bca88d1e88137336f64531a53db0a4ad
|
|
|
@ -0,0 +1 @@
|
||||||
|
40028ce5ac7c43f1c9a1439f74637cad04013e23
|
|
@ -1 +0,0 @@
|
||||||
20218de83c906348283f548c255650fd06030424
|
|
|
@ -0,0 +1 @@
|
||||||
|
d4d2fccea88c80e56d59ce1053c53df0f9f4f5db
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue