# Release Notes

## CMA 4.0

### Features

#### HDFS to Ozone Migration
- AMCM-2727, AMCM-2742 **HDFS to Ozone** migration support via Replication Manager integration
- AMCM-3001 **Ozone scanning** — discover volumes, buckets, keys, and snapshot metadata
- AMCM-3522 UI support for mapping and migrating files from HDFS to Ozone
- AMCM-3462 Collection support for Ozone locations
- AMCM-3514 Display detailed Ozone bucket and volume attributes

#### Master-Agent Architecture
- AMCM-3193 **Agent-based cluster discovery** — CMA Agents auto-discover their cluster via Cloudera Manager and register with the Master over gRPC (replaces manual UI-based registration)
- AMCM-3301 Configurable user and principal in CSDs for agent authentication
- AMCM-3413 Agent scanners use the Agent's own Kerberos keytab
- AMCM-3494 Vault support for CMA Master credential storage

#### Migration Plans and Executions
- AMCM-3453, AMCM-3465 New **Migration Plan** and **Execution** model — plans are versioned and decoupled from executions
- AMCM-3490, AMCM-3492 **Versioned Plan Collections** — group datasets and workloads into collections with full version history
- AMCM-3517, AMCM-3575, AMCM-3667, AMCM-3668 Versioning of structure mappings, workflow configs, and Hive SQL transformations
- AMCM-3566 Auto-create structure mapping when adding items to a plan
- AMCM-3571, AMCM-3657, AMCM-3658 Structure mapping support for **Hive**, **Spark**, and **Hive SQL**
- AMCM-3801 Incremental migration support (under the hood)

#### UI Improvements
- AMCM-3638 Workloads visible in the split view for mapping
- AMCM-3637 Create folders on the target side directly from the UI
- AMCM-3591 Plan filter in execution view
- AMCM-3724 Scan UI revamp
- AMCM-3792 Table view in Cluster Services tab
- AMCM-3809 Show source/target cluster services and versions in plan view
- AMCM-3812 Improved scanning settings usability
- AMCM-3721 Manual cluster creation hidden in production mode

### Behavioral Changes
- Public cloud migration support is removed in this release, but will be reintroduced in a future release with the new architecture.
- Migration Plans and Executions are now separate concepts — plans are versioned and can be executed multiple times.
- Express Migration has been removed (AMCM-3541). Use the standard plan-based migration flow.
- Air-gapped deployment mode is no longer supported.

### Fixed Issues
- AMCM-3563 Lock timeout exception during large HDFS scan log uploads
- AMCM-3836 HDFS scan performance issue with large FS_LOCATION tables
- AMCM-3844 Slow plan loading with numerous paths across plans
- AMCM-3825 Lock contention on FS_LOCATION table
- AMCM-3433 Hive scanning with Kerberos failure
- AMCM-3583 HDFS-to-HDFS Base to Base migration fails at RM policy submit
- AMCM-3367 SQL Workload scan fails in Master-Agent mode (SSH issues)
- AMCM-3376 SQL files not migrated during SQL Workload Migration
- AMCM-3391 Vault argument not working with distributed mode and SSL
- AMCM-3452 Ozone scan cannot be canceled when server is unresponsive
- AMCM-3552 No way to change HDFS Java scan user
- AMCM-3694 Scan does not delete children if no child remains in the parent
- Over 80 additional bug fixes across CMA Server, Agent, UI, and Ansible components

