]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
mgr/dashboard: mgr/dashboard: Namespace size should accept GiB in NVMe/TCP
authorSagar Gopale <sagar.gopale@ibm.com>
Tue, 10 Mar 2026 12:12:12 +0000 (17:42 +0530)
committerAfreen Misbah <afreen@ibm.com>
Wed, 29 Apr 2026 07:42:25 +0000 (13:12 +0530)
Fixes: https://tracker.ceph.com/issues/75433
Signed-off-by: Sagar Gopale <sagar.gopale@ibm.com>
src/pybind/mgr/dashboard/frontend/src/app/ceph/block/nvmeof-namespaces-form/nvmeof-namespaces-form.component.spec.ts
src/pybind/mgr/dashboard/frontend/src/app/ceph/block/nvmeof-namespaces-form/nvmeof-namespaces-form.component.ts

index d5f3abb919777340572f222f860a958320474e3d..dd4c35eaa6cf452305e125bedf19b46bd656246c 100644 (file)
@@ -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();
+    });
   });
 });
index 86adfb99d3a6ad90ab6ec0c381a376efd12ac880..79b9d6e68626369715fa68c660b5edd036725865 100644 (file)
@@ -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) {