48 NamespaceExists: Namespace (collection) already exists(名前空間 (コレクション) が既に存在する)
MongoDB意味
作成しようとしているコレクション (名前空間) は既に存在する。MongoDB は存在することを報告しており、同じ名前とオプションで新しいコレクションを作成する必要はない。
原因
既存のコレクションを createCollection で (異なるオプションで) 再作成しようとした、スキーマ/セットアップスクリプトが複数回実行された、または既存の名前を capped コレクションや特別なオプションで再定義しようとした。
対処方法
通常は無視して問題ない。コレクションが既に存在することを意味する。セットアップスクリプトを冪等にする: 作成前に存在を確認する (db.getCollectionNames().includes('name'))。オプションを変更するにはコレクションを削除して再作成する必要がある (先にデータをバックアップする): db.my_collection.drop() の後に createCollection。
同じデータベースの他の項目
- 31 RoleNotFoundRole not found(ロールが見つからない)
- 263 OperationNotSupportedInTransactionOperation not supported inside a multi-document transaction(マルチドキュメントトランザクション内でサポートされない操作)
- 20 IllegalOperationIllegal operation(不正な操作)
- 11601 InterruptedOperation was interrupted(操作が中断された)
- 85 IndexOptionsConflictIndex already exists with different options / different name(異なるオプション/名前のインデックスが既に存在する)
- 67 CannotCreateIndexCannot create index(インデックスを作成できない)
- 27 IndexNotFoundIndex not found(インデックスが見つからない)