Skip to content

Indy 2.0.0

Compare
Choose a tag to compare
@jdcasey jdcasey released this 18 Mar 16:01
· 1437 commits to master since this release

Release notes:

  • NEW FEATURE: Cassandra-driven path-to-file mapping for artifact storage

This will enable us to avoid file locking altogether, by using UUIDs for physical filenames and directory structures, then mapping those physical filenames to the paths they represent inside the database. As we overwrite files like maven-metadata.xml, the database entry will update to the new physical file, and the old one will be marked for garbage collection. This enables readers for that file which are already in progress to continue / finish before the file is removed. Similarly, file deletion is a logical operation with a gc mark-and-sweep strategy for the physical storage.

  • Improvements to the Honeycomb.io metric reporting subsystem

This enables us to trace sub-spans for threaded / concurrent operations that serve a user request, such as gathering and parsing Maven metadata files. We've also introduced sampling, which will allow us to control the flow of data to Honeycomb.

  • Calculate-and-store affected-by groups relevant to a promotion request, instead of recalculating thousands of times
  • Implementation of Cassandra-based Not-Found Cache (NFC) [currently disabled, pending performance testing]
  • Implementation of remote repository SSL / reachability validation [currently disabled, pending migration process]
  • Calculation and sizing of promotion batches based on promotion thread-pool size
  • SpecialPathInfo retrieval takes into consideration packageType for the repository
  • Improved error handling for failed remote repo downloads
  • Improved SSL certificate generation performance for termination of SSL connections that facilitate generic-http proxy caching
  • Fix maven-metadata.xml downloads with huge version lists
  • Remove some sun.* package imports
  • Diagnostic REST endpoint for retrieving groups affected by a given repo / group