我有一个我正在使用的遗留mysql数据库,包含5个表,其中2个是连接/联结表。我在控制器中有一个方法,它查询其中一个表并通过连接表填充一些字段。这适用于少于1632项的查询,但对于填充字段数组以上的任何内容,不包含任何数据。没有错误,字段只是空白,例如"user": []
。将SQL查询记录到MySQL容器中会显示对于项目> 1632处理群体的第二个查询(inner_joins等)没有进入。
有没有其他人经历过这个?我已经在帆0.12.0&上进行了测试。 0.11.4和sails-mysql 0.11.4& 0.11.1位于节点v4.2.6的顶部。我在docker容器中运行api和数据库,并测试了为docker主机配置更多RAM无济于事。
答案 0 :(得分:0)
我的特殊问题是MySQL thread_stack
的大小是小的。
我的调试路径是通过向sails-mysql中的节点mysql模块中的console.log
函数添加Connection.prototype.query
来查看进入节点mysql模块的水线查询。然后,我接着查询水线正在制作并直接在数据库中运行它,产生错误ERROR 1436 (HY000): Thread stack overrun: 246168 bytes used of a 262144 byte stack, and 16000 bytes needed. Use 'mysqld --thread_stack=#' to specify a bigger stack.
非常感谢SailsJS的工作人员帮助我解决这个问题。具体的讨论可以在https://github.com/balderdashy/sails/issues/3561
找到