【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 ...
随机推荐
- Centos7.3 坑爹网络配置
1.目的: 我想在Vmvare配置成NAT模式的上网,因为这个模式宿主机可以访问虚拟机,虚拟机也可以访问宿主机,但仅主机模式只能是宿主机能访问虚拟机,但虚拟机不能访问宿主机.所以我为了能在虚拟机里面上 ...
- Bottle + WebUploader 修改Bottle框架从而大文件上传实现方案
Bottle 是个轻量级的Web框架,小巧又强大,真不愧是个轻量级的框架.可扩展性非常好,可以扩展很多功能,但是有些功能就不得不自己动手修改了. Bottle:http://www.bottlepy. ...
- 2018年1月12日--微信小程序----出错报告(40kb的原因)---并解决方法
一. 报错的原因是因为,图片的文件太大了,已经超过了40kb...不能超过40kb. 在这里查看图片文件的大小:
- 随手练——Uva-11584 划分成回文串(区间DP)
思路:dp[i]代表到第i位的最小值,枚举它的前几位,求出最小值. 转移方程:dp[ i ] = min(dp[ i ], dp[ j - 1 ] + 1 ) ; 本来觉得,代码加深部分可以提前bre ...
- 【node.js】Stream(流)
Stream 有四种流类型: Readable - 可读操作. Writable - 可写操作. Duplex - 可读可写操作. Transform - 操作被写入数据,然后读出结果. 所有的 St ...
- javascript:apply方法 以及和call的区别 (转载)
javascript:apply方法 1. apply和call的区别在哪里 2. 什么情况下用apply,什么情况下用call 3. apply的其他巧 ...
- 关于vmware workstation10常见问题
简单的说明:win7和win10的解决办法都是这个,都可以用这个解决. 这是一个共性的问题. 出现这个问题的原因是: a.要么是系统更新没有及时正确的关闭虚拟机导致的; b.没有及时将虚拟机手动关闭再 ...
- python3 mock
mock的官网学习备忘录:官网地址https://docs.python.org/3/library/unittest.mock.html#quick-guide 1,安装 python3 unitt ...
- 51 Nod 1107 斜率小于0的连线数量 (转换为归并求逆序数或者直接树状数组,超级详细题解!!!)
1107 斜率小于0的连线数量 基准时间限制:1 秒 空间限制:131072 KB 分值: 40 难度:4级算法题 二维平面上N个点之间共有C(n,2)条连线.求这C(n,2)条线中斜率小于0的线 ...
- 使用Navicat for Oracle工具连接oracle
使用Navicat for Oracle工具连接oracle的 这是一款oracle的客户端的图形化管理和开发工具,对于许多的数据库都有支持.之前用过 Navicat for sqlserver,感觉 ...