<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Fabric failing to read from lakehouse in Data Engineering</title>
    <link>https://community.fabric.microsoft.com/t5/Data-Engineering/Fabric-failing-to-read-from-lakehouse/m-p/4750289#M10548</link>
    <description>&lt;P&gt;I have tested all the logic ensuring the GUID is fine as i am using fabric's api&amp;nbsp; to extract, i am pretty sure its some backend issue, which i do not have the time to sit and debug, i have worked it around and fixed.&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Wed, 02 Jul 2025 02:20:51 GMT</pubDate>
    <dc:creator>rookie111</dc:creator>
    <dc:date>2025-07-02T02:20:51Z</dc:date>
    <item>
      <title>Fabric failing to read from lakehouse</title>
      <link>https://community.fabric.microsoft.com/t5/Data-Engineering/Fabric-failing-to-read-from-lakehouse/m-p/4743241#M10417</link>
      <description>&lt;P&gt;I have created a package which builds the endpoint for lakehouse - correctly as I have validated the output - and reads the data from files in the lakehouse using spark, but unfortunately the same code keeps failing with the following error&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;======================&lt;BR /&gt;&lt;SPAN&gt;2025-06-25 07:53:33,693 . ERROR - mcp_edp_pipeline - mcp.edp.ingestion_framework.data_io.lakehouse_reader - read:55 - Lakehouse read failed. Traceback (most recent call last): File "/home/trusted-service-user/cluster-env/trident_env/lib/python3.11/site-packages/ingestion_framework/data_io/lakehouse_reader.py", line 53, in read return self._read_files() ^^^^^^^^^^^^^^^^^^ File "/home/trusted-service-user/cluster-env/trident_env/lib/python3.11/site-packages/ingestion_framework/data_io/lakehouse_reader.py", line 90, in _read_files reader = reader.schema(config["schema"]) ^^^^^^^^^^^^^^^^^^^^^^ File "/opt/spark/python/lib/pyspark.zip/pyspark/sql/readwriter.py", line 307, in load return self._df(self._jreader.load(path)) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/trusted-service-user/cluster-env/trident_env/lib/python3.11/site-packages/py4j/java_gateway.py", line 1322, in __call__ return_value = get_return_value( ^^^^^^^^^^^^^^^^^ File "/opt/spark/python/lib/pyspark.zip/pyspark/errors/exceptions/captured.py", line 179, in deco return f(*a, **kw) ^^^^^^^^^^^ File "/home/trusted-service-user/cluster-env/trident_env/lib/python3.11/site-packages/py4j/protocol.py", line 326, in get_return_value raise Py4JJavaError( py4j.protocol.Py4JJavaError: An error occurred while calling o9381.load. : Operation failed: "Bad Request", 400, GET, &lt;A href="http://onelake.dfs.fabric.microsoft.com/ef4a09c9-61b6-45ca-b99f-1d8ea1cee548?upn=false&amp;amp;resource=filesystem&amp;amp;maxResults=5000&amp;amp;directory=user/trusted-service-user/local_testing/Files/unit_price/balance-sheet&amp;amp;timeout=90&amp;amp;recursive=false," target="_blank" rel="noopener"&gt;http://onelake.dfs.fabric.microsoft.com/ef4a09c9-61b6-45ca-b99f-1d8ea1cee548?upn=false&amp;amp;resource=filesystem&amp;amp;maxResults=5000&amp;amp;directory=user/trusted-service-user/local_testing/Files/unit_price/balance-sheet&amp;amp;timeout=90&amp;amp;recursive=false,&lt;/A&gt; FriendlyNameSupportDisabled, "Request Failed with WorkspaceId and ArtifactId should be either valid Guids or valid Names" at org.apache.hadoop.fs.azurebfs.services.AbfsRestOperation.completeExecute(AbfsRestOperation.java:231) at org.apache.hadoop.fs.azurebfs.services.AbfsRestOperation.lambda$execute$0(AbfsRestOperation.java:191) at org.apache.hadoop.fs.statistics.impl.IOStatisticsBinding.trackDurationOfInvocation(IOStatisticsBinding.java:464) at org.apache.hadoop.fs.azurebfs.services.AbfsRestOperation.execute(AbfsRestOperation.java:189) at org.apache.hadoop.fs.azurebfs.services.AbfsClient.listPath(AbfsClient.java:311) at org.apache.hadoop.fs.azurebfs.AzureBlobFileSystemStore.listStatus(AzureBlobFileSystemStore.java:1173) at org.apache.hadoop.fs.azurebfs.AzureBlobFileSystemStore.listStatus(AzureBlobFileSystemStore.java:1143) at org.apache.hadoop.fs.azurebfs.AzureBlobFileSystemStore.listStatus(AzureBlobFileSystemStore.java:1125) at org.apache.hadoop.fs.azurebfs.AzureBlobFileSystem.listStatus(AzureBlobFileSystem.java:513) at org.apache.hadoop.fs.Globber.listStatus(Globber.java:128) at org.apache.hadoop.fs.Globber.doGlob(Globber.java:291) at org.apache.hadoop.fs.Globber.glob(Globber.java:202) at org.apache.hadoop.fs.FileSystem.globStatus(FileSystem.java:2123) at org.apache.spark.deploy.SparkHadoopUtil.globPath(SparkHadoopUtil.scala:301) at org.apache.spark.sql.execution.datasources.DataSource$.$anonfun$checkAndGlobPathIfNecessary$3(DataSource.scala:740) at org.apache.spark.util.ThreadUtils$.$anonfun$parmap$2(ThreadUtils.scala:384) at scala.concurrent.Future$.$anonfun$apply$1(Future.scala:659) at scala.util.Success.$anonfun$map$1(Try.scala:255) at scala.util.Success.map(Try.scala:213) at scala.concurrent.Future.$anonfun$map$1(Future.scala:292) at scala.concurrent.impl.Promise.liftedTree1$1(Promise.scala:33) at scala.concurrent.impl.Promise.$anonfun$transform$1(Promise.scala:33) at scala.concurrent.impl.CallbackRunnable.run(Promise.scala:64) at java.base/java.util.concurrent.ForkJoinTask$RunnableExecuteAction.exec(ForkJoinTask.java:1426) at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290) at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020) at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656) at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594) at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183) &lt;/SPAN&gt;&lt;SPAN class=""&gt;---------------------------------------------------------------------------&lt;/SPAN&gt; &lt;SPAN class=""&gt;Py4JJavaError&lt;/SPAN&gt;&lt;SPAN&gt; Traceback (most recent call last) File &lt;/SPAN&gt;&lt;SPAN class=""&gt;~/cluster-env/trident_env/lib/python3.11/site-packages/ingestion_framework/data_io/lakehouse_reader.py:53&lt;/SPAN&gt;&lt;SPAN&gt;, in &lt;/SPAN&gt;&lt;SPAN class=""&gt;LakehouseReader.read&lt;/SPAN&gt;&lt;SPAN class=""&gt;(self)&lt;/SPAN&gt; &lt;SPAN class=""&gt;52&lt;/SPAN&gt; &lt;SPAN class=""&gt;else&lt;/SPAN&gt;&lt;SPAN&gt;: &lt;/SPAN&gt;&lt;SPAN class=""&gt;---&amp;gt; 53&lt;/SPAN&gt; &lt;SPAN class=""&gt;return&lt;/SPAN&gt; &lt;SPAN class=""&gt;self&lt;/SPAN&gt;&lt;SPAN class=""&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;_read_files() &lt;/SPAN&gt;&lt;SPAN class=""&gt;54&lt;/SPAN&gt; &lt;SPAN class=""&gt;except&lt;/SPAN&gt; &lt;SPAN class=""&gt;Exception&lt;/SPAN&gt; &lt;SPAN class=""&gt;as&lt;/SPAN&gt;&lt;SPAN&gt; e: File &lt;/SPAN&gt;&lt;SPAN class=""&gt;~/cluster-env/trident_env/lib/python3.11/site-packages/ingestion_framework/data_io/lakehouse_reader.py:90&lt;/SPAN&gt;&lt;SPAN&gt;, in &lt;/SPAN&gt;&lt;SPAN class=""&gt;LakehouseReader._read_files&lt;/SPAN&gt;&lt;SPAN class=""&gt;(self)&lt;/SPAN&gt; &lt;SPAN class=""&gt;88&lt;/SPAN&gt;&lt;SPAN&gt; reader &lt;/SPAN&gt;&lt;SPAN class=""&gt;=&lt;/SPAN&gt;&lt;SPAN&gt; reader&lt;/SPAN&gt;&lt;SPAN class=""&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;schema(config[&lt;/SPAN&gt;&lt;SPAN class=""&gt;"&lt;/SPAN&gt;&lt;SPAN class=""&gt;schema&lt;/SPAN&gt;&lt;SPAN class=""&gt;"&lt;/SPAN&gt;&lt;SPAN&gt;]) &lt;/SPAN&gt;&lt;SPAN class=""&gt;---&amp;gt; 90&lt;/SPAN&gt;&lt;SPAN&gt; df &lt;/SPAN&gt;&lt;SPAN class=""&gt;=&lt;/SPAN&gt;&lt;SPAN&gt; reader&lt;/SPAN&gt;&lt;SPAN class=""&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;load(base_path) &lt;/SPAN&gt;&lt;SPAN class=""&gt;92&lt;/SPAN&gt; &lt;SPAN class=""&gt;# optional row skipping&lt;/SPAN&gt;&lt;SPAN&gt; File &lt;/SPAN&gt;&lt;SPAN class=""&gt;/opt/spark/python/lib/pyspark.zip/pyspark/sql/readwriter.py:307&lt;/SPAN&gt;&lt;SPAN&gt;, in &lt;/SPAN&gt;&lt;SPAN class=""&gt;DataFrameReader.load&lt;/SPAN&gt;&lt;SPAN class=""&gt;(self, path, format, schema, **options)&lt;/SPAN&gt; &lt;SPAN class=""&gt;306&lt;/SPAN&gt; &lt;SPAN class=""&gt;if&lt;/SPAN&gt; &lt;SPAN class=""&gt;isinstance&lt;/SPAN&gt;&lt;SPAN&gt;(path, &lt;/SPAN&gt;&lt;SPAN class=""&gt;str&lt;/SPAN&gt;&lt;SPAN&gt;&lt;span class="lia-unicode-emoji" title=":disappointed_face:"&gt;😞&lt;/span&gt; &lt;/SPAN&gt;&lt;SPAN class=""&gt;--&amp;gt; 307&lt;/SPAN&gt; &lt;SPAN class=""&gt;return&lt;/SPAN&gt; &lt;SPAN class=""&gt;self&lt;/SPAN&gt;&lt;SPAN class=""&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;_df(&lt;/SPAN&gt;&lt;SPAN class=""&gt;self&lt;/SPAN&gt;&lt;SPAN class=""&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;_jreader&lt;/SPAN&gt;&lt;SPAN class=""&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;load(path)) &lt;/SPAN&gt;&lt;SPAN class=""&gt;308&lt;/SPAN&gt; &lt;SPAN class=""&gt;elif&lt;/SPAN&gt;&lt;SPAN&gt; path &lt;/SPAN&gt;&lt;SPAN class=""&gt;is&lt;/SPAN&gt; &lt;SPAN class=""&gt;not&lt;/SPAN&gt; &lt;SPAN class=""&gt;None&lt;/SPAN&gt;&lt;SPAN&gt;: File &lt;/SPAN&gt;&lt;SPAN class=""&gt;~/cluster-env/trident_env/lib/python3.11/site-packages/py4j/java_gateway.py:1322&lt;/SPAN&gt;&lt;SPAN&gt;, in &lt;/SPAN&gt;&lt;SPAN class=""&gt;JavaMember.__call__&lt;/SPAN&gt;&lt;SPAN class=""&gt;(self, *args)&lt;/SPAN&gt; &lt;SPAN class=""&gt;1321&lt;/SPAN&gt;&lt;SPAN&gt; answer &lt;/SPAN&gt;&lt;SPAN class=""&gt;=&lt;/SPAN&gt; &lt;SPAN class=""&gt;self&lt;/SPAN&gt;&lt;SPAN class=""&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;gateway_client&lt;/SPAN&gt;&lt;SPAN class=""&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;send_command(command) &lt;/SPAN&gt;&lt;SPAN class=""&gt;-&amp;gt; 1322&lt;/SPAN&gt;&lt;SPAN&gt; return_value &lt;/SPAN&gt;&lt;SPAN class=""&gt;=&lt;/SPAN&gt;&lt;SPAN&gt; get_return_value( &lt;/SPAN&gt;&lt;SPAN class=""&gt;1323&lt;/SPAN&gt;&lt;SPAN&gt; answer, &lt;/SPAN&gt;&lt;SPAN class=""&gt;self&lt;/SPAN&gt;&lt;SPAN class=""&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;gateway_client, &lt;/SPAN&gt;&lt;SPAN class=""&gt;self&lt;/SPAN&gt;&lt;SPAN class=""&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;target_id, &lt;/SPAN&gt;&lt;SPAN class=""&gt;self&lt;/SPAN&gt;&lt;SPAN class=""&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;name) &lt;/SPAN&gt;&lt;SPAN class=""&gt;1325&lt;/SPAN&gt; &lt;SPAN class=""&gt;for&lt;/SPAN&gt;&lt;SPAN&gt; temp_arg &lt;/SPAN&gt;&lt;SPAN class=""&gt;in&lt;/SPAN&gt;&lt;SPAN&gt; temp_args: File &lt;/SPAN&gt;&lt;SPAN class=""&gt;/opt/spark/python/lib/pyspark.zip/pyspark/errors/exceptions/captured.py:179&lt;/SPAN&gt;&lt;SPAN&gt;, in &lt;/SPAN&gt;&lt;SPAN class=""&gt;capture_sql_exception.&amp;lt;locals&amp;gt;.deco&lt;/SPAN&gt;&lt;SPAN class=""&gt;(*a, **kw)&lt;/SPAN&gt; &lt;SPAN class=""&gt;178&lt;/SPAN&gt; &lt;SPAN class=""&gt;try&lt;/SPAN&gt;&lt;SPAN&gt;: &lt;/SPAN&gt;&lt;SPAN class=""&gt;--&amp;gt; 179&lt;/SPAN&gt; &lt;SPAN class=""&gt;return&lt;/SPAN&gt;&lt;SPAN&gt; f(&lt;/SPAN&gt;&lt;SPAN class=""&gt;*&lt;/SPAN&gt;&lt;SPAN&gt;a, &lt;/SPAN&gt;&lt;SPAN class=""&gt;*&lt;/SPAN&gt;&lt;SPAN class=""&gt;*&lt;/SPAN&gt;&lt;SPAN&gt;kw) &lt;/SPAN&gt;&lt;SPAN class=""&gt;180&lt;/SPAN&gt; &lt;SPAN class=""&gt;except&lt;/SPAN&gt;&lt;SPAN&gt; Py4JJavaError &lt;/SPAN&gt;&lt;SPAN class=""&gt;as&lt;/SPAN&gt;&lt;SPAN&gt; e: File &lt;/SPAN&gt;&lt;SPAN class=""&gt;~/cluster-env/trident_env/lib/python3.11/site-packages/py4j/protocol.py:326&lt;/SPAN&gt;&lt;SPAN&gt;, in &lt;/SPAN&gt;&lt;SPAN class=""&gt;get_return_value&lt;/SPAN&gt;&lt;SPAN class=""&gt;(answer, gateway_client, target_id, name)&lt;/SPAN&gt; &lt;SPAN class=""&gt;325&lt;/SPAN&gt; &lt;SPAN class=""&gt;if&lt;/SPAN&gt;&lt;SPAN&gt; answer[&lt;/SPAN&gt;&lt;SPAN class=""&gt;1&lt;/SPAN&gt;&lt;SPAN&gt;] &lt;/SPAN&gt;&lt;SPAN class=""&gt;==&lt;/SPAN&gt;&lt;SPAN&gt; REFERENCE_TYPE: &lt;/SPAN&gt;&lt;SPAN class=""&gt;--&amp;gt; 326&lt;/SPAN&gt; &lt;SPAN class=""&gt;raise&lt;/SPAN&gt;&lt;SPAN&gt; Py4JJavaError( &lt;/SPAN&gt;&lt;SPAN class=""&gt;327&lt;/SPAN&gt; &lt;SPAN class=""&gt;"&lt;/SPAN&gt;&lt;SPAN class=""&gt;An error occurred while calling &lt;/SPAN&gt;&lt;SPAN class=""&gt;{0}&lt;/SPAN&gt;&lt;SPAN class=""&gt;{1}&lt;/SPAN&gt;&lt;SPAN class=""&gt;{2}&lt;/SPAN&gt;&lt;SPAN class=""&gt;.&lt;/SPAN&gt;&lt;SPAN class=""&gt;\n&lt;/SPAN&gt;&lt;SPAN class=""&gt;"&lt;/SPAN&gt;&lt;SPAN class=""&gt;.&lt;/SPAN&gt; &lt;SPAN class=""&gt;328&lt;/SPAN&gt; &lt;SPAN class=""&gt;format&lt;/SPAN&gt;&lt;SPAN&gt;(target_id, &lt;/SPAN&gt;&lt;SPAN class=""&gt;"&lt;/SPAN&gt;&lt;SPAN class=""&gt;.&lt;/SPAN&gt;&lt;SPAN class=""&gt;"&lt;/SPAN&gt;&lt;SPAN&gt;, name), value) &lt;/SPAN&gt;&lt;SPAN class=""&gt;329&lt;/SPAN&gt; &lt;SPAN class=""&gt;else&lt;/SPAN&gt;&lt;SPAN&gt;: &lt;/SPAN&gt;&lt;SPAN class=""&gt;Py4JJavaError&lt;/SPAN&gt;&lt;SPAN&gt;: An error occurred while calling o9381.load. : Operation failed: "Bad Request", 400, GET, &lt;A href="http://onelake.dfs.fabric.microsoft.com/ef4a09c9-61b6-45ca-b99f-1d8ea1cee548?upn=false&amp;amp;resource=filesystem&amp;amp;maxResults=5000&amp;amp;directory=user/trusted-service-user/local_testing/Files/unit_price/balance-sheet&amp;amp;timeout=90&amp;amp;recursive=false," target="_blank" rel="noopener"&gt;http://onelake.dfs.fabric.microsoft.com/ef4a09c9-61b6-45ca-b99f-1d8ea1cee548?upn=false&amp;amp;resource=filesystem&amp;amp;maxResults=5000&amp;amp;directory=user/trusted-service-user/local_testing/Files/unit_price/balance-sheet&amp;amp;timeout=90&amp;amp;recursive=false,&lt;/A&gt; FriendlyNameSupportDisabled,&amp;nbsp;&lt;/SPAN&gt;&lt;BR /&gt;===================================&lt;BR /&gt;here is the code that reads it&lt;/P&gt;&lt;DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;def&lt;/SPAN&gt; &lt;SPAN&gt;_read_files&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;self&lt;/SPAN&gt;&lt;SPAN&gt;) -&amp;gt; DataFrame:&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;config&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;self&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;config&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;base_path&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;f&lt;/SPAN&gt;&lt;SPAN&gt;"abfss://&lt;/SPAN&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;SPAN&gt;config&lt;/SPAN&gt;&lt;SPAN&gt;[&lt;/SPAN&gt;&lt;SPAN&gt;'workspace_id'&lt;/SPAN&gt;&lt;SPAN&gt;]&lt;/SPAN&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;SPAN&gt;@onelake.dfs.fabric.microsoft.com/&lt;/SPAN&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;SPAN&gt;config&lt;/SPAN&gt;&lt;SPAN&gt;[&lt;/SPAN&gt;&lt;SPAN&gt;'lakehouse_id'&lt;/SPAN&gt;&lt;SPAN&gt;]&lt;/SPAN&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;SPAN&gt;/Files/&lt;/SPAN&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;SPAN&gt;config&lt;/SPAN&gt;&lt;SPAN&gt;[&lt;/SPAN&gt;&lt;SPAN&gt;'folder_path'&lt;/SPAN&gt;&lt;SPAN&gt;]&lt;/SPAN&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;SPAN&gt;"&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;fmt&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;config&lt;/SPAN&gt;&lt;SPAN&gt;[&lt;/SPAN&gt;&lt;SPAN&gt;"format"&lt;/SPAN&gt;&lt;SPAN&gt;].lower()&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;_logger&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;info&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;f&lt;/SPAN&gt;&lt;SPAN&gt;"Reading files from '&lt;/SPAN&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;SPAN&gt;base_path&lt;/SPAN&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;SPAN&gt;' with format '&lt;/SPAN&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;SPAN&gt;fmt&lt;/SPAN&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;SPAN&gt;'."&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;DIV&gt;&lt;SPAN&gt;reader&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;self&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;spark&lt;/SPAN&gt;&lt;SPAN&gt;.read.format(&lt;/SPAN&gt;&lt;SPAN&gt;fmt&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;BR /&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;if&lt;/SPAN&gt; &lt;SPAN&gt;fmt&lt;/SPAN&gt; &lt;SPAN&gt;==&lt;/SPAN&gt; &lt;SPAN&gt;"json"&lt;/SPAN&gt; &lt;SPAN&gt;and&lt;/SPAN&gt; &lt;SPAN&gt;config&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;get&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;"multiline"&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;False&lt;/SPAN&gt;&lt;SPAN&gt;&lt;span class="lia-unicode-emoji" title=":disappointed_face:"&gt;😞&lt;/span&gt;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;reader&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;reader&lt;/SPAN&gt;&lt;SPAN&gt;.option(&lt;/SPAN&gt;&lt;SPAN&gt;"multiLine"&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;"true"&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;BR /&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;if&lt;/SPAN&gt; &lt;SPAN&gt;config&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;get&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;"wholeFile"&lt;/SPAN&gt;&lt;SPAN&gt;&lt;span class="lia-unicode-emoji" title=":disappointed_face:"&gt;😞&lt;/span&gt;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;reader&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;reader&lt;/SPAN&gt;&lt;SPAN&gt;.option(&lt;/SPAN&gt;&lt;SPAN&gt;"wholeFile"&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;str&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;config&lt;/SPAN&gt;&lt;SPAN&gt;[&lt;/SPAN&gt;&lt;SPAN&gt;"wholeFile"&lt;/SPAN&gt;&lt;SPAN&gt;]).&lt;/SPAN&gt;&lt;SPAN&gt;lower&lt;/SPAN&gt;&lt;SPAN&gt;())&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;if&lt;/SPAN&gt; &lt;SPAN&gt;config&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;get&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;"infer_schema"&lt;/SPAN&gt;&lt;SPAN&gt;&lt;span class="lia-unicode-emoji" title=":disappointed_face:"&gt;😞&lt;/span&gt;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;reader&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;reader&lt;/SPAN&gt;&lt;SPAN&gt;.option(&lt;/SPAN&gt;&lt;SPAN&gt;"inferSchema"&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;str&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;config&lt;/SPAN&gt;&lt;SPAN&gt;[&lt;/SPAN&gt;&lt;SPAN&gt;"infer_schema"&lt;/SPAN&gt;&lt;SPAN&gt;]).&lt;/SPAN&gt;&lt;SPAN&gt;lower&lt;/SPAN&gt;&lt;SPAN&gt;())&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;if&lt;/SPAN&gt; &lt;SPAN&gt;config&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;get&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;"header"&lt;/SPAN&gt;&lt;SPAN&gt;) &lt;/SPAN&gt;&lt;SPAN&gt;is&lt;/SPAN&gt; &lt;SPAN&gt;not&lt;/SPAN&gt; &lt;SPAN&gt;None&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;reader&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;reader&lt;/SPAN&gt;&lt;SPAN&gt;.option(&lt;/SPAN&gt;&lt;SPAN&gt;"header"&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;str&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;config&lt;/SPAN&gt;&lt;SPAN&gt;[&lt;/SPAN&gt;&lt;SPAN&gt;"header"&lt;/SPAN&gt;&lt;SPAN&gt;]).&lt;/SPAN&gt;&lt;SPAN&gt;lower&lt;/SPAN&gt;&lt;SPAN&gt;())&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;for&lt;/SPAN&gt; &lt;SPAN&gt;k&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;v&lt;/SPAN&gt; &lt;SPAN&gt;in&lt;/SPAN&gt; &lt;SPAN&gt;config&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;get&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;"options"&lt;/SPAN&gt;&lt;SPAN&gt;, {}).items():&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;reader&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;reader&lt;/SPAN&gt;&lt;SPAN&gt;.option(&lt;/SPAN&gt;&lt;SPAN&gt;k&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;v&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;BR /&gt;&lt;DIV&gt;&lt;SPAN&gt;# static schema&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;if&lt;/SPAN&gt; &lt;SPAN&gt;isinstance&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;config&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;get&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;"schema"&lt;/SPAN&gt;&lt;SPAN&gt;), StructType):&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;reader&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;reader&lt;/SPAN&gt;&lt;SPAN&gt;.schema(&lt;/SPAN&gt;&lt;SPAN&gt;config&lt;/SPAN&gt;&lt;SPAN&gt;[&lt;/SPAN&gt;&lt;SPAN&gt;"schema"&lt;/SPAN&gt;&lt;SPAN&gt;])&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;print&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;"Loading data from base_path: "&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;base_path&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;df&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;reader&lt;/SPAN&gt;&lt;SPAN&gt;.load(&lt;/SPAN&gt;&lt;SPAN&gt;base_path&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;BR /&gt;&lt;/SPAN&gt;This works fine locally, and if I extract the base_path and run it manually it runs fine and loads the data&lt;BR /&gt;I don't know if this is a bug but why is this not working fine?&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;I have created a whl file for this and loaded to the env.&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;/DIV&gt;&lt;P&gt;&lt;BR /&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 25 Jun 2025 08:14:29 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/Data-Engineering/Fabric-failing-to-read-from-lakehouse/m-p/4743241#M10417</guid>
      <dc:creator>rookie111</dc:creator>
      <dc:date>2025-06-25T08:14:29Z</dc:date>
    </item>
    <item>
      <title>Re: Fabric failing to read from lakehouse</title>
      <link>https://community.fabric.microsoft.com/t5/Data-Engineering/Fabric-failing-to-read-from-lakehouse/m-p/4746052#M10453</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="javascript:void(0)" data-lia-user-mentions="" data-lia-user-uid="1295178" data-lia-user-login="rookie111" class="lia-mention lia-mention-user"&gt;rookie111&lt;/a&gt;&amp;nbsp;,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Thank you for reaching out to Microsoft Fabric Community Forum.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Below are the few observations and few debud points to resolve your issue please try with the points and let us know if you need and further assistance.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;The error you're seeing (400 Bad Request - FriendlyNameSupportDisabled) means that the system does not support friendly names for workspace_id or lakehouse_id and expects valid GUIDs only.&lt;/LI&gt;
