次のシナリオがあります。
- 電話
server.exists()
- ユーザー頂点を選択
- 電話
server.exists()
結果は3段目で失敗。
詳細と縮小されたユースケース:
const OrientDB = require('orientjs')
const server = OrientDB({
"host": "localhost",
"port": 2424,
"username": "root",
"password": "password",
"pool": {
"max": 10
}
})
const db = server.use('myDatabase')
server.exists(db.name, db.type).then(exists => {
console.log("Database exists first time: " + exists)
db.select().from('user').column('id', 'name').all().then(() => {
server.exists(db.name, db.type).then(exists => {
console.log("Database exists second time: " + exists)
}).catch(err => {
console.log("Error on second exists:", err)
})
})
})
server.exists()
2 回目の呼び出しで次のエラーが発生します。
{
[OrientDB.RequestError: Server user not authenticated.]
name: 'OrientDB.RequestError',
message: 'Server user not authenticated.',
data: {},
previous: [],
id: 1,
type: 'com.orientechnologies.orient.core.exception.OSecurityAccessException',
hasMore: 0
}
これは実際のコードではありません。縮小されていますが、エラーが強調表示されています。実際のコードは、API 内の 3 つのファイルに分散されています。
Mac と Ubuntu の両方で、OrientDB 2.1.3 と 2.1.5 でこれをテストしました。
なぜこれが起こるのかについての考えは大歓迎です。
ありがとう。