Below a list of common errors we run accross with users trying to run Pachyderm locally and following the Beginner Tutorial.
One of the first things you should do is check the logs:
$ pachctl list-job $ get-logs <jobID>
If the problem is with deployment of Pachyderm, Kubernetes has their own logs too:
$ kubectl get all $ kubectl logs pod_name
Sometimes if your pachyderm cluster is misbehaving profiling it can give more information about what’s going on. Pachyderm exposes the standard go profiling tool pprof over http. You can access it at
http://host:30651 host should be the same host you point
pachctl at. To learn more about using pprof, check `here<https://golang.org/pkg/net/http/pprof/>`_
Error: error messages with “cannot unmarshal”¶
Solution: This is usually due to a version mismatch. Start with
pachctl version and make sure your client and server version are matching.
If you got the error when running a pipeline, it’s likely you’re using the wrong version of the pipeline spec. For example,
json: cannot unmarshal bool into Go value of type pps.Incremental is because the pipeline spec between v1.1 and v1.2 changed the type for incrememental from
string. Refer to Pipeline Specification to check that yours is correct.
Error: Job status is stuck in “pulling” state¶
Solution: This means that Pachyderm can’t find the image specified in your pipeline. It’s possible you have a typo in your pipeline spec. More likely, the image isn’t available on DockerHub, your DOcker registry, or locally to the Pachyderm pods. If you’re running Pachyderm in Minikube, you need ot make sure any images you’ve built locally are accessible to Pachyderm within the VM.
pipeline <NAME> already exists¶
repo <NAME> already exists
Solution: Pipelines and repos need to have unique names. The errors happens most commonly when your first attempt at creating or running a pipeline failed and you try to do
create-pipeline again. There are a bunch of solutions.
- Delete the previous pipelines and associated repos.
pachctl delete-repo <name>and
pachctl delete-pipeline <name>.
- Change the “name” field in your pipeline spec JSON file.
- Use the
update-pipelineis a bit more complicated to use so make sure to read the Updating Pipelines docs.
Error: A pipeline using
grep fails with a  error code.¶
Solution: Little known fact,
grep errors with  if it does not find any results. For our fruit stand example, if we did grepped for grapes, the pipeline would end up failing. It’s really easy to solve this by adding “acceptReturnCode”:  in stdin of your pipeline spec.
Technically, this  error could be coming from some other part of your code, but the most common culprit we’ve seen if you’re running simple examples is grep.
Error: SOMETHING IS F***ED AND I WANT TO START OVER!¶
Solution: We got your back!
# Delete all pipelines and repos in Pachyderm $ pachctl delete-all # Archive all commits in all repos. This is ideal if you have a bunch of garbage data, but want # to keep your pipelines and repos intact. Your old data is still available using list-commit -a. $ pachctl archive-all # Remove Pachyderm from your kubernetes cluster $ pachctl deploy --dry-run | kubectl delete -f - # Kill the entire minikube VM and restart. Don't skip the minikube delete step # because it keeps around some weird intermediate state. $ minikube stop $ minikube delete $ minikube start