调试Hadoop源代码

个人博客地址:调试Hadoop源代码 | 一张假钞的真实世界

Hadoop版本

Hadoop 2.7.3

调试模式下启动Hadoop NameNode

${HADOOP_HOME}/etc/hadoop/hadoop-env.sh中设置NameNode启动的JVM参数,如下:

export HADOOP_NAMENODE_OPTS="-Xdebug -Xrunjdwp:transport=dt_socket,address=8788,server=y,suspend=y"
export HADOOP_NAMENODE_OPTS="-Dhadoop.security.logger=${HADOOP_SECURITY_LOGGER:-INFO,RFAS} -Dhdfs.audit.logger=${HDFS_AUDIT_LOGGER:-INFO,NullAppender} $HADOOP_NAMENODE_OPTS"

使用脚本${HADOOP_HOME}/sbin/start-dfs.sh启动HDFS,如果有以下提示信息则说明调试模式下启动NameNode成功:

Listening for transport dt_socket at address: 8788

此时,如果执行jps查看java进程信息会有以下信息,是因为NameNode进程被挂起并处于监听状态,直到收到debug确认信息。

$ jps
10638 Jps
10438 -- main class information unavailable
2171 
10508 DataNode

设置断点

找到hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/NameNode.java并在main函数中设置断点,如下图:

NameNode Breakpoints

在Eclipse中调试

NameNode.java代码中点击右键,在弹出的菜单中选择Debug As -> Debug Configurations...,在弹出的对话框中双击Remote Java Application,配置内容如图:

Remote Java Application Debug Configuration

配置完成后点击Debug按钮进入调试界面。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/68681.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

通过Ukey或者OTP动态口令实现windows安全登录

通过 安当SLA(System Login Agent)实现Windows安全登录认证,是一种基于双因素认证(2FA)的解决方案,旨在提升 Windows 系统的登录安全性。以下是详细的实现方法和步骤: 1. 安当SLA的核心功能 安…

从前端视角看设计模式之结构型模式篇

上篇我们介绍了 设计模式之创建型模式篇,接下来介绍设计模式之结构型模式篇 适配器模式 适配器模式旨在解决接口不兼容的问题,它通过创建一个适配器类,将源对象的接口转换成目标接口,从而使得不兼容的接口能够协同工作。简单来说…

彻底讲清楚 单体架构、集群架构、分布式架构及扩展架构