&lt;LI&gt;Please ensure that both workspace_id and lakehouse_id in your config are actual GUIDs (e.g., ef4a09c9-61b6-45ca-b99f-1d8ea1cee548) and not friendly names like "SalesLakehouse" or "MyWorkspace".&lt;/LI&gt;
&lt;LI&gt;You can find the correct GUIDs by checking the settings of the Fabric workspace and lakehouse from the UI.&lt;/LI&gt;
&lt;LI&gt;the path should like this: abfss://&amp;lt;workspace_id&amp;gt;@onelake.dfs.fabric.microsoft.com/&amp;lt;lakehouse_id&amp;gt;/Files/&amp;lt;folder_path&amp;gt;&lt;/LI&gt;
&lt;LI&gt;In some managed environments (like Fabric), the workspace context is automatically inferred and including it explicitly may cause errors.&lt;/LI&gt;
&lt;LI&gt;Even if this code works locally, the Fabric-managed Spark environment may enforce stricter validation, causing the same path to fail there.&lt;/LI&gt;
&lt;LI&gt;the actual value of base_path just before calling .load() to confirm what’s being passed into Spark when it fails.&lt;/LI&gt;
&lt;LI&gt;Temporarily hardcode the path value that works locally to see if the same path succeeds when running in Fabric.&lt;/LI&gt;
&lt;LI&gt;If schema binding is causing issues, try commenting out the .schema() line and allow Spark to infer the schema to test path access:reader = self.spark.read.format(fmt).load(base_path)&lt;/LI&gt;
&lt;LI&gt;Make sure the file path inside the lakehouse actually exists and is accessible from the environment where the Spark job is running.&lt;/LI&gt;
&lt;LI&gt;Check if the Spark cluster running your job has data access permissions to the lakehouse — permission issues can sometimes appear as path resolution errors.&lt;/LI&gt;
&lt;LI&gt;If you created a .whl package and deployed it, ensure the package is correctly picked up in the runtime environment and is not using stale or overridden configurations.&lt;/LI&gt;
&lt;LI&gt;You can try running the same logic inside a Fabric notebook directly to verify whether the code fails only inside pipelines or universally in the Fabric context.&lt;/LI&gt;
&lt;LI&gt;
&lt;P&gt;As a temporary workaround, if schema binding is causing issues, try removing .schema(config["schema"]) and allow Spark to infer the schema just to see if .load() works&amp;nbsp; that helps isolate whether the path is invalid or the reader is misconfigured.&lt;/P&gt;
&lt;/LI&gt;
&lt;LI&gt;
&lt;P&gt;Lastly, ensure your workspace_id, lakehouse_id, and storage path haven’t changed recently due to renaming or redeployment, as that can invalidate the previous GUIDs used.&lt;/P&gt;
&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;Regards,&lt;/P&gt;
&lt;P&gt;Chaithanya.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 27 Jun 2025 06:10:57 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/Data-Engineering/Fabric-failing-to-read-from-lakehouse/m-p/4746052#M10453</guid>
      <dc:creator>v-kathullac</dc:creator>
      <dc:date>2025-06-27T06:10:57Z</dc:date>
    </item>
    <item>
      <title>Re: Fabric failing to read from lakehouse</title>
      <link>https://community.fabric.microsoft.com/t5/Data-Engineering/Fabric-failing-to-read-from-lakehouse/m-p/4747089#M10472</link>
      <description>&lt;P&gt;Hi there,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Locally, the spark dataframe aka python dataframe does not work. For that to work, You need to move the data to public cloud source ( azure environment).&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;For example, you can use below code:&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;from&lt;/SPAN&gt;&lt;SPAN&gt; pyspark.sql.functions &lt;/SPAN&gt;&lt;SPAN&gt;import&lt;/SPAN&gt; &lt;SPAN&gt;*&lt;/SPAN&gt;&lt;/P&gt;&lt;DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;sdf &lt;/SPAN&gt;&lt;SPAN&gt;=&lt;/SPAN&gt;&lt;SPAN&gt; spark.&lt;/SPAN&gt;&lt;SPAN&gt;createDataFrame&lt;/SPAN&gt;&lt;SPAN&gt;(df)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV&gt;&lt;DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;sdf&lt;/SPAN&gt;&lt;SPAN&gt;.write.&lt;/SPAN&gt;&lt;SPAN&gt;mode&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;"overwrite"&lt;/SPAN&gt;&lt;SPAN&gt;).&lt;/SPAN&gt;&lt;SPAN&gt;option&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;"overwriteSchema"&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;"true"&lt;/SPAN&gt;&lt;SPAN&gt;).&lt;/SPAN&gt;&lt;SPAN&gt;format&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;"delta"&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;saveAsTable&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;"DimTables"&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;display&lt;/SPAN&gt;&lt;SPAN&gt;(sdf)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;</description>
      <pubDate>Sat, 28 Jun 2025 04:18:38 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/Data-Engineering/Fabric-failing-to-read-from-lakehouse/m-p/4747089#M10472</guid>
      <dc:creator>BhaveshPatel</dc:creator>
      <dc:date>2025-06-28T04:18:38Z</dc:date>
    </item>
    <item>
      <title>Re: Fabric failing to read from lakehouse</title>
      <link>https://community.fabric.microsoft.com/t5/Data-Engineering/Fabric-failing-to-read-from-lakehouse/m-p/4747789#M10485</link>
      <description>&lt;P&gt;Thanks&amp;nbsp;&lt;a href="javascript:void(0)" data-lia-user-mentions="" data-lia-user-uid="10288" data-lia-user-login="BhaveshPatel" class="lia-mention lia-mention-user"&gt;BhaveshPatel&lt;/a&gt;&amp;nbsp;for addressing the issue.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Hi&amp;nbsp;&lt;a href="javascript:void(0)" data-lia-user-mentions="" data-lia-user-uid="1295178" data-lia-user-login="rookie111" class="lia-mention lia-mention-user"&gt;rookie111&lt;/a&gt;&amp;nbsp;,&lt;/P&gt;
