Releases: marklogic/marklogic-mule-connector
Release v.2.0.0
MarkLogic Connector - Mule 4
The MarkLogic Connector for Mulesoft is a reusable extension for integrating a Mule application with MarkLogic. The connector supports reading data from and writing data to MarkLogic in a Mule application. MuleSoft flows can leverage the full power of MarkLogic's search indexes to retrieve documents and can efficiently write large quantities of any kind of data to MarkLogic's schema-agnostic databases.
Version 2.0.0 - February 2024
Version Compatibility
Application | Version |
---|---|
Mule Runtime | 4.3+ |
Anypoint Studio | 7.0+ |
MarkLogic | 9.0+ |
For more information, please see the User Guide or the installation guide to get started.
Migrating From Older Versions
For users with experience with the 1.x version of this connector, please note that the 2.0.0 release has intentionally combined previous operations related to querying for documents into a single ["Read documents"] (https://marklogic.github.io/marklogic-mule-connector/reading.html) operation that supports any type of MarkLogic search query. Deprecated operations have also been removed. Finally, the "Delete docs" operation found in the 1.x connector is not yet supported due to the approach used in the 1.x connector not being consistent with the guidelines for a Mule connector. If you find yourself in need of this operation, please submit an issue to describe your use case so we can provide the optimal solution for it.
Features
- Read Documents - Search for and read documents, along with document metadata, from a MarkLogic database.
- Write Documents - Write payloads and attributes as documents in a MarkLogic database.
About MarkLogic
MarkLogic is a database designed from the ground up to make massive quantities of heterogeneous data easily accessible through search. The design philosophy behind the evolution of MarkLogic is that storing data is only part of the solution. The data must also be quickly and easily retrieved and presented in a way that makes sense to different types of users. Additionally, the data must be reliably maintained by an enterprise grade, scalable software solution that runs on commodity hardware. The purpose of this guide is to describe the mechanisms in MarkLogic that are used to achieve these objectives.
MarkLogic fuses together database internals, search-style indexing, and application server behaviors into a unified system. It uses XML and JSON documents as its data model, and stores the documents within a transactional repository. It indexes the words and values from each of the loaded documents, as well as the document structure. And, because of its unique Universal Index, MarkLogic does not require advance knowledge of the document structure and adherence to a particular schema. Through its application server capabilities, it is programmable and extensible.
Release v.1.2.1
Mulesoft Connector for MarkLogic
Release Notes and Change Log
v1.2.1
Release Date:
- 2023-10-23
Fixed in this Release:
This release of the Connector includes the following hotfixes:
- Upgraded MarkLogic Java Client API to 6.2.2 to fix a bug that impacted 2-way certificate authentication.
Improvements:
- Upgraded MarkLogic Java Client API to 6.2.2.
Bugs Fixed:
- Upgraded MarkLogic Java Client API to 6.2.2 to fix a bug that impacted 2-way certificate authentication.
Operations:
- No operations were modified.
Compatibility:
Software | Version |
---|---|
Anypoint Studio | 7.8.0 and later |
Mule SDK | 4.1.1 and later |
JDK | 1.8.x or Java 11 and later |
MarkLogic | 9.0-6.2 and later |
Required Libraries:
- MarkLogic Java Client API v.6.2.2
- MarkLogic Java Client Utilities v.4.4.0
- MarkLogic Data Movement Components v.2.5.0
Release v.1.2.0
Mulesoft Connector for MarkLogic
Release Notes and Change Log
v1.2.0
Release Date:
- 2023-04-25
Fixed in this Release:
This release of the Connector includes the following:
- Ability to connect to MarkLogic through load balancers.
- Database connection performance improvements through connection optimization.
- Updated core MarkLogic Java libraries to the 6.0.0 major version.
- Improvements on Serialized Query handling.
Improvements:
- Allow MarkLogic connectivity through load balancers by adding MarkLogic Java Client API support via DatabaseClient.ConnectionType.GATEWAY.
- Improve performance by moving away from using a pool of under-utilized pooled MarkLogic database connections. Instead, it now uses a cached connection strategy to optimize connections and improve throughput.
- Upgraded MarkLogic Java Client API to 6.0.0.
Bugs Fixed:
- Allow MarkLogic connectivity through load balancers by adding MarkLogic Java Client API support via DatabaseClient.ConnectionType.GATEWAY.
- Provide performance improvements by moving away from using a pool of under-utilized pooled MarkLogic database connections. Instead, it now uses a cached connection strategy to optimize connections and improve throughput.
- Improvements on serialized Structured Query handling.
Operations:
- No operations were modified.
Compatibility:
Software | Version |
---|---|
Anypoint Studio | 7.4.1 and later |
Mule SDK | 4.3.0 and later |
JDK | 1.8.x or Java 11 and later |
MarkLogic Java Client API | 6.0.0 and later |
MarkLogic | 9.0-6.2 and later |
Required Libraries:
- MarkLogic Java Client API v.6.0.0
- MarkLogic Java Client Utilities v.4.4.0
- MarkLogic Data Movement Components v.2.5.0
Release v1.1.1
Mulesoft Connector for MarkLogic
Release Notes and Change Log
v1.1.1
Release Date:
- 2020-05-12
Fixed in this Release:
This release of the Connector includes the following:
- Provides a bugfix, via operation exportDocs, to allow one to peform a query to retrieve a consistent, point-in-time snapshot of documents coming out of MarkLogic. exportDocs is distinguished from queryDocs in that the former has withConsistentSnapshot and works asynchronously, through DMSDK. While queryDocs is synchronous through the MarkLogic Java API proper.
- Provided bugfix to allow for execution of MarkLogic server-side transforms at the operation level, and not just via the connector configuration. Having transforms only at the connector configuration meant that multiple connections could have been necessary to handle two or more transformation calls. An additional transformation-related bugfix was made to remove the requirement for specifying transformation parameters. The only enforcement now is to check that parameter names and values match up pairwise when specified.
- Provided bugfix to properly allow Search API options to be specified when using RawStructuredQueryType queries.
- Deprecated operation getJobReport, which was used in conjunction with the DMSDK batch job reporting. It is now recommended to leverage MuleSoft's built in batch job reporting.
- Improved output and pagination functionality, for egress-centric operations, including more advanced mimetype and document type recognition for use with Mule flow messaging.
- Improved egress operations by allowing for specification of pagination length, and max results returned
- Provided support for executing MUnit tests.
- Added v1.1.1 demo, featuring exportDocs usage.
- Improved DataSense output metadata handling.
- Renamed internal classes to reflect MuleSoft certification best practices.
- Made TLS context initialization improvements, to reflect MuleSoft certification best practices.
- Updated documentation, moving some non-required Markdown documents out of source control, and into GitHub wiki pages.
- Applied increased usage of Enumerations on connection and configuration parameters, plus operations, to provide better UI inputs for Anypoint Studio and Anypoint Design Center.
Improvements:
- Improved ability to work with consistent point-in-time snapshot queries for MarkLogic egress operations.
- Improved ability to work with server-side transformations at the operation level.
- Improved output and pagination functionality, for egress-centric operations, including more advanced mimetype and document type recognition for use with Mule flow messaging.
- Renamed internal classes to reflect MuleSoft certification best practices.
- Improved egress operations by allowing for specification of pagination length, and max results returned.
- Made TLS context initialization improvements, to reflect MuleSoft certification best practices.
- Updated documentation, moving some non-required Markdown documents out of source control, and into GitHub wiki pages.
- Applied increased usage of Enumerations on connection and configuration parameters, plus operations, to provide better UI inputs for Anypoint Studio and Anypoint Design Center.
- Improved DataSense output metadata handling.
Bugs Fixed:
- Provides a bugfix, to allow one to peform a query to retrieve a consistent, point-in-time snapshot of documents coming out of MarkLogic.
- Provides a bugfix to allow server-side Search API options files to work correctly when using RawStructuredQueryType queries.
- Provides a bugfix to allow for execution of MarkLogic server-side transforms at the operation level, and to improve transformation parameter handling (they are no longer required, but just checked to name/value pairwise matching).
Operations:
- Provided exportDocs operation. This is a similar operation to queryDocs for query-driven egress functionality, but asynchronous. This allows for consistent point-in-time query execution, the absence of which was considered a bug in queryDocs.
Compatibility:
Software | Version |
---|---|
Anypoint Studio | 7.4.1 and later |
Mule SDK | 4.2.2 and later |
JDK | 1.8.x |
MarkLogic Java Client API | 4.2.0 and later |
MarkLogic | 9.0-6.2 and later |
Required Libraries:
- MarkLogic Java Client API v.4.2.2
- MarkLogic Data Movement Components v.1.0
Release v1.1.0
Mulesoft Connector Extension for MarkLogic #26
Release Notes and Change Log
v1.1.0
Release Date:
- 2019-06-30
What's New:
This release of the Connector includes the following:
- Added new operation: queryDocs. This allows for the specification of a query via Structured Queries or CTS queries, in order to provide support for egress of data out of MarkLogic for further downstream processing in MuleSoft. This operation deprecates operation selectDocsByStructuredQuery.
- Added new operation: deleteDocs. This allows for the specification of a query via Structured Queries or CTS queries, in order to delete documents on MarkLogic Server, using DMSDK DeleteListener.
- Added support for 2-way SSL connectivity, and MarkLogic certificate authentication.
- Added support for specifying temporal collections on importDocs operation.
- Added dateTime stamps to getJobReport, specifying jobStartTime, jobEndTime, and jobReportTime.
- Updated documentation, moving some non-required Markdown documents out of source control, and into GitHub wiki pages.
- Updated Java types and applied increased usage of Enumerations on connection and configuration parameters, plus operations, to provide better UI inputs for Anypoint Studio and Anypoint Design Center.
- Improved handling of transformation parameters and values, which previously could have treated values as parameters.
- Provided documentation of configuration and example flows demonstrating importDocs and getJobReport operations.
Improvements:
- Improved handling of transformation parameters and values, which previously could have treated values as parameters.
- Updated documentation, moving some non-required Markdown documents out of source control, and into GitHub wiki pages.
- Updated Java types and applied increased usage of Enumerations on connection and configuration parameters, plus operations, to provide better UI inputs for Anypoint Studio and Anypoint Design Center.
Bugs Fixed:
- Improved handling of transformation parameters and values, which previously could have treated values as parameters.
Operations:
- Added operations for queryDocs (which deprecates operation selectDocsByStructuredQuery) and deleteDocs.
Compatibility:
Software | Version |
---|---|
Anypoint Studio | 7.1.4 and later |
Mule | 4.2.0 and later |
JDK | 1.8.x |
MarkLogic Java Client API | 4.2.0 and later |
MarkLogic | 9.0-6.2 and later |
Required Libraries:
- MarkLogic Java Client API v.4.2.0
- MarkLogic Data Movement Components v.1.0
Release v1.0.0
Mulesoft Connector Extension for MarkLogic
Release Notes and Change Log
v1.0.0
Release Date:
- 2019-01-18
What's New:
- This is the initial release of the Connector, so, everything's new!
- Added operations for importDocs, getJobReport, and retrieveInfo.
- Provided documentation of configuration and example flows demonstrating importDocs and getJobReport operations.
Improvements:
- None, other than..."This is the initial release of the Connector, so, everything's new!"
Bugs Fixed:
- None, other than..."This is the initial release of the Connector, so, everything's new!"
Operations:
- Added operations for importDocs, getJobReport, and retrieveInfo.