Troubleshoot Quorum Blockchain Service¶
Insufficient vCPU quota¶
If your deployment fails because of a
QuotaExceeded error indicating that you have exceeded your vCPU core quota, create a support request with Azure to increase it.
To request increasing the vCPU limit:
Access and log in to the Azure support website.
In the Overview tab, select Create a support request.
In the Problem description tab:
- Select the Service and subscription limits (quota) issue type.
- Select your subscription.
- Select the Compute-VM (cores-vCPUs) subscription limit increases quota type.
- Select Next.
In the Additional details tab, enter your request details:
- Enter the number of required of required vCPUs in New vCPU Limit.
We recommend 6 vCPUs per environment.
- In the Quotas dropdown, select the required VM.
- Complete the required details, and select Next.
Review and create the support request.
Missing subscription registrations¶
If your deployment fails because of a
MissingSubscriptionRegistration error indicating that you haven’t registered a namespace (also known as a resource provider), you can view the registration status and register the resource provider with your subscription through the Azure portal.
To deploy QBS, register the following resource providers:
Failure to access management API¶
If you attempt to retrieve details for a deployed consortium member installed in one tenant (QBS Deployed Tenant) which is owned by a user with another tenant (User Tenant), you might see an error when trying to interact with the management API.
Create a new admin API user in the QBS Deployed Tenant¶
With this approach, when authorizing access on the management API, you don’t need to provide a bearer token.
Retrieve a bearer token to use with the currently non-working user credentials¶
You can use the Azure CLI to retrieve a bearer token to use with the management API.
- Install the Azure CLI.
- Go the Azure portal.
- Select your username in the upper right corner.
- Select Switch directory. This takes you to the Directories + subscriptions page, which lists your account’s directory names, domains, and IDs.
Identify the domains for your User Tenant and QBS Deployed Tenant.
If you’re unsure which organization your user belongs to, select your username in the upper right corner of the page, then select View account. In the list of options on the left side of the page, select Organizations. Your home organization is displayed at the top of the page.
Copy the directory IDs next to those domains.
On the command line, run the following command, filling in the QBS Deployed Tenant directory ID from the previous step.
az login --scope 8c989307-2439-402b-86eb-5900c6132dee/.default --tenant <QBS Deployed Tenant directory ID>
Go to the URL displayed, provide the code specified, and specify the user ID to log in with (for example,
On the command line, run the following command, filling in the QBS Deployed Tenant directory ID from step 6.
az account get-access-token --resource 8c989307-2439-402b-86eb-5900c6132dee --tenant <QBS Deployed Tenant directory ID> --query accessToken -otsv
This returns a bearer token that can be used with the management API:
- Go to the management API website.
- Select Authorize in the upper right corner.
- Set the bearer value to your bearer token.
- Select Authorize, then Close. You can now execute API calls on the page.
You can decode your bearer token by pasting it onto jwt.ms. In the output, the
tidvalue includes your User Tenant directory ID.
Unable to access RPC endpoint¶
If you are unable to access your RPC endpoint (DNS hostname) of your QBS member, check the following before raising a support ticket.
Check your firewall rules to ensure your client IP address has access to the QBS member.
If you have deployed a Development Tier QBS member and selected the Azure Spot Instance option, your VM might have been evicted due to lack of Azure compute capacity. In this case, the QBS service continually retries re-allocating your VM until capacity becomes availabile. Learn more about the Azure Spot eviction policy here.
Transaction processing failure¶
If you have transactions that fail to be mined and don’t generate receipts, this might be because of incorrect nonce values. Transactions submitted from one account must use consecutive nonce values. Transactions submitted with non-consecutive nonces are queued in the transaction pool and fail to process.
If you submit a transaction with a non-consecutive nonce that’s too low, you get a
Nonce too low error.
Nonce issues may also occur without error messages if you submit a transaction with a non-consecutive nonce larger than the nonces from all your prior transactions. For example, if you submit transactions with nonces 1, 2, and 4, the third transaction with the non-consecutive nonce fails to be mined or generate a receipt, but it might not produce an error. If you continue to submit transactions with nonces 5, 6, 7, etc., those transactions also fail to be mined and don’t generate receipts.
You can view your queued transactions using the
txpool JSON-RPC API methods. If you have queued transactions with non-consecutive nonces, you can fix this issue in one of the following ways:
- Submit transactions that fill the gap in nonce values.
- Contact support to clear the transaction pool. Clearing the transaction pool removes all queued and pending transactions, so all nodes and applications must be briefly stopped. You must re-submit any cleared transaction with the proper nonce value.