The following error message is displayed in Password management GUI:
"Unable to see tasks in SDDC "Security" GUI. Retrieving tasks list failed. Something went wrong. Please retry or contact the service provider and provide the reference token."
When this error occurs user gets blocked from performing any operation on Password management GUI.
This issue happens in a rare case, when there is an immediate cancelled transaction which has deprecated error codes and VCF is upgraded to versions later than 4.2. There are few error codes which are deprecated and removed in later releases. But these being stored in transaction history in error description of failed/cancelled transaction. When UI fetches history to check if any failed transaction, backend fails to interpret.
To workaround this issue follow the below steps:
root@sddc-manager [ /home/vcf ]# psql -h localhost -U postgres
psql (10.18)
Type "help" for help.
postgres=# \c operationsmanager
You are now connected to database "operationsmanager" as user "postgres".
operationsmanager=#
operationsmanager=#
operationsmanager=# update passwordmanager.master_password_transaction set diagnostic_message = replace (diagnostic_message, 'PASSWORD_UPDATE_NSXT_USER_SSH_FAILED', 'PASSWORD_MANAGER_NSXT_USER_SSH_FAILED');
UPDATE 21
operationsmanager=#
operationsmanager=#
operationsmanager=# update passwordmanager.master_password_transaction set diagnostic_message = replace (diagnostic_message, 'PASSWORD_UPDATE_BASH_SHELL_ACTIVATION_FAILED','PASSWORD_MANAGER_BASH_SHELL_ACTIVATION_FAILED');
UPDATE 21
operationsmanager=#
operationsmanager=#
operationsmanager=# update passwordmanager.master_password_transaction set diagnostic_message = replace (diagnostic_message, 'PASSWORD_UPDATE_FETCH_ENTITYTYPE_CREDENTIALS_FAILED','PASSWORD_MANAGER_FETCH_ENTITYTYPE_CREDENTIALS_FAILED');
operationsmanager=# update passwordmanager.master_password_transaction set diagnostic_message = replace (diagnostic_message, 'PASSWORD_UPDATE_FETCH_ALL_CREDENTIALS_FAILED','PASSWORD_MANAGER_FETCH_ALL_CREDENTIALS_FAILED');
operationsmanager=# update passwordmanager.master_password_transaction set diagnostic_message = replace (diagnostic_message, 'PASSWORD_UPDATE_SSH_CONNECTION_FAILED','PASSWORD_MANAGER_SSH_CONNECTION_FAILED');
operationsmanager=# update passwordmanager.master_password_transaction set diagnostic_message = replace (diagnostic_message, 'PASSWORD_UPDATE_NSXT_USER_API_FAILED','PASSWORD_MANAGER_NSXT_USER_API_FAILED');
operationsmanager=# update passwordmanager.master_password_transaction set diagnostic_message = replace (diagnostic_message, 'PASSWORD_UPDATE_ENTITY_CONNECTION_FAILED','PASSWORD_MANAGER_ENTITY_CONNECTION_FAILED');
operationsmanager=# update passwordmanager.master_password_transaction set diagnostic_message = replace (diagnostic_message, 'PASSWORD_UPDATE_FETCH_ENTITY_CREDENTIALS_FAILED','PASSWORD_MANAGER_FETCH_ENTITY_CREDENTIALS_FAILED');
operationsmanager=# update passwordmanager.master_password_transaction set diagnostic_message = replace (diagnostic_message, 'PASSWORD_UPDATE_ENABLE_SSH_FAILED','PASSWORD_MANAGER_ENABLE_SSH_FAILED');
operationsmanager=# update passwordmanager.master_password_transaction set diagnostic_message = replace (diagnostic_message, 'PASSWORD_UPDATE_PSC_ADMIN_CLIENT_CONNECTION_FAILED','PASSWORD_MANAGER_PSC_ADMIN_CLIENT_CONNECTION_FAILED');
operationsmanager=# update passwordmanager.master_password_transaction set diagnostic_message = replace (diagnostic_message, 'PASSWORD_UPDATE_MANAGEMENT_VCENTER_FOR_HOST_NOT_FOUND','PASSWORD_MANAGER_MANAGEMENT_VCENTER_FOR_HOST_NOT_FOUND');
operationsmanager=# update passwordmanager.master_password_transaction set diagnostic_message = replace (diagnostic_message, 'PASSWORD_UPDATE_COMMAND_EXECUTION_IN_VM_FAILED','PASSWORD_MANAGER_COMMAND_EXECUTION_IN_VM_FAILED');
operationsmanager=# update passwordmanager.master_password_transaction set diagnostic_message = replace (diagnostic_message, 'PASSWORD_UPDATE_CSS_PASSWORD_TEST_FAILED','PASSWORD_MANAGER_CSS_PASSWORD_TEST_FAILED');
operationsmanager=# update passwordmanager.master_password_transaction set diagnostic_message = replace (diagnostic_message, 'PASSWORD_UPDATE_BASH_SHELL_DEACTIVATION_FAILED','PASSWORD_MANAGER_BASH_SHELL_DEACTIVATION_FAILED');
operationsmanager=# update passwordmanager.master_password_transaction set diagnostic_message = replace (diagnostic_message, 'PASSWORD_UPDATE_FETCH_VRA_TOKEN_FAILED','PASSWORD_MANAGER_FETCH_VRA_TOKEN_FAILED');
operationsmanager=# update passwordmanager.master_password_transaction set diagnostic_message = replace (diagnostic_message, 'PASSWORD_UPDATE_NO_VCENTER_FOR_DOMAIN_FOUND','PASSWORD_MANAGER_NO_VCENTER_FOR_DOMAIN_FOUND');
operationsmanager=# update passwordmanager.master_password_transaction set diagnostic_message = replace (diagnostic_message, 'PASSWORD_UPDATE_GET_VRSLCM_VERSION_FAILED','PASSWORD_MANAGER_GET_VRSLCM_VERSION_FAILED');
operationsmanager=# update passwordmanager.master_password_transaction set diagnostic_message = replace (diagnostic_message, 'PASSWORD_UPDATE_FETCH_SSO_CREDENTIALS_FAILED','PASSWORD_MANAGER_FETCH_SSO_CREDENTIALS_FAILED');
operationsmanager=# update passwordmanager.master_password_transaction set diagnostic_message = replace (diagnostic_message, 'PASSWORD_UPDATE_VALIDATE_WSA_API_CREDENTIALS_FAILED','PASSWORD_MANAGER_VALIDATE_WSA_API_CREDENTIALS_FAILED');
operationsmanager=# update passwordmanager.master_password_transaction set diagnostic_message = replace (diagnostic_message, 'PASSWORD_MANAGER_UNKNOWN_ERROR_OCCURED','PASSWORD_UPDATE_UNKNOWN_ERROR_OCCURED');
TOKEN=$(curl -d '{"username" : "<username>", "password" : "<password>"}' -H "Content-Type: application/json" -X POST http://127.0.0.1/v1/tokens | jq -r '.accessToken')
b. Get the credentials task - This fetches all the credentials task, identify failed task.
curl 'http://localhost/v1/credentials/tasks'; -i -X GET -H 'Content-Type: application/json' -H "Authorization: Bearer $TOKEN"
c. Identify failed task and copy the task id, and cancel it using the DELETE API:
curl http://localhost/v1/credentials/tasks/<task-ID>; -X DELETE -H "Authorization: Bearer $TOKEN " | jq