This is an automated email from the ASF dual-hosted git repository.
martijnvisser pushed a change to branch main
in repository
https://gitbox.apache.org/repos/asf/flink-connector-elasticsearch.git
from e512aab [hotfix] Add correct labels for flink-connector-elasticsearch
repo
new b938f5b [FLINK-4988] [elasticsearch] Restructure Elasticsearch
connectors
new 51e2770 [FLINK-5122] [elasticsearch] Retry temporary Elasticsearch
request errors.
new c742016 [FLINK-5353] [elasticsearch] User-provided failure handler
for ElasticsearchSink
new f136f0d [FLINK-5487] [elasticsearch] At-least-once Elasticsearch Sink
new 065e142 [hotfix] [build] Remove unneeded logback-test.xml files
new 50a296c Update Flink version to 1.4-SNAPSHOT
new 538b29a [FLINK-6414] [build] Use scala.binary.version in place of
change-scala-version.sh
new 5587867 [FLINK-6711] Activate strict checkstyle for
flink-elasticsearch*
new 405115b [FLINK-7133] Exclude optional asm deps from Elasticsearch
base module
new 265da6d [FLINK-7150] [elasticsearch connector] Various code cleanups
in the ElasticSearch connector
new 8d8275f [FLINK-7409] [web] Make WebRuntimeMonitor reactive
new 184e35a [hotfix][docs][javadocs] Remove double "the"
new f644424 Update version to 1.5-SNAPSHOT
new e695742 [hotfix] Fix many many typos
new 36e6f73 [FLINK-7909] Replace StreamingMultipleProgramsTestBase by
AbstractTestBase
new de7230d [FLINK-8199] [elasticsearch] Properly annotate APIs of
Elasticsearch connector
new 6af1ff5 [FLINK-8489][ES] Prevent side-effects when modifying
user-config
new 43ef5f3 Update version to 1.6-SNAPSHOT
new daab40c Update version to 1.7-SNAPSHOT
new 9cc0812 [FLINK-7386] [elasticsearch] Evolve ES connector API to make
it working with Elasticsearch 5.3+
new ba2e8e4 [FLINK-8101] [elasticsearch] Elasticsearch 6.X REST support
new ef68e45 [FLINK-9885] [elasticsearch] Major cleanup to finalize
Elasticsearch 6.x connector
new f84fb8d [FLINK-10269] [connectors] Fix Elasticsearch 6 UpdateRequest
binary incompatibility
new 069c931 [hotfix] [connectors] Remove unused BulkProcessorIndexer class
new 3f49fa5 [FLINK-3875] [connectors] Add an upsert table sink factory
for Elasticsearch
new 58f4f02 [FLINK-10208][build] Bump mockito to 2.21.0 / powermock to
2.0.0-beta.5
new c22dbfb [FLINK-10687] [table] Move TableSchema to flink-table-common
new 2189779 [FLINK-10687] [table] Move DescriptorProperties to
flink-table-common
new 53fc4bc [FLINK-10687] [table] Move format descriptors and validators
to flink-table-common
new 0e00f36 [FLINK-10681] Harden ElasticsearchSinkITCase against wrong
JNA library
new 5af2f71 Update version to 1.8-SNAPSHOT
new 61cc911 [FLINK-11080][ES] Rework shade-plugin filters
new b289511 [FLINK-11026][ES6] Rework creation of fat sql-client jar
new 4ddb8ce [FLINK-11023][ES] Add NOTICE file
new 42db6f5 [hotfix][ES6][SQL] Remove unused version property
new 3e6dc5e [FLINK-11064] [table] Setup a new flink-table module structure
new 3274542 [FLINK-11450][table] Port and move TableSource and TableSink
related classes to flink-table-common
new 1531207 [FLINK-11046] [elasticsearch] Fix ElasticsearchSink deadlock
when index failed with retry
new 64ebba4 [FLINK-11046] [elasticsearch] Simplify failure handler
indexer implementation
new 1a2b0c8 [FLINK-11046] [elasticsearch] Always re-index buffered failed
requests on snapshot
new d85a453 [hotfix] [elasticsearch] Replace implementation of deprecated
invoke method in ElasticsearchSinkBase
new d136214 Update version to 1.9-SNAPSHOT
new 82ec7d0 [FLINK-11516][table-common] Port and move catalog transitive
classes to flink-table-common
new 66e13cf [FLINK-11901][build] Update NOTICE files with year 2019
new 5c9dbe8 [FLINK-12151][es1] Remove Elasticsearch 1 connector
new edae415 [FLINK-11067][table] port Schema, Rowtime,
SchematicDescriptor, RegistrableDescriptor etc.
new 581f89b [hotfix] [connectors] Fix shadowed NPE in elasticsearch sink
connector
new 407810d [FLINK-12985][core][streaming] Rename StreamTransformation to
org.apache.flink.api.dag.Transformation
new f7fa93d [FLINK-12961][datastream] Add internal
StreamExecutionEnvironment.execute(StreamGraph)
new 9ff47e4 Update version to 1.10-SNAPSHOT
new d81693e [FLINK-13341][table][connectors]
StreamTableSink#consumeDataStream returns DataStreamSink when using blink
planner.
new 5b46b65 [FLINK-13544][connectors] Set parallelism of table sink
operator to input transformation parallelism
new 188ea91 [hotfix][build] Use parent's maven-surefire-plugin version in
elasticsearch6 connector
new 66c4f42 [FLINK-14334][es][docs] Use ExceptionUtils#findThrowable
new 3258b09 [FLINK-13025] Elasticsearch 7.x support
new ad9c32c [FLINK-13025] In ES7 SQL connector, update shading rules and
NOTICE
new 5b2ba61 [hotfix][kafka][es] Add missing @PublicEvolving annotation on
Kafka and Elasticsearch descriptor class
new df5617c [FLINK-14395] Refactor ES 7 connectors to make them keep
consistency with es 6 connectors
new e13a535 [FLINK-14104][build] Pin jackson version to 2.10.1
new 90fd1ca [FLINK-14645][connectors] Support new schema properties for
SQL connectors
new bd2991f [FLINK-14649][kafka][es] Flatten all the connector properties
keys to make it easy to configure in DDL (#10468)
new f175bc0 Update version to 1.11-SNAPSHOT
new 9104e4b [FLINK-15191][table][connectors] Fix connector factories that
CREATE TABLE DDL can't work if watermark or computed column is defined
new 69f4a89 [FLINK-14853][core] Implemented MemorySize formatting
new d05eb5e [FLINK-15558][Connector] Bump Elasticsearch version from
7.3.2 to 7.5.1 for es7 connector
new 8aef90b [FLINK-13689] [Connectors/ElasticSearch] Fix thread leak in
Elasticsearch connector when cluster is down
new 9ea5ce4 [FLINK-15868][kinesis] Resolve version conflict between
jackson-core and jackson-dataformat-cbor
new 4f51c69 [FLINK-15868] Pin jackson-dataformat-smile dependency to
2.10.1
new c58692c [FLINK-15868] Pin jackson-dataformat-yaml dependency to 2.10.1
new d9c144e [hotfix][es][tests] Remove unused variable
new c32d034 [hotfix][es][tests] Refactor utils
new a8c9192 [FLINK-15868][es] Add tests for different formats
new f23fa0f [FLINK-15992][kafka][es] Use thread context classloader when
finding TableFormatFactory (#11064)
new ddd0cd4 [FLINK-16046][es] Drop Elasticsearch 2 connector
new 7a6a20d [FLINK-15988][json] Make JsonRowSerializationSchema's
constructor private (#11080)
new 67e69fb [hotfix] Revert "[FLINK-15992][kafka][es] Use thread context
classloader when finding TableFormatFactory (#11064)"
new a83c313 [FLINK-15672][build] Migrate to log4j2
new 64f1a98 [FLINK-15672][build][tests] Migrate test log4j configurations
to log4j2
new ad37661 [FLINK-16186][es][tests] Reduce connect timeout to 5 seconds
new d94dede [FLINK-16287][es][build] Remove Log4j2 relocation
new dbc7f4c [FLINK-16362][table] Remove deprecated `emitDataStream`
method in StreamTableSink
new 585dab9 [FLINK-11720][connectors] Bump ElasticSearch5 to 5.3.3
new b4360a7 [FLINK-16454][build] Update the copyright with 2020 year in
NOTICE files
new 3c12b79 [FLINK-16170][elasticsearch] Fix SearchTemplateRequest
ClassNotFoundException when using flink-sql-connector-elasticsearch7
new d1fc8cb [FLINK-15400][elasticsearch] Support dynamic index for
Elasticsearch sink connector
new a63c764 [FLINK-17483][legal] Update
flink-sql-connector-elasticsearch7 NOTICE file to correctly reflect bundled
dependencies
new dc140af [FLINK-17027] Introduce a new Elasticsearch 7 connector with
new property keys
new b1052f9 [FLINK-17027] Introduce a new Elasticsearch 6 connector with
new property keys
new 8c905b4 Update version to 1.12-SNAPSHOT
new 1f219e2 [FLINK-17027][hotfix] Rename back-off infix to backoff in new
Elasticsearch properties
new 47edf0a [FLINK-16021][table-common] Fix
DescriptorProperties.putTableSchema does not include PRIMARY KEY
new 167728a [FLINK-17887][table][connector] Improve interface of
ScanFormatFactory and SinkFormatFactory
new 0243823 [FLINK-18052] Increase timeout for ES Search API in IT Cases
new bfaa761 [FLINK-18006] Always overwrite RestClientFactory in
ElasticsearchXDynamicSink
new 2407f68 [FLINK-18208] Fix flink ES connector typos
new 19f2513 [FLINK-16495][elasticsearch][table] Improve default flush
strategy for new Elasticsearch sink for better out-of-box
new 35bebb5 [FLINK-18277][elasticsearch] Fix the returned value of
Elasticsearch6DynamicSink#asSummaryString()
new 9f816ec [FLINK-17623][elasticsearch] Support user resource cleanup in
ElasticsearchSinkFunction
new 5128782 [FLINK-18299][json] Fix the non SQL standard timestamp format
in JSON format
new bc5bc2f [FLINK-18236] fix es connector test
ElasticsearchSinkTestBase.runElasticsearchSink* verify not right.
new 6c54bfa [FLINK-18359] Log failures in handler instead of
ElasticsearchSinkBase
new 1cc57b3 [FLINK-14938] Use ConcurrentLinkedQueue in
BufferingNoOpRequestIndexer
new 349d72f [hotfix][elasticsearch] Fix validation message for
'sink.bulk-flush.max-actions' of Elasticsearch
new 37a8013 [FLINK-18361][es][table] Support username and password
options for new Elasticsearch connector
new b057c1b [FLINK-18585][elasticsearch] Fix dynamic index doesn't work
in new elasticsearch table sink
new 312ffc0 [FLINK-18583][elasticsearch] Fix ElasticSearch6 sink uses
index as document id
new 8146b0f [FLINK-18607][build] Give the maven module a human readable
name
new 3f9b642 [hoxfix] Fix various typos
new 39674bf [FLINK-17159] Harden ElasticsearchSinkITCase
new d385ff1 [FLINK-18337][table] Introduce TableResult#await method to
block until data is ready or job finished
new 22b1613 [FLINK-17159] Add sanity check to ES6 ElasticsearchSinkITCase
new 58b5226 [FLINK-19243][elasticsearch] Bump snakeyaml to 1.27
new 07ad3f6 [FLINK-19341][table] Update all API related methods to
FLIP-107
new 7903a88 [FLINK-19485] Add the Transformation.getInputs() method
new ff40ed0 [hotfix] Make Transformation.getTransitivePredecessors()
return a list
new f73bc1b [FLINK-18999][table-common][table-planner-blink] Add
isTemporary flag to table factory context
new 3c0acf9 [FLINK-19459] Add snakeyaml to dependencyManagement
new e76358a [FLINK-19781] Upgrade commons-codec to 1.13
new 36fcdb7 [FLINK-17159] Use testcontainers for Elasticsearch ITCases
new 8ed877b Update version to 1.13-SNAPSHOT
new 36d5eb0 [hotfix][elasticsearch] Fix javadoc of
Elasticsearch6Configuration
new 171d7f4 [FLINK-20651] Format code with Spotless/google-java-format
new 75c3773 [FLINK-20711][docs] Fix failure-handler parameter enumeration
value typo in ES connector doc
new a3d935b [FLINK-20906][legal] Update copyright year to 2021 for NOTICE
files.
new ba2dec0 [FLINK-20862] Make raw types of TypeInformation resolvable
new 98f4f01 [FLINK-21009] Can not disable certain options in
Elasticsearch 7 connector
new 2d14644 [FLINK-21020][build] Bump Jackson to 2.12.1
new 94389dd [FLINK-21277] Bump testcontainers version
new e186824 [FLINK-21396][table-planner-blink] Use ResolvedCatalogTable
within the planner
new 0c8380d [FLINK-21913][table][connectors] Update
DynamicTableFactory.Context to use ResolvedCatalogTable
new 3bce2e4 Update version to 1.14-SNAPSHOT
new 03ba66e [FLINK-22471][connector-elasticsearch] Remove commads from
list
new b3f681c [FLINK-22471][connector-elasticsearch] Do not repeat default
value
new 73b42b7 [FLINK-22810][connector-elasticsearch] Drop usages of legacy
planner in Elasticsearch modules
new 14be300 [FLINK-22744][table] Update and simplify EnvironmentSettings
new 3cf2376 [FLINK-21448] Add dependency for ChangelogStateBackend ITTests
new 5c92e0a [FLINK-22879][table] Rename flink-table-planner-blink to
flink-table-planner
new d69fb6a [FLINK-23064][connector-elasticsearch] Make connector options
PublicEvolving
new c9dc67b [FLINK-18783] Load Akka with separate classloader
new 823e184 Revert "[FLINK-18783] Load Akka with separate classloader"
new 0b0089c [FLINK-22386][tests] Cache docker images
new 18df4d5 [FLINK-18783] Load Akka with separate classloader
new ad79f02 [FLINK-23438] Bump httpclient from 4.5.3 and 4.5.9 to 4.5.13
+ Bump httpcore from 4.4.6 and 4.5.11 to 4.4.14
new c4a8899 [FLINK-25313][connector-elasticsearch] Remove legacy
Elasticseach connector
new 0e5e086 [hotfix][test/testcontainers] Use Testcontainer BOM to manage
versions in the project
new 3709427 [hotfix][tests] Let ElasticSearch6DynamicSink tests extend
TestLogger
new e89bcb9 [FLINK-21538][tests] Set default parallelism to 4 for
Elasticsearch6DynamicSinkITCase.testWritingDocuments
new 70dd7c0 [hotfix] Let Elasticsearch7DynamicSink* test cases extend
from TestLogger
new 753cf6a [FLINK-22333][tests] Harden
Elasticsearch7DynamicSinkITCase.testWritingDocuments by setting parallelism to 4
new 0b1f385 Update version to 1.15-SNAPSHOT
new af2c321 [FLINK-24034] Upgrade apache commons dependencies
new 804982c [FLINK-23607][state/changelog] Make Changelog Backend a
transitive dependency
new c99a19c [FLINK-24399][table-common] Add
DynamicTableSource.Context#createTypeInformation(LogicalType) and
DynamicTableSink.Context#createTypeInformation(LogicalType)
new 6276d0b [FLINK-24324][connectors/elasticsearch] Add Elasticsearch 7
sink based on the unified sink (FLIP-143)
new e21a0b8 [FLINK-24018][build] Remove Scala dependencies from Java APIs
new 0f9499e [FLINK-24599][table] Replace static methods with convenient
methods in LogicalType
new d968de7 [FLINK-24327][connectors/elasticsearch] Integrate unified
Elasticsearch 7 sink with Table API
new 9118275 [FLINK-24715][connectors][filesystems][formats] Update
multiple Jackson dependencies to latest version
new d5b6d29 [FLINK-24583][connectors/elasticsearch] Improve teststability
by blocking until all records have been acknowledged by Elasticsearch
new 9268ec4 [FLINK-25039][build] Disable shading of test jar by default
new 3ccfce3 [FLINK-24325][connectors/elasticsearch] Remove Elasticsearch
5 from connectors
new f7a969e [FLINK-24325][connectors/elasticsearch] Extract common
unified Elasticsearch sink for versions 6 and 7
new 42bf177 [FLINK-24325][connectors/elasticsearch] Integrate common
unified Elasticsearch sink with Table API for versions 6 and 7
new f20b4f9 [FLINK-24325][connectors/elasticsearch] Migrate
KeyExtractorTest to JUnit 5 and remove dependency on deprecated TableSchema
new 61738cd [hotfix][connectors/elasticsearch] Fix license formatting
new 651b226 [hotfix][connectors/elasticsearch] Move files from
streaming.connectors.elasticsearch.table to connector.elasticsearch.table
new d4a6b54 [FLINK-24325][connectors/elasticsearch] Make
ElasticsearchSinkBuilderBase type-capturing
new 323d42e [FLINK-24596][core] Introduce SerializableFunction and unify
usages
new 1029f31 [FLINK-25060][table-common] Replace projection methods of
FLINK-24399 with the new Projection util
new bfea383 [FLINK-24687][table][connectors] Move FileSystemTableSink,
FileSystemTableSource to flink-connector-files and columnar support to
flink-table-common
new 65df945 [FLINK-24372][connectors/elasticsearch] Deprecate old (pre
FLIP-143) Elasticsearch connector
new c8a351a [FLINK-25189][connectors/elasticsearch] Bump Elasticsearch 7
to v7.15.2
new 09bd7c7 [FLINK-25189][connectors/elasticsearch] Bump Elasticsearch 6
to 6.8.20
new 616ad41 [FLINK-25223][connectors/elasticsearch] Disable Elasticsearch
7 Testcontainer tests due to frequent CI failures
new 2a49c15 [FLINK-21068][connectors/elasticsearch] Support
'connection.request-timeout','connection.timeout', 'socket.timeout' options for
elasticsearch connector.
new d0da8db [FLINK-25223][connectors/elasticsearch] Limit Elasticsearch
testcontainer memory allocation
new a2bb67c [FLINK-25105][checkpoint] Enables final checkpoint by default
new 8b8c47d [FLINK-25141][connector/elasticsearch] Add sink parallelism
option
new acd9ded [FLINK-25390][table-common] Introduce forwardOptions for
table and format factories
new 242dd03 [FLINK-25712][connectors/testing-framework] Merge
flink-connector-testing module to flink-connector-test-utils module
new 1a3deed [FLINK-25391][connector-elasticsearch] Forward catalog table
options
new 9f287e5 [FLINK-25754][elsaticsearch] Remove unused private class
new 2c24b33 [FLINK-25892][elasticsearch6][test] add ArchUnit tests for
test code
new 715f470 [FLINK-25892][elasticsearch7][test] add ArchUnit tests for
test code
new cc33284 [FLINK-25892][elasticsearch-base][test] add ArchUnit tests
for test code
new c8fd3b4 [FLINK-25571] Update Elasticsearch Sink to use decomposed
interfaces
new 1765a22 [hotfix] Fix JUnit 5 mini cluster arch unit rules
new 88ed41b [FLINK-26294][test] Using fixed description for ArchUnit
ITCaseRules
new 6ddd9ff [hotfix][tests] Add instructions for updating archunit stores
new a37bfe5 [FLINK-24571][connectors/elasticsearch] Supports a system
time function(now() and current_timestamp) in index pattern
new 23a2160 [FLINK-26252][tests] Refactor MiniClusterExtension to support
JUnit 5 parallel tests
new 47da160 [FLINK-26191][connectors/elasticsearch] Revert Elasticsearch
dependencies to 7.10.2 to keep Apache 2 license
new 7c1bacd [FLINK-25927][connectors][build] Consistent
flink-connector-base usage
new 9f7524c Update version to 1.16-SNAPSHOT
new d52135b [FLINK-26281][connectors/elasticsearch] setting default
delivery guarantee to AT_LEAST_ONCE
new d1754e1 [FLINK-26701][connectors] Revert FLINK-25927 apart from
adding connector-base to flink-dist
new b5c969d [hotfix][elasticsearch] Make TestEmitter#createIndexRequest
private
new 2be0e89 [FLINK-26633][elasticsearch] Add recordSend metric to
elasticsearch sink
new 42bc991 [FLINK-26638][connectors/elasticsearch] Revert Table-API
implementation to SinkFunction-based one
new 3fd32ef [FLINK-26709][table] Replace
TableConfig.getConfiguration.set()
new bb4b105 [FLINK-26281][connectors/elasticsearch] Remove unused
'connection.max-retry-timeout' option
new 9dd2725 [FLINK-25961] [connectors/elasticsearch] Remove transport
client from Elasticsearch 6/7 connectors (tests only)
new c0091d1 [FLINK-26884] add files about licence, gitingore,
editorconfig.
new 5a737d0 [FLINK-26884] refactoring - move Connectors to the root folder
new 868a6d6 [FLINK-26884] top level pom setup and modification of each
pom in submodules.
new 2fec3d0 [FLINK-26884] fix dependency convergence issue
new dddb211 [FLINK-26884] add @deprecated
The 207 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
Summary of changes:
.editorconfig | 276 +++
.gitignore | 38 +
LICENSE | 201 ++
NOTICE | 17 +
.../dd583797-83e1-414c-a38d-330773978813 | 6 +
.../de342dd1-c974-42c9-8f64-ef182ba8c56d | 0
.../archunit-violations/stored.rules | 4 +
flink-connector-elasticsearch-base/pom.xml | 199 ++
.../sink/BulkProcessorBuilderFactory.java | 36 +
.../elasticsearch/sink/BulkProcessorConfig.java | 72 +
.../sink/BulkRequestConsumerFactory.java | 35 +
.../elasticsearch/sink/ElasticsearchEmitter.java | 78 +
.../elasticsearch/sink/ElasticsearchSink.java | 97 +
.../sink/ElasticsearchSinkBuilderBase.java | 342 ++++
.../elasticsearch/sink/ElasticsearchWriter.java | 330 ++++
.../elasticsearch/sink/FlushBackoffType.java | 38 +
.../elasticsearch/sink/NetworkClientConfig.java | 78 +
.../elasticsearch/sink/RequestIndexer.java | 56 +
.../table/AbstractTimeIndexGenerator.java | 41 +
.../table/ElasticsearchConfiguration.java | 158 ++
.../table/ElasticsearchConnectorOptions.java | 148 ++
.../table/ElasticsearchDynamicSink.java | 228 +++
.../table/ElasticsearchDynamicSinkFactoryBase.java | 257 +++
.../table/ElasticsearchSinkBuilderSupplier.java | 26 +
.../table/ElasticsearchValidationUtils.java | 92 +
.../elasticsearch/table/IndexGenerator.java | 39 +
.../elasticsearch/table/IndexGeneratorBase.java | 52 +
.../elasticsearch/table/IndexGeneratorFactory.java | 315 +++
.../elasticsearch/table/KeyExtractor.java | 97 +
.../elasticsearch/table/LogicalTypeWithIndex.java | 31 +
.../table/RowElasticsearchEmitter.java | 107 ++
.../elasticsearch/table/StaticIndexGenerator.java | 35 +
.../elasticsearch/ActionRequestFailureHandler.java | 82 +
.../elasticsearch/BufferingNoOpRequestIndexer.java | 75 +
.../elasticsearch/ElasticsearchApiCallBridge.java | 122 ++
.../elasticsearch/ElasticsearchSinkBase.java | 525 +++++
.../elasticsearch/ElasticsearchSinkFunction.java | 83 +
.../connectors/elasticsearch/RequestIndexer.java | 84 +
.../table/AbstractTimeIndexGenerator.java | 41 +
.../table/ElasticsearchConfiguration.java | 169 ++
.../table/ElasticsearchConnectorOptions.java | 170 ++
.../table/ElasticsearchValidationUtils.java | 94 +
.../elasticsearch/table/IndexGenerator.java | 39 +
.../elasticsearch/table/IndexGeneratorBase.java | 52 +
.../elasticsearch/table/IndexGeneratorFactory.java | 312 +++
.../elasticsearch/table/KeyExtractor.java | 130 ++
.../elasticsearch/table/RequestFactory.java | 54 +
.../table/RowElasticsearchSinkFunction.java | 140 ++
.../elasticsearch/table/StaticIndexGenerator.java | 35 +
.../elasticsearch/util/IgnoringFailureHandler.java | 38 +
.../elasticsearch/util/NoOpFailureHandler.java | 54 +
.../util/RetryRejectedExecutionFailureHandler.java | 59 +
.../architecture/TestCodeArchitectureTest.java | 43 +
.../connector/elasticsearch/ElasticsearchUtil.java | 92 +
.../sink/ElasticsearchSinkBaseITCase.java | 223 +++
.../sink/ElasticsearchSinkBuilderBaseTest.java | 103 +
.../sink/ElasticsearchWriterITCase.java | 425 ++++
.../elasticsearch/sink/TestClientBase.java | 72 +
.../connector/elasticsearch/sink/TestEmitter.java | 78 +
.../table/ElasticsearchDynamicSinkBaseITCase.java | 358 ++++
.../ElasticsearchDynamicSinkFactoryBaseTest.java | 274 +++
.../elasticsearch/table/IndexGeneratorTest.java | 333 ++++
.../elasticsearch/table/KeyExtractorTest.java | 147 ++
.../connector/elasticsearch/table/TestContext.java | 72 +
.../elasticsearch/ElasticsearchSinkBaseTest.java | 742 +++++++
.../elasticsearch/ElasticsearchSinkTestBase.java | 203 ++
.../EmbeddedElasticsearchNodeEnvironment.java | 54 +
.../elasticsearch/TestRequestIndexer.java | 78 +
.../table/IndexGeneratorFactoryTest.java | 282 +++
.../elasticsearch/table/KeyExtractorTest.java | 135 ++
.../elasticsearch/table/TestContext.java | 72 +
.../testutils/ElasticsearchResource.java | 107 ++
.../testutils/SourceSinkDataTestKit.java | 155 ++
.../src/test/resources/archunit.properties | 31 +
.../src/test/resources/log4j2-test.properties | 28 +
.../25e52d29-fa7e-42fa-a571-b5c76235df52 | 0
.../db3972e4-f3a3-45b2-9643-27cba0cef09d | 12 +
.../archunit-violations/stored.rules | 4 +
flink-connector-elasticsearch6/pom.xml | 185 ++
.../sink/Elasticsearch6SinkBuilder.java | 131 ++
.../table/Elasticsearch6Configuration.java | 37 +
.../table/Elasticsearch6ConnectorOptions.java | 39 +
.../table/Elasticsearch6DynamicSinkFactory.java | 77 +
.../table/Elasticsearch6Configuration.java | 79 +
.../table/Elasticsearch6DynamicSink.java | 340 ++++
.../table/Elasticsearch6DynamicSinkFactory.java | 184 ++
.../Elasticsearch6ApiCallBridge.java | 148 ++
.../Elasticsearch6BulkProcessorIndexer.java | 85 +
.../elasticsearch6/ElasticsearchSink.java | 269 +++
.../elasticsearch6/RestClientFactory.java | 42 +
.../org.apache.flink.table.factories.Factory | 16 +
.../architecture/TestCodeArchitectureTest.java | 57 +
.../sink/Elasticsearch6SinkBuilderTest.java | 37 +
.../sink/Elasticsearch6SinkITCase.java | 52 +
.../sink/Elasticsearch6TestClient.java | 36 +
.../Elasticsearch6DynamicSinkFactoryTest.java | 55 +
.../table/Elasticsearch6DynamicSinkITCase.java | 103 +
.../Elasticsearch6DynamicSinkFactoryTest.java | 250 +++
.../table/Elasticsearch6DynamicSinkITCase.java | 400 ++++
.../table/Elasticsearch6DynamicSinkTest.java | 298 +++
.../elasticsearch6/ElasticsearchSinkITCase.java | 133 ++
.../src/test/resources/archunit.properties | 31 +
.../src/test/resources/log4j2-test.properties | 28 +
.../1af7baaa-05dc-452a-9de7-653c8b3b324f | 0
.../e1f30f33-c61c-4707-8c78-a3a80479564e | 12 +
.../archunit-violations/stored.rules | 4 +
flink-connector-elasticsearch7/pom.xml | 181 ++
.../sink/Elasticsearch7SinkBuilder.java | 133 ++
.../table/Elasticsearch7DynamicSinkFactory.java | 33 +
.../table/Elasticsearch7Configuration.java | 70 +
.../table/Elasticsearch7DynamicSink.java | 335 ++++
.../table/Elasticsearch7DynamicSinkFactory.java | 184 ++
.../Elasticsearch7ApiCallBridge.java | 152 ++
.../Elasticsearch7BulkProcessorIndexer.java | 85 +
.../elasticsearch7/ElasticsearchSink.java | 269 +++
.../elasticsearch7/RestClientFactory.java | 42 +
.../org.apache.flink.table.factories.Factory | 16 +
.../architecture/TestCodeArchitectureTest.java | 57 +
.../sink/Elasticsearch7SinkBuilderTest.java | 37 +
.../sink/Elasticsearch7SinkITCase.java | 53 +
.../sink/Elasticsearch7TestClient.java | 37 +
.../Elasticsearch7DynamicSinkFactoryTest.java | 53 +
.../table/Elasticsearch7DynamicSinkITCase.java | 97 +
.../Elasticsearch7DynamicSinkFactoryTest.java | 234 +++
.../table/Elasticsearch7DynamicSinkITCase.java | 377 ++++
.../table/Elasticsearch7DynamicSinkTest.java | 298 +++
.../elasticsearch7/ElasticsearchSinkITCase.java | 133 ++
.../src/test/resources/archunit.properties | 31 +
.../src/test/resources/log4j2-test.properties | 28 +
flink-sql-connector-elasticsearch6/pom.xml | 149 ++
.../src/main/resources/META-INF/NOTICE | 47 +
flink-sql-connector-elasticsearch7/pom.xml | 158 ++
.../src/main/resources/META-INF/NOTICE | 52 +
pom.xml | 2025 ++++++++++++++++++++
tools/maven/checkstyle.xml | 562 ++++++
tools/maven/scalastyle-config.xml | 146 ++
tools/maven/spotbugs-exclude.xml | 459 +++++
tools/maven/suppressions.xml | 85 +
138 files changed, 19756 insertions(+)
create mode 100644 .editorconfig
create mode 100644 .gitignore
create mode 100644 LICENSE
create mode 100644 NOTICE
create mode 100644
flink-connector-elasticsearch-base/archunit-violations/dd583797-83e1-414c-a38d-330773978813
create mode 100644
flink-connector-elasticsearch-base/archunit-violations/de342dd1-c974-42c9-8f64-ef182ba8c56d
create mode 100644
flink-connector-elasticsearch-base/archunit-violations/stored.rules
create mode 100644 flink-connector-elasticsearch-base/pom.xml
create mode 100644
flink-connector-elasticsearch-base/src/main/java/org/apache/flink/connector/elasticsearch/sink/BulkProcessorBuilderFactory.java
create mode 100644
flink-connector-elasticsearch-base/src/main/java/org/apache/flink/connector/elasticsearch/sink/BulkProcessorConfig.java
create mode 100644
flink-connector-elasticsearch-base/src/main/java/org/apache/flink/connector/elasticsearch/sink/BulkRequestConsumerFactory.java
create mode 100644
flink-connector-elasticsearch-base/src/main/java/org/apache/flink/connector/elasticsearch/sink/ElasticsearchEmitter.java
create mode 100644
flink-connector-elasticsearch-base/src/main/java/org/apache/flink/connector/elasticsearch/sink/ElasticsearchSink.java
create mode 100644
flink-connector-elasticsearch-base/src/main/java/org/apache/flink/connector/elasticsearch/sink/ElasticsearchSinkBuilderBase.java
create mode 100644
flink-connector-elasticsearch-base/src/main/java/org/apache/flink/connector/elasticsearch/sink/ElasticsearchWriter.java
create mode 100644
flink-connector-elasticsearch-base/src/main/java/org/apache/flink/connector/elasticsearch/sink/FlushBackoffType.java
create mode 100644
flink-connector-elasticsearch-base/src/main/java/org/apache/flink/connector/elasticsearch/sink/NetworkClientConfig.java
create mode 100644
flink-connector-elasticsearch-base/src/main/java/org/apache/flink/connector/elasticsearch/sink/RequestIndexer.java
create mode 100644
flink-connector-elasticsearch-base/src/main/java/org/apache/flink/connector/elasticsearch/table/AbstractTimeIndexGenerator.java
create mode 100644
flink-connector-elasticsearch-base/src/main/java/org/apache/flink/connector/elasticsearch/table/ElasticsearchConfiguration.java
create mode 100644
flink-connector-elasticsearch-base/src/main/java/org/apache/flink/connector/elasticsearch/table/ElasticsearchConnectorOptions.java
create mode 100644
flink-connector-elasticsearch-base/src/main/java/org/apache/flink/connector/elasticsearch/table/ElasticsearchDynamicSink.java
create mode 100644
flink-connector-elasticsearch-base/src/main/java/org/apache/flink/connector/elasticsearch/table/ElasticsearchDynamicSinkFactoryBase.java
create mode 100644
flink-connector-elasticsearch-base/src/main/java/org/apache/flink/connector/elasticsearch/table/ElasticsearchSinkBuilderSupplier.java
create mode 100644
flink-connector-elasticsearch-base/src/main/java/org/apache/flink/connector/elasticsearch/table/ElasticsearchValidationUtils.java
create mode 100644
flink-connector-elasticsearch-base/src/main/java/org/apache/flink/connector/elasticsearch/table/IndexGenerator.java
create mode 100644
flink-connector-elasticsearch-base/src/main/java/org/apache/flink/connector/elasticsearch/table/IndexGeneratorBase.java
create mode 100644
flink-connector-elasticsearch-base/src/main/java/org/apache/flink/connector/elasticsearch/table/IndexGeneratorFactory.java
create mode 100644
flink-connector-elasticsearch-base/src/main/java/org/apache/flink/connector/elasticsearch/table/KeyExtractor.java
create mode 100644
flink-connector-elasticsearch-base/src/main/java/org/apache/flink/connector/elasticsearch/table/LogicalTypeWithIndex.java
create mode 100644
flink-connector-elasticsearch-base/src/main/java/org/apache/flink/connector/elasticsearch/table/RowElasticsearchEmitter.java
create mode 100644
flink-connector-elasticsearch-base/src/main/java/org/apache/flink/connector/elasticsearch/table/StaticIndexGenerator.java
create mode 100644
flink-connector-elasticsearch-base/src/main/java/org/apache/flink/streaming/connectors/elasticsearch/ActionRequestFailureHandler.java
create mode 100644
flink-connector-elasticsearch-base/src/main/java/org/apache/flink/streaming/connectors/elasticsearch/BufferingNoOpRequestIndexer.java
create mode 100644
flink-connector-elasticsearch-base/src/main/java/org/apache/flink/streaming/connectors/elasticsearch/ElasticsearchApiCallBridge.java
create mode 100644
flink-connector-elasticsearch-base/src/main/java/org/apache/flink/streaming/connectors/elasticsearch/ElasticsearchSinkBase.java
create mode 100644
flink-connector-elasticsearch-base/src/main/java/org/apache/flink/streaming/connectors/elasticsearch/ElasticsearchSinkFunction.java
create mode 100644
flink-connector-elasticsearch-base/src/main/java/org/apache/flink/streaming/connectors/elasticsearch/RequestIndexer.java
create mode 100644
flink-connector-elasticsearch-base/src/main/java/org/apache/flink/streaming/connectors/elasticsearch/table/AbstractTimeIndexGenerator.java
create mode 100644
flink-connector-elasticsearch-base/src/main/java/org/apache/flink/streaming/connectors/elasticsearch/table/ElasticsearchConfiguration.java
create mode 100644
flink-connector-elasticsearch-base/src/main/java/org/apache/flink/streaming/connectors/elasticsearch/table/ElasticsearchConnectorOptions.java
create mode 100644
flink-connector-elasticsearch-base/src/main/java/org/apache/flink/streaming/connectors/elasticsearch/table/ElasticsearchValidationUtils.java
create mode 100644
flink-connector-elasticsearch-base/src/main/java/org/apache/flink/streaming/connectors/elasticsearch/table/IndexGenerator.java
create mode 100644
flink-connector-elasticsearch-base/src/main/java/org/apache/flink/streaming/connectors/elasticsearch/table/IndexGeneratorBase.java
create mode 100644
flink-connector-elasticsearch-base/src/main/java/org/apache/flink/streaming/connectors/elasticsearch/table/IndexGeneratorFactory.java
create mode 100644
flink-connector-elasticsearch-base/src/main/java/org/apache/flink/streaming/connectors/elasticsearch/table/KeyExtractor.java
create mode 100644
flink-connector-elasticsearch-base/src/main/java/org/apache/flink/streaming/connectors/elasticsearch/table/RequestFactory.java
create mode 100644
flink-connector-elasticsearch-base/src/main/java/org/apache/flink/streaming/connectors/elasticsearch/table/RowElasticsearchSinkFunction.java
create mode 100644
flink-connector-elasticsearch-base/src/main/java/org/apache/flink/streaming/connectors/elasticsearch/table/StaticIndexGenerator.java
create mode 100644
flink-connector-elasticsearch-base/src/main/java/org/apache/flink/streaming/connectors/elasticsearch/util/IgnoringFailureHandler.java
create mode 100644
flink-connector-elasticsearch-base/src/main/java/org/apache/flink/streaming/connectors/elasticsearch/util/NoOpFailureHandler.java
create mode 100644
flink-connector-elasticsearch-base/src/main/java/org/apache/flink/streaming/connectors/elasticsearch/util/RetryRejectedExecutionFailureHandler.java
create mode 100644
flink-connector-elasticsearch-base/src/test/java/org/apache/flink/architecture/TestCodeArchitectureTest.java
create mode 100644
flink-connector-elasticsearch-base/src/test/java/org/apache/flink/connector/elasticsearch/ElasticsearchUtil.java
create mode 100644
flink-connector-elasticsearch-base/src/test/java/org/apache/flink/connector/elasticsearch/sink/ElasticsearchSinkBaseITCase.java
create mode 100644
flink-connector-elasticsearch-base/src/test/java/org/apache/flink/connector/elasticsearch/sink/ElasticsearchSinkBuilderBaseTest.java
create mode 100644
flink-connector-elasticsearch-base/src/test/java/org/apache/flink/connector/elasticsearch/sink/ElasticsearchWriterITCase.java
create mode 100644
flink-connector-elasticsearch-base/src/test/java/org/apache/flink/connector/elasticsearch/sink/TestClientBase.java
create mode 100644
flink-connector-elasticsearch-base/src/test/java/org/apache/flink/connector/elasticsearch/sink/TestEmitter.java
create mode 100644
flink-connector-elasticsearch-base/src/test/java/org/apache/flink/connector/elasticsearch/table/ElasticsearchDynamicSinkBaseITCase.java
create mode 100644
flink-connector-elasticsearch-base/src/test/java/org/apache/flink/connector/elasticsearch/table/ElasticsearchDynamicSinkFactoryBaseTest.java
create mode 100644
flink-connector-elasticsearch-base/src/test/java/org/apache/flink/connector/elasticsearch/table/IndexGeneratorTest.java
create mode 100644
flink-connector-elasticsearch-base/src/test/java/org/apache/flink/connector/elasticsearch/table/KeyExtractorTest.java
create mode 100644
flink-connector-elasticsearch-base/src/test/java/org/apache/flink/connector/elasticsearch/table/TestContext.java
create mode 100644
flink-connector-elasticsearch-base/src/test/java/org/apache/flink/streaming/connectors/elasticsearch/ElasticsearchSinkBaseTest.java
create mode 100644
flink-connector-elasticsearch-base/src/test/java/org/apache/flink/streaming/connectors/elasticsearch/ElasticsearchSinkTestBase.java
create mode 100644
flink-connector-elasticsearch-base/src/test/java/org/apache/flink/streaming/connectors/elasticsearch/EmbeddedElasticsearchNodeEnvironment.java
create mode 100644
flink-connector-elasticsearch-base/src/test/java/org/apache/flink/streaming/connectors/elasticsearch/TestRequestIndexer.java
create mode 100644
flink-connector-elasticsearch-base/src/test/java/org/apache/flink/streaming/connectors/elasticsearch/table/IndexGeneratorFactoryTest.java
create mode 100644
flink-connector-elasticsearch-base/src/test/java/org/apache/flink/streaming/connectors/elasticsearch/table/KeyExtractorTest.java
create mode 100644
flink-connector-elasticsearch-base/src/test/java/org/apache/flink/streaming/connectors/elasticsearch/table/TestContext.java
create mode 100644
flink-connector-elasticsearch-base/src/test/java/org/apache/flink/streaming/connectors/elasticsearch/testutils/ElasticsearchResource.java
create mode 100644
flink-connector-elasticsearch-base/src/test/java/org/apache/flink/streaming/connectors/elasticsearch/testutils/SourceSinkDataTestKit.java
create mode 100644
flink-connector-elasticsearch-base/src/test/resources/archunit.properties
create mode 100644
flink-connector-elasticsearch-base/src/test/resources/log4j2-test.properties
create mode 100644
flink-connector-elasticsearch6/archunit-violations/25e52d29-fa7e-42fa-a571-b5c76235df52
create mode 100644
flink-connector-elasticsearch6/archunit-violations/db3972e4-f3a3-45b2-9643-27cba0cef09d
create mode 100644
flink-connector-elasticsearch6/archunit-violations/stored.rules
create mode 100644 flink-connector-elasticsearch6/pom.xml
create mode 100644
flink-connector-elasticsearch6/src/main/java/org/apache/flink/connector/elasticsearch/sink/Elasticsearch6SinkBuilder.java
create mode 100644
flink-connector-elasticsearch6/src/main/java/org/apache/flink/connector/elasticsearch/table/Elasticsearch6Configuration.java
create mode 100644
flink-connector-elasticsearch6/src/main/java/org/apache/flink/connector/elasticsearch/table/Elasticsearch6ConnectorOptions.java
create mode 100644
flink-connector-elasticsearch6/src/main/java/org/apache/flink/connector/elasticsearch/table/Elasticsearch6DynamicSinkFactory.java
create mode 100644
flink-connector-elasticsearch6/src/main/java/org/apache/flink/streaming/connectors/elasticsearch/table/Elasticsearch6Configuration.java
create mode 100644
flink-connector-elasticsearch6/src/main/java/org/apache/flink/streaming/connectors/elasticsearch/table/Elasticsearch6DynamicSink.java
create mode 100644
flink-connector-elasticsearch6/src/main/java/org/apache/flink/streaming/connectors/elasticsearch/table/Elasticsearch6DynamicSinkFactory.java
create mode 100644
flink-connector-elasticsearch6/src/main/java/org/apache/flink/streaming/connectors/elasticsearch6/Elasticsearch6ApiCallBridge.java
create mode 100644
flink-connector-elasticsearch6/src/main/java/org/apache/flink/streaming/connectors/elasticsearch6/Elasticsearch6BulkProcessorIndexer.java
create mode 100644
flink-connector-elasticsearch6/src/main/java/org/apache/flink/streaming/connectors/elasticsearch6/ElasticsearchSink.java
create mode 100644
flink-connector-elasticsearch6/src/main/java/org/apache/flink/streaming/connectors/elasticsearch6/RestClientFactory.java
create mode 100644
flink-connector-elasticsearch6/src/main/resources/META-INF/services/org.apache.flink.table.factories.Factory
create mode 100644
flink-connector-elasticsearch6/src/test/java/org/apache/flink/architecture/TestCodeArchitectureTest.java
create mode 100644
flink-connector-elasticsearch6/src/test/java/org/apache/flink/connector/elasticsearch/sink/Elasticsearch6SinkBuilderTest.java
create mode 100644
flink-connector-elasticsearch6/src/test/java/org/apache/flink/connector/elasticsearch/sink/Elasticsearch6SinkITCase.java
create mode 100644
flink-connector-elasticsearch6/src/test/java/org/apache/flink/connector/elasticsearch/sink/Elasticsearch6TestClient.java
create mode 100644
flink-connector-elasticsearch6/src/test/java/org/apache/flink/connector/elasticsearch/table/Elasticsearch6DynamicSinkFactoryTest.java
create mode 100644
flink-connector-elasticsearch6/src/test/java/org/apache/flink/connector/elasticsearch/table/Elasticsearch6DynamicSinkITCase.java
create mode 100644
flink-connector-elasticsearch6/src/test/java/org/apache/flink/streaming/connectors/elasticsearch/table/Elasticsearch6DynamicSinkFactoryTest.java
create mode 100644
flink-connector-elasticsearch6/src/test/java/org/apache/flink/streaming/connectors/elasticsearch/table/Elasticsearch6DynamicSinkITCase.java
create mode 100644
flink-connector-elasticsearch6/src/test/java/org/apache/flink/streaming/connectors/elasticsearch/table/Elasticsearch6DynamicSinkTest.java
create mode 100644
flink-connector-elasticsearch6/src/test/java/org/apache/flink/streaming/connectors/elasticsearch6/ElasticsearchSinkITCase.java
create mode 100644
flink-connector-elasticsearch6/src/test/resources/archunit.properties
create mode 100644
flink-connector-elasticsearch6/src/test/resources/log4j2-test.properties
create mode 100644
flink-connector-elasticsearch7/archunit-violations/1af7baaa-05dc-452a-9de7-653c8b3b324f
create mode 100644
flink-connector-elasticsearch7/archunit-violations/e1f30f33-c61c-4707-8c78-a3a80479564e
create mode 100644
flink-connector-elasticsearch7/archunit-violations/stored.rules
create mode 100644 flink-connector-elasticsearch7/pom.xml
create mode 100644
flink-connector-elasticsearch7/src/main/java/org/apache/flink/connector/elasticsearch/sink/Elasticsearch7SinkBuilder.java
create mode 100644
flink-connector-elasticsearch7/src/main/java/org/apache/flink/connector/elasticsearch/table/Elasticsearch7DynamicSinkFactory.java
create mode 100644
flink-connector-elasticsearch7/src/main/java/org/apache/flink/streaming/connectors/elasticsearch/table/Elasticsearch7Configuration.java
create mode 100644
flink-connector-elasticsearch7/src/main/java/org/apache/flink/streaming/connectors/elasticsearch/table/Elasticsearch7DynamicSink.java
create mode 100644
flink-connector-elasticsearch7/src/main/java/org/apache/flink/streaming/connectors/elasticsearch/table/Elasticsearch7DynamicSinkFactory.java
create mode 100644
flink-connector-elasticsearch7/src/main/java/org/apache/flink/streaming/connectors/elasticsearch7/Elasticsearch7ApiCallBridge.java
create mode 100644
flink-connector-elasticsearch7/src/main/java/org/apache/flink/streaming/connectors/elasticsearch7/Elasticsearch7BulkProcessorIndexer.java
create mode 100644
flink-connector-elasticsearch7/src/main/java/org/apache/flink/streaming/connectors/elasticsearch7/ElasticsearchSink.java
create mode 100644
flink-connector-elasticsearch7/src/main/java/org/apache/flink/streaming/connectors/elasticsearch7/RestClientFactory.java
create mode 100644
flink-connector-elasticsearch7/src/main/resources/META-INF/services/org.apache.flink.table.factories.Factory
create mode 100644
flink-connector-elasticsearch7/src/test/java/org/apache/flink/architecture/TestCodeArchitectureTest.java
create mode 100644
flink-connector-elasticsearch7/src/test/java/org/apache/flink/connector/elasticsearch/sink/Elasticsearch7SinkBuilderTest.java
create mode 100644
flink-connector-elasticsearch7/src/test/java/org/apache/flink/connector/elasticsearch/sink/Elasticsearch7SinkITCase.java
create mode 100644
flink-connector-elasticsearch7/src/test/java/org/apache/flink/connector/elasticsearch/sink/Elasticsearch7TestClient.java
create mode 100644
flink-connector-elasticsearch7/src/test/java/org/apache/flink/connector/elasticsearch/table/Elasticsearch7DynamicSinkFactoryTest.java
create mode 100644
flink-connector-elasticsearch7/src/test/java/org/apache/flink/connector/elasticsearch/table/Elasticsearch7DynamicSinkITCase.java
create mode 100644
flink-connector-elasticsearch7/src/test/java/org/apache/flink/streaming/connectors/elasticsearch/table/Elasticsearch7DynamicSinkFactoryTest.java
create mode 100644
flink-connector-elasticsearch7/src/test/java/org/apache/flink/streaming/connectors/elasticsearch/table/Elasticsearch7DynamicSinkITCase.java
create mode 100644
flink-connector-elasticsearch7/src/test/java/org/apache/flink/streaming/connectors/elasticsearch/table/Elasticsearch7DynamicSinkTest.java
create mode 100644
flink-connector-elasticsearch7/src/test/java/org/apache/flink/streaming/connectors/elasticsearch7/ElasticsearchSinkITCase.java
create mode 100644
flink-connector-elasticsearch7/src/test/resources/archunit.properties
create mode 100644
flink-connector-elasticsearch7/src/test/resources/log4j2-test.properties
create mode 100644 flink-sql-connector-elasticsearch6/pom.xml
create mode 100644
flink-sql-connector-elasticsearch6/src/main/resources/META-INF/NOTICE
create mode 100644 flink-sql-connector-elasticsearch7/pom.xml
create mode 100644
flink-sql-connector-elasticsearch7/src/main/resources/META-INF/NOTICE
create mode 100644 pom.xml
create mode 100644 tools/maven/checkstyle.xml
create mode 100644 tools/maven/scalastyle-config.xml
create mode 100644 tools/maven/spotbugs-exclude.xml
create mode 100644 tools/maven/suppressions.xml