<?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: Can't write / overwrite delta table with error: oxxxx.saveAsTable. (Driver Error: OutOfMemory) in Data Engineering</title>
    <link>https://community.databricks.com/t5/data-engineering/can-t-write-overwrite-delta-table-with-error-oxxxx-saveastable/m-p/9329#M4748</link>
    <description>&lt;P&gt;Hi @Tom Wein​&amp;nbsp;, I see the error message is pointing to Python UDF(PythonUDFRunner.scala). The problem with Python UDF is the execution takes place on driver. This is putting pressure on Driver. The best way would be to be able to achieve the UDF functionality without the need of UDF. However, if that is not feasible then we have couple of options:&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;Switch to Pandas UDF or configure arrow optimisation by setting spark.conf.set("spark.databricks.execution.pythonUDF.arrow.enabled", True)&lt;/LI&gt;&lt;LI&gt;Use a bigger instance for Driver &lt;/LI&gt;&lt;/OL&gt;</description>
    <pubDate>Thu, 16 Feb 2023 14:43:06 GMT</pubDate>
    <dc:creator>Lakshay</dc:creator>
    <dc:date>2023-02-16T14:43:06Z</dc:date>
    <item>
      <title>Can't write / overwrite delta table with error: oxxxx.saveAsTable. (Driver Error: OutOfMemory)</title>
      <link>https://community.databricks.com/t5/data-engineering/can-t-write-overwrite-delta-table-with-error-oxxxx-saveastable/m-p/9326#M4745</link>
      <description>&lt;P&gt;Current Cluster Config:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Standard_DS3_v2 (14GB, 4 Cores) 2-6 workers&lt;/P&gt;&lt;P&gt;Standard_DS3_v2 (14GB, 4Cores) for driver&lt;/P&gt;&lt;P&gt;Runtime: 10.4x-scala2.12&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;We want to overwrite a temporary delta table with new records. The records will be load by another delta table and transformed in a notebook. This records have a column with a large string value.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;We think the error occours because the driver have to handle to many memory. So we tested different configurations with the cluster (e.g. spark.executor.memory, spark.driver.memory, ...)&lt;/P&gt;&lt;P&gt;We also tested repartitioning and maxRowsInMemory. Sometimes our job runs, but at the most time we get such errors.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;e.g.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;U&gt;Notebook-Error:&lt;/U&gt;&lt;/P&gt;&lt;P&gt;o1161.saveAsTable, o1158.saveAsTable, ...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;193&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;194&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;print(f"Overwrites records in delta table '{full_table_name}'.")&lt;/P&gt;&lt;P&gt;--&amp;gt; 195&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;df.write.format("delta")\&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;196&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.partitionBy("Year", "TypeOfTapChanger") \&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;197&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.mode("overwrite") \&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;/databricks/spark/python/pyspark/sql/&lt;A href="https://readwriter.py" alt="https://readwriter.py" target="_blank"&gt;readwriter.py&lt;/A&gt; in saveAsTable(self, name, format, mode, partitionBy, **options)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;804&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if format is not None:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;805&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;self.format(format)&lt;/P&gt;&lt;P&gt;--&amp;gt; 806&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;self._jwrite.saveAsTable(name)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;807&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;808&amp;nbsp;&amp;nbsp;&amp;nbsp;def json(self, path, mode=None, compression=None, dateFormat=None, timestampFormat=None,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;/databricks/spark/python/lib/py4j-0.10.9.1-src.zip/py4j/java_gateway.py in __call__(self, *args)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;1302&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;1303&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;answer = self.gateway_client.send_command(command)&lt;/P&gt;&lt;P&gt;-&amp;gt; 1304&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return_value = get_return_value(&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;1305&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;answer, self.gateway_client, self.target_id, &lt;A href="https://self.name" alt="https://self.name" target="_blank"&gt;self.name&lt;/A&gt;)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;1306&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;/databricks/spark/python/pyspark/sql/&lt;A href="https://utils.py" alt="https://utils.py" target="_blank"&gt;utils.py&lt;/A&gt; in deco(*a, **kw)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;115&amp;nbsp;&amp;nbsp;&amp;nbsp;def deco(*a, **kw):&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;116&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;try:&lt;/P&gt;&lt;P&gt;--&amp;gt; 117&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return f(*a, **kw)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;118&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;except py4j.protocol.Py4JJavaError as e:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;119&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;converted = convert_exception(e.java_exception)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;/databricks/spark/python/lib/py4j-0.10.9.1-src.zip/py4j/&lt;A href="https://protocol.py" alt="https://protocol.py" target="_blank"&gt;protocol.py&lt;/A&gt; in get_return_value(answer, gateway_client, target_id, name)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;324&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;value = OUTPUT_CONVERTER[type](answer[2:], gateway_client)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;325&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if answer[1] == REFERENCE_TYPE:&lt;/P&gt;&lt;P&gt;--&amp;gt; 326&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;raise Py4JJavaError(&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;327&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;"An error occurred while calling {0}{1}{2}.\n".&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;328&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;format(target_id, ".", name), value)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Py4JJavaError: An error occurred while calling o1161.saveAsTable.&lt;/P&gt;&lt;P&gt;: org.apache.spark.SparkException: Job aborted.&lt;/P&gt;&lt;P&gt;...&lt;/P&gt;&lt;P&gt;...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;U&gt;Driver-Error:&lt;/U&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;23/02/15 10:58:38 INFO Executor: Finished task 2.0 in stage 139.0 (TID 926). 2578 bytes result sent to driver&lt;/P&gt;&lt;P&gt;23/02/15 10:58:38 INFO CoarseGrainedExecutorBackend: Got assigned task 955&lt;/P&gt;&lt;P&gt;23/02/15 10:58:38 INFO TorrentBroadcast: Started reading broadcast variable 144 with 1 pieces (estimated total size 4.0 MiB)&lt;/P&gt;&lt;P&gt;23/02/15 10:58:39 INFO MemoryStore: Block broadcast_144_piece0 stored as bytes in memory (estimated size 42.8 KiB, free 3.0 GiB)&lt;/P&gt;&lt;P&gt;23/02/15 10:58:39 INFO TorrentBroadcast: Reading broadcast variable 144 took 1077 ms&lt;/P&gt;&lt;P&gt;23/02/15 10:58:39 INFO MemoryStore: Block broadcast_144 stored as values in memory (estimated size 149.3 KiB, free 3.0 GiB)&lt;/P&gt;&lt;P&gt;23/02/15 10:58:39 INFO Executor: Running task 7.0 in stage 140.0 (TID 955)&lt;/P&gt;&lt;P&gt;23/02/15 10:58:39 INFO CodeGenerator: Code generated in 200.255017 ms&lt;/P&gt;&lt;P&gt;23/02/15 10:58:40 INFO TorrentBroadcast: Started reading broadcast variable 141 with 1 pieces (estimated total size 4.0 MiB)&lt;/P&gt;&lt;P&gt;23/02/15 10:58:41 INFO CodeGenerator: Code generated in 1729.166417 ms&lt;/P&gt;&lt;P&gt;23/02/15 10:58:46 ERROR Utils: Uncaught exception in thread stdout writer for /databricks/python/bin/python&lt;/P&gt;&lt;P&gt;java.lang.OutOfMemoryError: Java heap space&lt;/P&gt;&lt;P&gt;	at org.apache.spark.sql.execution.python.PythonUDFRunner$$anon$2.read(PythonUDFRunner.scala:78)&lt;/P&gt;&lt;P&gt;	at org.apache.spark.sql.execution.python.PythonUDFRunner$$anon$2.read(PythonUDFRunner.scala:68)&amp;nbsp;&lt;/P&gt;&lt;P&gt;...&lt;/P&gt;&lt;P&gt;...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;U&gt;Executors in UI:&lt;/U&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="image"&gt;&lt;img src="https://community.databricks.com/t5/image/serverpage/image-id/676iF9ACF479774173B3/image-size/large?v=v2&amp;amp;px=999" role="button" title="image" alt="image" /&gt;&lt;/span&gt;&lt;U&gt;Jobs in UI:&lt;/U&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="image"&gt;&lt;img src="https://community.databricks.com/t5/image/serverpage/image-id/677i0F0938983C90A4B2/image-size/large?v=v2&amp;amp;px=999" role="button" title="image" alt="image" /&gt;&lt;/span&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;We hope you can help us, to understand and fix this problem. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;</description>
      <pubDate>Wed, 15 Feb 2023 11:09:21 GMT</pubDate>
      <guid>https://community.databricks.com/t5/data-engineering/can-t-write-overwrite-delta-table-with-error-oxxxx-saveastable/m-p/9326#M4745</guid>
      <dc:creator>tw1</dc:creator>
      <dc:date>2023-02-15T11:09:21Z</dc:date>
    </item>
    <item>
      <title>Re: Can't write / overwrite delta table with error: oxxxx.saveAsTable. (Driver Error: OutOfMemory)</title>
      <link>https://community.databricks.com/t5/data-engineering/can-t-write-overwrite-delta-table-with-error-oxxxx-saveastable/m-p/9327#M4746</link>
      <description>&lt;P&gt;Hi @Tom Wein​&amp;nbsp;,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;What is your data size which you are trying to write?&lt;/P&gt;</description>
      <pubDate>Wed, 15 Feb 2023 12:06:25 GMT</pubDate>
      <guid>https://community.databricks.com/t5/data-engineering/can-t-write-overwrite-delta-table-with-error-oxxxx-saveastable/m-p/9327#M4746</guid>
      <dc:creator>Ajay-Pandey</dc:creator>
      <dc:date>2023-02-15T12:06:25Z</dc:date>
    </item>
    <item>
      <title>Re: Can't write / overwrite delta table with error: oxxxx.saveAsTable. (Driver Error: OutOfMemory)</title>
      <link>https://community.databricks.com/t5/data-engineering/can-t-write-overwrite-delta-table-with-error-oxxxx-saveastable/m-p/9328#M4747</link>
      <description>&lt;P&gt;Hi, we use currently 250 files in one notebook, with approximately 8MB per file. (But normally we want to run 500.000 files)&lt;/P&gt;</description>
      <pubDate>Wed, 15 Feb 2023 12:38:50 GMT</pubDate>
      <guid>https://community.databricks.com/t5/data-engineering/can-t-write-overwrite-delta-table-with-error-oxxxx-saveastable/m-p/9328#M4747</guid>
      <dc:creator>tw1</dc:creator>
      <dc:date>2023-02-15T12:38:50Z</dc:date>
    </item>
    <item>
      <title>Re: Can't write / overwrite delta table with error: oxxxx.saveAsTable. (Driver Error: OutOfMemory)</title>
      <link>https://community.databricks.com/t5/data-engineering/can-t-write-overwrite-delta-table-with-error-oxxxx-saveastable/m-p/9329#M4748</link>
      <description>&lt;P&gt;Hi @Tom Wein​&amp;nbsp;, I see the error message is pointing to Python UDF(PythonUDFRunner.scala). The problem with Python UDF is the execution takes place on driver. This is putting pressure on Driver. The best way would be to be able to achieve the UDF functionality without the need of UDF. However, if that is not feasible then we have couple of options:&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;Switch to Pandas UDF or configure arrow optimisation by setting spark.conf.set("spark.databricks.execution.pythonUDF.arrow.enabled", True)&lt;/LI&gt;&lt;LI&gt;Use a bigger instance for Driver &lt;/LI&gt;&lt;/OL&gt;</description>
      <pubDate>Thu, 16 Feb 2023 14:43:06 GMT</pubDate>
      <guid>https://community.databricks.com/t5/data-engineering/can-t-write-overwrite-delta-table-with-error-oxxxx-saveastable/m-p/9329#M4748</guid>
      <dc:creator>Lakshay</dc:creator>
      <dc:date>2023-02-16T14:43:06Z</dc:date>
    </item>
    <item>
      <title>Re: Can't write / overwrite delta table with error: oxxxx.saveAsTable. (Driver Error: OutOfMemory)</title>
      <link>https://community.databricks.com/t5/data-engineering/can-t-write-overwrite-delta-table-with-error-oxxxx-saveastable/m-p/9330#M4749</link>
      <description>&lt;P&gt;Thank you for your answer. I will test it and give you a feedback.&lt;/P&gt;</description>
      <pubDate>Fri, 17 Feb 2023 08:01:17 GMT</pubDate>
      <guid>https://community.databricks.com/t5/data-engineering/can-t-write-overwrite-delta-table-with-error-oxxxx-saveastable/m-p/9330#M4749</guid>
      <dc:creator>tw1</dc:creator>
      <dc:date>2023-02-17T08:01:17Z</dc:date>
    </item>
    <item>
      <title>Re: Can't write / overwrite delta table with error: oxxxx.saveAsTable. (Driver Error: OutOfMemory)</title>
      <link>https://community.databricks.com/t5/data-engineering/can-t-write-overwrite-delta-table-with-error-oxxxx-saveastable/m-p/9331#M4750</link>
      <description>&lt;P&gt;Hi @Tom Wein​&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hope all is well! Just wanted to check in if you were able to resolve your issue and would you be happy to share the solution or mark an answer as best? Else please let us know if you need more help.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;We'd love to hear from you.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;</description>
      <pubDate>Wed, 22 Feb 2023 05:28:50 GMT</pubDate>
      <guid>https://community.databricks.com/t5/data-engineering/can-t-write-overwrite-delta-table-with-error-oxxxx-saveastable/m-p/9331#M4750</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2023-02-22T05:28:50Z</dc:date>
    </item>
    <item>
      <title>Re: Can't write / overwrite delta table with error: oxxxx.saveAsTable. (Driver Error: OutOfMemory)</title>
      <link>https://community.databricks.com/t5/data-engineering/can-t-write-overwrite-delta-table-with-error-oxxxx-saveastable/m-p/9332#M4751</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1. we changed our large string column to an array column&lt;/P&gt;&lt;P&gt;2. we use a bigger instance for the driver&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;So we can handle 500 files in our notebook transformation.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;This runs the most time, but sporadically the same error occurs.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I could't change our UDF to pandas_udf. I do not really understand how to change it to an panas_udf.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Maybe you could help me, i would e.g. change this udf to a pandas_udf:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;(Here we decode a binary content to a string content)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;def decode_content(self, input_df: DataFrame) -&amp;gt; DataFrame:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;print("Decode binary content to string")&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;# udf&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;def decode_content(s):&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;gzip = base64.b64decode(s)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;gzip1 = gzip[4:]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return decompress(gzip1).decode()&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;# create udf&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;decode_content_udf = udf(lambda z: decode_content(z), StringType())&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;# use udf&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;result = input_df.withColumn("decoded", decode_content_udf(input_df.content))&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;result = result.select(col("decoded"))&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return result&lt;/P&gt;</description>
      <pubDate>Wed, 22 Feb 2023 07:24:59 GMT</pubDate>
      <guid>https://community.databricks.com/t5/data-engineering/can-t-write-overwrite-delta-table-with-error-oxxxx-saveastable/m-p/9332#M4751</guid>
      <dc:creator>tw1</dc:creator>
      <dc:date>2023-02-22T07:24:59Z</dc:date>
    </item>
    <item>
      <title>Re: Can't write / overwrite delta table with error: oxxxx.saveAsTable. (Driver Error: OutOfMemory)</title>
      <link>https://community.databricks.com/t5/data-engineering/can-t-write-overwrite-delta-table-with-error-oxxxx-saveastable/m-p/9333#M4752</link>
      <description>&lt;P&gt;Hi @Tom Wein​&amp;nbsp;, you can check this link for pandas udf: &lt;A href="https://www.databricks.com/blog/2020/05/20/new-pandas-udfs-and-python-type-hints-in-the-upcoming-release-of-apache-spark-3-0.html" target="test_blank"&gt;https://www.databricks.com/blog/2020/05/20/new-pandas-udfs-and-python-type-hints-in-the-upcoming-release-of-apache-spark-3-0.html&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If you cannot convert the python udf to pandas udf, you can also set the configuration: spark.conf.set("spark.databricks.execution.pythonUDF.arrow.enabled", True)&lt;/P&gt;</description>
      <pubDate>Wed, 22 Feb 2023 13:32:53 GMT</pubDate>
      <guid>https://community.databricks.com/t5/data-engineering/can-t-write-overwrite-delta-table-with-error-oxxxx-saveastable/m-p/9333#M4752</guid>
      <dc:creator>Lakshay</dc:creator>
      <dc:date>2023-02-22T13:32:53Z</dc:date>
    </item>
    <item>
      <title>Re: Can't write / overwrite delta table with error: oxxxx.saveAsTable. (Driver Error: OutOfMemory)</title>
      <link>https://community.databricks.com/t5/data-engineering/can-t-write-overwrite-delta-table-with-error-oxxxx-saveastable/m-p/9334#M4753</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;thank you for your help!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;We tested the configuration settings and it runs without any errors.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Could you give us some more information, where we can find some documentation about such settings. We searched hours to fix our problem. So we contacted this community. At the moment it is hard to find the correct documentaions to refine our code.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;</description>
      <pubDate>Mon, 27 Feb 2023 07:39:12 GMT</pubDate>
      <guid>https://community.databricks.com/t5/data-engineering/can-t-write-overwrite-delta-table-with-error-oxxxx-saveastable/m-p/9334#M4753</guid>
      <dc:creator>tw1</dc:creator>
      <dc:date>2023-02-27T07:39:12Z</dc:date>
    </item>
    <item>
      <title>Re: Can't write / overwrite delta table with error: oxxxx.saveAsTable. (Driver Error: OutOfMemory)</title>
      <link>https://community.databricks.com/t5/data-engineering/can-t-write-overwrite-delta-table-with-error-oxxxx-saveastable/m-p/9335#M4754</link>
      <description>&lt;P&gt;Hi @Tom Wein​&amp;nbsp;, Good to know the suggestion helped!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I don't have exactly the document that provides this configuration. But the document I mentioned previously talks about Apache Arrow. So, we usually suggest using pandas udf as they already have arrow enabled. But if you can't use pandas udf, we can use the configuration to enable the same.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;</description>
      <pubDate>Mon, 27 Feb 2023 19:27:58 GMT</pubDate>
      <guid>https://community.databricks.com/t5/data-engineering/can-t-write-overwrite-delta-table-with-error-oxxxx-saveastable/m-p/9335#M4754</guid>
      <dc:creator>Lakshay</dc:creator>
      <dc:date>2023-02-27T19:27:58Z</dc:date>
    </item>
  </channel>
</rss>

