草庐IT

jvm-debug

全部标签

java - JVM 关闭 Hook 意外退出

我正在使用Java代理对Hadoop任务进行JVM分析,如https://github.com/etsy/statsd-jvm-profiler.分析器注册关闭Hook,将配置文件保存到HDFS。但目前钩子(Hook)在完成之前就被终止了。我确定它们已执行,因为我可以看到Hook的一些输出。 最佳答案 您是否看到任何IOExceptions或文件系统关闭错误。如果是这样,那么禁用hdfs关闭Hook会有所帮助。Hdfs客户端还注册了关闭Hook,以便能够正确关闭hdfs连接。不保证调用关闭Hook的顺序。HdfsHook可能会先于其

java - Datanode 遇到 JVM 暂停问题

我在CDH5.1.2上,我看到这个错误,其中一个数据节点经常暂停。我从日志中看到了这一点。WARNorg.apache.hadoop.util.JvmPauseMonitor:DetectedpauseinJVMorhostmachine(egGC):pauseofapproximately12428msGCpool'ConcurrentMarkSweep'hadcollection(s):count=1time=12707ms知道为什么我会看到这个吗?hdfs容量有时会下降一个节点。 最佳答案 GCpool'ConcurrentM

hadoop - 如何为 ResourceManager 设置 DEBUG 日志级别?

我正在对Yarn源代码进行一些更改。我在${HADOOP_HOME}/etc/hadoop/log4j.properties中将hadoop.root.logger=DEBUG,console更改为DEBUG。我可以获取ApplicationMaster的DEBUG信息,但在${HADOOP_HOME}/logs/yarn-yar-resourcemanager-hostname.log中找不到任何输出的DEBUG信息。我应该更改其他任何地方以触发资源管理器的DEBUG级别吗? 最佳答案 引用Settingdebugloglevel

hadoop - 如何在单个 JVM 中运行 hadoop 多线程方式?

我有4个核心桌面,想使用我所有的核心通过hadoop进行本地数据处理。(即有时我有足够的能力在本地处理数据,有时我将相同的作业提交到集群)。默认情况下,hadoop本地模式仅运行一个映射器和一个缩减器,因此我的本地作业非常慢。由于“痛苦”的配置,我不想首先在单台机器上设置集群,其次我每次都必须创建jar。如此完美的解决方案是如何在单机上运行嵌入式HadoopPS伪分布式模式是一个糟糕的选择,因为它会创建单节点集群,所以我只会得到一个映射器,我不得不花一些时间进行额外的配置。 最佳答案 您需要使用MultithreadedMapRun

java - 总的 JVM 在 Hadoop 集群上运行? Hadoop 中的 JVM 生命周期

我认为这是一个非常基本的问题,但为了清楚地了解我有几个问题,谁能澄清一下?Hadoop整个集群(第一代和第二代)上运行的JVM总数是多少?例如,如果我有10个节点的集群,那么JVM的最大或最小数量是多少?它们应该为单个节点以及整个10节点集群运行?我们能否在运行时控制JVM上的创建。假设我有更多的JVM,我的数据是否可以快速处理,我可以重用同一个JVM还是我需要在我的作业完成后立即销毁它。(JVM生命周期的任何图表?)JVM如何准确创建并在Hadoop中使用。JVM在hadoop集群中的重要作用是什么(虽然一切都运行在JVM上)。 最佳答案

lucene - 是否可以在一个 JVM 中运行多个 map 任务?

我想在Hadoop中为我的maptask共享大量内存静态数据(RAMlucene索引)?有没有办法让多个map/reduce任务共享同一个JVM? 最佳答案 作业可以通过指定作业配置mapred.job.reuse.jvm.num.tasks来重用任务JVM。如果该值为1(默认值),则不会重用JVM(即每个JVM1个任务)。如果它是-1,则JVM可以运行的(同一作业的)任务数没有限制。还可以使用API指定大于1的值。 关于lucene-是否可以在一个JVM中运行多个map任务?,我们在S

java - Pig JVM java堆空间错误

我正在尝试运行一个pig脚本,该脚本调用用java编写的用户定义函数。我正在尝试使用264字节的非常小的文件测试此脚本。我最终遇到了Java堆空间错误并且作业失败了。我尝试使用-Xms1024M选项运行该作业,它运行较小的文件,但运行较大的文件失败。即便如此,我的集群也足够强大,不会被这么小的文件绊倒,我想知道我该如何修复这个内存泄漏。有人可以帮忙吗,importjava.util.HashMap;importjava.lang.annotation.Annotation;importjava.lang.reflect.Array;importjava.lang.reflect.Met

java - JVM 在没有指定帧的情况下崩溃,只有 "timer expired, abort"

我正在Hadoop下运行一个Java作业,它导致JVM崩溃。我怀疑这是由于某些JNI代码造成的(它使用JBLAS和多线程nativeBLAS实现)。然而,虽然我希望崩溃日志为调试提供“有问题的框架”,但日志看起来像:##AfatalerrorhasbeendetectedbytheJavaRuntimeEnvironment:##SIGSEGV(0xb)atpc=0x00007f204dd6fb27,pid=19570,tid=139776470402816##JREversion:6.0_38-b05#JavaVM:JavaHotSpot(TM)64-BitServerVM(20.1

java - 如何在 Debug模式下运行配置单元

我以cloudera网站为例编写了一个自定义SerDe来解析文件http://blog.cloudera.com/blog/2012/12/how-to-use-a-serde-in-apache-hive/这似乎是一个很好的例子,但是当我使用自定义serde创建表时ADDJAR;CREATEEXTERNALTABLEtweets(idBIGINT,created_atSTRING,sourceSTRING,favoritedBOOLEAN,retweeted_statusSTRUCT,retweet_count:INT>,entitiesSTRUCT>,user_mentions:A

php - 关闭 CakePHP 的 PHP Debug模式

我完成了CakePHP教程,但我明白了在顶部和底部。我想把它拿走。我有一个问题,在制作一个全新的应用程序时,我是否必须取消附加任何css或类似的东西? 最佳答案 TLDR:从View/Layouts/default.ctp(您的默认布局文件)中删除内容去掉底部的代码:在View/Layouts/default.ctp(您的默认布局文件)中,底部有显示sql查询的代码。只需将其删除,您将不再在底部打印所有数据:element('sql_dump');?>(如果您计划使用DebugKit,无论如何都应该删除它……您应该计划这样做。)一般