MongoDB 大量临时文件

问题描述 投票:0回答:1

我有一个 MongoDB 副本集。第一个每秒创建大量名为 extsort-sort-executor 的临时文件,在 10 分钟内生成超过 80Gb 的临时文件... 如果我将

allowDiskUseByDefault

设置为 false,我会收到以下错误: 查找命令期间计划执行器错误 "stats": { "works": 88450, "restoreState": 88, "saveState": 88, "advanced": 0, "spilledDataStorageSize": 0, "nReturned": 0, "inputStage": { "works": 88450, "restoreState": 88, "stage": "COLLSCAN", "saveState": 88, "advanced": 88450, "nReturned": 88450, "needYield": 0, "docsExamined": 88450, "needTime": 0, "isEOF": 0, "direction": "forward" }, "failed": true, "usedDisk": false, "type": "simple", "isEOF": 0, "memLimit": 104857600, "stage": "SORT", "sortPattern": { "-$natural": 1 }, "needYield": 0, "needTime": 88449, "totalDataSizeSorted": 0, "spills": 0 }, "cmd": { "filter": {}, "lsid": { "id": { "$uuid": "2617b402-0c61-4035-bc39-d616e412fbb3" } }, "$readPreference": { "mode": "primary" }, "$db": "local", "$clusterTime": { "clusterTime": { "$timestamp": { "t": 1704123123, "i": 1 } }, "signature": { "keyId": 0, "hash": { "$binary": { "base64": "AAAAAAAAAAAAAAAAAAAAAAAAAAA=", "subType": "0" } } } }, "find": "oplog.rs", "sort": { "-$natural": 1 } }, "error": { "code": 292, "codeName": "QueryExceededMemoryLimitNoDiskUseAllowed", "errmsg": "Sort exceeded memory limit of 104857600 bytes, but did not opt in to external sorting." } }

有人能给我指出正确的方向吗?我在哪里可以找到问题的根源?

mongodb sorting
1个回答
0
投票

rs.status() { set: 'hz0', date: 2024-01-01T20:30:05.973Z, myState: 1, term: Long('12'), syncSourceHost: '', syncSourceId: -1, heartbeatIntervalMillis: Long('2000'), majorityVoteCount: 3, writeMajorityCount: 3, votingMembersCount: 4, writableVotingMembersCount: 4, optimes: { lastCommittedOpTime: { ts: Timestamp({ t: 1704141003, i: 1 }), t: Long('12') }, lastCommittedWallTime: 2024-01-01T20:30:03.989Z, readConcernMajorityOpTime: { ts: Timestamp({ t: 1704141003, i: 1 }), t: Long('12') }, appliedOpTime: { ts: Timestamp({ t: 1704141003, i: 1 }), t: Long('12') }, durableOpTime: { ts: Timestamp({ t: 1704141003, i: 1 }), t: Long('12') }, lastAppliedWallTime: 2024-01-01T20:30:03.989Z, lastDurableWallTime: 2024-01-01T20:30:03.989Z }, lastStableRecoveryTimestamp: Timestamp({ t: 1704140953, i: 1 }), electionCandidateMetrics: { lastElectionReason: 'priorityTakeover', lastElectionDate: 2024-01-01T12:39:12.915Z, electionTerm: Long('12'), lastCommittedOpTimeAtElection: { ts: Timestamp({ t: 1704112747, i: 1 }), t: Long('11') }, lastSeenOpTimeAtElection: { ts: Timestamp({ t: 1704112747, i: 1 }), t: Long('11') }, numVotesNeeded: 3, priorityAtElection: 15, electionTimeoutMillis: Long('10000'), priorPrimaryMemberId: 1, numCatchUpOps: Long('0'), newTermStartDate: 2024-01-01T12:39:12.926Z, wMajorityWriteAvailabilityDate: 2024-01-01T12:39:12.944Z }, members: [ { _id: 0, name: 'thor-live.d1:27017', health: 1, state: 1, stateStr: 'PRIMARY', uptime: 28268, optime: [Object], optimeDate: 2024-01-01T20:30:03.000Z, lastAppliedWallTime: 2024-01-01T20:30:03.989Z, lastDurableWallTime: 2024-01-01T20:30:03.989Z, syncSourceHost: '', syncSourceId: -1, infoMessage: '', electionTime: Timestamp({ t: 1704112752, i: 1 }), electionDate: 2024-01-01T12:39:12.000Z, configVersion: 15, configTerm: 12, self: true, lastHeartbeatMessage: '' }, { _id: 1, name: 'thor-live.d2:27017', health: 1, state: 2, stateStr: 'SECONDARY', uptime: 28263, optime: [Object], optimeDurable: [Object], optimeDate: 2024-01-01T20:30:03.000Z, optimeDurableDate: 2024-01-01T20:30:03.000Z, lastAppliedWallTime: 2024-01-01T20:30:03.989Z, lastDurableWallTime: 2024-01-01T20:30:03.989Z, lastHeartbeat: 2024-01-01T20:30:04.769Z, lastHeartbeatRecv: 2024-01-01T20:30:04.202Z, pingMs: Long('0'), lastHeartbeatMessage: '', syncSourceHost: 'thor-live.d1:27017', syncSourceId: 0, infoMessage: '', configVersion: 15, configTerm: 12 }, { _id: 2, name: 'thor-live.d3:27017', health: 1, state: 2, stateStr: 'SECONDARY', uptime: 28263, optime: [Object], optimeDurable: [Object], optimeDate: 2024-01-01T20:30:03.000Z, optimeDurableDate: 2024-01-01T20:30:03.000Z, lastAppliedWallTime: 2024-01-01T20:30:03.989Z, lastDurableWallTime: 2024-01-01T20:30:03.989Z, lastHeartbeat: 2024-01-01T20:30:04.769Z, lastHeartbeatRecv: 2024-01-01T20:30:04.762Z, pingMs: Long('0'), lastHeartbeatMessage: '', syncSourceHost: 'thor-live.d2:27017', syncSourceId: 1, infoMessage: '', configVersion: 15, configTerm: 12 }, { _id: 3, name: 'thor-live.d4:27017', health: 1, state: 2, stateStr: 'SECONDARY', uptime: 28263, optime: [Object], optimeDurable: [Object], optimeDate: 2024-01-01T20:30:03.000Z, optimeDurableDate: 2024-01-01T20:30:03.000Z, lastAppliedWallTime: 2024-01-01T20:30:03.989Z, lastDurableWallTime: 2024-01-01T20:30:03.989Z, lastHeartbeat: 2024-01-01T20:30:04.769Z, lastHeartbeatRecv: 2024-01-01T20:30:04.760Z, pingMs: Long('0'), lastHeartbeatMessage: '', syncSourceHost: 'thor-live.d2:27017', syncSourceId: 1, infoMessage: '', configVersion: 15, configTerm: 12 } ], ok: 1, '$clusterTime': { clusterTime: Timestamp({ t: 1704141003, i: 1 }), signature: { hash: Binary.createFromBase64('AAAAAAAAAAAAAAAAAAAAAAAAAAA=', 0), keyId: Long('0') } }, operationTime: Timestamp({ t: 1704141003, i: 1 }) }

© www.soinside.com 2019 - 2024. All rights reserved.