- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我最近在笔记本电脑上将 Sails 从 0.12 更新到 1.0.2,并开始了一个新项目。我正在尝试使用 sails-mongo 连接到 MongoDB 数据库,但出现以下错误:
my-app_1 | error: A hook (`orm`) failed to load!
my-app_1 | error: Could not tear down the ORM hook. Error details: Error: Consistency violation: Attempting to tear down a datastore (`default`) which is not currently registered with this adapter. This is usually due to a race condition in userland code (e.g. attempting to tear down the same ORM instance more than once), or it could be due to a bug in this adapter. (If you get stumped, reach out at http://sailsjs.com/support.)
my-app_1 | at Object.teardown (/usr/src/app/node_modules/sails-mongo/lib/index.js:390:19)
my-app_1 | at /usr/src/app/node_modules/waterline/lib/waterline.js:758:27
my-app_1 | at /usr/src/app/node_modules/async/dist/async.js:3047:20
my-app_1 | at eachOfArrayLike (/usr/src/app/node_modules/async/dist/async.js:1002:13)
my-app_1 | at eachOf (/usr/src/app/node_modules/async/dist/async.js:1052:9)
my-app_1 | at Object.eachLimit (/usr/src/app/node_modules/async/dist/async.js:3111:7)
my-app_1 | at Object.teardown (/usr/src/app/node_modules/waterline/lib/waterline.js:742:11)
my-app_1 | at Hook.teardown (/usr/src/app/node_modules/sails-hook-orm/index.js:246:30)
my-app_1 | at Sails.wrapper (/usr/src/app/node_modules/@sailshq/lodash/lib/index.js:3275:19)
my-app_1 | at Object.onceWrapper (events.js:313:30)
my-app_1 | at emitNone (events.js:106:13)
my-app_1 | at Sails.emit (events.js:208:7)
my-app_1 | at Sails.emitter.emit (/usr/src/app/node_modules/sails/lib/app/private/after.js:56:26)
my-app_1 | at /usr/src/app/node_modules/sails/lib/app/lower.js:67:11
my-app_1 | at beforeShutdown (/usr/src/app/node_modules/sails/lib/app/lower.js:45:12)
my-app_1 | at Sails.lower (/usr/src/app/node_modules/sails/lib/app/lower.js:49:3)
my-app_1 | error: Failed to lift app: Error: Consistency violation: Unexpected error creating db connection manager:
my-app_1 | ```
my-app_1 | ImplementationError: Internal error occurred while running `createManager`. Got non-Error: { MongoError: failed to connect to server [mongodb:27017] on first connect [MongoError: getaddrinfo ENOTFOUND mongodb mongodb:27017]
my-app_1 | at Pool.<anonymous> (/usr/src/app/node_modules/mongodb-core/lib/topologies/server.js:327:35)
my-app_1 | at emitOne (events.js:116:13)
my-app_1 | at Pool.emit (events.js:211:7)
my-app_1 | at Connection.<anonymous> (/usr/src/app/node_modules/mongodb-core/lib/connection/pool.js:274:12)
my-app_1 | at Object.onceWrapper (events.js:317:30)
my-app_1 | at emitTwo (events.js:126:13)
my-app_1 | at Connection.emit (events.js:214:7)
my-app_1 | at Socket.<anonymous> (/usr/src/app/node_modules/mongodb-core/lib/connection/connection.js:177:49)
my-app_1 | at Object.onceWrapper (events.js:315:30)
my-app_1 | at emitOne (events.js:116:13)
my-app_1 | at Socket.emit (events.js:211:7)
my-app_1 | at emitErrorNT (internal/streams/destroy.js:64:8)
my-app_1 | at _combinedTickCallback (internal/process/next_tick.js:138:11)
my-app_1 | at process._tickCallback (internal/process/next_tick.js:180:9)
my-app_1 | name: 'MongoError',
my-app_1 | message: 'failed to connect to server [mongodb:27017] on first connect [MongoError: getaddrinfo ENOTFOUND mongodb mongodb:27017]' }
my-app_1 |
my-app_1 | If you are the maintainer of "createManager", then you can change its implementation to solve the problem (Most of the time, the solution is just to throw an actual Error instance instead. Alternatively, if the goal was to indicate a particular exception, you could throw any of the special, reserved "exit signals"-- e.g. the code name of any of your defined exits besides "error" or "success"). Otherwise, please file a bug report with the maintainer, or fork your own copy and fix that.
my-app_1 | [?] See https://sailsjs.com/support for help.
my-app_1 | at Object.registerDatastore (/usr/src/app/node_modules/sails-mongo/lib/index.js:263:18)
my-app_1 | at /usr/src/app/node_modules/waterline/lib/waterline.js:714:27
my-app_1 | at /usr/src/app/node_modules/async/dist/async.js:3047:20
my-app_1 | at eachOfArrayLike (/usr/src/app/node_modules/async/dist/async.js:1002:13)
my-app_1 | at eachOf (/usr/src/app/node_modules/async/dist/async.js:1052:9)
my-app_1 | at Object.eachLimit (/usr/src/app/node_modules/async/dist/async.js:3111:7)
my-app_1 | at Object.initialize (/usr/src/app/node_modules/waterline/lib/waterline.js:650:11)
my-app_1 | at buildOntologyAndRunAutoMigrations (/usr/src/app/node_modules/sails-hook-orm/lib/build-ontology-and-run-auto-migrations.js:55:7)
my-app_1 | at async.auto._buildOntology (/usr/src/app/node_modules/sails-hook-orm/lib/initialize.js:456:7)
my-app_1 | at runTask (/usr/src/app/node_modules/async/dist/async.js:1660:17)
my-app_1 | at /usr/src/app/node_modules/async/dist/async.js:1602:17
my-app_1 | at processQueue (/usr/src/app/node_modules/async/dist/async.js:1612:17)
my-app_1 | at taskComplete (/usr/src/app/node_modules/async/dist/async.js:1630:13)
my-app_1 | at /usr/src/app/node_modules/async/dist/async.js:1653:21
my-app_1 | at /usr/src/app/node_modules/async/dist/async.js:339:31
my-app_1 | at /usr/src/app/node_modules/async/dist/async.js:847:20
my-app_1 | ```
my-app_1 | at Object.error (/usr/src/app/node_modules/sails-mongo/lib/index.js:268:21)
my-app_1 | at /usr/src/app/node_modules/machine/lib/private/help-build-machine.js:1514:39
my-app_1 | at proceedToFinalAfterExecLC (/usr/src/app/node_modules/parley/lib/private/Deferred.js:1149:14)
my-app_1 | at proceedToInterceptsAndChecks (/usr/src/app/node_modules/parley/lib/private/Deferred.js:909:12)
my-app_1 | at proceedToAfterExecSpinlocks (/usr/src/app/node_modules/parley/lib/private/Deferred.js:841:10)
my-app_1 | at /usr/src/app/node_modules/parley/lib/private/Deferred.js:303:7
my-app_1 | at /usr/src/app/node_modules/machine/lib/private/help-build-machine.js:952:35
my-app_1 | at Function.handlerCbs.error (/usr/src/app/node_modules/machine/lib/private/help-build-machine.js:742:26)
my-app_1 | at connectCb (/usr/src/app/node_modules/sails-mongo/lib/private/machines/create-manager.js:130:22)
my-app_1 | at connectCallback (/usr/src/app/node_modules/mongodb/lib/mongo_client.js:428:5)
my-app_1 | at /usr/src/app/node_modules/mongodb/lib/mongo_client.js:335:11
my-app_1 | at _combinedTickCallback (internal/process/next_tick.js:131:7)
my-app_1 | at process._tickCallback (internal/process/next_tick.js:180:9)
这是我的/config/datastores.js 文件的样子:
module.exports.datastores = {
default: {
adapter: 'sails-mongo',
url: 'mongodb://mongoDb:27017/my-app',
ssl: false
},
};
我还根据 the Sails.js documentation 修改了/config/models.js :
attributes: {
createdAt: { type: 'number', autoCreatedAt: true, },
updatedAt: { type: 'number', autoUpdatedAt: true, },
id: { type: 'string', columnName: '_id' },
},
这是我的配置:
值得注意的是,我在一个 Docker 容器中运行应用程序(我使用了一个类似的容器来安装过去版本的 Sails,没有任何问题)。我将如何解决这个问题?我似乎无法在其他地方找到任何解决方案。谢谢。
更新:
这是我的 docker-compose.yml 文件的样子:
version: '3.4'
services:
server:
image: my-app:latest
build: .
environment:
NODE_ENV: development
RUNNING_LOCALLY: isRunningLocally
ports:
- 1340:1337 # HOST_PORT is 1339 to avoid conflicts with other Sails.js apps running on host
volumes:
- ../:/usr/src/app
entrypoint: nodemon
mongoDb:
image: mongo:3.6
ports:
- 27018:27017 # HOST_PORT is 27018 to avoid conflicts with other MongoDB databases running on host
volumes:
- ../../web-service/volumes/mongodb:/data/db # Since we want to use the same database as the web service
最佳答案
尝试在 docker-compose.yml
文件中将 MongoDB 服务的名称从 mongoDb
更改为 mongodb
。
由于此错误消息:MongoError: failed to connect to server [mongodb:27017] on first connect [MongoError: getaddrinfo ENOTFOUND mongodb mongodb:27017]
,在我看来 Sails.js 1.0.2 在 ./config/datastores.js
- 'mongodb://mongoDb:27017/my 中的连接 URL 上运行
.toLowerCase()
-app'
您的 server
容器可以访问 mongoDb
容器中的 MongoDB。通过运行 toLowerCase()
,Sails.js 1.0.2 尝试连接到 mongodb
容器中的 MongoDB(mongodb
容器不存在,这就是它不起作用的原因)。
此外,不要忘记将您的 URL 连接从 mongodb://mongoDb:27017/my-app
更改为 mongodb://mongodb:27017/my-app
.
关于javascript - Sails.js "Could not tear down ORM hook"错误与 sails-mongo,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51148710/
当我读一些C程序的时候,我发现了一些评论,比如“撕裂事件”“包含撕裂信息数据的结构”“撕裂分析”。这让我这个母语不是英语的人感到困惑理解“撕裂”一词的含义。那么怎么理解呢? `typedef stru
我正在使用 selenium 2.39 和 Testng火狐浏览器版本26 下面是代码 package Examples; import java.util.concurrent.Time
我在Ubuntu机器上安装了Kubernetes集群。它由三台计算机组成:一个主机/节点和两个节点。 当我关闭集群时,它永远不会停止打印“等待拆除 pods ”: root@kubernetes01:
我需要为我的 Django 应用程序编写一些测试。为此,我使用的是这样加载的装置: from django.test import TestCase class Permissi
我最近将一个非常简单的 rails 应用程序从 rspec 切换到 minitest。我也使用 capybara 和 factory_girl。 我有 3 个单独的集成测试文件,所有这些文件都涉及使用
我遇到一个问题,即使用TextureLoader 加载的纹理导致纹理中出现一些撕裂类型错误。 这是我用于该 Material 的代码: var textureName = "Melamine-
如何使用 LaTeX 为海报制作垂直电话号码“撕下”? 我已经到处搜索了这方面的例子,但还没有找到任何东西。我在想我需要使用 textpos 包之类的东西或进行一些表格处理,但我还没有成功。 仅供引用
我做了一个设计,在带有背景图像的父 block 上使用带有透明背景的静态自动滚动 block 。在 IE9 中,滚动会导致父背景图像“撕裂”,而不是像其他 A 级浏览器那样保持固定。这个问题听起来是不
6.0 版 React-Redux提及: In version 6, all components read the same current store state value from conte
我真的不知道如何使用 OUnit(版本 2)来设置和拆卸支架。有人想提供一个完整的例子吗? 这里是OUnit2.bracket函数文档: val bracket : (test_ctxt -> 'a)
我最近在笔记本电脑上将 Sails 从 0.12 更新到 1.0.2,并开始了一个新项目。我正在尝试使用 sails-mongo 连接到 MongoDB 数据库,但出现以下错误: my-app_1
我无法在 Allure 报告的步骤下添加失败的 cucumber 步骤的屏幕截图。 我使用 allure-cucumber4-jvm:2.12.1、cucumber-java:4.3.1 并尝试将测试
我的代码最紧迫的问题是,当我将 X 和 Y 尺寸更改为例如 X = 501、Y = 500 时,mandelbrot 完全撕裂(参见图片)。 X 轴和 Y 轴也是倒置的。 我的目标是实现与此 http
我有一个 API 在对象格式的对象内的深层嵌套对象中返回数据。我试图从这些深度嵌套的对象中获取数据并遍历它们并将它们显示在 React 项目中。 这让我非常头疼,我找不到任何相当简单的方法。 假设我有
我在 lifting a sails 1 应用程序时遇到以下错误: Consistency violation: Attempting to tear down a datastore (defaul
我目前正在尝试向我的应用程序添加一个扩展启动画面,一旦它完成下载 RSS 提要并在该提要中找到有效的高分辨率图像以制作缩略图(在第一次启动应用程序,这可能需要 5 秒以上,给用户留下空白屏幕)。 不幸
我是一名优秀的程序员,十分优秀!