绑定完请刷新页面
取消
刷新

分享好友

×
取消 复制
修改
vage 栈主 2020-07-01 18:11:23
huzenghui 提问:吕老师:能从源码上讲解一下pg和oracle的hash join和分区的实现原理吗?

先找个HJ相关的函数吧,把函数名发过来,我可以带着你一起研究。

展开
vage 栈主 2020-07-01 18:10:12
huzenghui 提问:吕老师:能从源码上讲解一下pg和oracle的hash join和分区的实现原理吗?

可以按我们的方式,研究下PG的Hash Join。第一步:找一个小目标。可以先在网上搜索一下,找一个HJ相关的函数。第二步:快速跟踪一下这个函数的执行,大概了解下执行过程。第三步:重点查看数据结构、重点代码

展开
vage 栈主 2020-07-01 18:04:53
markriver 提问:用GDB直接调试MYSQLD进程,可以显示源码的路径文件名行号,然后用VIM加插件快速翻该函数的源代码。mysqld 怎么关联源码的路径?

MySQL DEBUG编译和非DEBUG编译,性能相差还是很大的。我自己的研究环境,是有两个版本,DEBUG和非DEBUG,研究代码、原理的时候,使用DEBUG版的。性能测试时使用非DEBUG版的。

展开
vage 栈主 2020-07-01 17:49:50
markriver 提问:用GDB直接调试MYSQLD进程,可以显示源码的路径文件名行号,然后用VIM加插件快速翻该函数的源代码。mysqld 怎么关联源码的路径?

加DEBUG编译,会将凋试信息编译进可执行文件mysqld中,gdb可以根据mysqld中的调试信息,显示源码相关的内容,即使源码都已经删除了。因为这些调试信息在可执行文件中。

展开
点击加载更多
分享好友

分享这个小栈给你的朋友们,一起进步吧。

创建新的小栈
调试数据库 ---- 源码研究方法论
创建时间:2020-06-16 17:28:11 分享
最能让你坚持下去的源码学习方法 ---- 调试数据库。Oracle的各种DUMP、Trace和Event,增加了研究这个数据库的“乐趣”,使用Oracle成为一个可研究的数据库。开源数据库当然也可以通过钻研源码的方式去研究,但这样的学习周期太长。本课程教你用调试技术不断为MySQL/PostgreSQL扩展功能,在学习源码的同时,不断开发自己的、类似Oracle DUMP、Trace、Event的小工具,这就是我所说的“正向反馈”。用正向反馈,激励自己坚持下去,最终成功。
展开
订阅须知

• 所有用户可根据关注领域订阅专区或所有专区

• 付费订阅:虚拟交易,一经交易不退款;若特殊情况,可3日内客服咨询

• 专区发布评论属默认订阅所评论专区(除付费小栈外)

栈主、嘉宾

查看更多
  • vage
    栈主

小栈成员

查看更多
  • 叶子,你好
  • 小雨滴
  • 潘佳伟
  • 东风快递
  • 热门小栈
  • 最新小栈
  • 更多
特邀嘉宾

亲爱的$mastername栈主,

作为我们尊贵的VIP,您可以免费邀请人脉圈的任何人加入小栈,与您共同建设、管理$stackname小栈,为您站场,期待您的小栈聚集各路大牛

⚠️注意事项:

1.被邀请嘉宾与您同享小栈部分权益,可共同活跃、管理小栈内用户;

2.嘉宾可在24小时之内通过下一步给到的链接注册登录,过期失效;

3.为最大程度保护您小栈的隐私性,请在安全的环境下发给可信任的用户;

4.链接仅可单人单次使用;

5.目前最多可邀请9位嘉宾入驻。

戳我,来吐槽~
修改小栈
修改封面
小栈名称
小栈简介
小栈售价
免费小栈仅享有一次修改为付费的机会,直接修改价格即可;
修改为【付费】后不可再次修改为【免费】,请谨慎操作。
取消 确定

您可以在此修改小栈的图像和简介,如果您是免费小栈,可享受仅1次修改未收费小栈的机会