TarsCpp
TarsCpp copied to clipboard
C++ language framework rpc source code implementation
asm目录的内容是否可以用cpp文件替换。 没有这个目录编译不过去呢。
### 现象 ![image](https://user-images.githubusercontent.com/2263776/128343265-d21b2883-fce1-4e99-aef9-b69129bc907c.png) 发布服务时偶尔会发现服务会coredump,发现core在了调用async_reportMicMsg的时候; ### 代码如下: ``` cpp int StatReport::reportMicMsg(MapStatMicMsg& msg,bool bFromClient) { if (msg.empty()) return 0; try { int iLen = 0; MapStatMicMsg mTemp; MapStatMicMsg mStatMsg; mStatMsg.clear(); mTemp.clear(); {...
if (mysql_real_connect(_pstMql, _dbConf._host.c_str(), _dbConf._user.c_str(), _dbConf._password.c_str(), _dbConf._database.c_ str(), _dbConf._port, NULL, _dbConf._flag) == NULL) 这个可能会出现假连接吗 改为 if (_pstMql = mysql_real_connect(_pstMql, _dbConf._host.c_str(), _dbConf._user.c_str(), _dbConf._password.c_str(), _dbConf._database.c_ str(), _dbConf._port, NULL, _dbConf._flag) == NULL) 这样会不会好点,在执行查询的时候偶尔会在mysql_real_query()报段错误,具体不知道是什么原因
centos系统若没有自带iconv,编译框架源码会遇到iconv链接不到的问题,需手动安装iconv库,并修改Common.cmake如下: IF (APPLE) link_libraries(iconv) ENDIF(APPLE) 改为 #IF (APPLE) link_libraries(iconv) #ENDIF(APPLE)
windows vs2019 x86 报gtest.lib 库x64与x86 冲突
https://github.com/TarsCloud/TarsCpp/blob/59a569b38eddc11ade43f0558e158007c8a29bc4/servant/libservant/EndpointManager.cpp#L1050-L1060 当一致性哈希取到的节点挂掉时,退化成了取模路由,打破了按一致性哈希路由的承诺。会导致数据节点重新迁移,和一致性哈希承诺的“节点失效时,需要迁移的区间是均匀的”相违背。
跑反复启动脚本发现tarsAdminRegistry模块频繁出现coredump,基本每次都是在communicator释放时出现的。具体当时的Log信息如下: =================================================================================== [root@gateway-tars-0 bin]# gdb tarsAdminRegistry core.tarsAdminRegist.0.3d8e8875faea42d882c5d783238b10dc.3978.1606457834000000 GNU gdb (GDB) Red Hat Enterprise Linux 7.6.1-119.el7 Copyright (C) 2013 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later...
tars2cpp有生成对协程的支持,默认生成协程回调,但是pb2tarscpp,却没有生成对协程回调的支持,这个基于什么样的考虑呢?
If you find any dependent libraries in code but never display its open source license in the License file, please comment on this issue, We will update the License file...
struct、vetcor、map等支持右值引用参数,减少不必要的拷贝