【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 ...
随机推荐
- Java 实现对文件系统的监控
在开发中经常会用到监控文件或是目录的状态,如果你还在手写轮巡扫描文件的话,那你久out了. 1. Commons io为我们提供了一套可靠.高性能的一套文件系统监控API 1.1. 需要的jar包如下 ...
- httpd:RSA certificate configured for SERVER does NOT include an ID which matches the server name
这个是因为ssl认证丢失了密钥的问题,Apache的默认配置文件加载了mod_ssl模块,而且指定密钥对儿的位置,就是我测试salt-api时创建密钥对儿的位置.而且还有一个错误就是我密钥对儿指定的h ...
- istio 配置解读
Istio在服务网络中统一提供了许多关键功能: 流量管理:控制服务之间的流量和API调用的流向,使得调用更可靠,并使网络在恶劣情况下更加健壮. 可观察性:了解服务之间的依赖关系,以及它们之间流量的本质 ...
- 3、JVM--垃圾回收期和内存分配策略(2)
3.5.垃圾收集器 如果说收集算法是内存回收的方法论,那么垃圾收集器就是内存回收的具体实现.Java虚拟机规范中对垃圾收集器应该如何实现并没有任何规定,因此不同的厂商.不同版本的虚拟机所提供的垃圾收集 ...
- virtualbox+vagrant学习-2(command cli)-18-vagrant ssh-config命令
SSH Config 格式: vagrant ssh-config [options] [name|id] 这将从SSH直接将SSH配置文件的有效配置输出到正在运行的vagrant 计算机(而不是使用 ...
- select、poll 和epoll区别
阻塞 I/O(blocking IO) 当用户进程调用了recvfrom这个系统调用,kernel就开始了IO的第一个阶段:准备数据(对于网络IO来说,很多时候数据在一开始还没有到达.比如,还没有收到 ...
- vue-cli代理开发
如何设置接口代理? 一.找到config文件下的index.js 二.找到dev里面的proxyTable他的值就是一个{},这里为了方便配置配置文件单独写成一个文件 dev: { env: requ ...
- $python爬虫系列(2)—— requests和BeautifulSoup库的基本用法
本文主要介绍python爬虫的两大利器:requests和BeautifulSoup库的基本用法. 1. 安装requests和BeautifulSoup库 可以通过3种方式安装: easy_inst ...
- vue watch关于对象内的属性监听
vue可以通过watch监听data内数据的变化.通常写法是: data: { a: 100 }, watch: { a(newval, oldVal) { // 做点什么... console.lo ...
- javascript中个别方法注意事项
1.键值对new Array()的length值只统计下标是数字的键,可以使用for(var key in arr)的方式进行遍历所有元素.例如 <script type="text/ ...