一次寻找IBatisNet事务bug的过程】的更多相关文章

本文的上下文环境 操作系统:Win7 x64 Professional 开发工具:Visual Studio 2017   语言:C# 数据库ORM:IBatisNet 1.6.2 一.前言 这个项目的前端有Web端,公众号,微信小程序,后端是用WCF写的,部署成windows service.后端使用了IBatisNet这样的轻量级ORM框架,sql是写在xml里面的,每个模块都有一个xml文件.sql的返回值对应的实体类配置在同一个xml文件里,像这样. 二.问题出现 这个项目一直运行的很正…
spring internalTransactionAdvisor 事务 advisor 初始化过程:…
关于昨天程序出差我找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描述:MyBatis中resultType使用 MyBatis中的resultType类似于入参:parameterType.先看IDCM项目中的实际使用案例代码,如下: // List<Integer> orderIds = assetBeanMapperExt.getOrderIdsByParentIds(SqlStringUtil.formatInStr(logisticsOrder.getParentIds())); 我们的目的是通过*Ext层直接返回一个list,…
前言 做开发这么多年,也碰到无数的bug了.不过再复杂的bug,只要仔细去研读代码,加上debug,总能找到原因. 但是最近公司内碰到的这一个bug,这个bug初看很简单,但是非常妖孽,在一段时间内我甚至是百思不得其解.在长达几天的时间内,复现的概率非常低.几乎难以抓住任何踪迹. 所以这篇文章就非常写实的来记录一下此Bug的发现和排查整个过程. 起因 同事之前做了个需求,提交测试.测试同事在测的一半的时候.发现了后台的一个报错 com.alibaba.fastjson.JSONException…
一.总结 快捷键ctrl + alt + 四个方向键 --> 倒置屏幕 未补全else逻辑,倒置查询数据泄露 空指针是最容易犯的错误,数据的空指针,可以普遍采用三目运算符来解决 SVN冲突解决关键字:<<<<<<< .working     =======     >>>>>>> .merge-right.r10329 线上实时查看日志的命令:tail -f -n 200 all.log 二.BUG描述:else逻辑…
一.总结 在Webx的Velocity中获取url中参数:$rundata.getRequest().getParameter('userId') 在Webx项目中,防止CSRF攻击(Cross-site request forgery,跨站请求伪造),在form表单提交中要加入$!csrfToken.ajaxUniqueToken 在MyBatis的mapper层,使用标签association实现对象的关联,一个bean配多个association标签. 二.Bug描述:Velocity从U…
一.引子 RT,本篇博客记录的是马三的一次解决 LuaFunction has been disposed 的bug的全过程,事情还要从马三的自研框架 ColaFrameWork 说起.最近,马三在业余时间维护了一款基于Unity的客户端自研框架,起名叫 ColaFrameWork ,寓意是希望写代码能像喝小可乐一样享受和轻松.为了在Lua层可以监听到UI事件,马三制作了UGUIEventListener.UGUIDragEventListenner和UGUIMsgHandler等这样几个UI组…
[问题] 有同事反应最近有多台MongoDB的服务器CentOS 7.1系统会自动重启,分析了下问题原因. [排查过程] 1. 检查系统日志/var/log/message,并没有记录异常信息,journalctl相关日志只记录发生过重启 2. 系统默认配置了kdump,使用crash工具分析/var/crash下的转储文件vmcore,命令如下: crash /usr/lib/debug/lib/modules/3.10.0-327.36.3.el7.x86_64/vmlinux /tmp/v…
一.视图 什么是视图 视图是有一张表或多张表的查询结果构成的一张虚拟表 为什么使用视图 当我们在使用多表查询时 我们的sql语句可能会非常的复杂,如果每次都编写一遍sql'的话无疑是一件麻烦的事情,这时候就可以使用视图来避免多次编写sql的问题; 简答的说可以帮我们节省sql的编写, 视图的另一个作用是,可以不同的视图来展示开放不同数据的访问 例如,同一张工资表,老板可以查看全部,部门主管可以查看该部门所有人,员工只能看自己的一条记录 使用方法  创建视图 CREATE [OR REPLACE]…