【Skynet】Traceback汇总
error:
./skynet/lualib/skynet.lua:534:
./skynet/lualib/skynet.lua:156:
./logic/gate/socket_msg.lua:50:unpack_header:
./logic/gate/socket_msg.lua:41: attempt to get length of a nil value(upvalue'msg')
这个问题一般是客户端传上来的协议的id错误,导致服务端的proto_map无法获取相关协议。
error:
./skynet/lualib/skynet.lua:534:
./skynet/lualib/skynet.lua:156:
./lualib/command_base.lua:51:command[enter_game] is nil
stacktraceback:
./lualib/command_base.lua:51:inupvalue'f'
./skynet/lualib/skynet.lua:111:in function<./skynet/lualib/skynet.lua:105>
stacktraceback:
./skynet/lualib/skynet.lua:534:in function 'skynet.manager.dispatch_message'
rpc_call调用对端服的接口是需要在对应服务的模块定义函数入口,该traceback需要在game.lua定义enter_game这个函数
error :
./skynet/lualib/skynet.lua:534:
./skynet/lualib/skynet.lua:156:
./skynet/lualib/sproto.lua:54: type not found
stack traceback:
C: in function 'assert'
./skynet/lualib/sproto.lua:54: in upvalue 'querytype'
./skynet/lualib/sproto.lua:71: in function 'sproto.encode'
./lualib/sproto_helper.lua:127: in function 'sproto_helper.pack'
./logic/gate/socket_msg.lua:75: in function 'gate.socket_msg.data'
./service/wswatchdog.lua:21: in upvalue 'f'
./skynet/lualib/skynet.lua:106: in function <./skynet/lualib/skynet.lua:105>
stack traceback:
C: in function 'assert'
./skynet/lualib/skynet.lua:534: in function 'skynet.dispatch_message'
协议问题。协议在 *.sproto 文件中定义完毕,没有用 sproto_gen_linux.lua 生成 *.spb 文件(或者新模块没有在sproto_gen_linux.lua中进行定义)。
[2018-07-03 16:16:29.04 FATAL]@./lualib/requester.lua:43: rpc_call fatal, node[gate1] err:attempt to yield across a C-call boundary
skynet 的 rpc_call 的调用需要放在某些 require 之后...更换一下位置就好了
【Skynet】Traceback汇总的更多相关文章
- skynet的协程
之前对skynet的印象,主要是来自于我对golang的理解,对gevent开发的经验,以及云风的blog.对于底层的代码,并没有仔细去阅读过.最近在实现业务系统的时候,发现有同事在同一个函数里做了一 ...
- 收藏所用C#技术类面试、笔试题汇总
技术类面试.笔试题汇总 注:标明*的问题属于选择性掌握的内容,能掌握更好,没掌握也没关系. 下面的参考解答只是帮助大家理解,不用背,面试题.笔试题千变万化,不要梦想着把题覆盖了,下面的题是供大家查漏补 ...
- Python常见的错误汇总
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 错误: [错误分析]第二个参数必须为类,否则会报TypeError,所以正确的应 ...
- PHP之道 - php各方面的知识汇总
看到一个PHP的知识各方面的汇总,写的很有借鉴意义,搬过来了 转自: https://laravel-china.github.io/php-the-right-way/ 欢迎阅读 其他语言版本 参与 ...
- 『TensorFlow』专题汇总
TensorFlow:官方文档 TensorFlow:项目地址 本篇列出文章对于全零新手不太合适,可以尝试TensorFlow入门系列博客,搭配其他资料进行学习. Keras使用tf.Session训 ...
- skynet的火焰图
之前搞过一下systemtap(systemtap折腾笔记),可惜很快琐事缠身,没有继续搞下去.最近偷空搞了一下,有点意思. 章大大的思路,是用perl生成systemtap脚本,从/proc/$pi ...
- day 7 - 1 集合、copy及基础数据类型汇总
集合:{},可变的数据类型,他里面的元素必须是不可变的数据类型,无序,不重复.(不重要)集合的书写 set1 = set({1,2,3}) #set2 = {1,2,3,[2,3],{'name':' ...
- Python_环境部署及报错汇总(0)
一.安装Anaconda Anaconda是一个开源的包.环境管理器,可以用于在同一个机器上安装不同版本的软件包及其依赖,并能够在不同的环境之间切换. Anaconda包括Conda.Python以及 ...
- 死磕salt系列-salt 故障汇总
这里将salt使用过程中遇到的所有的故障进行一个汇总. grains 匹配后多了一个列表 salt-master中配置jinja模板来匹配自定义的grins. vim /etc/salt/minion ...
随机推荐
- Spring-IOC MethodInvokingFactoryBean 类源码解析
MethodInvokingFactoryBean MethodInvokingFactoryBean的作用是,通过定义类和它的方法,然后生成的bean是这个方法的返回值,即可以注入方法返回值. Me ...
- PhotoSwipe-一个好用的图片放大缩小插件
通过GitHub 下载PhotoSwipe https://github.com/dimsemenov/PhotoSwipe 相关的库 <link rel="stylesheet&qu ...
- openstack self-service 实例 连接外网数据表流程
我的openstack的架构是最简单的controller-compute架构,在provider基础上创建self-service self-service的实例上外网的流量走向 登陆实例,pin ...
- oracle 子查询 where having from ,from子查询提高效率
where 子查询主要功能是控制数据行的,返回结果一般都是单行单列.多行单列.单行多列数据 单行单列 SELECT * FROM emp WHERE hiredate=( SELECT MIN(hir ...
- koa2学习笔记02 - 给koa2添加系统日志 —— node日志管理模块log4js
前言 没有日志系统的后台应用是没有灵魂的, 平时工作中每次我们遇到接口报错的时候, 都会叫后台的童鞋看下怎么回事, 这时后台的童鞋都会不慌不忙的打开一个骚骚的黑窗口. 一串噼里啪啦的命令输进去, 哐哐 ...
- WebGl 多缓冲区传递颜色和坐标(矩形)
效果: 代码: <!DOCTYPE html> <html lang="en"> <head> <meta charset="U ...
- jQuery----左侧导航栏面板切换实现
页面运行结果: 点击曹操 点击刘备 点击孙权 原图 需求说明:原图如上所示,点击一方诸侯的时候 ...
- day 84 Vue学习四之过滤器、钩子函数、路由、全家桶等
本节目录 一 vue过滤器 二 生命周期的钩子函数 三 vue的全家桶 四 xxx 五 xxx 六 xxx 七 xxx 八 xxx 一 Vue的过滤器 1 moment.js 在这里我们先介绍一个 ...
- 克隆虚拟机及配置yum源的步骤及讲解(Hadoop基础)
1.克隆虚拟机 找一台需要克隆的虚拟机但虚拟机必须在关机下进行,(建议将前期Linux环境 配置完成) 在VMware中右键虚拟机找到克隆的选项. 点击克隆 可以克隆他的快照(提前做快照)或者是克 ...
- 关于postgresql触发器的总结(lab作业系列)
上题: In this tutorial you will create a stored procedure and triggers to check a complex constraint. ...