开源周报第二期(20230616)
❝本文分为三个部分 产品应用,行业应用 和基础知识
❞
从完成到完美,别想太多,只管去做。
这一期没有什么内容,我依然发出来了,只为重启,上一阶段解释。 马上开启下一阶段。
一. 行业 从石器时代到黄金时代 一. 基础知识:从青铜到白银经历问题
一 、站在巨人肩膀上
二. 从石器时代到黄金时代
一、公开课[资料]
-
数据库/存储学习路径推荐
https://mp.weixin.qq.com/s/fl-R_ZMQwy0aNQbsXZeQ3Q 必读!!!数据库开发学习资料.pdf 进展:0
- 阅读书籍:leveldb 精通
https://github.com/watchpoints/leveldb https://leveldb-handbook.readthedocs.io/zh/latest/basic.html 进展:1
-
Go 开放课程:MIT 经典课程 《分布式系统》
https://learnku.com/go/wikis/41239
-
MIT 6.84: Distributed Systems
官方地址:https://pdos.csail.mit.edu/6.824/ 进展:0
二. TIdb
:::warning 为什么要看tidb,自己一个担心,前面无数人在 做,自己先做晚来了? 然后等待3年 5年什么都不事情?然后看看手机电影, 为纠这个态度,从消息态度变成积极态度, 一个社区无数文档,无数参与 着说明有价值的。 你认为正确行业,你认为正确社区,你认为正确的, 为什么行动呢?着就是最大问题? 有正确,有价值的不去做,反而去做没有用 事情。破冰 :::
如何成为 TiFlash Contributor?
https://asktug.com/t/topic/693824
资料 | 作者 | 地址 |
---|---|---|
「High Performance TiDB 课程学习计划」 | 官方 | https://docs.qq.com/sheet/DY3RueHVEd1JQV1Vi?tab=BB08J2 |
「TiFlash 往期源码解读」 | 官方 | https://asktug.com/t/topic/903372 |
「Talent Plan 2021 KV」 | 「社区」 | https://learn.pingcap.com/learner/course/510001 |
https://github.com/tikv/tikv | ||
### TiDB 社区技术月刊 | ||
七大模板 | https://tidb.net/book/tidb-monthly/ | |
T「iKV 源码阅读三部曲」 | 社区 | https://mp.weixin.qq.com/s/HgflwnZZMHXaIsFV3PdGAg |
### issue | ||
https://github.com/pingcap/tidb/issues/7623 | ||
https://github.com/tikv/tikv/issues/8650 | ||
【源码类学习资源大放送】TiDB、TiKV、TiFlash、Chaos Mesh 等源码解读补给站 |
| | https://asktug.com/t/topic/693645/1 | | 最近学习数据库源码 遇到的疑惑,希望过来人帮忙解答 | | https://asktug.com/t/topic/1000469?_gl=1fkkx3_gaMjI2MTMzMTkyLjE2NzM5MjYyNDI._ga_5FQSB5GH7F*MTY3NzE1NzkzOS4yMi4wLjE2NzcxNTc5MzkuMC4wLjA. |
挑战:TiKV raft engine日志丢失Tikv恢复失败
https://asktug.com/t/topic/1006099
第一步: 盯着问题根本无法解决,凭空想想不出来的问题变为tikv如何加载recover日志的。
挑战2:
Incorrect data conversion · Issue #44219 · pingcap/tidb
CREATE TABLE t1 (c1 INT UNSIGNED NOT NULL);
INSERT INTO t1 VALUES (0);
SELECT c1 > - '7' FROM t1;
开发进展:
提问3: tidb 如何禁止开启启动 分类:运维部署 回答:
提问4:我的SQL走tiflash TIFLASH sql优化问题
分类:架构设计 回答:
三 ob社区
标签 | 问题 | 是否解决 |
---|---|---|
启动 | observer无法启动 | |
文章 | 【SOP 系列 19】OceanBase 生态组件重启方式 | |
ysbench 压测ob时, write only 场景 qps 波动大 | https://ask.oceanbase.com/t/topic/35603208/24 |
问:内存配置没有到触发条件,为啥会触发MINI_MERGE转储
提问2: 今天所有业务暂停了,突然cpu占用99%,租户无法登录,无法导出数据恢复 分类:系统架构 回答:https://zhuanlan.zhihu.com/p/466337239
提问3:log_disk_size和datafile_size设置后不生效 https://ask.oceanbase.com/t/topic/35603715 分类:系统架构 回答:
-
log_disk_size在4.1版本是支持缩小的,语法没错,建议升级试试,clog会自动清理空间大小,通过log_disk_utilization_threshold控制,默认80%,可以适当调小。
-
datafile_size不支持缩小,虽然alter system set 设置没有报错,但可以查看__all_virtual_disk_stat 查看实际大小,预期是不会有变化
提问3: 函数ST_ExteriorRing已经新增了,ST_ExteriorRing函数都是boost geometry 不需要自己实现把? https://dev.mysql.com/doc/refman/5.7/en/gis-polygon-property-functions.html#function_st-exteriorring 分类:sql引引擎 答: 所有的函数的都是调用boost库的,我看MySQL也是这么做的,当时MySQL还写了一个文章为什么要用
四 TDengine
序号 | 模块 | 提问 | 回答 |
---|---|---|---|
1 | 技能 | 通过招聘看要求 | 必须掌握英语。 |
2 | |||
:::success Hi 大神们 遇到个问题 taos 用了32g的 内存 被系统杀掉了 我要怎么限制taos的内存使用 如何限制taos 最大内存 配置taos的内存回收策略 :::
「Q2: yum config-manager --set-enabled powertools 执行失败」 https://github.com/taosdata/TDengine/issues/15593 A2: dnf install epel-release dnf install 'dnf-command(config-manager)' dnf config-manager --set-enabled PowerTools
三. 开发者手册:从青铜到白银经
C++最重要就是三座大山:面向对象技术,内存管理,模板(泛型编程)
-
std::unique_ptr 默认不允许拷贝构造,拷贝赋值,为什么函数可以返回unique_ptr ? 而不是&unique_ptr
https://en.cppreference.com/w/cpp/memory/unique_ptr/make_unique
template<class T, class... Args>
std::enable_if_t<!std::is_array<T>::value, std::unique_ptr<T>>
make_unique(Args&&... args)
{
return std::unique_ptr<T>(new T(std::forward<Args>(args)...));
}
2 template<typename... _Args>
:::warning https://zhuanlan.zhihu.com/p/394184676 :::
template<typename... _Args>
void emplace_front(_Args&&... __args);
猴子都能懂的GIT入门〜掌握版本管理〜
合并代码用cherry-pick
:::success 使用BeyondCompare合并代码, 结果发现提交上去代码 根本编译不通过,耗时 2天。都是语法错误 这是处理方式不对。合并代码,
这时分两种情况。一种情况是,你需要另一个分支的所有代码变动,那么就采用合并(git merge)。另一种情况是,你只需要部分代码变动(某几个提交),这时可以采用 Cherry pick
如果操作过程中发生代码冲突,Cherry pick 会停下来,让用户决定如何继续操作。 git cherry-pick --continue :::
git rebase --continue
解决冲突CONFLICT 在rebase的过程中,也许会出现冲突(conflict)。在这种情况,Git会停止rebase并会让你去解决冲突;在解决完冲突后,用git add命令去更新这些内容的索引(index),然后,你无需执行 git commit,只要执行:
bash
git rebase --continue
https://juejin.cn/post/6844903600976576519
作者:麦田里的糖醋鱼 链接:https://juejin.cn/post/6969101234338791432 来源:稀土掘金 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
git pull 提示需要 merge 或 git stash 的解决
-
别人提交的pr先合并了xxx2,导致你提交pr xx01代码不是最新代码,需要合并。但是git pull合并不了 -
git reset --hard xxxx2, 回推到 别人pr提交之前,然后 pull -
git pick up 我自己的xxxx.
3.3 跑吧 Linux内核(入门篇)
-
文件系统
dd if=/dev/zero of=output_file bs=1G count=1
:::warning 总结不易,如果对您有帮助,请一键三连, 鼓励发表更优秀的文章 :::
本文由 mdnice 多平台发布