[ 
https://issues.apache.org/jira/browse/SPARK-49091?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17870329#comment-17870329
 ] 

Yuming Wang commented on SPARK-49091:
-------------------------------------

Before revert SPARK-41914:
{noformat}
 num     #instances         #bytes  class name (module)
-------------------------------------------------------
   1:     303346764    12133870560  java.util.concurrent.ConcurrentHashMap$Node 
(java.base@17.0.4.1)
   2:      23352451    10013779480  [B (java.base@17.0.4.1)
   3:        511998     8056020048  
[Ljava.util.concurrent.ConcurrentHashMap$Node; (java.base@17.0.4.1)
   4:     152066346     4866123072  
java.util.concurrent.LinkedBlockingQueue$Node (java.base@17.0.4.1)
   5:      19742246      631751872  java.lang.String (java.base@17.0.4.1)
   6:      24483665      593020960  [Ljava.lang.String; (java.base@17.0.4.1)
   7:      12010865      480434600  org.apache.spark.storage.BlockStatus
   8:      12186238      389959616  org.apache.spark.storage.BroadcastBlockId
{noformat}
After revert SPARK-41914:
{noformat}
# jmap -histo 227706 | grep BroadcastBlockId
 215:         86293        2761376  org.apache.spark.storage.BroadcastBlockId
20175:             1             16  org.apache.spark.storage.BroadcastBlockId$
{noformat}

> Some broadcasts cannot be cleared from memory storage
> -----------------------------------------------------
>
>                 Key: SPARK-49091
>                 URL: https://issues.apache.org/jira/browse/SPARK-49091
>             Project: Spark
>          Issue Type: Bug
>          Components: Spark Core, SQL
>    Affects Versions: 3.4.0, 3.5.0, 4.0.0
>            Reporter: Yuming Wang
>            Priority: Major
>         Attachments: SPARK-49091.patch, driver heap.png
>
>
> Please apply this patch([^SPARK-49091.patch]) to reproduce this issue. This 
> issue may cause driver memory leak.
>  !driver heap.png|thumbnail!
> This issue was introduced by SPARK-41914.
> Before SPARK-41914:
> {noformat}
> [info] BroadcastCleanerSuite:
> 10:30:16.228 WARN org.apache.hadoop.util.NativeCodeLoader: Unable to load 
> native-hadoop library for your platform... using builtin-java classes where 
> applicable
> entries size: 8, names: broadcast_0_piece0, broadcast_0, broadcast_1_piece0, 
> broadcast_2_piece0, broadcast_2, broadcast_1, broadcast_3_piece0, broadcast_3
> entries size: 8, names: broadcast_0_piece0, broadcast_0, broadcast_1_piece0, 
> broadcast_2_piece0, broadcast_2, broadcast_1, broadcast_3_piece0, broadcast_3
> entries size: 8, names: broadcast_0_piece0, broadcast_0, broadcast_1_piece0, 
> broadcast_2_piece0, broadcast_2, broadcast_1, broadcast_3_piece0, broadcast_3
> entries size: 8, names: broadcast_0_piece0, broadcast_0, broadcast_1_piece0, 
> broadcast_2_piece0, broadcast_2, broadcast_1, broadcast_3_piece0, broadcast_3
> entries size: 8, names: broadcast_0_piece0, broadcast_0, broadcast_1_piece0, 
> broadcast_2_piece0, broadcast_2, broadcast_1, broadcast_3_piece0, broadcast_3
> entries size: 8, names: broadcast_0_piece0, broadcast_0, broadcast_1_piece0, 
> broadcast_2_piece0, broadcast_2, broadcast_1, broadcast_3_piece0, broadcast_3
> entries size: 8, names: broadcast_0_piece0, broadcast_0, broadcast_1_piece0, 
> broadcast_2_piece0, broadcast_2, broadcast_1, broadcast_3_piece0, broadcast_3
> entries size: 8, names: broadcast_0_piece0, broadcast_0, broadcast_1_piece0, 
> broadcast_2_piece0, broadcast_2, broadcast_1, broadcast_3_piece0, broadcast_3
> entries size: 8, names: broadcast_0_piece0, broadcast_0, broadcast_1_piece0, 
> broadcast_2_piece0, broadcast_2, broadcast_1, broadcast_3_piece0, broadcast_3
> entries size: 0, names: 
> [info] - Test broadcast cleaner (1 minute, 4 seconds)
> 10:31:21.552 WARN org.apache.spark.sql.BroadcastCleanerSuite:
> {noformat}
> After SPARK-41914:
> {noformat}
> entries size: 8, names: broadcast_0_piece0, broadcast_0, broadcast_1_piece0, 
> broadcast_2_piece0, broadcast_2, broadcast_1, broadcast_3_piece0, broadcast_3
> entries size: 8, names: broadcast_0_piece0, broadcast_0, broadcast_1_piece0, 
> broadcast_2_piece0, broadcast_2, broadcast_1, broadcast_3_piece0, broadcast_3
> entries size: 8, names: broadcast_0_piece0, broadcast_0, broadcast_1_piece0, 
> broadcast_2_piece0, broadcast_2, broadcast_1, broadcast_3_piece0, broadcast_3
> entries size: 8, names: broadcast_0_piece0, broadcast_0, broadcast_1_piece0, 
> broadcast_2_piece0, broadcast_2, broadcast_1, broadcast_3_piece0, broadcast_3
> entries size: 8, names: broadcast_0_piece0, broadcast_0, broadcast_1_piece0, 
> broadcast_2_piece0, broadcast_2, broadcast_1, broadcast_3_piece0, broadcast_3
> entries size: 8, names: broadcast_0_piece0, broadcast_0, broadcast_1_piece0, 
> broadcast_2_piece0, broadcast_2, broadcast_1, broadcast_3_piece0, broadcast_3
> entries size: 8, names: broadcast_0_piece0, broadcast_0, broadcast_1_piece0, 
> broadcast_2_piece0, broadcast_2, broadcast_1, broadcast_3_piece0, broadcast_3
> entries size: 8, names: broadcast_0_piece0, broadcast_0, broadcast_1_piece0, 
> broadcast_2_piece0, broadcast_2, broadcast_1, broadcast_3_piece0, broadcast_3
> entries size: 8, names: broadcast_0_piece0, broadcast_0, broadcast_1_piece0, 
> broadcast_2_piece0, broadcast_2, broadcast_1, broadcast_3_piece0, broadcast_3
> entries size: 2, names: broadcast_1_piece0, broadcast_1
> entries size: 2, names: broadcast_1_piece0, broadcast_1
> entries size: 2, names: broadcast_1_piece0, broadcast_1
> entries size: 2, names: broadcast_1_piece0, broadcast_1
> entries size: 2, names: broadcast_1_piece0, broadcast_1
> entries size: 2, names: broadcast_1_piece0, broadcast_1
> entries size: 2, names: broadcast_1_piece0, broadcast_1
> entries size: 2, names: broadcast_1_piece0, broadcast_1
> entries size: 2, names: broadcast_1_piece0, broadcast_1
> entries size: 2, names: broadcast_1_piece0, broadcast_1
> entries size: 2, names: broadcast_1_piece0, broadcast_1
> entries size: 2, names: broadcast_1_piece0, broadcast_1
> entries size: 2, names: broadcast_1_piece0, broadcast_1
> entries size: 2, names: broadcast_1_piece0, broadcast_1
> entries size: 2, names: broadcast_1_piece0, broadcast_1
> entries size: 2, names: broadcast_1_piece0, broadcast_1
> entries size: 2, names: broadcast_1_piece0, broadcast_1
> entries size: 2, names: broadcast_1_piece0, broadcast_1
> entries size: 2, names: broadcast_1_piece0, broadcast_1
> entries size: 2, names: broadcast_1_piece0, broadcast_1
> entries size: 2, names: broadcast_1_piece0, broadcast_1
> entries size: 2, names: broadcast_1_piece0, broadcast_1
> entries size: 2, names: broadcast_1_piece0, broadcast_1
> entries size: 2, names: broadcast_1_piece0, broadcast_1
> entries size: 2, names: broadcast_1_piece0, broadcast_1
> entries size: 2, names: broadcast_1_piece0, broadcast_1
> entries size: 2, names: broadcast_1_piece0, broadcast_1
> entries size: 2, names: broadcast_1_piece0, broadcast_1
> entries size: 2, names: broadcast_1_piece0, broadcast_1
> entries size: 2, names: broadcast_1_piece0, broadcast_1
> entries size: 2, names: broadcast_1_piece0, broadcast_1
> entries size: 2, names: broadcast_1_piece0, broadcast_1
> entries size: 2, names: broadcast_1_piece0, broadcast_1
> entries size: 2, names: broadcast_1_piece0, broadcast_1
> entries size: 2, names: broadcast_1_piece0, broadcast_1
> entries size: 2, names: broadcast_1_piece0, broadcast_1
> entries size: 2, names: broadcast_1_piece0, broadcast_1
> entries size: 2, names: broadcast_1_piece0, broadcast_1
> entries size: 2, names: broadcast_1_piece0, broadcast_1
> entries size: 2, names: broadcast_1_piece0, broadcast_1
> [info] *** Test still running after 4 minutes, 58 seconds: suite name: 
> BroadcastCleanerSuite, test name: Test broadcast cleaner. 
> ...
> {noformat}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscr...@spark.apache.org
For additional commands, e-mail: issues-h...@spark.apache.org

Reply via email to