一次Debug过程的思考】的更多相关文章

前一段时间,部门接入了新业务,由于业务量小,架构非常简单,采用了最简单的LNMP架构,整个项目是交给一个刚毕业的RD负责的,这是背景. 上线前半天,服务平稳运行.下午的时候,开始收到大量报警:No host could be connected in the cluster.第一反应:mysql服务器不会挂了吧.打开监控,一切正常,登录也一切正常,但报警一直没有间断,这奇怪了. 实际上一点都不奇怪.“No host could be connected in the cluster”本身不是my…
转载:http://m.blog.csdn.net/blog/u012516903/18004965 在debug的时候,有3个地方可以进行mock测试 测试代码如下: 1.使用display窗口 Window-->Show View-->Other-->Display, 将display窗口打开,此时窗口中显示空白. 开始调试test1方法,在代码执行到System.out.println(i);之前,如下图所示: 在display窗口中输入以下内容: 选中display窗口中的内容:…
    (冒泡,选择,插入,希尔,快速,归并,堆排)周末加班学习C++,打算用C++写七大经典排序代码.发现3个月前自己写的七大经典排序代码(C Language)突然运行出错. Makefile内容 testmysort: testmysort.c mysortlib.c mysortlib.h # gcc testmysort.c mysortlib.c -o testmysort gcc $< mysortlib.c -o $@ ./$@ 直接make几次总是core dumped错误.…
