From: Sagar Gopale Date: Tue, 10 Mar 2026 12:12:12 +0000 (+0530) Subject: mgr/dashboard: mgr/dashboard: Namespace size should accept GiB in NVMe/TCP X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=57048b6a379584c1b4fd7bf03958bf21633fe7af;p=ceph.git mgr/dashboard: mgr/dashboard: Namespace size should accept GiB in NVMe/TCP Fixes: https://tracker.ceph.com/issues/75433 Signed-off-by: Sagar Gopale --- diff --git a/src/pybind/mgr/dashboard/frontend/src/app/ceph/block/nvmeof-namespaces-form/nvmeof-namespaces-form.component.spec.ts b/src/pybind/mgr/dashboard/frontend/src/app/ceph/block/nvmeof-namespaces-form/nvmeof-namespaces-form.component.spec.ts index d5f3abb91977..dd4c35eaa6cf 100644 --- a/src/pybind/mgr/dashboard/frontend/src/app/ceph/block/nvmeof-namespaces-form/nvmeof-namespaces-form.component.spec.ts +++ b/src/pybind/mgr/dashboard/frontend/src/app/ceph/block/nvmeof-namespaces-form/nvmeof-namespaces-form.component.spec.ts @@ -136,5 +136,17 @@ describe('NvmeofNamespacesFormComponent', () => { component.onSubmit(); expect(nvmeofService.createNamespace).toHaveBeenCalled(); }); + + it('should not send block_size from namespace_size UI field', () => { + formHelper.setValue('pool', 'rbd'); + formHelper.setValue('image_size', new FormatterService().toBytes('1GiB')); + formHelper.setValue('subsystem', MOCK_SUBSYSTEM); + formHelper.setValue('namespace_size', 10); + + component.onSubmit(); + + const request = (nvmeofService.createNamespace as jasmine.Spy).calls.mostRecent().args[1]; + expect(request.block_size).toBeUndefined(); + }); }); }); diff --git a/src/pybind/mgr/dashboard/frontend/src/app/ceph/block/nvmeof-namespaces-form/nvmeof-namespaces-form.component.ts b/src/pybind/mgr/dashboard/frontend/src/app/ceph/block/nvmeof-namespaces-form/nvmeof-namespaces-form.component.ts index 86adfb99d3a6..79b9d6e68626 100644 --- a/src/pybind/mgr/dashboard/frontend/src/app/ceph/block/nvmeof-namespaces-form/nvmeof-namespaces-form.component.ts +++ b/src/pybind/mgr/dashboard/frontend/src/app/ceph/block/nvmeof-namespaces-form/nvmeof-namespaces-form.component.ts @@ -248,9 +248,7 @@ export class NvmeofNamespacesFormComponent implements OnInit { return /^[^@/]+$/.test(value) ? null : { rbdImageName: true }; }) ]), - namespace_size: new UntypedFormControl(null, { - validators: [CdValidators.blockSizeMultiple()] - }), // UI only - not sent to backend + namespace_size: new UntypedFormControl(null), // UI only - not sent to backend host_access: new UntypedFormControl('all'), // UI only - determines visibility initiators: new UntypedFormControl([]) // UI only - selected hosts }); @@ -339,11 +337,6 @@ export class NvmeofNamespacesFormComponent implements OnInit { no_auto_visible: noAutoVisible }; - const blockSize = this.nsForm.getValue('namespace_size'); - if (blockSize) { - request.block_size = blockSize; - } - if (isGatewayProvisioned) { const rbdImageName = this.nsForm.getValue('rbd_image_name'); if (rbdImageName) {