Skip to content

v2.4.0

Choose a tag to compare

@hansenmc hansenmc released this 25 Feb 05:04
· 485 commits to master since this release

Note that in this release, we have dropped support for Java 6 and 7 (which have been end of life and unsupported for several years now), so make sure that you are running Java 8 or greater.

New Features

  • #46 Connect to multiple hosts (without a load balancer) with automatic failover. Three load balancing strategies can be configured to control the distribution of traffic:
    • Round Robin - (default) obtain a host connection from a cyclically ordered set of configured hosts
    • Random - obtain a random host connection from the pool of configured hosts
    • Load - obtain a host connection with least number of active sessions
  • #57 Provide real-time metrics for the job as it progresses. Jobs can be configured to enable a web UI and HTTP service, in order to view the current job stats and progress, pause/resume, and adjust thread counts, and retrieve job metrics in JSON or XML format.screen shot 2017-11-14 at 8 37 26 pm
  • #54, #39 Log metrics periodically to MarkLogic server logs, database and to the Java console. Periodically save job metrics to a MarkLogic database. It can be used to track performance, job stats, and errors over a period of time in order to facilitate charts, trends, etc. Useful for operations teams to track details about various CORB jobs being run.
  • #34 Support ingestion of large files into multiple files with custom transform. New tasks provide ingest/load capabilities.
    • FileUrisDirectoryLoader - Send each of the files contained in the configured directory (and its subdirectories) to the process module or task to be processed and loaded into the database.
    • FileUrisZipLoader - Send each of the files contained in the configured zip file to the process module or task to be processed and loaded into the database.
    • FileUrisStreamingXMLLoader - Process extremely large XML files using a streaming parser to avoid excessive memory allocation and Out Of Memory errors. Identify the node(s) to extract with an XPath expression (some limitations, for a streaming compatible evaluation) and send to the process module or task. Full XPath 1.0 selections are still available with the FileUrisXmlLoader.

Other Enhancements

  • #36 URLEncode XCC_USERNAME, XCC_PASSWORD, or XCC_DBNAME when constructing an XCC URI enhancement
  • #37 Allow Corb to specify the timezone for the request.
  • #35 Update to Java 8, drop support for Java 7 and 6

Bug Fixes

  • #64 CORB2 jar not working for encryption/decryption on RHEL7
  • #50 POST-BATCH-MODULE not executed for empty URIs
  • #47 CORB2 needs to print underlying exception when disk queue write fails
  • #44 Corb 2.3.1 is throwing IllegalStateException when ArrayQueue capacity is full.