android一个下拉放大库bug的解决过程及思考 起因 项目中要做一个下拉缩放图片的效果,搜索了下github上面,找到了两个方案. https://github.com/Frank-Zhu/PullZoomView 这个库本来做的还可以,不过有个缺陷就是,当scroolview滑动到底部,再向上拉动,会导致放大效果不连续,需要重新释放,再次下拉,这对于追求细节的我来说,不可忍受.看了半天他的代码,感觉他的实现方式很难修改为我想要的效果,后来就放弃了. https://github.com/G…
参考的地址是 http://blog.redfin.com/devblog/2009/09/how_to_set_up_hot_code_replacement_with_tomcat_and_eclipse.html 何谓 “热部署”? “Hot Code Replace” (HCR) 就是在运行中的JVM中更改Java类并立即呈现效果, 在这个过程中不需要重启你的应用. HCR 是整个 Java Platform Debugger Architecture (JPDA) 的一部分, 几乎所有…
最近在debug dubbo代码过程中遇到的很有趣的问题 我们都知道dubbo ReferenceBean是消费者的spring bean包装,为了查一个consumer端的问题,在ReferenceBean的父类ReferenceConfig的 T get()方法(140行)打上了一个断点. 当我debug 跟进init方法之后发现,ReferenceConfig的成员变量initialized(boolean类型),没有初始化,值变成了true? 纳尼... 在学习java的基础知识的时候,…
结合一路研究Jeddict使用的过程经验来看,在这里说一下关于服务器配置的东西.在我们团队,最开始用这个插件的时候,因为公司用的应用服务器是Jboss EAP 7,所以,我们自然而然的,想当然的直接使用了公司常用服务器去部署,结果出现了一系列的问题.后来虽然解决了,结合到和Jeddict作者的交流,需要总结一下学习新事物的套路! 一.问题 1,无法部署 2,无法调用 3,无法创建权限默认表 首先,在可配置的服务器列表中,一共有四种:Payara,Payara Micro,WildFly,Wild…
现象描述: 断点位置1 谷歌debug的过程: 火狐debug的过程: 只要在改变数据之后有断点停顿,就会先去执行updated函数 断点位置2 此时火狐和谷歌是一样的效果,但是执行顺序是不一致的 谷歌浏览器: 火狐浏览器: 只要执行了updated函数,页面就会进行重新渲染,所以火狐中取到的值是渲染之后的值 目前不清楚为什么会这样,暂时记录一下,之后再做研究…
问题:发现线上到货单的数量,小于实际到货的数量. 怀疑一些隐藏的条件,将部分唯一码进行了过滤,导致数量变少. 开展了如下的跟踪流程: 1.找到其中一个明细的唯一码 grep 6180e-4b09f pms.log>> tmp1 2.查找出问题的方法所输出的日志 grep purchaseConfirm tmp1 >> tmp2 内容如下: 2017-02-28 16:14:25.040 [DubboServerHandler-10.26.235.193:20885-thread-1…
首先我们测试了老师反馈的异常情况.这所中学使用的是 IE8 浏览器.IE8 浏览器提交作文评分的情况是:一直停留在“正在提交系统评分”的页面,停留了很长时间以后,页面空白. 换用火狐浏览器,可以正常评分.个人思考:可能是在 IE 浏览器下使用 jQuery 的 ajax方法失效.因此前端代码不能正确调用后台的方法,因此我们系统的“每隔30秒自动保存”的机制也失效了.(其实在后面的分析中,我们可以看到,这只是假象.)于是我们很自然地想到的解决方案就是让用户更换浏览器,IE 浏览器虽然现在还是占有一…
最近在调试一次SMBIOS的动态更新以及I2c设备的配置读取时,遇到了很多问题,特此总结: 1. 第一个是调试一个I2c设备的时候,遇到了一个很奇怪的问题,也由此问题总结了下SMBUS模块的知识,如下: 待完成 2. 在动态更新到SMBIOS某些type字串时,遇到很多细节问题,总结如下: 1)问题:同样的代码,放置位置不同会导致代码跑飞: 如下图,在获得了SmBiosType1Record的Protocol时,如果StringNumber的两个变量赋值分开,将红框代码移至下面,就会导致值改变,…
大家在Debug程序的时候,是否遇到过因为"下一步"按太快,而导致跳过了想要深入分析的那段代码?是不是很想要有"回到上一步"这样的操作呢? 在IDEA中就提供了一个帮助你回退代码的机会,但这个方法并不是万能的.好了,下面就来具体说说这个功能的使用! 使用Reset Frame回退操作 不知道你在Debug的时候,是否有注意过下图标出的按钮Reset Frame,这就是今天要介绍的主角. 什么情况不能回退 比如:下面这样的顺序结构,是无法会退的: void test(…
今天在安装oracle 11 rac的时候,查看操作系统df -lh,发现/home目录竟然分了500多G,/根目录才有50G,当时我就爆了句粗口,这TM系统是怎么做的. Filesystem                              Size     Used    Avail   Use% Mounted on /dev/mapper/vg_db5-lv_root                 50G     6.2G   41G   14%    / tmpfs     …
刚刚加入新公司,就迎来第一场战斗,微服务拉入拉出测试. 简单的说,对于接入eureka 和 vi(携程开源的) 应用,在使用发布系统进行发布的时候,会经过这么一个流程   UP —— STARTING ——(DOWN, 然后踢掉)—— STARTING —— UP 需要测试当应用进行发布的时候,是否会产生业务影响,即服务消费者消费服务的时候,是否会有流量进入处于发布状态的节点,以及发布后生产者的节点是否正常. 设计场景其实很简单,写一个脚本,持续不断调用消费者对外提供的http接口,通过判断消费…
library多线程file1.gdb (运行程序名称) 例如 gdb cbenchmark 2.设置运行参数 set args -c 1 -n 1 -F ./libaliww.so -l 1 3.如果是多线程程序 set follow-fork-mode child 4.设置断点,如果代码是动态链接库.so中的代码系统会提示如提示1 b CWWSimulator.cpp:530 提示1: No source file named CWWSimulator.cpp.Make breakpoint…
昨天,我弟抛给我一个js的题,使用类似标题那样的调用方法计算a*b*c*d以致无穷的实现方法.思考了半天,终于理清了它的运行过程,记录于下: 函数体: <!DOCTYPE html> <html> <head> <title>a</title> </head> <body> <p id="a"></p> <script type="text/javascript&…
原文地址:http://blog.csdn.net/mgoann/article/details/7239492 Debug视图 认识debug视图,红色部分框为线程堆栈视图,黄色部分框为表达式.断点.变量视图,蓝色部分为代码视图.  线程堆栈视图 分别介绍一下这几个按钮的含义: 1.表示当前实现继续运行直到下一个断点,快捷键为F8. 2.表示打断整个进程 3.表示进入当前方法,快捷键为F5. 4.表示运行下一行代码,快捷键为F6. 5.表示退出当前方法,返回到调用层,快捷键为F7. 6.表示当…
Debug视图 认识debug视图,红色部分框为线程堆栈视图,黄色部分框为表达式.断点.变量视图,蓝色部分为代码视图. 线程堆栈视图 分别介绍一下这几个按钮的含义: 1.表示当前实现继续运行直到下一个断点,快捷键为F8. 2.表示打断整个进程 3.表示进入当前方法,快捷键为F5. 4.表示运行下一行代码,快捷键为F6. 5.表示退出当前方法,返回到调用层,快捷键为F7. 6.表示当前线程的堆栈,从中可以看出在运行哪些代码,并且整个调用过程,以及代码行号 变量视图 1.为变量名视图,显示当前代码行…
今天浏览csdn,发现一文详细的描述了Eclipse Debug中的各个知识点,非常详尽!特此记录. Eclipse Debug不为人知的秘密 http://blog.csdn.net/mgoann/article/details/7239492 Debug视图 认识debug视图,红色部分框为线程堆栈视图,黄色部分框为表达式.断点.变量视图,蓝色部分为代码视图.  线程堆栈视图 分别介绍一下这几个按钮的含义: 1.表示当前实现继续运行直到下一个断点,快捷键为F8. 2.表示打断整个进程 3.表…
目录 Debug视图 线程堆栈视图 变量视图 断点视图 表达式视图 代码视图 远程Debug 异常断点 条件断点 表达式 Debug定位第三方插件的问题 Debug一些经验   Debug视图 认识debug视图,红色部分框为线程堆栈视图,黄色部分框为表达式.断点.变量视图,蓝色部分为代码视图. 线程堆栈视图 分别介绍一下这几个按钮的含义: 1.表示当前实现继续运行直到下一个断点,快捷键为F8. 2.表示打断整个进程 3.表示进入当前方法,快捷键为F5. 4.表示运行下一行代码,快捷键为F6.…
出处:http://www.blogjava.net/yxhxj2006/archive/2012/08/30/386621.html 远程Debug: http://blog.sina.com.cn/s/blog_86a6730b0101iean.html Debug视图 认识debug视图,红色部分框为线程堆栈视图,黄色部分框为表达式.断点.变量视图,蓝色部分为代码视图.  线程堆栈视图 分别介绍一下这几个按钮的含义: 1.表示当前实现继续运行直到下一个断点,快捷键为F8. 2.表示打断整个…
前言 学校小组Project那些外国人啥也不会, 基本上我一个人全包了前端和后端, 说实话这些天来也感受到了写一个比较拿得出手的web确实也不是这么容易的, 特别是我没什么项目经验, 很多时候碰到问题只能自己往死里想, 一个地方一个地方的debug. 以前我一直有点看不起web开发, 觉得web开发挺简单的, 也没什么好学的, 但是再简单的东西, 如果没有经验, 也简单不起来. 这次的网页, 实际功能不需要多复杂, 逻辑也没有多复杂, 但是真的要实现起来确实不是想象中那样信手拈来. 往往问题出现…
当前使用的Spring JDBC版本是5.0.0.RC1,HikariCP版本是3.1.0. 今天测试同学反馈在前端页面点击次数多了,就报500错误,数据显示不出来.于是我在后台服务日志中观察发现HikariCP连接池报如下的错误: getDataByWorkSheetId method Exception:HikariPool-2 - Connection is not available, request timed out after 30000ms. 接着开始翻墙搜谷歌,大致要从两方面进…
从网上摘录了一些面向过程vs.面向对象的分析,先简单记录如下,稍后会继续整理. 为什么会出现面向对象分析方法? 因为现实世界太复杂多变,面向过程的分析方法无法实现. 面向过程 采用面向过程必须了解整个过程.每个步骤都有因果关系,每个因果关系都称成了一个步骤,多个步骤就构成了一个系统.因为存在因果关系,每个步骤很难分离,非常紧密,当任何一步骤出现问题,将会影响到所有的系统. 面向对象 面向对象会将现实世界分割为不同的单元(对象),实现各个对象,如果完成某个功能,只需要将各个对象协作起来就可以. 蛋…
怎样在myEclipse中使用debug调试程序? 最基本的操作是:     1.首先在一个java文件中设断点,然后debug as-->open debug Dialog,然后在对话框中选类后--> Run     当程序走到断点处就会转到debug视图下.     2.F5键与F6键均为单步调试,F5是step into,也就是进入本行代码中执行,F6是step over,     也就是执行本行代码,跳到下一行,     3.F7是跳出函数     4.F8是执行到最后.     1.…
一.简介 Redis的启动也就是main函数的执行,程序的入口在redis.c中,启动流程: 1. 初始化默认服务器配置,如果是sentinel模式还需进行额外的配置 2. 修改配置文件或配置选项,这其中包括处理诸如-h/--help,-v/--version,--test-memory的特殊选项,获取给定的配置文件,设定的配置选项,然后取得配置文件的绝对路径,重置保存条件,载入配置文件 3. 对服务器进行设置具体的包括:设置服务器为守护进程,创建并初始化服务器中的数据结构(如集群模式),为服务…
eclipse debug (调试) 学习心得   进入debug模式:   1.设置断点   2.启动servers端的debug模式   3.运行程序,在后台遇到断点时,进入debug调试状态   =============================   作用域 功能 快捷键 全局 单步返回 F7 全局 单步跳过 F6 全局 单步跳入 F5 全局 单步跳入选择 Ctrl+F5 全局 调试上次启动 F11 全局 继续 F8 全局 使用过滤器单步执行 Shift+F5 全局 添加/去除断点…
最基本的操作是:       1.首先在一个java文件中设断点,然后debug as-->open debug Dialog,然后在对话框中选类后--> Run       当程序走到断点处就会转到debug视图下.       2.F5键与F6键均为单步调试,F5是step into,也就是进入本行代码中执行,F6是step over,       也就是执行本行代码,跳到下一行,       3.F7是跳出函数       4.F8是执行到最后.       1.Step Into (a…
在MSI工程中,经常会遇到这样的情况: MSI 工程需要调用DLL(C++)中的一个函数实现某些特殊或者复杂的功能,通常的做法是在Custom Action 中调用该DLL . 那么在安装过程中,该Custom Action 被调用的时候,如何使用Visual Studio 逐行Debug DLL 的源代码呢? 答案是:使用VS2010 中的Attach to Process 就可以实现. 步骤如下: 1> VS 工程设置为Debug 模式,并设置断点. 在断点前,弹出一个 dialog ,用来…
1.进入debug模式(基础知识列表)1.设置断点 2.启动servers端的debug模式 3.运行程序,在后台遇到断点时,进入debug调试状态 ============================= 作用域 功能 快捷键 全局 单步返回 F7 全局 单步跳过 F6 全局 单步跳入 F5 全局 单步跳入选择 Ctrl+F5 全局 调试上次启动 F11 全局 继续 F8 全局 使用过滤器单步执行 Shift+F5 全局 添加/去除断点 Ctrl+Shift+B 全局 显示 Ctrl+D 全…