metricsign
Start free
Medium severityexecutionSnowflake

Power BI Refresh Error:
253006

What does this error mean?

The Python connector tried to upload a local file that does not exist at the specified path. This error is raised before the upload attempt when the connector validates the source file path.

Common causes

  • 1The local file path passed to the PUT command is incorrect or uses the wrong separator
  • 2The file was not created by an upstream process before the PUT command ran
  • 3Race condition: the file was created in a temp directory that was cleaned up before upload
  • 4Relative path resolves to a different directory depending on the working directory of the process
  • 5The file extension or name has an unexpected suffix (e.g., .tmp or .part) that was not anticipated

How to fix it

  1. 1Verify the exact path: print(os.path.abspath(local_file_path)) before the PUT call.
  2. 2Ensure the upstream step that creates the file has completed before the PUT command runs.
  3. 3Use absolute paths rather than relative paths to avoid working-directory confusion.
  4. 4Add an existence check: if not os.path.exists(path): raise before calling PUT.
  5. 5Check temp directory cleanup settings if the file is written to a system temp directory.

Frequently asked questions

Does the PUT command support wildcard patterns?

Yes — PUT file:///local/path/*.csv @stage/ will upload all matching files. The error 253006 occurs when no files match the pattern.

Can I use relative paths in the PUT command?

The PUT command uses the working directory of the Snowflake connector process. Always use absolute paths to avoid ambiguity.

Official documentation: https://github.com/snowflakedb/snowflake-connector-python/blob/main/src/snowflake/connector/errorcode.py

Other execution errors