spark-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Guoqiang Li (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (SPARK-3937) Unsafe memory access inside of Snappy library
Date Mon, 13 Apr 2015 02:49:12 GMT

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

Guoqiang Li commented on SPARK-3937:
------------------------------------

Get data:

{code:none}wget http://www.csie.ntu.edu.tw/~cjlin/libsvmtools/datasets/binary/kdda.bz2{code}

Get code:

{code:none}git clone https://github.com/cloudml/zen.git{code}

mvn  -DskipTests clean  package


spark-defaults.conf: 
{code:none}
spark.yarn.dist.archives hdfs://ns1:8020/input/lbs/recommend/toona/spark/conf
spark.yarn.user.classpath.first true
spark.cleaner.referenceTracking.blocking true
spark.cleaner.referenceTracking.cleanCheckpoints true
spark.cleaner.referenceTracking.blocking.shuffle true
spark.yarn.historyServer.address 10dian71:18080
spark.executor.cores 2
spark.yarn.executor.memoryOverhead 1
spark.yarn.driver.memoryOverhead  1
spark.executor.instances 36
spark.rdd.compress true
spark.executor.memory   4g
spark.akka.frameSize         20
spark.akka.askTimeout        120
spark.akka.timeout           120
spark.default.parallelism    72
spark.locality.wait          10000
spark.core.connection.ack.wait.timeout 360
spark.storage.memoryFraction 0.1
spark.broadcast.factory org.apache.spark.broadcast.TorrentBroadcastFactory
spark.driver.maxResultSize  4000
#spark.shuffle.blockTransferService nio
#spark.akka.heartbeat.interval 100
#spark.kryoserializer.buffer.max.mb 128
spark.serializer org.apache.spark.serializer.KryoSerializer
spark.kryo.registrator org.apache.spark.graphx.GraphKryoRegistrator
#spark.kryo.registrator com.github.cloudml.zen.ml.clustering.LDAKryoRegistrator
{code}

Reproduce: 

{code:none}./bin/spark-shell --master yarn-client --driver-memory 8g --jars /opt/spark/classes/zen-assembly.jar{code}

{code:none}
import com.github.cloudml.zen.ml.regression.LogisticRegression
import org.apache.spark.mllib.util.MLUtils
import org.apache.spark.mllib.regression.LabeledPoint
val dataSet = MLUtils.loadLibSVMFile(sc, "/input/lbs/recommend/kdda/*").repartition(72).cache()
val numIterations = 150
val stepSize = 0.1
val l1 = 0.0
val epsilon = 1e-6
val useAdaGrad = false
LogisticRegression.trainMIS(dataSet, numIterations, stepSize, l1, epsilon, useAdaGrad)
{code}

> Unsafe memory access inside of Snappy library
> ---------------------------------------------
>
>                 Key: SPARK-3937
>                 URL: https://issues.apache.org/jira/browse/SPARK-3937
>             Project: Spark
>          Issue Type: Bug
>          Components: Spark Core
>    Affects Versions: 1.2.0, 1.3.0
>            Reporter: Patrick Wendell
>
> This was observed on master between Spark 1.1 and 1.2. Unfortunately I don't have much
information about this other than the stack trace. However, it was concerning enough I figured
I should post it.
> {code}
> java.lang.InternalError: a fault occurred in a recent unsafe memory access operation
in compiled Java code
>         org.xerial.snappy.SnappyNative.rawUncompress(Native Method)
>         org.xerial.snappy.Snappy.rawUncompress(Snappy.java:444)
>         org.xerial.snappy.Snappy.uncompress(Snappy.java:480)
>         org.xerial.snappy.SnappyInputStream.hasNextChunk(SnappyInputStream.java:355)
>         org.xerial.snappy.SnappyInputStream.rawRead(SnappyInputStream.java:159)
>         org.xerial.snappy.SnappyInputStream.read(SnappyInputStream.java:142)
>         java.io.ObjectInputStream$PeekInputStream.read(ObjectInputStream.java:2310)
>         java.io.ObjectInputStream$BlockDataInputStream.read(ObjectInputStream.java:2712)
>         java.io.ObjectInputStream$BlockDataInputStream.readFully(ObjectInputStream.java:2742)
>         java.io.ObjectInputStream.readArray(ObjectInputStream.java:1687)
>         java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1344)
>         java.io.ObjectInputStream.readArray(ObjectInputStream.java:1706)
>         java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1344)
>         java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1990)
>         java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1915)
>         java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1798)
>         java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1350)
>         java.io.ObjectInputStream.readObject(ObjectInputStream.java:370)
>         org.apache.spark.serializer.JavaDeserializationStream.readObject(JavaSerializer.scala:62)
>         org.apache.spark.serializer.DeserializationStream$$anon$1.getNext(Serializer.scala:133)
>         org.apache.spark.util.NextIterator.hasNext(NextIterator.scala:71)
>         scala.collection.Iterator$$anon$12.hasNext(Iterator.scala:350)
>         org.apache.spark.InterruptibleIterator.hasNext(InterruptibleIterator.scala:39)
>         scala.collection.Iterator$$anon$13.hasNext(Iterator.scala:371)
>         scala.collection.Iterator$$anon$14.hasNext(Iterator.scala:388)
>         scala.collection.Iterator$$anon$11.hasNext(Iterator.scala:327)
>         scala.collection.Iterator$$anon$10.hasNext(Iterator.scala:308)
>         scala.collection.Iterator$class.foreach(Iterator.scala:727)
>         scala.collection.AbstractIterator.foreach(Iterator.scala:1157)
>         scala.collection.generic.Growable$class.$plus$plus$eq(Growable.scala:48)
>         scala.collection.mutable.ArrayBuffer.$plus$plus$eq(ArrayBuffer.scala:103)
>         scala.collection.mutable.ArrayBuffer.$plus$plus$eq(ArrayBuffer.scala:47)
>         scala.collection.TraversableOnce$class.to(TraversableOnce.scala:273)
>         scala.collection.AbstractIterator.to(Iterator.scala:1157)
>         scala.collection.TraversableOnce$class.toBuffer(TraversableOnce.scala:265)
>         scala.collection.AbstractIterator.toBuffer(Iterator.scala:1157)
>         scala.collection.TraversableOnce$class.toArray(TraversableOnce.scala:252)
>         scala.collection.AbstractIterator.toArray(Iterator.scala:1157)
>         org.apache.spark.sql.execution.Limit$$anonfun$4.apply(basicOperators.scala:140)
>         org.apache.spark.sql.execution.Limit$$anonfun$4.apply(basicOperators.scala:140)
>         org.apache.spark.SparkContext$$anonfun$runJob$3.apply(SparkContext.scala:1118)
>         org.apache.spark.SparkContext$$anonfun$runJob$3.apply(SparkContext.scala:1118)
>         org.apache.spark.scheduler.ResultTask.runTask(ResultTask.scala:61)
>         org.apache.spark.scheduler.Task.run(Task.scala:56)
>         org.apache.spark.executor.Executor$TaskRunner.run(Executor.scala:182)
>         java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
>         java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
>         java.lang.Thread.run(Thread.java:745)
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

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


Mime
View raw message