Skip to content

Error messages

Each heading is the fixed part of an error message, followed by its cause and fix.

Client

No (default) workspace specified.

The code names no workspace and no default is set. Name one, such as pn.ComputeContext(workspace="My workspace"), or set a default.

Log in with nanook login or set the environment variables.

The client found no valid credentials. Run nanook login, or in a job, set the service account variables.

Compute specification not provided and no defaults available for workspace.

A ComputeContext without cpus, memory or instance_type takes its hardware from the workspace defaults, which are not set. Set the hardware on the context, or have a workspace admin set the workspace compute defaults.

locally installed polars version

This message, or locally installed python version, means the client's version differs from the one recorded in the manifest. Install the version the message names, or change it with Edit manifest in the Compute tab of the portal.

Could not communicate with the compute cluster's scheduler.

The cluster stopped or restarted, or the connection is blocked. Check that the cluster runs and that the scheduler address, network access and TLS settings are correct. See Connect to a cluster you run, or on AWS, Reuse a running cluster.

Could not reach the cluster's observatory at

A ClusterContext reaches the observatory on port 3001 of the scheduler host. When the observatory runs elsewhere, pass observatory=pn.ClientOptions(uri=...) as shown in Connect to a cluster you run.

AWS

Connecting AWS failed. Check the status of the deployment in your AWS CloudFormation dashboard

The CloudFormation stack failed and rolled back. Find the failed resource on the stack's Events tab in CloudFormation, fix the cause, and connect again as in Get started on AWS.

Verifying the AWS connection has timed out.

The workspace was not connected within 5 minutes: the stack was not created, or is still being created. Check the stack's status in CloudFormation. Once it is CREATE_COMPLETE, nanook workspace aws verify --workspace-name "My workspace" reports the workspace as connected. If there is no stack, connect again as in Get started on AWS.

Ask your AWS administrator to request a vCPU quota increase for this instance family

The cluster needs more vCPUs than the account's EC2 quota for the instance family has left in the region. The GPU families (G and P) have their own quotas, which can be 0. Request an increase in the AWS Service Quotas console, or choose a smaller instance type or cluster_size.

AWS has no capacity for this instance type right now

EC2 has no free instances of this type in the workspace's availability zones. Retry later or choose another instance type.

Polars could not assume the workspace's AWS role.

The workspace's CloudFormation stack or its IAM roles were deleted or changed. Check that the stack is intact, or disconnect AWS and connect again.

The workspace role is not allowed to perform this operation

A service control policy or the PermissionsBoundary stack parameter blocks an action one of the workspace's roles needs. Allow the actions listed under IAM permissions per role in that policy or boundary.

Cluster you run

deserialization failed

The client's Polars version is incompatible with the cluster's, so the scheduler cannot read the query plan. Install the client release listed with the cluster release under Cluster software releases.

When the message goes on with does not match the Python version used to serialize the UDF, the client runs a different Python release than the cluster. Run the client on the cluster's Python release, as described in Connect to a cluster you run.

the cluster is configured to not support 'anonymous sinks'.

Storing a result on the cluster, such as with .execute(), needs a results location. Set one up as in Keep results on the cluster.

the cluster is configured to deny 'anonymous users'

The cluster rejects queries without a user name. Set one with NANOOK_USER_NAME or pn.Config.set_user_name() (see User names).

Bare-metal service

Please read and accept the EULA by setting the environment variable POLARS_EULA_ACCEPTED.

A cluster with a license file prints the EULA and exits until it is accepted. Accept it by setting POLARS_EULA_ACCEPTED=1 in the service's environment, as described under EULA.

Public address cannot be unspecified (0.0.0.0 or [::])

A public_addr in the configuration file is 0.0.0.0 or [::]. Set it to the address other nodes reach the node at. See Network addresses and static leader.

failed to enforce memory limits

memory_limit is set, but the service cannot set up its cgroups. Mount cgroup and delegate a cgroup to the polars-nanook-compute process, or remove memory_limit. Out-of-memory behavior explains the cgroup delegation.

Helm chart

EULA not accepted.

A license file under license.onPremEnterprise needs acceptEula=true (see EULA).

License error:

A license value is missing, or more than one license type is enabled. Enable exactly one license type and set the value the message names, as described in Install.