Thanks for sharing your use case and the memory usage table.
I could able to reproduce the problem. Do you mind create an issue for it
on our jira?
I might have sometime next week to dig into this problem.

Thanks,
moon

On Thu, Feb 25, 2016 at 5:49 PM Dafeng Wang <dafe...@microsoft.com> wrote:

> Hi Moon,
>
>
>
> Thanks for your reply, as for my case: my zeppelin server only have 1
> notebook with almost all queries are sparkSql query(30 paragraphs), the
> result limitation I set is 10000, all query reach the limitation of 10000.
>
> The strange thing is: run them one by one won’t cause the OOM error, if I
> click on run notebooks, it will OOM quickly.
>
>
>
> I check on the memory usage, the fastest increasing part is [B and [C,
> however, it just tells me we do have memory increase, doesn’t hint any
> other things, I put the table below for reference, the last one is the
> latest one, you can see only *scala.reflect.io.VirtualFile
> <http://localhost:7000/refsByType/0x616022bc8> *got increased when I run
> it again and again, no obvious clue of memory leak.
>
>
>
> *scala.reflect.io.FileZipArchive$FileEntry$1
> <http://localhost:7000/refsByType/0x616022ae8>*
>
> 224886
>
> *scala.reflect.io.FileZipArchive$FileEntry$1
> <http://localhost:7000/refsByType/0x616022ae8>*
>
> 224886
>
> *scala.reflect.io.ZipArchive$DirEntry
> <http://localhost:7000/refsByType/0x616022ca8>*
>
> 10123
>
> *scala.reflect.io.ZipArchive$DirEntry
> <http://localhost:7000/refsByType/0x616022ca8>*
>
> 10123
>
> *sun.nio.cs.UTF_8$Encoder <http://localhost:7000/refsByType/0x61668d160>*
>
> 1090
>
> *sun.nio.cs.UTF_8$Encoder <http://localhost:7000/refsByType/0x61668d160>*
>
> 1091
>
> *java.util.zip.Inflater <http://localhost:7000/refsByType/0x615fb8d20>*
>
> 960
>
> *java.util.zip.Inflater <http://localhost:7000/refsByType/0x615fb8d20>*
>
> 960
>
> *org.apache.derby.iapi.services.io.FormatIdInputStream
> <http://localhost:7000/refsByType/0x61b38f2a0>*
>
> 884
>
> *org.apache.derby.iapi.services.io.FormatIdInputStream
> <http://localhost:7000/refsByType/0x61b38f2a0>*
>
> 884
>
> *sun.security.util.DerInputBuffer
> <http://localhost:7000/refsByType/0x61684fc40>*
>
> 745
>
> *sun.security.util.DerInputBuffer
> <http://localhost:7000/refsByType/0x61684fc40>*
>
> 745
>
> *org.apache.derby.iapi.services.io.FormatIdOutputStream
> <http://localhost:7000/refsByType/0x61b3f5f20>*
>
> 479
>
> *org.apache.derby.iapi.services.io.FormatIdOutputStream
> <http://localhost:7000/refsByType/0x61b3f5f20>*
>
> 479
>
> *sun.security.util.ObjectIdentifier
> <http://localhost:7000/refsByType/0x615d02320>*
>
> 466
>
> *sun.security.util.ObjectIdentifier
> <http://localhost:7000/refsByType/0x615d02320>*
>
> 466
>
> *org.apache.derby.iapi.services.io.ArrayInputStream
> <http://localhost:7000/refsByType/0x61b215910>*
>
> 442
>
> *org.apache.derby.iapi.services.io.ArrayInputStream
> <http://localhost:7000/refsByType/0x61b215910>*
>
> 442
>
> *org.apache.derby.iapi.services.io.ArrayOutputStream
> <http://localhost:7000/refsByType/0x61b3f6000>*
>
> 442
>
> *org.apache.derby.iapi.services.io.ArrayOutputStream
> <http://localhost:7000/refsByType/0x61b3f6000>*
>
> 442
>
> *org.apache.derby.iapi.services.io.FormatableBitSet
> <http://localhost:7000/refsByType/0x617ae17e8>*
>
> 364
>
> *org.apache.derby.iapi.services.io.FormatableBitSet
> <http://localhost:7000/refsByType/0x617ae17e8>*
>
> 364
>
> *scala.reflect.internal.pickling.UnPickler$Scan
> <http://localhost:7000/refsByType/0x6166d6e20>*
>
> 282
>
> *scala.reflect.internal.pickling.UnPickler$Scan
> <http://localhost:7000/refsByType/0x6166d6e20>*
>
> 282
>
> *org.apache.derby.impl.store.raw.data.StoredPage
> <http://localhost:7000/refsByType/0x61ba57d88>*
>
> 279
>
> *org.apache.derby.impl.store.raw.data.StoredPage
> <http://localhost:7000/refsByType/0x61ba57d88>*
>
> 279
>
> *java.util.jar.JarFile$JarFileEntry
> <http://localhost:7000/refsByType/0x615e24618>*
>
> 276
>
> *java.util.jar.JarFile$JarFileEntry
> <http://localhost:7000/refsByType/0x615e24618>*
>
> 276
>
> *sun.security.x509.X509CertImpl
> <http://localhost:7000/refsByType/0x616083cf0>*
>
> 166
>
> *sun.security.x509.X509CertImpl
> <http://localhost:7000/refsByType/0x616083cf0>*
>
> 166
>
> *org.apache.derby.impl.store.raw.data.AllocPage
> <http://localhost:7000/refsByType/0x61b15ef28>*
>
> 162
>
> *org.apache.derby.impl.store.raw.data.AllocPage
> <http://localhost:7000/refsByType/0x61b15ef28>*
>
> 162
>
> *org.spark-project.jetty.io.BufferCache$CachedBuffer
> <http://localhost:7000/refsByType/0x616325310>*
>
> 155
>
> *org.spark-project.jetty.io.BufferCache$CachedBuffer
> <http://localhost:7000/refsByType/0x616325310>*
>
> 155
>
> *[[B <http://localhost:7000/refsByType/0x616897178>*
>
> 150
>
> *[[B <http://localhost:7000/refsByType/0x616897178>*
>
> 150
>
> *org.spark-project.jetty.io.ByteArrayBuffer
> <http://localhost:7000/refsByType/0x616309b60>*
>
> 138
>
> *org.spark-project.jetty.io.ByteArrayBuffer
> <http://localhost:7000/refsByType/0x616309b60>*
>
> 138
>
> *org.apache.thrift.protocol.TBinaryProtocol
> <http://localhost:7000/refsByType/0x615f91410>*
>
> 128
>
> *org.apache.thrift.protocol.TBinaryProtocol
> <http://localhost:7000/refsByType/0x615f91410>*
>
> 128
>
> *scala.reflect.io.VirtualFile
> <http://localhost:7000/refsByType/0x616022bc8>*
>
> 115
>
> *scala.reflect.io.VirtualFile
> <http://localhost:7000/refsByType/0x616022bc8>*
>
> 121
>
> *org.apache.derby.impl.store.raw.data.RAFContainer4
> <http://localhost:7000/refsByType/0x61b974dc0>*
>
> 100
>
> *org.apache.derby.impl.store.raw.data.RAFContainer4
> <http://localhost:7000/refsByType/0x61b974dc0>*
>
> 100
>
> *sun.security.x509.KeyIdentifier
> <http://localhost:7000/refsByType/0x616856000>*
>
> 95
>
> *sun.security.x509.KeyIdentifier
> <http://localhost:7000/refsByType/0x616856000>*
>
> 95
>
> *java.lang.Class <http://localhost:7000/refsByType/0x615e60220>*
>
> 94
>
> *java.lang.Class <http://localhost:7000/refsByType/0x615e60220>*
>
> 94
>
> *sun.security.util.Cache$EqualByteArray
> <http://localhost:7000/refsByType/0x61688c258>*
>
> 84
>
> *sun.security.util.Cache$EqualByteArray
> <http://localhost:7000/refsByType/0x61688c258>*
>
> 84
>
> *sun.security.x509.X509CertInfo
> <http://localhost:7000/refsByType/0x6163a8398>*
>
> 83
>
> *sun.security.util.BitArray <http://localhost:7000/refsByType/0x61683bdb0>*
>
> 83
>
> *sun.security.util.BitArray <http://localhost:7000/refsByType/0x61683bdb0>*
>
> 83
>
> *sun.security.x509.X509CertInfo
> <http://localhost:7000/refsByType/0x6163a8398>*
>
> 83
>
> *sun.security.rsa.RSAPublicKeyImpl
> <http://localhost:7000/refsByType/0x6160e75d0>*
>
> 80
>
> *sun.security.rsa.RSAPublicKeyImpl
> <http://localhost:7000/refsByType/0x6160e75d0>*
>
> 80
>
> *sun.security.x509.BasicConstraintsExtension
> <http://localhost:7000/refsByType/0x616568910>*
>
> 72
>
> *sun.security.x509.BasicConstraintsExtension
> <http://localhost:7000/refsByType/0x616568910>*
>
> 72
>
> *sun.security.x509.SubjectKeyIdentifierExtension
> <http://localhost:7000/refsByType/0x616568890>*
>
> 65
>
> *sun.security.x509.SubjectKeyIdentifierExtension
> <http://localhost:7000/refsByType/0x616568890>*
>
> 65
>
> *sun.security.x509.KeyUsageExtension
> <http://localhost:7000/refsByType/0x615e96ec0>*
>
> 62
>
> *sun.security.x509.KeyUsageExtension
> <http://localhost:7000/refsByType/0x615e96ec0>*
>
> 62
>
> *sun.security.ec.NamedCurve <http://localhost:7000/refsByType/0x615e28ef0>*
>
> 46
>
> *sun.security.ec.NamedCurve <http://localhost:7000/refsByType/0x615e28ef0>*
>
> 46
>
> *io.netty.buffer.PoolChunk <http://localhost:7000/refsByType/0x61c0559a0>*
>
> 40
>
> *io.netty.buffer.PoolChunk <http://localhost:7000/refsByType/0x61c0559a0>*
>
> 40
>
> *scala.tools.nsc.symtab.classfile.Pickler$Pickle
> <http://localhost:7000/refsByType/0x61637b1a0>*
>
> 34
>
> *scala.tools.nsc.symtab.classfile.Pickler$Pickle
> <http://localhost:7000/refsByType/0x61637b1a0>*
>
> 36
>
> *java.nio.HeapByteBuffer <http://localhost:7000/refsByType/0x61672c5b0>*
>
> 32
>
> *java.nio.HeapByteBuffer <http://localhost:7000/refsByType/0x61672c5b0>*
>
> 32
>
> *sun.security.x509.AuthorityKeyIdentifierExtension
> <http://localhost:7000/refsByType/0x615f917c8>*
>
> 30
>
> *sun.security.x509.AuthorityKeyIdentifierExtension
> <http://localhost:7000/refsByType/0x615f917c8>*
>
> 30
>
> *java.security.cert.PolicyQualifierInfo
> <http://localhost:7000/refsByType/0x61672f090>*
>
> 28
>
> *java.security.cert.PolicyQualifierInfo
> <http://localhost:7000/refsByType/0x61672f090>*
>
> 28
>
> *java.io.ByteArrayOutputStream
> <http://localhost:7000/refsByType/0x6162c3f98>*
>
> 24
>
> *java.io.ByteArrayOutputStream
> <http://localhost:7000/refsByType/0x6162c3f98>*
>
> 24
>
> *java.util.jar.JarVerifier <http://localhost:7000/refsByType/0x615fc7838>*
>
> 22
>
> *java.util.jar.JarVerifier <http://localhost:7000/refsByType/0x615fc7838>*
>
> 22
>
> *sun.security.x509.CRLDistributionPointsExtension
> <http://localhost:7000/refsByType/0x616568810>*
>
> 17
>
> *sun.security.x509.CRLDistributionPointsExtension
> <http://localhost:7000/refsByType/0x616568810>*
>
> 17
>
> *java.io.BufferedOutputStream
> <http://localhost:7000/refsByType/0x61623db10>*
>
> 13
>
> *java.io.BufferedOutputStream
> <http://localhost:7000/refsByType/0x61623db10>*
>
> 13
>
> *java.net.SocketOutputStream
> <http://localhost:7000/refsByType/0x61665ded8>*
>
> 12
>
> *java.net.SocketOutputStream
> <http://localhost:7000/refsByType/0x61665ded8>*
>
> 12
>
> *sun.security.provider.SHA <http://localhost:7000/refsByType/0x615e756c0>*
>
> 12
>
> *sun.security.x509.CertificatePoliciesExtension
> <http://localhost:7000/refsByType/0x616568710>*
>
> 12
>
> *sun.security.x509.CertificatePoliciesExtension
> <http://localhost:7000/refsByType/0x616568710>*
>
> 12
>
> *sun.security.provider.SHA <http://localhost:7000/refsByType/0x615e756c0>*
>
> 12
>
> *java.io.BufferedInputStream
> <http://localhost:7000/refsByType/0x61669a630>*
>
> 10
>
> *java.io.BufferedInputStream
> <http://localhost:7000/refsByType/0x61669a630>*
>
> 10
>
> *sun.security.provider.SecureRandom
> <http://localhost:7000/refsByType/0x615f128c8>*
>
> 10
>
> *sun.security.provider.SecureRandom
> <http://localhost:7000/refsByType/0x615f128c8>*
>
> 10
>
>
>
>
>
> *From:* moon soo Lee [mailto:m...@apache.org]
> *Sent:* Thursday, February 25, 2016 10:56 PM
> *To:* users@zeppelin.incubator.apache.org
> *Subject:* Re: OOM error when run all paragraphs
>
>
>
> Hi Dafeng,
>
>
>
> Zeppelin keeps notebooks in memory.
>
> That may cause OOM when notebooks has a lot of contents (code + result)
> inside. Unfortunately, unless modify Zeppelin to not keep notebooks in
> memory, there're no good way to reduce memory usage except for keep result
> small.
>
>
>
> Most of notebooks i've seen is less than 2MB and i've seen people usually
> has ~300 notebooks in their Zeppelin instance.
>
>
>
> Do you mind sharing your case? How big your notebook is and how many
> notebooks your Zeppelin instance have? That might help zeppelin developers
> to get idea how notebook need to be handled in ZeppelinServer.
>
>
>
> Thanks,
>
> moon
>
>
>
> On Wed, Feb 24, 2016 at 8:58 PM Dafeng Wang <dafe...@microsoft.com> wrote:
>
> It turns out zeppelin server itself oom since it cache too many results,
> are there any methods/work arounds/fixes to get this issue done?
>
>
>
> Regards,
>
> Dafeng
>
>
>
> *From:* Dafeng Wang [mailto:dafe...@microsoft.com]
> *Sent:* Thursday, February 25, 2016 10:31 AM
> *To:* users@zeppelin.incubator.apache.org
> *Subject:* OOM error when run all paragraphs
>
>
>
> Hi,
>
> Today when I try to run the zeppelin with a complicated notebook, if I run
> them one by one, it works well, however, when I click on running all
> paragraphs, it will throw OOM errors in a short time, I set zeppelin’s
> interpreter’s memory as 6G. any idea?
>
> Regards,
>
> Dafeng
>
>

Reply via email to