&lt;P&gt;we wanted to kindly follow up to check if the solution provided for the issue worked? or Let us know if you need any further assistance?&lt;/P&gt;
&lt;P&gt;&lt;BR /&gt;Regards,&lt;/P&gt;
&lt;P&gt;Chaithanya&lt;/P&gt;</description>
      <pubDate>Mon, 30 Jun 2025 04:45:06 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/Data-Engineering/Fabric-failing-to-read-from-lakehouse/m-p/4747789#M10485</guid>
      <dc:creator>v-kathullac</dc:creator>
      <dc:date>2025-06-30T04:45:06Z</dc:date>
    </item>
    <item>
      <title>Re: Fabric failing to read from lakehouse</title>
      <link>https://community.fabric.microsoft.com/t5/Data-Engineering/Fabric-failing-to-read-from-lakehouse/m-p/4750289#M10548</link>
      <description>&lt;P&gt;I have tested all the logic ensuring the GUID is fine as i am using fabric's api&amp;nbsp; to extract, i am pretty sure its some backend issue, which i do not have the time to sit and debug, i have worked it around and fixed.&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 02 Jul 2025 02:20:51 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/Data-Engineering/Fabric-failing-to-read-from-lakehouse/m-p/4750289#M10548</guid>
      <dc:creator>rookie111</dc:creator>
      <dc:date>2025-07-02T02:20:51Z</dc:date>
    </item>
    <item>
      <title>Re: Fabric failing to read from lakehouse</title>
      <link>https://community.fabric.microsoft.com/t5/Data-Engineering/Fabric-failing-to-read-from-lakehouse/m-p/4750290#M10549</link>
      <description>&lt;P&gt;Thanks all for your time and in looking into this.&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 02 Jul 2025 02:21:11 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/Data-Engineering/Fabric-failing-to-read-from-lakehouse/m-p/4750290#M10549</guid>
      <dc:creator>rookie111</dc:creator>
      <dc:date>2025-07-02T02:21:11Z</dc:date>
    </item>
  </channel>
</rss>

