Resizing in Proxmox fails

I tried to resize a disk through the proxmox GUI, but it fails with the message:
“Volume definition must not be resized while the resource-definition has the property ‘’ set!”
I’m not sure why that happens, and I couldn’t find any empty properties in the resource definition. I have also migrated the VM to another node, but that didn’t help.

We run linstor-controller on another server with version: 1.27.1-1
the proxmox node has:
proxmox-ve/stable,now 8.2.0 all [installed]
linstor-client/unknown,now 1.22.1-1 all [installed]
linstor-common/unknown,now 1.27.1-1 all [installed,automatic]
linstor-proxmox/unknown,now 8.0.2-1 all [installed]
linstor-satellite/unknown,now 1.27.1-1 all [installed]
drbd-dkms/unknown,now 9.2.9-1 all [installed]
drbd-utils/unknown,now 9.28.0-1 amd64 [installed]

Summary
TASK ERROR: API Return-Code: 500. Message: Could not set size (34603008 KiB) on resource definition pm-8cfc1328, because: [{"ret_code":-4611686018390687531,"message":"Volume definition must not be resized while the resource-definition has the property '' set!","details":"Resource definition: pm-8cfc1328, Volume number: 0","obj_refs":{"RscDfn":"pm-8cfc1328","VlmNr":"0"},"created_at":"2024-05-10T13:04:17.558691805+02:00"}]  at /usr/share/perl5/PVE/Storage/Custom/LINSTORPlugin.pm line 590. 	PVE::Storage::Custom::LINSTORPlugin::volume_resize("PVE::Storage::Custom::LINSTORPlugin", HASH(0x6512d34a8228), "ssdpool", "pm-8cfc1328_103", 35433480192, 5506) called at /usr/share/perl5/PVE/Storage.pm line 310 	PVE::Storage::volume_resize(HASH(0x6512d33be5f0), "ssdpool:pm-8cfc1328_103", 35433480192, 5506) called at /usr/share/perl5/PVE/QemuServer.pm line 4662 	PVE::QemuServer::qemu_block_resize(103, "drive-scsi0", HASH(0x6512d33be5f0), "ssdpool:pm-8cfc1328_103", 35433480192) called at /usr/share/perl5/PVE/API2/Qemu.pm line 5042 	PVE::API2::Qemu::__ANON__() called at /usr/share/perl5/PVE/AbstractConfig.pm line 299 	PVE::AbstractConfig::__ANON__() called at /usr/share/perl5/PVE/Tools.pm line 259 	eval {...} called at /usr/share/perl5/PVE/Tools.pm line 259 	PVE::Tools::lock_file_full("/var/lock/qemu-server/lock-103.conf", 10, 0, CODE(0x6512d312e940)) called at /usr/share/perl5/PVE/AbstractConfig.pm line 302 	PVE::AbstractConfig::__ANON__("PVE::QemuConfig", 103, 10, 0, CODE(0x6512d347ff20)) called at /usr/share/perl5/PVE/AbstractConfig.pm line 322 	PVE::AbstractConfig::lock_config_full("PVE::QemuConfig", 103, 10, CODE(0x6512d347ff20)) called at /usr/share/perl5/PVE/AbstractConfig.pm line 330 	PVE::AbstractConfig::lock_config("PVE::QemuConfig", 103, CODE(0x6512d347ff20)) called at /usr/share/perl5/PVE/API2/Qemu.pm line 5051 	PVE::API2::Qemu::__ANON__("..."...) called at /usr/share/perl5/PVE/RESTEnvironment.pm line 620 	eval {...} called at /usr/share/perl5/PVE/RESTEnvironment.pm line 611 	PVE::RESTEnvironment::fork_worker(PVE::RPCEnvironment=HASH(0x6512cca0a558), "resize", 103, "...", CODE(0x6512d349a0f0)) called at /usr/share/perl5/PVE/API2/Qemu.pm line 5054 	PVE::API2::Qemu::__ANON__(HASH(0x6512d035f3b0)) called at /usr/share/perl5/PVE/RESTHandler.pm line 499 	PVE::RESTHandler::handle("PVE::API2::Qemu", HASH(0x6512d15220f8), HASH(0x6512d035f3b0)) called at /usr/share/perl5/PVE/HTTPServer.pm line 180 	eval {...} called at /usr/share/perl5/PVE/HTTPServer.pm line 141 	PVE::HTTPServer::rest_handler(PVE::HTTPServer=HASH(0x6512d33b0bf8), "::ffff:158.38.3.31", "PUT", "/nodes/pve5/qemu/103/resize", HASH(0x6512d34700f8), HASH(0x6512d34a80c0), "extjs") called at /usr/share/perl5/PVE/APIServer/AnyEvent.pm line 938 	eval {...} called at /usr/share/perl5/PVE/APIServer/AnyEvent.pm line 912 	PVE::APIServer::AnyEvent::handle_api2_request(PVE::HTTPServer=HASH(0x6512d33b0bf8), HASH(0x6512cca067c0), HASH(0x6512d34700f8), "PUT", "/api2/extjs/nodes/pve5/qemu/103/resize") called at /usr/share/perl5/PVE/APIServer/AnyEvent.pm line 1162 	eval {...} called at /usr/share/perl5/PVE/APIServer/AnyEvent.pm line 1154 	PVE::APIServer::AnyEvent::handle_request(PVE::HTTPServer=HASH(0x6512d33b0bf8), HASH(0x6512cca067c0), HASH(0x6512d34700f8), "PUT", "/api2/extjs/nodes/pve5/qemu/103/resize") called at /usr/share/perl5/PVE/APIServer/AnyEvent.pm line 1622 	PVE::APIServer::AnyEvent::__ANON__(AnyEvent::Handle=HASH(0x6512d1b88c40), "disk=scsi0&size=%2B1G") called at /usr/lib/x86_64-linux-gnu/perl5/5.36/AnyEvent/Handle.pm line 1505 	AnyEvent::Handle::__ANON__(AnyEvent::Handle=HASH(0x6512d1b88c40)) called at /usr/lib/x86_64-linux-gnu/perl5/5.36/AnyEvent/Handle.pm line 1315 	AnyEvent::Handle::_drain_rbuf(AnyEvent::Handle=HASH(0x6512d1b88c40)) called at /usr/lib/x86_64-linux-gnu/perl5/5.36/AnyEvent/Handle.pm line 2015 	AnyEvent::Handle::__ANON__() called at /usr/lib/x86_64-linux-gnu/perl5/5.36/AnyEvent/Loop.pm line 248 	AnyEvent::Loop::one_event() called at /usr/lib/x86_64-linux-gnu/perl5/5.36/AnyEvent/Impl/Perl.pm line 46 	AnyEvent::CondVar::Base::_wait(AnyEvent::CondVar=HASH(0x6512cc9df5c8)) called at /usr/lib/x86_64-linux-gnu/perl5/5.36/AnyEvent.pm line 2034 	AnyEvent::CondVar::Base::recv(AnyEvent::CondVar=HASH(0x6512cc9df5c8)) called at /usr/share/perl5/PVE/APIServer/AnyEvent.pm line 1936 	PVE::APIServer::AnyEvent::run(PVE::HTTPServer=HASH(0x6512d33b0bf8)) called at /usr/share/perl5/PVE/Service/pvedaemon.pm line 52 	PVE::Service::pvedaemon::run(PVE::Service::pvedaemon=HASH(0x6512d33a7478)) called at /usr/share/perl5/PVE/Daemon.pm line 171 	eval {...} called at /usr/share/perl5/PVE/Daemon.pm line 171 	PVE::Daemon::__ANON__(PVE::Service::pvedaemon=HASH(0x6512d33a7478)) called at /usr/share/perl5/PVE/Daemon.pm line 390 	eval {...} called at /usr/share/perl5/PVE/Daemon.pm line 379 	PVE::Daemon::__ANON__(PVE::Service::pvedaemon=HASH(0x6512d33a7478), undef) called at /usr/share/perl5/PVE/Daemon.pm line 551 	eval {...} called at /usr/share/perl5/PVE/Daemon.pm line 549 	PVE::Daemon::start(PVE::Service::pvedaemon=HASH(0x6512d33a7478), undef) called at /usr/share/perl5/PVE/Daemon.pm line 659 	PVE::Daemon::__ANON__(HASH(0x6512cb2f14b0)) called at /usr/share/perl5/PVE/RESTHandler.pm line 499 	PVE::RESTHandler::handle("PVE::Service::pvedaemon", HASH(0x6512cb31ce28), HASH(0x6512cb2f14b0), 1) called at /usr/share/perl5/PVE/RESTHandler.pm line 985 	eval {...} called at /usr/share/perl5/PVE/RESTHandler.pm line 968 	PVE::RESTHandler::cli_handler("PVE::Service::pvedaemon", "pvedaemon start", "start", ARRAY(0x6512cb318550), ARRAY(0x6512cb31d4d0), undef, undef, undef) called at /usr/share/perl5/PVE/CLIHandler.pm line 594 	PVE::CLIHandler::__ANON__(ARRAY(0x6512cb2f1678), CODE(0x6512cb702b68), undef) called at /usr/share/perl5/PVE/CLIHandler.pm line 673 	PVE::CLIHandler::run_cli_handler("PVE::Service::pvedaemon", "prepare", CODE(0x6512cb702b68)) called at /usr/bin/pvedaemon line 27

Hello,

The error text is unfortunately missing the actual property key that needs to be deleted: DrbdOptions/ExactSize (we will of course fix this error message). So you will have to delete this from your resource-definition in order to be able to resize your volume-definition again.

Quoting the release notes of our linstor-proxmox plugin v8.0.0 (from April 17th):

Online migration from external storage:
So far it was only possible to migrate data from external storage like
LVM to LINSTOR/DRBD if the data was migrated offline. If you want to
migrate data online you can now temporarily set “exactsize yes” in
your “storage.cfg” for a particular DRBD storage and then migrate disks
to it. After you are done, remove the “exactsize” option from the
“storage.cfg” again. The LINSTOR property that allowed temporary online
migration is then deleted when the disk is activated again (but not if
it is currently active). If you want to delete the property for all
active disks after migration, or you want to be extra sure, you can run
a command like this:

linstor -m --output-version v1 rd l | jq '.[][].name' | \
  xargs -I {} linstor rd sp {} DrbdOptions/ExactSize False
1 Like