Skip to content

MLE-27876: merge release 12.1.0 - #628

Merged
yakov-feldman merged 452 commits into
mainfrom
MLE-27876-merge-release-12.1.0
Sep 11, 2026
Merged

yakov-feldman merged 452 commits into
mainfrom
MLE-27876-merge-release-12.1.0

Conversation

@yakov-feldman

Copy link
Copy Markdown
Contributor

No description provided.

builder and others added 30 commits February 2, 2026 00:07
Copilot AI lite review requested due to automatic review settings September 11, 2026 01:35
@yakov-feldman

Copy link
Copy Markdown
Contributor Author

@copilot resolve the merge conflicts in this pull request

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Changes recommended

Unresolved critical XML-security and mapper-failure handling issues remain, along with compatibility and workflow concerns.

Once you've addressed the issues Copilot identified, you can request another Copilot review.

Pull request overview

Merges mlcp release 12.1.0 with MarkLogic 12.1 compatibility, dependency updates, security hardening, and robustness fixes.

Changes:

  • Updates release metadata, Avro, documentation, and repository configuration.
  • Adds request/header handling, validation, null-safety, and concurrency improvements.
  • Adds XML/TLS hardening and updates numerous source headers and utilities.
File summaries
File Summary
src/main/java/com/marklogic/tree/NodeKind.java Copyright header update.
src/main/java/com/marklogic/tree/ExpandedTree.java Null-safe trace logging.
src/main/java/com/marklogic/tree/CompressedTreeDecoder.java Copyright header update.
src/main/java/com/marklogic/tree/Capability.java Copyright header update.
src/main/java/com/marklogic/mapreduce/ZipEntryInputStream.java Copyright header update.
src/main/java/com/marklogic/mapreduce/ValueReader.java Copyright header update.
src/main/java/com/marklogic/mapreduce/ValueInputFormat.java Copyright header update.
src/main/java/com/marklogic/mapreduce/utilities/URIUtil.java Copyright header update.
src/main/java/com/marklogic/mapreduce/utilities/TextArrayWritable.java Copyright header update.
src/main/java/com/marklogic/mapreduce/utilities/StatisticalAssignmentPolicy.java Copyright header update.
src/main/java/com/marklogic/mapreduce/utilities/SegmentAssignmentPolicy.java License header added.
src/main/java/com/marklogic/mapreduce/utilities/RestrictedHostsUtil.java Copyright header update.
src/main/java/com/marklogic/mapreduce/utilities/RangeAssignmentPolicy.java Copyright header update.
src/main/java/com/marklogic/mapreduce/utilities/QueryAssignmentPolicy.java Copyright header update.
src/main/java/com/marklogic/mapreduce/utilities/LegacyAssignmentPolicy.java Copyright header update.
src/main/java/com/marklogic/mapreduce/utilities/InternalUtilities.java Host validation and SSL error logging.
src/main/java/com/marklogic/mapreduce/utilities/ForestInfo.java Copyright header update.
src/main/java/com/marklogic/mapreduce/utilities/ForestHost.java License header added.
src/main/java/com/marklogic/mapreduce/utilities/BucketAssignmentPolicy.java Copyright header update.
src/main/java/com/marklogic/mapreduce/utilities/AssignmentPolicy.java Copyright header update.
src/main/java/com/marklogic/mapreduce/utilities/AssignmentManager.java Copyright header update.
src/main/java/com/marklogic/mapreduce/test/FCheck.java Directory-listing failure handling.
src/main/java/com/marklogic/mapreduce/StreamLocator.java Copyright header update.
src/main/java/com/marklogic/mapreduce/SslConfigOptions.java Copyright header update.
src/main/java/com/marklogic/mapreduce/RegularBinaryDocument.java Copyright header update.
src/main/java/com/marklogic/mapreduce/PropertyWriter.java Copyright header update.
src/main/java/com/marklogic/mapreduce/package-info.java Copyright header update.
src/main/java/com/marklogic/mapreduce/NodeWriter.java Copyright header update.
src/main/java/com/marklogic/mapreduce/NodeReader.java Copyright header update.
src/main/java/com/marklogic/mapreduce/NodePath.java Copyright header update.
src/main/java/com/marklogic/mapreduce/NodeInputFormat.java Copyright header update.
src/main/java/com/marklogic/mapreduce/MarkLogicOutputFormat.java Copyright header update.
src/main/java/com/marklogic/mapreduce/MarkLogicNode.java Copyright header update.
src/main/java/com/marklogic/mapreduce/MarkLogicInputSplit.java Copyright header update.
src/main/java/com/marklogic/mapreduce/MarkLogicInputFormat.java Header detection and response handling.
src/main/java/com/marklogic/mapreduce/MarkLogicDocument.java Copyright header update.
src/main/java/com/marklogic/mapreduce/MarkLogicCounter.java Copyright header update.
src/main/java/com/marklogic/mapreduce/LinkedMapWritable.java Copyright header update.
src/main/java/com/marklogic/mapreduce/LargeBinaryDocument.java Copyright header update.
src/main/java/com/marklogic/mapreduce/KeyValueWriter.java Copyright header update.
src/main/java/com/marklogic/mapreduce/KeyValueReader.java Copyright header update.
src/main/java/com/marklogic/mapreduce/KeyValueOutputFormat.java Copyright header update.
src/main/java/com/marklogic/mapreduce/KeyValueInputFormat.java Copyright header update.
src/main/java/com/marklogic/mapreduce/JSONDocument.java Transformer XXE restrictions.
src/main/java/com/marklogic/mapreduce/InternalConstants.java License header added.
src/main/java/com/marklogic/mapreduce/Indentation.java Copyright header update.
src/main/java/com/marklogic/mapreduce/functions/Words.java Copyright header update.
src/main/java/com/marklogic/mapreduce/functions/WordMatch.java Copyright header update.
src/main/java/com/marklogic/mapreduce/functions/ValuesOrWordsFunction.java Copyright header update.
src/main/java/com/marklogic/mapreduce/functions/Values.java Copyright header update.
src/main/java/com/marklogic/mapreduce/functions/ValueOrWordMatchFunction.java Copyright header update.
src/main/java/com/marklogic/mapreduce/functions/ValueMatch.java Copyright header update.
src/main/java/com/marklogic/mapreduce/functions/ValueCooccurrences.java Copyright header update.
src/main/java/com/marklogic/mapreduce/functions/Uris.java Copyright header update.
src/main/java/com/marklogic/mapreduce/functions/UriMatch.java Copyright header update.
src/main/java/com/marklogic/mapreduce/functions/Reference.java Copyright header update.
src/main/java/com/marklogic/mapreduce/functions/PathReference.java Copyright header update.
src/main/java/com/marklogic/mapreduce/functions/package-info.java Copyright header update.
src/main/java/com/marklogic/mapreduce/functions/LexiconFunction.java Copyright header update.
src/main/java/com/marklogic/mapreduce/functions/FieldWords.java Copyright header update.
src/main/java/com/marklogic/mapreduce/functions/FieldWordMatch.java Copyright header update.
src/main/java/com/marklogic/mapreduce/functions/FieldValues.java Copyright header update.
src/main/java/com/marklogic/mapreduce/functions/FieldValueMatch.java Copyright header update.
src/main/java/com/marklogic/mapreduce/functions/FieldValueCooccurrences.java Copyright header update.
src/main/java/com/marklogic/mapreduce/functions/ElemValueCooccurrences.java Copyright header update.
src/main/java/com/marklogic/mapreduce/functions/ElementWords.java Copyright header update.
src/main/java/com/marklogic/mapreduce/functions/ElementWordMatch.java Copyright header update.
src/main/java/com/marklogic/mapreduce/functions/ElementValues.java Copyright header update.
src/main/java/com/marklogic/mapreduce/functions/ElementValueMatch.java Copyright header update.
src/main/java/com/marklogic/mapreduce/functions/ElementAttributeWords.java Copyright header update.
src/main/java/com/marklogic/mapreduce/functions/ElementAttributeWordMatch.java Copyright header update.
src/main/java/com/marklogic/mapreduce/functions/ElementAttributeValues.java Copyright header update.
src/main/java/com/marklogic/mapreduce/functions/ElementAttributeValueMatch.java Copyright header update.
src/main/java/com/marklogic/mapreduce/functions/ElemAttrValueCooccurrences.java Copyright header update.
src/main/java/com/marklogic/mapreduce/functions/CooccurrencesFunction.java Copyright header update.
src/main/java/com/marklogic/mapreduce/functions/Collections.java Copyright header update.
src/main/java/com/marklogic/mapreduce/functions/CollectionMatch.java Copyright header update.
src/main/java/com/marklogic/mapreduce/ForestReader.java Parent-path validation.
src/main/java/com/marklogic/mapreduce/ForestInputFormat.java Copyright header update.
src/main/java/com/marklogic/mapreduce/ForestDocument.java Copyright header update.
src/main/java/com/marklogic/mapreduce/examples/ZipContentLoader.java Copyright header update.
src/main/java/com/marklogic/mapreduce/examples/RevisionGrouper.java Copyright header update.
src/main/java/com/marklogic/mapreduce/examples/package-info.java Copyright header update.
src/main/java/com/marklogic/mapreduce/examples/LinkCountValue.java Copyright header update.
src/main/java/com/marklogic/mapreduce/examples/LinkCountInProperty.java Copyright header update.
src/main/java/com/marklogic/mapreduce/examples/LinkCountInDoc.java Copyright header update.
src/main/java/com/marklogic/mapreduce/examples/LinkCountHDFS.java Copyright header update.
src/main/java/com/marklogic/mapreduce/examples/LinkCountCooccurrences.java Copyright header update.
src/main/java/com/marklogic/mapreduce/examples/LinkCount.java Copyright header update.
src/main/java/com/marklogic/mapreduce/examples/HelloWorld.java Handles missing XML root elements.
src/main/java/com/marklogic/mapreduce/examples/ContentReader.java TLS and output-path updates.
src/main/java/com/marklogic/mapreduce/examples/ContentLoader.java Copyright header update.
src/main/java/com/marklogic/mapreduce/examples/BinaryReader.java Copyright header update.
src/main/java/com/marklogic/mapreduce/DOMDocument.java Transformer security and null-safe text handling.
src/main/java/com/marklogic/mapreduce/DocumentURIWithSourceInfo.java Copyright header update.
src/main/java/com/marklogic/mapreduce/DocumentURI.java Copyright header update.
src/main/java/com/marklogic/mapreduce/DocumentReader.java Copyright header update.
src/main/java/com/marklogic/mapreduce/DocumentInputFormat.java Copyright header update.
src/main/java/com/marklogic/mapreduce/DatabaseDocument.java Empty-content fallback.
src/main/java/com/marklogic/mapreduce/CustomContent.java Copyright header update.
src/main/java/com/marklogic/mapreduce/ContentWriter.java Constructor cleanup.
src/main/java/com/marklogic/mapreduce/ContentType.java Copyright header update.
src/main/java/com/marklogic/mapreduce/ContentOutputFormat.java Header detection and response validation.
src/main/java/com/marklogic/mapreduce/CompressionCodec.java Copyright header update.
src/main/java/com/marklogic/mapreduce/BinaryDocument.java Copyright header update.
src/main/java/com/marklogic/io/Decoder.java Corrects 64-bit shifts.
src/main/java/com/marklogic/io/BiendianDataInputStream.java Copyright header update.
src/main/java/com/marklogic/dom/TextImpl.java Copyright header update.
src/main/java/com/marklogic/dom/ProcessingInstructionImpl.java Copyright header update.
src/main/java/com/marklogic/dom/package-info.java Copyright header update.
src/main/java/com/marklogic/dom/NodeListImpl.java Copyright header update.
src/main/java/com/marklogic/dom/NodeImpl.java Namespace and node-equality fixes.
src/main/java/com/marklogic/dom/ElementImpl.java Copyright header update.
src/main/java/com/marklogic/dom/DocumentTypeImpl.java Copyright header update.
src/main/java/com/marklogic/dom/DocumentImpl.java Null-safe namespace lookups.
src/main/java/com/marklogic/dom/CommentImpl.java Null-safe namespace lookups.
src/main/java/com/marklogic/dom/CharacterDataImpl.java Null-safe character-data handling.
src/main/java/com/marklogic/dom/AttrImpl.java Null-safe namespace lookups.
src/main/java/com/marklogic/dom/AttributeNodeMapImpl.java Copyright header update.
src/main/java/com/marklogic/contentpump/ZipDelimitedJSONReader.java Copyright header update.
src/main/java/com/marklogic/contentpump/Versions.java Copyright header update.
src/main/java/com/marklogic/contentpump/utilities/ZipInputStream.java License header added.
src/main/java/com/marklogic/contentpump/utilities/XMLUtil.java Copyright header update.
src/main/java/com/marklogic/contentpump/utilities/XMLDocBuilder.java Copyright header update.
src/main/java/com/marklogic/contentpump/utilities/ReflectionUtil.java Copyright header update.
src/main/java/com/marklogic/contentpump/utilities/PermissionUtil.java Output-host validation.
src/main/java/com/marklogic/contentpump/utilities/OptionsFileUtil.java Copyright header update.
src/main/java/com/marklogic/contentpump/utilities/JSONDocBuilder.java Null-safe exception handling.
src/main/java/com/marklogic/contentpump/utilities/IdGenerator.java Copyright header update.
src/main/java/com/marklogic/contentpump/utilities/FileIterator.java Copyright header update.
src/main/java/com/marklogic/contentpump/utilities/EncodingUtil.java Copyright header update.
src/main/java/com/marklogic/contentpump/utilities/DocBuilder.java Copyright header update.
src/main/java/com/marklogic/contentpump/utilities/DelimitedSplit.java Copyright header update.
src/main/java/com/marklogic/contentpump/utilities/CSVParserFormatter.java Copyright header update.
src/main/java/com/marklogic/contentpump/utilities/CommandlineOptions.java Copyright header update.
src/main/java/com/marklogic/contentpump/utilities/CommandlineOption.java Copyright header update.
src/main/java/com/marklogic/contentpump/utilities/AuditUtil.java Copyright header update.
src/main/java/com/marklogic/contentpump/TransformWriter.java Null-safe error handling.
src/main/java/com/marklogic/contentpump/TransformOutputFormat.java Output-host validation.
src/main/java/com/marklogic/contentpump/ThreadManager.java Thread allocation and polling changes.
src/main/java/com/marklogic/contentpump/StreamingDocumentReader.java Copyright header update.
src/main/java/com/marklogic/contentpump/StreamingDocumentInputFormat.java Copyright header update.
src/main/java/com/marklogic/contentpump/SingleDocumentWriter.java Parent-path validation.
src/main/java/com/marklogic/contentpump/SingleDocumentOutputFormat.java Copyright header update.
src/main/java/com/marklogic/contentpump/SequenceFileValueType.java Copyright header update.
src/main/java/com/marklogic/contentpump/SequenceFileValue.java Copyright header update.
src/main/java/com/marklogic/contentpump/SequenceFileReader.java Copyright header update.
src/main/java/com/marklogic/contentpump/SequenceFileKey.java Copyright header update.
src/main/java/com/marklogic/contentpump/SequenceFileInputFormat.java Copyright header update.
src/main/java/com/marklogic/contentpump/RDFWritable.java Copyright header update.
src/main/java/com/marklogic/contentpump/RDFReader.java Permission and response validation.
src/main/java/com/marklogic/contentpump/RDFInputFormat.java Copyright header update.
src/main/java/com/marklogic/contentpump/OutputArchive.java Archive creation and rollover handling.
src/main/java/com/marklogic/contentpump/MultithreadedMapper.java Runner synchronization and failure tracking.
src/main/java/com/marklogic/contentpump/LocalJobRunner.java Poller startup and runner latches.
src/main/java/com/marklogic/contentpump/InputType.java Role-map response validation.
src/main/java/com/marklogic/contentpump/GzipDelimitedJSONReader.java Copyright header update.
src/main/java/com/marklogic/contentpump/FileAndDirectoryInputFormat.java Copyright header update.
src/main/java/com/marklogic/contentpump/ExportOutputType.java Copyright header update.
src/main/java/com/marklogic/contentpump/examples/SimpleSequenceFileValue.java Copyright header update.
src/main/java/com/marklogic/contentpump/examples/SimpleSequenceFileReader.java Copyright header update.
src/main/java/com/marklogic/contentpump/examples/SimpleSequenceFileKey.java Copyright header update.
src/main/java/com/marklogic/contentpump/examples/SimpleSequenceFileCreator.java Copyright header update.
src/main/java/com/marklogic/contentpump/DocumentPathFilter.java Copyright header update.
src/main/java/com/marklogic/contentpump/DocumentMetadata.java Null-safe format parsing.
src/main/java/com/marklogic/contentpump/DocumentMapper.java Copyright header update.
src/main/java/com/marklogic/contentpump/DelimitedTextInputFormat.java Copyright header update.
src/main/java/com/marklogic/contentpump/DelimitedJSONReader.java Copyright header update.
src/main/java/com/marklogic/contentpump/DelimitedJSONInputFormat.java Copyright header update.
src/main/java/com/marklogic/contentpump/DatabaseTransformWriter.java Retry logging.
src/main/java/com/marklogic/contentpump/DatabaseTransformOutputFormat.java Copyright header update.
src/main/java/com/marklogic/contentpump/DatabaseContentWriter.java Constructor cleanup.
src/main/java/com/marklogic/contentpump/DatabaseContentReader.java Response and permission robustness.
src/main/java/com/marklogic/contentpump/DatabaseContentOutputFormat.java Copyright header update.
src/main/java/com/marklogic/contentpump/DatabaseContentInputFormat.java Copyright header update.
src/main/java/com/marklogic/contentpump/ContentWithFileNameWritable.java Copyright header update.
src/main/java/com/marklogic/contentpump/ContentPumpReporter.java Copyright header update.
src/main/java/com/marklogic/contentpump/ContentPump.java Library-listing failure handling.
src/main/java/com/marklogic/contentpump/CompressedRDFReader.java Copyright header update.
src/main/java/com/marklogic/contentpump/CompressedRDFInputFormat.java Copyright header update.
src/main/java/com/marklogic/contentpump/CompressedDocumentReader.java Copyright header update.
src/main/java/com/marklogic/contentpump/CompressedDocumentInputFormat.java Copyright header update.
src/main/java/com/marklogic/contentpump/CompressedDelimitedTextReader.java Copyright header update.
src/main/java/com/marklogic/contentpump/CompressedDelimitedTextInputFormat.java Copyright header update.
src/main/java/com/marklogic/contentpump/CompressedDelimitedJSONInputFormat.java Copyright header update.
src/main/java/com/marklogic/contentpump/CompressedAggXMLReader.java XML security configuration.
src/main/java/com/marklogic/contentpump/CompressedAggXMLInputFormat.java Copyright header update.
src/main/java/com/marklogic/contentpump/CombineDocumentSplit.java Copyright header update.
src/main/java/com/marklogic/contentpump/CombineDocumentReader.java Copyright header update.
src/main/java/com/marklogic/contentpump/CombineDocumentInputFormat.java Copyright header update.
src/main/java/com/marklogic/contentpump/ColumnDataType.java Trimmed parsing.
src/main/java/com/marklogic/contentpump/ArchiveRecordReader.java Copyright header update.
src/main/java/com/marklogic/contentpump/ArchiveOutputFormat.java Copyright header update.
src/main/java/com/marklogic/contentpump/ArchiveInputFormat.java Copyright header update.
src/main/java/com/marklogic/contentpump/AggregateXMLReader.java XML security configuration.
src/main/java/com/marklogic/contentpump/AggregateXMLInputFormat.java Copyright header update.
README.md Adds 12.1 release notes.
pom.xml Sets version 12.1.0 and updates Avro.
.gitignore Ignores VS Code metadata.
.github/workflows/pr-workflow.yaml Removes JIRA validation workflow.
.copyrightconfig Adds copyright validation configuration.
Review details

