1
색인이 expireAfterSeconds
으로 설정되어 있습니다. 사용 방법 확인 db.my_collection.getIndexes()
의 출력 만이 표시 될 때 CLI를 사용하여이 :db.my_collection.getIndex() 출력에서 TTL을 볼 수없는 이유는 무엇입니까?
{
"v": 1,
"key": {
"last_used_at": 1
},
"name": "last_used_at_1",
"ns": "cms.user_sessions"
}
그냥 expireAfterSeconds
설정없이 일반 인덱스처럼 보인다.
expireAfterSeconds
으로 색인이 생성되었는지 어떻게 확인할 수 있습니까?
다음은 색인을 생성하는 Ruby 코드입니다. 인덱스를 삭제하고이 코드를 여러 번 사용하여 다시 만들려고했습니다.
@user_sessions.indexes.create_many([
{key: {token: 1}, unique: true},
{key: {last_used_at: 1}, expireAfterSeconds: ttl}
])
버전 정보 : 색인에 문제가
$ mongod --version db version v2.6.5 2016-07-13T16:11:45.844+0200 git version: e99d4fcb4279c0279796f237aa92fe3b64560bf6 $ gem list | grep mongo mongo (2.2.5)
에서 이미 것을 시도한 것을 얻을 것이다 설정
. 나는 여러 줄의 코드를 주석에 붙여 넣는 기분이 들지 않아서 내 질문을 업데이트했다. – Hubro
mongod 버전으로 업그레이드해야합니다 : 3.2 ... – profesor79
[문서에 따르면 MongoDB 버전은 expireAfterSeconds를 지원해야합니다.] (https://docs.mongodb.com/v2.6/reference/method/db.collection. ensureIndex/# db.collection.ensureIndex)이므로 문제가되지 않아야합니다. – Hubro