Debug EOS:nodeos + mongo_db_plugin】的更多相关文章

上文书说到区块链的存储方式,并结合了EOSIO进行分析,其中也提到了使用CLion调试EOS的方法.本文将继续深入细致地展开对加载了mongo_db_plugin的nodeos的调试过程以及心得. 关键字:源码分析,Debug EOS,nodeos,mongo_db_plugin,CLion,C++,boost::asio::signal_set,queue 本文涉及的环境:clang-6.0, clang++-6.0, GDB Debugger, make 4.1, mongodb-linux…
在使用FIS3搭建项目的时候,遇到了一些问题,这里记录下. 这里是发布搭建代码: // 代码发布时 fis.media('qa') .match('*.{js,css,png}', { useHash: true }) // 添加指纹 .match('*.js', { optimizer: fis.plugin('uglify-js') }) // js压缩 .match('*.css', { optimizer: fis.plugin('clean-css') }) // css压缩 .mat…
最近又监控到一个高内存的问题,周五下班把系统打开,周末2天没关,周一来看已经涨到5.2G,这次与以往不同,不是.net的内存泄漏,而是非托管引起的. 1. 抓dump,确定高内存的类型 //dump有5.2G,.net的堆只有191M,可以判断是unmanaged high memory 0:000> !eeheap -gc Number of GC Heaps: 1 generation 0 starts at 0x0000000159852b88 generation 1 starts at…
调试功能;            缩短项目时间,调高阅读源码的能力.   一.添加断点,选中一行代码,双击即可生成断点(快捷键:ctrl+F8)                二.单步运行,快捷键:shift+ alt + F9        点击图标生效:               继续按F8,程序就会一行一行的执行.直到运行结束          三. resume操作,快捷键:F9,跳过一行,如果以后没有断点就结束            四.查看所有断点          ctrl+sh…
一.断点: 1.条件断点 本以为条件断点很难,其实就这样. 二.远程Debug 1.首先看服务器是不是在Debug模式下工作 不是则进行(tomcat/bin/catalina.sh)配置. -Xdebug -Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n 具体解释: -Xdebug : 启用调试特性. -Xrunjdwp: 在目标 VM 中加载 JDWP 实现.它通过传输和 JDWP 协议与独立的调试器应用程序通信.下面…
工作中难免会遇到各种各样的 bug,对于开发环境 or 测试环境的问题还好解决,可以使用 gdb 打断点或者在代码中埋点来定位异常; 但是遇到线上的 bug 就很难受了,由于生产环境不能随意替换.中断程序,如果日志中找不到问题原因,解决问题就会很棘手 这时候就需要请出这两位 debug 利器了 ---- pstack & strace 什么是 pstack pstack 是 Linux 系统下的一个命令行工具,此命令可以显示指定进程每个线程的堆栈快照,便于排查程序异常和性能评估 pstack 是…
https://github.com/deivid-rodriguez/byebug/blob/master/GUIDE.md 安装: gem install byebug 使用: Rails: 直接增加byebug.然后运行bin/rails s, 一旦执行到byebug这行命令,就会收到一个prompt提示. Ruby: 如果想要debug一个ruby script无需编辑它, 直接在命令行上引用byebug命令: byebug myscript.rb 使用命令 continue, next…
最近花了好几周解决一个WPF高内存的问题,问题的表象是内存不断增加.未被回收,根源是GC的FinalizeThread被阻塞,导致整个GC挂掉.从以下几步来分析这个问题: 1.用ANTS Memory Profiler去掉强引用 既然是高内存,肯定要先从内存着手.这里必须要赞一下ANTS的这个工具,图形化做的非常好,一目了然,个人觉得比SciTech的.net memory profiler好用.找个基准点take一个SnapShot,打开关闭窗口后再take一个snapshot,比较2个快照里…
最近几周都在解决程序不稳定的问题,具体表现为程序(多进程)时不时的Hang住,同时伴随某个进程的High CPU.跟踪下来,基本都是各种死锁引起的.这里选取一个典型的场景进行分析. 1.抓dump分析 由于这个问题不能稳定重现,所以比较靠谱的方法是出现后抓Dump再分析.老方法:ProcDump -ma [ProcessName].这是个多进程Hang住的情况,具体表现为主进程Main点击退出时,子进程Mkt不响应.到底是哪个进程挂掉了呢? 2.先看Main 首先!syncblk: 0:000>…
在项目根目录执行: composer require barryvdh/laravel-debugbar --dev…