Suppressed comments (4)

.github/workflows/pr-workflow.yaml:1

  • Deleting this workflow removes the repository's JIRA-ID validation from every future pull request. The release merge does not document a policy change, so this would silently disable a repository guard; restore the workflow unless that change is intentional and separately approved.
    src/main/java/com/marklogic/contentpump/LocalJobRunner.java:225
  • The fixed-delay poller is scheduled here and shutdownThreadPool() is called immediately afterward. With the default one-minute initial delay, short jobs shut down the scheduler before the first polling cycle, so auto-scaling does not run; longer jobs can get at most a single cycle before shutdown. Keep the scheduler alive through the polling period or start it earlier with a synchronization strategy that prevents the task-list race.
    src/main/java/com/marklogic/mapreduce/examples/ContentReader.java:106
  • This example now enables only TLSv1.3 and also creates a TLSv1.3-only SSLContext at line 111, although the release note removes TLSv1 and the connector still explicitly supports TLSv1.2 (Command.java:2786-2789). Deployments limited to TLSv1.2 will fail with the documented example; use a generic TLS context with both secure protocols enabled, or document the TLSv1.3-only requirement.
    src/main/java/com/marklogic/tree/NodeKind.java:2
  • This merge rolls the copyright end year backward from 2020 to 2015, and the same regression appears across many other files (including 2024/2025 headers). Other touched files already use 2026, so the release should preserve each file's existing end year or update headers consistently rather than removing the record of later contributions.
  • Files reviewed: 200/204 changed files
  • Comments generated: 10
  • Review effort level: Lite

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread src/main/java/com/marklogic/contentpump/AggregateXMLReader.java
Comment thread src/main/java/com/marklogic/contentpump/CompressedAggXMLReader.java
Comment thread src/main/java/com/marklogic/contentpump/MultithreadedMapper.java
Comment thread src/main/java/com/marklogic/mapreduce/DOMDocument.java
Comment thread src/main/java/com/marklogic/mapreduce/JSONDocument.java
Comment thread src/main/java/com/marklogic/contentpump/DatabaseContentWriter.java
Comment thread src/main/java/com/marklogic/mapreduce/ContentWriter.java
Comment thread src/main/java/com/marklogic/mapreduce/MarkLogicInputFormat.java
…se-12.1.0

# Conflicts:
#	NOTICE.txt
#	README.md
#	pom.xml
#	src/lib/marklogic-xcc-12.0.1.jar

Co-authored-by: yakov-feldman <168042411+yakov-feldman@users.noreply.github.com>

Copilot AI commented Sep 11, 2026

Copy link
Copy Markdown
Contributor

@copilot resolve the merge conflicts in this pull request

Done — I merged origin/main into this branch, resolved the conflicts, and pushed merge commit 3c1ca49.

@yakov-feldman yakov-feldman added this to the 12.2.0 milestone Sep 11, 2026
@yakov-feldman
yakov-feldman merged commit e3f0f72 into main Sep 11, 2026
2 of 3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

9 participants