目录 什么是系统架构 单体架构 介绍 示例图 优点 缺点 集群架构 介绍 示意图 优点 缺点 分布式架构 示意图 优点 缺点 生态扩展 介绍 示意图 优点 缺点 扩展:分布式服务解析 纵切拆服务 全链路追踪能力 循环依赖 全链路日志(En…

编辑器Vim基本模式和指令 --【Linux基础开发工具】

文章目录 一、编辑器Vim 键盘布局二、Linux编辑器-vim使用三、vim的基本概念正常/普通/命令模式(Normal mode)插入模式(Insert mode)末行模式(last line mode) 四、vim的基本操作五、vim正常模式命令集插入模式从插入模式切换为命令模式移动光标删除文字复制替换撤销上一次操作…

ChatGPT被曝存在爬虫漏洞,OpenAI未公开承认

OpenAI的ChatGPT爬虫似乎能够对任意网站发起分布式拒绝服务(DDoS)攻击,而OpenAI尚未承认这一漏洞。 本月,德国安全研究员Benjamin Flesch通过微软的GitHub分享了一篇文章,解释了如何通过向ChatGPT API发送单个HTTP请求…

成就与远见:2024年技术与思维的升华

个人主页:chian-ocean 前言: 2025年1月17日,2024年博客之星年度评选——创作影响力评审的入围名单公布。我很荣幸能够跻身Top 300,虽然与顶尖博主仍有一定差距,但这也为我提供了更加明确的发展方向与指引。展望崭新的2025年&…

【前端】CSS学习笔记(2)

目录 CSS3新特性圆角阴影动画keyframes 创建动画animation 执行动画timing-function 时间函数direction 播放方向过渡动画(transition) 媒体查询设置meta标签媒体查询语法 雪碧图字体图标 CSS3新特性 圆角 使用CSS3border-radius属性,你可以…

基于.Net Core+Vue的文件加密系统

1系统架构图 2 用例图 管理员角色的用例: 文件分享大厅:管理员可以访问文件分享大厅,下载文件。个人信息管理:管理员可以更新自己的个人信息,修改密码。用户管理:管理员负责创建、更新或删除用户账户&…

Python从0到100(八十四):神经网络-卷积神经网络训练CIFAR-10数据集

前言: 零基础学Python:Python从0到100最新最全教程。 想做这件事情很久了,这次我更新了自己所写过的所有博客,汇集成了Python从0到100,共一百节课,帮助大家一个月时间里从零基础到学习Python基础语法、Pyth…

YOLOv9改进,YOLOv9检测头融合RFAConv卷积,适合目标检测、分割任务

摘要 空间注意力已广泛应用于提升卷积神经网络(CNN)的性能,但它存在一定的局限性。作者提出了一个新的视角,认为空间注意力机制本质上解决了卷积核参数共享的问题。然而,空间注意力生成的注意力图信息对于大尺寸卷积核来说是不足够的。因此,提出了一种新型的注意力机制—…

大模型LLM-微调 RAG

RAG小结 这篇文章是一篇关于大型语言模型(LLMs)增强技术的综述论文,特别聚焦于检索增强生成(Retrieval-Augmented Generation, RAG)这一领域。详细考察了RAG的发展、技术基础、关键技术、评估框架以及未来的研究方向。…

【专题】为2025制定可付诸实践的IT战略规划报告汇总PDF洞察(附原数据表)

原文链接:https://tecdat.cn/?p39055 在当今瞬息万变的商业环境中,制定有效的 IT 战略规划对于企业的成功与可持续发展至关重要。本报告深入探讨了制定 IT 战略规划的关键活动,旨在为企业和决策者提供全面且实用的指导。 Gartner的《为202…

CBAM-2018学习笔记

名称: Convolutional Block Attention Module (CBAM) 来源: CBAM: Convolutional Block Attention Module 相关工作: #ResNet #GoogleNet #ResNeXt #Network-engineering #Attention-mechanism 创新点: 贡献: 提…

Invicti-Professional-V25.1

01 更新介绍 此更新包括对内部代理的更改。内部扫描代理的当前版本为 25.1.0。内部身份验证验证程序代理的当前版本为 25.1.0。#新功能现在,单击扫描摘要屏幕中的预设扫描图标会将您重定向到具有过滤视图的 “最近扫描” 页面,从而改进导航和对相关扫描…

React 中hooks之useDeferredValue用法总结

目录 概述基本用法与防抖节流的区别使用场景区分过时内容最佳实践 概述 什么是 useDeferredValue? useDeferredValue 是 React 18 引入的新 Hook,用于延迟更新某个不那么重要的部分。它接收一个值并返回该值的新副本,新副本会延迟更新。这种延迟是有…

TMC2208替代A4988

前言 TMC2208 是一款先进的 1 轴步进驱动器,支持 stealthChop ™和 256 微步。本应用说明介绍了如何设置 TMC2208 以替代 A4988(传统模式)。 引脚比较 与其他电机驱动器相比,TMC2208 具有附加功能:256 微步。 自动…

ComfyUI 矩阵测试指南:用三种方法,速优项目效果

在ComfyUI中,矩阵测试也叫xyz图表测试,作用是通过控制变量的方式来对Lora模型以及各种参数开展测试,并进行有效区分。其中测试方法有很多种,可以通过借助插件也可以自行搭建工作流实现,下面介绍3种方式: 1…

图数据库 | 19、高可用分布式设计(下)

相信大家对分布式系统设计与实现的复杂性已经有了一定的了解,本篇文章对分布式图数据库系统中最复杂的一类系统架构设计进行探索,即水平分布式图数据库系统(这个挑战也可以泛化为水平分布式图数据仓库、图湖泊、图中台或任何其他依赖图存储、…

基于Python的多元医疗知识图谱构建与应用研究(上)

一、引言 1.1 研究背景与意义 在当今数智化时代,医疗数据呈爆发式增长,如何高效管理和利用这些数据,成为提升医疗服务质量的关键。传统医疗数据管理方式存在数据孤岛、信息整合困难等问题,难以满足现代医疗对精准诊断和个性化治疗的需求。知识图谱作为一种知识表示和管理…

【Linux】Linux入门(4)其他常用指令

目录 软件安装yum命令 systemctl命令软链接IP地址和主机名特殊IP地址主机名域名解析 网络请求和下载ping命令wget命令curl命令 端口nmap指令 进程管理ps命令 查看进程kill 关闭进程 主机状态top命令 查看系统资源占用 软件安装 操作系统安装软件有许多种方式,一般分…