最近两日做公司电信某计费项目时,接收一个银行对账的任务,在完成对账后.电信和银行两方金额一致时需要进行充值.冲正操作保持金额一致.冲正服务是JAVA统一调用Tuxedo服务,这个服务已经是一个稳定可用的接口了,但是我在开发自测的时候每次调用都会在某一步操作卡住.而别人调用这个接口却没问题,仔细对照请求参数也发现不了问题.后来同事提醒,突然才意识到Tuxedo服务'卡住'可能是锁表了.前前后后一看代码,这才突然反应过来.错误代码如下 重点就是我在调用Tuxedo服务前先修改了本地的Serial表,…
EF忽然报错:增加记录时,提示当 IDENTITY_INSERT 设置为 OFF 时,不能向表 '...' 中的标识列插入显式值.真奇怪,添加记录方法一向好地地,从没出过错.要出错,那也是Update时才会,什么"附着不附着"的问题.从提示信息来看,是向标识列插入了值.那么EF为什么会认不出标识列呢?原来,是因为同事首先生成了EF代码,然后再在数据库中将某字段改成了标识列,改完以后,没有刷新EF代码,因此EF没有认出该 字段为标识列.在.edmx文件里,查看其代码,对实体类有如下描述:…
问题的条件有: A元素是B元素的包含块. A元素设置overflow:hidden;,并同时设置了height和min-height,同时height计算值 < min-height 原生IE8浏览器,或者IE9浏览器的IE8兼容性模式(以下统称为IE8) 期待结果: 若B元素为absolute定位元素,A元素为relative定位元素,则B元素的包含块高度为A元素的padding-edge高度 若A.B元素均为常规流定位元素,则B元素的包含块高度为A元素的content-box高度 若A元素同…
OS Lab3 踩坑记 Lab3在之前Lab2的基础上,增加了进程建立.调度和中断异常处理.其中测试包括进程建立以及进程调度部分. 由于是第一次做bug记录,而且是调试完bug后再做的记录,所以导致记录不完全.但是为之后bug记录的习惯打下基础. 进程建立测试(env_check) 注意 env_setup_vm() 中的pgdir地址赋值. 在 envid2env() 中当有 checkperm 时,检查失败也要给 *penv 赋值 0 (容易忘记). 这里最好检查一下 curenv 是否存在…
项目开发中遇到了一个问题,类中出现未知属性 ‘ $jacocoData ’,准确的来说,实际上在集成测试阶段,系统自动运行测试用例时,抛出来的异常提示信息,但是在开发阶段是不存在的.这个问题是以前没有遇到过的一中bug,因此在此处记录并分析. (与本片无关,介意者忽略) 先在这儿介绍一下目前项目的开发模式,使用的是迭代式开发.(参考百度) 1.瀑布式开发: 瀑布模型式是最典型的预见性的方法,严格遵循预先计划的需求.分析.设计.编码.代码审阅.测试.维护的步骤顺序进行.    适用:系统目标需求明…
BUG 记录:移位运算与扩展欧几里得算法 起因 上个月就开始打算用C++写一个ECC的轮子(为什么?折磨自己呗!),奈何自己水平有点差,拖到现在才算写完底层的大数运算.在实现欧几里得算法的时候,我开始纠结了... 欧几里得算法的两种实现 耳熟能详的实现方案 这个实现只要了解过欧几里得算法的同学都很清楚,我把维基百科上的代码粘贴到这里,最开始我也是按照这样的方式写出来的代码,没过几个测试,bug就出来了. def ext_euclid(a, b): old_s,s=1,0 old_t,t=0,1…
微信小程序bug记录 textarea textarea在模拟器上没有padding,可是在真机上会自带padding,而且在外部改不了,并且在安卓和IOS上padding还不一样 第一张图是在开发工具上的,第二张图是在IOS真机上的.从上图可以看出来,在开发工具上显示很正常,而且没有padding,可是在真机上左上角就出现了padding,并且无论你在外部对textarea的padding做任何处理,都无法覆盖. 目前有一种解决方式是根据ios和android的不同平台来给teaxarea设置…
Android分组子级的不同视图布局之BUG奇遇记 最近在使用按日期分类列表,二级条目可能不一样,于是就想到了ExpandableListView. ExpandableListView的布局显示分割线问题:  <ExpandableListView                android:id="@+id/expandableListView"                android:layout_width="match_parent"    …
Investigating Your RAM Usage In this document Interpreting Log Messages                 内存分析日志中各消息的含义 Viewing Heap Updates               查看当前内存快照的2种方法 Tracking Allocations                    跟踪记录内存分配2种方法 Viewing Overall Memory Allocations  用adb站在全局角度…
Linux系统开机启动时的工作原理也是深入了解Linux系统核心工作原理的一个很好的途径. 启动第一步--加载BIOS 当你打开计算机电源,计算机会首先加载BIOS信息,BIOS信息是如此的重要,以至于计算机必须在最开始就找到它.这是因为BIOS中包含了CPU的相关信息.设备启动顺序信息.硬盘信息.内存信息.时钟信息.PnP特性等等.在此之后,计算机心里就有谱了,知道应该去读取哪个硬件设备了.在BIOS将系统的控制权交给硬盘第一个扇区之后,就开始由Linux来控制系统了. 启动第二步--读取MB…