Sometimes, in VMware ESX 3.5 and vSphere 4.0, when you try to perform some actions against a virtual machine (like for example to take a snapshot or to rename it) the system throw an exception with the message "Another task is already in progress" even if there are no active tasks.
The solution is to ssh to the physical ESX server that the virtual machine resides on and restart the “mgmt-vmware” service as the user root.
service mgmt-vmware stop
Stopping VMware ESX Management services:
VMware ESX Host Agent Watchdog [ OK ]
VMware ESX Host Agent [ OK ]
Wait 30 seconds and start the service
service mgmt-vmware start
Starting VMware ESX Management services:
VMware ESX Host Agent (background) [ OK ]
Availability report startup (background) [ OK ]
The ESX server and any virtual machines hosted on it will disconnect from the Virtual Infrastructure/vSphere Client and can be reconnected by right clicking on the ESX server and choosing “reconnect”.
When it reconnects attempt the tasks that were failing earlier and they should now as intended.