### Known Issues
- AMCM-4108 Example feature flag not removed from production build
- AMCM-4109 Ozone Layout Structure templates are placeholder/demo only
- AMCM-4111 Access token may exceed header size limits on clusters with many groups
- AMCM-4114 Browser column selector icon not fully visible in some layouts
- AMCM-4119 Ozone/HDFS scan type selection UI element is misaligned
- AMCM-4120 Feature Flags: 500 error banner not cleared after successful configuration update
- AMCM-4121 Feature Flags: viewer role can toggle flags; 403 does not revert toggle state; scope filter not working
- AMCM-4123 Agent /api/agent/config endpoint is unauthenticated; agent /api/** uses HTTP Basic auth
- AMCM-4126 Agent UI Settings and Admin menu items do not work
- AMCM-4128 Plan page View Documentation link does not work
- AMCM-4130 Plan page Execution tab plan filter shows invalid data
- AMCM-4131 Execution Step Settings drawer layout is broken
- AMCM-4133 Execution page Review Settings panel fails to load
- AMCM-4134 Ozone browser navigates to parent when switching from Review tab back to Data tab
- AMCM-4135 Collections item count includes parent folders, not just mapped items
- AMCM-4139 Typos present in Settings > RM App Access Settings tab
- AMCM-4144 HDFS scan does not support running under a custom user
- AMCM-4145 HDFS discovery Info column is too wide
- AMCM-4146 Selected columns are not preserved across HDFS scan result navigation
- AMCM-4147 Migration Plan title field cannot be cleared once set
- AMCM-4148 Assign button has no tooltip
- AMCM-4149 Plan Collections tab does not visually separate bulk actions from selection-independent actions
- AMCM-4150 Metadata tab shown for plans that have no Hive entries in collections
- AMCM-4162 Discovery page triggers duplicate services API call when selecting a collection
- AMCM-4164 HDFS scan silently skips the HBase directory; not documented
- AMCM-4170 Triggered By field overflows its container in the CDE info panel
- AMCM-4176 Permission-denied failures in HDFS-to-Ozone migration show no actionable error message
- AMCM-4185 CSD AutoTLS integration does not auto-enable TLS on secured clusters
- AMCM-4209 Delete Copied Item button non-functional on Git target side in CDE Airflow Metadata tab
- AMCM-4212 Progress bar in code editor is misaligned and partially outside the editor area
- AMCM-4213 Plan creation is allowed before source and target clusters have been scanned
- AMCM-4214 CDE: mapped GitHubFile entries remain visible in UI after plan deletion
- AMCM-4215 Storage Editor shows incorrect DS Quota value in table view after YAML import
- AMCM-4216 Storage Editor skips folders on YAML import — only last bucket gets root folders
- AMCM-4218 Storage Editor Import shows "[object Object]" instead of a readable validation error
- AMCM-4220 Commands list does not refresh automatically when new commands start while the page is open
- AMCM-4222 RM App credential suggestion shows masked password value instead of the usable credential
- AMCM-4225 Replication policy submission fails if source cluster was renamed
- AMCM-4226 CDE Airflow Scan/Plan/Migration has schema inconsistencies
- AMCM-4227 CDE execution includes all plan mappings instead of only selected collection
- AMCM-4229 HDFS to Ozone same-cluster migration fails
- AMCM-4230 Dead URL after session expiry

## CMA 4.1

### Features

#### Agent Connection Management
- CMA-4395 **Agent Connections** — CM, Control Plane, and AWC connections are now managed independently of cluster registration. Connections are created automatically when a new cluster is registered via the Agent UI or config-driven startup.

### Upgrade Notes

#### Agent Connections must be created manually for existing clusters
Clusters registered before upgrading to CMA 4.1 do not have Agent Connections automatically created.
After upgrading, open the Agent UI, go to **Connections**, and create a connection for each registered cluster:

- **Cloudera Manager (CDH / CDP Private Cloud Base)** — create a CM connection with the server URL and credentials.
- **Control Plane** — create a Control Plane connection with the API URL and access key.
- **Anywhere Cloud (AWC)** — create an AWC connection with the console URL and client credentials.

New clusters registered after the upgrade will have their connection created automatically.

## CMA 3.5

### Features

- AMCM-2422 Enhanced **Migration Dashboard** with Component Versions
- AMCM-793 Managing Secrets with **Vault**
- AMCM-2455 **Mask** supplied **passwords** in configuration and log files
- AMCM-2308 **Spark3** to Spark3 Support
- AMCM-2400 Execution Instructions for **Livy**
- AMCM-2594 Parcel compatibility check to CSD
- Various CVE fixes 

### Behavioral Changes
- The support of HDP to CDP Upgrade is discontinued from this release on

## CMA 3.4.1

### Features

- AMCM-2489 JVM heap size should be configurable for CDH discovery tool


### Fixed Issues

- AMCM-2692 Stop All Services In The Cluster - fails with non-default password
- AMCM-2637 Spark application parameters with single - won't work
- AMCM-2570 Remove Label assignment removes HDFS locations
- AMCM-2650 SQL Workload Migration doesn't replicate its SQL file from HDFS
- AMCM-2625 Multiple HiveSQL migration ignores the HiveSQL files
- AMCM-2626 NPE when trying to get source server clusters after db upgrade
- AMCM-2624 /root/.cdp/credentials Missing for hive migration
- AMCM-2636 Use master node in execution Instruction

### Known Issues
- AMCM-2457 Python 3.12.x dependency collision on CMA server node



## CMA 3.4

### Features

- AMCM-1168 Spark Application Migration L1
  - Exploring Past Spark Workloads via Spark History Server
  - Spark Workload's dependency discovery based on spark-submit and application parameters
  - Limitations 
    - CDH6 and Cloudera on Prem as Source with Spark 2
    - No spark code change
    - No automated jar and Python package dependency discovery
- AMCM-2426 Store SSH Settings as Credentials
- AMCM-2300 Upgradability - Tech Preview
- AMCM-2154 Supporting Upgrade from HDP3 to 7.1.9 SP1
- Several UX improvements and bug fixes

### Known Issues
- AMCM-2457 Python 3.12.x dependency collision on CMA server node 

## CMA 3.3.2

### Features
- AMCM-2154 Supporting  Upgrade from HDP3 to 7.1.9 SP1

## CMA 3.3.1

### Features 

#### Parcel Deployment (activated as Tech Preview)
- AMCM-2231 Create parcels for multiple distributions
- AMCM-2237 Document how to do Parcel Deployment

### Fixed Issues

- AMCM-2273 CMA doesn't handle long clusternames
- AMCM-2233 Create a field to manage the number of Ansible forks
- AMCM-2232 Fix user settings validation on target registration when changing clusters
- AMCM-2218 Replace Browser icon (Favico) to CMA icon small version

#### HDP Upgrade
- AMCM-2204 fix hdp3 kafka broker script  - HDP3 upgrade fails at Using AM2CM Tool
- AMCM-2117 /usr/share/java/mysql-connector-java.jar not found (air-gapped only)
- AMCM-897 Handle mixed hostname formats - Hostnames can be added both with IP and domain name

#### L&S Migration
- AMCM-2067 Obtain Hive HMS DB Password from User Directly	

#### Pre-checks on CMA Server Start 
- AMCM-2188 Check if Java11 and JAVA_HOME exists
- AMCM-2188 Checking Java before starting the server
- AMCM-2247 Document Java Install to Local Mode and missing Parcel Info
- AMCM-2186 Check python version

## CMA 3.3.0

### Features

- AMCM-1764 Azure Support 
- AMCM-1418 Cloudera Base to Public Cloud Migration (without security meta data migration)
- AMCM-1361 Oozie Migration with Map-Reduce action and genric support for all other action types
- AMCM-1765 CMA Landing Page
- AMCM-1878 Side-bar Redesign
- AMCM-2135 One-time HBase Migration without Replication Manager

## CMA 3.2.1

### Fixed Issues
- AMCM-1879 Missing airgapped for localhost (#1696)
- AMCM-1908 Hive SQL Export button does not work (#1693)
- AMCM-1906 Fix Broken background color (#1691)
- AMCM-1888 Show Refresh option of scanned data tables as in UI design - rebase fix (#1686)
- AMCM-1880 ps is missing from the rhel8 docker image (#1659) (#1685)
- AMCM-1902 Make navigation panel not scrollable (#1679) (#1684)
- AMCM-1872 Filtered scan results are reset after switch to another page (#1655) (#1678)
- AMCM-1830 discovery_bundle_builder fails if no mysql-connector-java.jar is found (#1682)
- AMCM-1892 L&S Data migration RM policy should have default value for frequencyInSec (#1681) (#1683)
- AMCM-1888 Show Refresh option of scanned data tables as in UI design (#1666) (#1670)
- AMCM-1887 Fix Mapping discrepancies (#1662) (#1671)
- AMCM-1891 Change API info (#1668) (#1675)
- AMCM-1867 Set step status before perform (#1667) (#1674)
- AMCM-1820 Toast message appears unexpectedly (#1663) (#1669)
- AMCM-1871 Fix wrong position of collection component (#1643) (#1672)

### Known Issues

#### AMCM-1860 Airgapped download
The following files needs to be downloaded and copied manually before any _--airgapped_ install. 

- <CMA_ROOT_DIR>
  - atlas-migration-exporter-0.8.0.2.6.6.0-332.tar.gz
  - jdbc-drivers/
    - mysql-connector-java-5.1.46.jar
    - ojdbc8.jar
    - postgresql-42.7.7.jar

Only add the JDBC driver your cluster uses. 
    
### Behavioral Changes
- /info endpoint API response changed to correctly return the product name (AMCM-1891)

### Fixed Common Vulnerabilities and Exposures

Learn more about the Common vulnerabilities and Exposures (CVEs) that were fixed in this release.

- [CVE-2024-1597](https://nvd.nist.gov/vuln/detail/CVE-2024-1597) : org.postgresql:postgresql vulnerable to SQL Injection via line comment generation - AMCM-1910 

## CMA 3.2
### What's New

| Data             | Workload                                                                   |
|------------------|----------------------------------------------------------------------------|
| HBase Tables     | **SQL** with Discovery of Dependant Tables <br/>**Oozie** with Hive action |


### Known Issues
#### HBase migration from CDH needs extra parcels Installed
In order to use CMA for you need obtain the following parcels from Cloudera Support : 
- CDH5 : `CLOUDERA_OPDB_REPLICATION-1.0-1.CLOUDERA_OPDB_REPLICATION5.14.4.p0.31473501-el7.parcel`
- CDH6 : `CLOUDERA_OPDB_REPLICATION-1.0-1.CLOUDERA_OPDB_REPLICATION6.3.3.p0.8959316-el7.parcel`

These along with their hash files need to be copied to parcels directory in CMA root directory

### Behavioral Changes
None

