In-place FlexVol to FlexGroup conversion blocked for FlexCache origin volumes

// ONTAP hard-blocks in-place FlexVol-to-FlexGroup conversion when the volume is a FlexCache origin

ONTAP hard-blocks the in-place conversion of a FlexVol to a FlexGroup when the volume is the origin of one or more FlexCache volumes.

Evidence

REST PATCH of {"style": "flexgroup"} on a FlexVol serving as a FlexCache origin returns:

**HTTP 400 — error code 104858647:**
> "The volume is the origin of a FlexCache volume. Get a list of FlexCache volumes by issuing a GET request on `/api/storage/flexcache/origins/{uuid}` and then delete each FlexCache volume by issuing a DELETE call on `/api/storage/flexcache/flexcaches/<flexcache-uuid>`."

The CLI command volume convert-to-flexgroup is not exposed in ONTAP 9.19.1 (not recognized at any privilege level). The REST PATCH path is the only available method and it fails at precheck.

Lab Topology

ComponentDetail
Origin clusterorigin-cluster (ONTAP 9.19.1)
Origin SVM / volumeorigin-svm / flexvol_fg_test (2 GB FlexVol)
Cache clustercache-cluster (ONTAP 9.19.1)
Cache SVM / volumecache-svm / cache_flexvol_fg_test (1 GB, write-around)
Clientlinux-client (RHEL 9.7)

Procedure

  1. Created flexvol_fg_test (FlexVol, 2 GB) on origin cluster; junction /flexvol_fg_test.
  2. Created write-around FlexCache cache_flexvol_fg_test on cache cluster.
  3. Mounted origin on linux-client; wrote 10 × 10 MB files.
  4. Unmounted origin; mounted cache; all 10 files readable from cache.
  5. Attempted REST PATCH {"style": "flexgroup"} on origin volume UUID.
  6. ONTAP returned HTTP 400 / error 104858647 at precheck — rejected immediately.
  7. Cache remained fully functional after the failed conversion attempt.

Implication

There is no in-place path from FlexVol origin → FlexGroup origin while any FlexCache relationship is active. Required procedure:

  1. Delete all FlexCache volumes referencing the origin.
  2. Convert the FlexVol to FlexGroup via REST PATCH {"style": "flexgroup"}.
  3. Recreate FlexCache relationships pointing to the new FlexGroup origin.

FlexGroup origins are supported in ONTAP 9.8+, so the conversion is valid once the FlexCache dependency is cleared.

See Also

TERMINAL comments.log
# opening comments.log…