Bug解决过程复盘】的更多相关文章

反思了下,解决问题无外乎3w1h when where who how 就是查询出来的事情多了,现在不知道哪个地方出问题,应该根据日志一步一步梳理,查看每一步的输出结果是否与预期一致 顺藤摸瓜 觉得不清楚的地方,可以新增打印,或通过其它方法获取这些不可知的信息. 已经确认没有问题的代码,不能出异常情况时,就开始漫无目的的怀疑,张驰有度... 严格的讲这个Bug还没有彻底解决,因为没有找到真正的原因 重启下服务就好了!!!!!!!!!!!!!!!! 主要想梳理下操作流程: 当时的反应: bug出现…
环境:jdk1.8.maven.springboot 问题:前端通过json传了一个日期:date:2019-03-01(我限制不了前端开发给到后端的日期为固定格式,有些人就是这么不配合),     而springboot中默认使用jackson做json序列化和反序列化,后台接收数据时将日期字符串转成LocalDateTime时,会报错: Caused by: com.fasterxml.jackson.databind.exc.InvalidFormatException: Cannot d…
一.总结 快捷键ctrl + alt + 四个方向键 --> 倒置屏幕 未补全else逻辑,倒置查询数据泄露 空指针是最容易犯的错误,数据的空指针,可以普遍采用三目运算符来解决 SVN冲突解决关键字:<<<<<<< .working     =======     >>>>>>> .merge-right.r10329 线上实时查看日志的命令:tail -f -n 200 all.log 二.BUG描述:else逻辑…
一 总结 不擅长语言表达,勤于沟通,多锻炼 调试MyBatis中SQL语法:foreach 问题:缺少关键字VALUES.很遗憾:它的错误报的让人找不着北. 二 BUG描述:MyBatis中批量插入数据异常 <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http:…
一 总结 熟悉廖雪峰git基础; 由于git跟踪的是修改,而不是版本号:因此对于修改撤销的操作,文件在eclipse中依旧有>修改标记,这点不同于svn. 二 BUG描述:熟悉Git基础 在Git中,HEAD表示当前版本,它是一个指针:Git在内部有个指向当前版本的HEAD指针,当你回退版本的时候,Git把HEAD指向发生改变.工作区,就是我们电脑中新建的,可以看得到的目录.版本库,在我们工作区执行git init之后,或多出一个.git的目录,它就是git的版本库.Git的版本库里存了很多东西…
一.总结 Mybatis中当parameterType为基本数据类型的时候,统一采用_parameter来代替基本数据类型变量. Mybatis中resultMap返回一个对象,resultType返回一个Map简单数据类型(由于需要缓存到JVM中)的映射关系. String类型转Integer类型:String类型转int类型用到的方法是不一样的. 方法入口处第一行写new Date(),防止时间在23:59:59跨界对逻辑带来影响. 考虑到上线app_resource表忘记配置供应商比例,在…
一 总结 eclipse集成插件lombok: 启动Spring Boot项目: sublime全局搜索关键字:ctrl + shift + F JDK8中的lambda表达式使用 二 BUG描述:集成eclipse插件lombok lombok插件,使用注解@Data的方式,从而省略了代码中频繁的getter和setter方法.安装插件:通过下载jar包安装,并且制定到你的eclipse.exe路径.官方下载地址:http://projectlombok.org/download.html.…
一 总结 eclipse Installed JREs 配置引出的问题:编译以来JDK,不是JRE spring boot内嵌tomcat运行程序,tomcat:run 二 Bug描述:eclipse Installed JREs 配置引出的问题 刚新鲜检索出的代码,同学们编译都ok的,自己编译总是出错.原因在于eclipse Installed JREs 配置出错引出的问题.路径:windows->preferences->输入jre->Installed JRES->要依赖JD…
一.总结 二.BUG描述:MyBatis中resultType使用 MyBatis中的resultType类似于入参:parameterType.先看IDCM项目中的实际使用案例代码,如下: // List<Integer> orderIds = assetBeanMapperExt.getOrderIdsByParentIds(SqlStringUtil.formatInStr(logisticsOrder.getParentIds())); 我们的目的是通过*Ext层直接返回一个list,…
一.总结 在Webx的Velocity中获取url中参数:$rundata.getRequest().getParameter('userId') 在Webx项目中,防止CSRF攻击(Cross-site request forgery,跨站请求伪造),在form表单提交中要加入$!csrfToken.ajaxUniqueToken 在MyBatis的mapper层,使用标签association实现对象的关联,一个bean配多个association标签. 二.Bug描述:Velocity从U…
一.总结 使用某些变量的地方在2次以上的,强烈建议使用枚举值来维护变量,日后方便扩展. 查数据库的方法调用,能合并就净量去合并. 二.Bug描述 枚举变量的维护以及方法使用: public class UsedOnce { public static enum ruleDetailsEnum { SOURCEREGIN("原区域"), TARGETREGIN("目的区域"), SOURCECITY("原城市"), TARGETCITY("…
一.总结 mybatis中使用sqlMap进行sql查询时,经常需要动态传递参数.动态SQL是mybatis的强大特性之一,也是它优于其他ORM框架的一个重要原因.mybatis在对sql语句进行预编译之前,会对sql进行动态解析,解析为一个BoundSql对象,也是在此处对动态SQL进行处理的.在动态 SQL 解析阶段,#{ }和${ }会有不同的表现,#{ }解析为一个JDBC预编译语句(prepared statement)的参数标记符. 一个 #{ } 被解析为一个参数占位符 ? .${…
目录 背景 代码 背景 项目使用 Ext.NET 2.2.0.40838 , 对应 Ext JS4.2 版本. 结果 2017/3/31 号的时候偶然间点日历选择控件选择2月,10月等月份突然就跳到3月份,9月份之类. 就是无法选择, 选择谷歌以后发现有同样的问题, 然后各种尝试, 重写了默认属性,如下代码后解决. 收获就是调用平台有时候要知道原因才能找到未知原因并修复. 宝贵的额是Ext框架问题解决思路吧. 现记录. 改动的部分就是 dt.setDate(1); 这一句, 设置为当前月份第一天…
首先我们测试了老师反馈的异常情况.这所中学使用的是 IE8 浏览器.IE8 浏览器提交作文评分的情况是:一直停留在“正在提交系统评分”的页面,停留了很长时间以后,页面空白. 换用火狐浏览器,可以正常评分.个人思考:可能是在 IE 浏览器下使用 jQuery 的 ajax方法失效.因此前端代码不能正确调用后台的方法,因此我们系统的“每隔30秒自动保存”的机制也失效了.(其实在后面的分析中,我们可以看到,这只是假象.)于是我们很自然地想到的解决方案就是让用户更换浏览器,IE 浏览器虽然现在还是占有一…
1.事情起始: 我们每个月要给商家进行出账,所以有定时任务去跑商家的订单和售后进行出账,这个功能已经上线很久了,代码执行多次都没问题,突然有一天,产品找我说出现bug了: 这时,去生产库查询重复的订单,发现大部分商家都出现了问题,有些商家的订单没问题,接下来就拷贝生产数据到开发环境,用生产分支的代码重新执行,发现没问题,但偏偏生产有问题,后面给订单号加上唯一索引 在生产重新跑了一遍,结果日志显示,报错原因都是重复的订单号,因为前面加了唯一索引约束了.这里至少证明不是代码bug引起的了:突然想起,…
android一个下拉放大库bug的解决过程及思考 起因 项目中要做一个下拉缩放图片的效果,搜索了下github上面,找到了两个方案. https://github.com/Frank-Zhu/PullZoomView 这个库本来做的还可以,不过有个缺陷就是,当scroolview滑动到底部,再向上拉动,会导致放大效果不连续,需要重新释放,再次下拉,这对于追求细节的我来说,不可忍受.看了半天他的代码,感觉他的实现方式很难修改为我想要的效果,后来就放弃了. https://github.com/G…
目录 前言 问题来了 问题又来了 问题分析 困惑 转机 后续 前言: 这是我上周工作过程中的一次解决问题的过程.解决的是nginx负载下站点错误响应导致其他节点重复响应. 我在整理这个记叙文时,在给这个文档命名时思考了一段时间. 从业务角度说,应该是“一次短信重复发送问题解决过程”,如果这样命名,过于土气:从技术角度说,应该是“nginx负载下站点错误响应会导致其他节点重复响应”,如果这样命名,可能没人会注意了:最后,我懒得再费脑汁了,从人类智慧的角度我把它命名为“复杂的问题,简单的解,小处不谨…
1.  现象 每次动态添加iframe时,iexplore.exe进程占据的内存都会增加(大概10M左右),不会自动释放,最终导致内存溢出 2.  解决过程 经过网络的一番搜索,基本上给出的解决方案是清空iframe内容,并移除iframe节点.方法如下: var el = document.getElementById("IFrame1"); if (el) { iframe = el.contentWindow; //清除文档 el.src = 'about:blank'; try…
CHAR 类型的一个变体是 VARCHAR 类型,char(M),M是指字节长度,和varchar(M)一样 故障原因:mysql主键设置为int(9),但数据量已经大于int(9)的范围了 tips:int最大长度是11. 如果在建表时不指定字段int类型的长度时,系统则默认生成长度为11的字段. 解决过程中的坑:因为更改字段类型太慢(亿级数据量),就新建了个相同结构的表,然后更改代码中的sql准备把应用启动起来. 问题1:因为shell脚本是在notepad++中修改的,修改后没有保存,导致…
目录 前言 问题来了 问题又来了 问题分析 困惑 转机 后续 前言: 这是我上周工作过程中的一次解决问题的过程.解决的是nginx负载环境下,因为应用程序异常导致某一请求被多节点站点重复处理的问题. 我整理这个复盘的过程时,在给这个记叙文命名时思考了一段时间. 从业务角度说,应该是“一次短信重复发送问题的解决过程”,如果这样命名,过于土气:从技术角度说,应该是“nginx负载下当程序错误时会导致请求被多次重复处理”,如果这样命名,可能没人会注意了:最后,我懒得再费脑汁了,从人类智慧的角度我把它命…
解析xml数据存入bean映射到数据库的 需求解决过程2017年12月19日 15:18:57 守望dfdfdf 阅读数:419 标签: xmlbean 更多个人分类: 工作 问题编辑版权声明:本文为博主原创文章,转载请注明文章链接. https://blog.csdn.net/xiaoanzi123/article/details/78843037首先贴上已知的一段代码demo,解析xml.按照此方式进行功能开发. package com.iflytek.zhejiang.hangzhou.q…
一.mysql主从服务器报错描述:Slave_IO_Running=NO,Slave_SQL_Running=YES,Last_Errno=0 mysql slave stop ; mysql slave start; mysql show slave status ; 如果Slave_IO_Running=YES ...解决过程 :1 如果:Slave_IO_Running=NO,Slave_SQL_Running=YES,Last_Errno=0mysql> slave stop ;mysq…
关于昨天程序出差我找bug的过程记录 昨天才程序 https://www.cnblogs.com/pythonywy/p/11006273.html ├── xxxx │ ├── src.py │ └── fil_mode.py │ └── data_time.py │ └── loading.py │ └── data_time.py │ └── logger.py src.py与打印日志相关片段 if __name__ == '__main__': logger_start('程序主界面')…
前言 做开发这么多年,也碰到无数的bug了.不过再复杂的bug,只要仔细去研读代码,加上debug,总能找到原因. 但是最近公司内碰到的这一个bug,这个bug初看很简单,但是非常妖孽,在一段时间内我甚至是百思不得其解.在长达几天的时间内,复现的概率非常低.几乎难以抓住任何踪迹. 所以这篇文章就非常写实的来记录一下此Bug的发现和排查整个过程. 起因 同事之前做了个需求,提交测试.测试同事在测的一半的时候.发现了后台的一个报错 com.alibaba.fastjson.JSONException…
在文章:这些.NET开源项目你知道吗?让.NET开源来得更加猛烈些吧!(第二辑) 与 .NET平台开源项目速览(3)小巧轻量级NoSQL文件数据库LiteDB中,介绍了LiteDB的基本使用情况以及部分技术细节,我还没有在实际系统中大量使用,但文章发布后,有不少网友( loogn)反应在实际项目中使用过,效果还可以吧.同时也有人碰到了关于LiteDB关于分页的问题,还不止一个网友,很显然这个问题从我的思考上来说,作者不可能不支持,同时也翻了一下源码,发现Find方法有skip和limite参数,…
启动Tomcat一闪而过--分析及解决过程 嗯,昨天将有关JDK的知识稍微整理了一下,现在稍微整理一下有关Tomcat的! 1:Tomcat是什么? Tomcat是当今世界上使用最为广泛的.开源免费的Servlet/JSP容器,其主要功能是用于发布JavaWeb应用. 更多的信息请参看: http://tomcat.apache.org/ 2:怎么选择Tomcat的版本 规则是看我们选择使用的技术是什么版本的,目前具体的版本匹配情况请如下图所示: 更多信息请参看: http://tomcat.a…
最近涉猎自动化太少了,以至于都不经常更新了.最近一个朋友在做移动端自动化的时候遇到了一些小问题来找我解决.本人也不是很精通,只是接触的时间长了一点了.下面就是一些问题和解决过程: 1.她刚过来的时候,碰到的第一个问题是打开appium后启动脚本,手机没反应.如果以后再遇到这样的问题: 解决方法:首先先验证自己的软件是否全部安全完整,环境变量是否全部配置完全.如果都配置完全,就不会存在这种问题了,所以说在布置环境的时候一定要小心一点,宁可慢一点也一定要检查全. 2.他们公司产品老是弹出更新弹框,就…
百度编辑器ueditor 异步加载时,初始化没办法赋值bug解决方法 金刚 前端 ueditor 初始化 因项目中使用了百度编辑器——ueditor.整体来说性能还不错. 发现问题 我在做一个编辑页面时,因我编辑页面数据是通过ajax异步请求过来的. 我发现异步请求过来数据后,赋值给ueditor时一直提示inerhtml错误. 排除异常情况 我自己又做了一个页面,直接赋值给ueditor,发现是可以的. 排除ueditor问题. 思考 我猜想是我异步请求数据造成ueditor没有初始化完成就给…
在此之前项目有发生过两次类似的状况,都得以解决,但最近又会发现偶尔CPU会跑满,虽然之前使用过WinDbg解决过两次问题但人的记忆是不可靠的,今天处理同样问题的时候还是遇到了一些障碍,这一次希望可以记录的更全面些. 上两次的博文链接:记一次w3wp占用CPU过高的解决过程(Dictionary和线程安全).EntityFramework中的线程安全,又是Dictionary. 首先请大家不要喷我,因为这一次还是关于Dictionary的一些低级错误,我自己看到都无语了... 抓取Dump 使用任…
1.事因: 执行shell测试时,shell中rm -rf $path/* 变量$path为空,结果执行的命令是rm -rf / 事发时及时ctrl+c中断,导致只有/bin /boot目录删除 2.造成后果 大部分/bin下的shell命令无法执行,例如ls mkdir chmod tar ssh login...也就是想ssh远程登录也不行了. 3.解决过程 1).好在我当前ssh会话没有关上,虽然新会话没有办法远程ssh,但只要现在这个会话不关闭那么就可以一直用着……………… 2).从集群…