[SERVER-35641] $FACET throws "BufBuilder attempted to grow()" while Created: 18/Jun/18  Updated: 18/Jun/18  Resolved: 18/Jun/18

Status: Closed
Project: Core Server
Component/s: None
Affects Version/s: 3.4.15
Fix Version/s: None

Type: Bug Priority: Major - P3
Reporter: Janos Brezniczky Assignee: Unassigned
Resolution: Duplicate Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
duplicates SERVER-24804 Enable larger result sets within $fac... Backlog
Operating System: ALL
Steps To Reproduce:

(The original code is NDA. I expect this bug fairly easy to reproduce.)

Participants:

 Description   

I get a "BufBuilder attempted to grow() to 67108866 bytes, past the 64MB limit." error when trying to move a pipeline to be the only argument of a $FACET operator.

The whole pipeline works fine without the $FACET, there is a lot of data to return, but the $OUT operator is used.

However, once within the $FACET, the above is triggered, despite $OUT still being specified outside the $FACET.

$OUT cannot be used within the $FACET arguments, thus I either don't seem to have the necessary control over the problem, or the $OUT operator's settings are ignored within the embedded pipeline, and the intermediate results, which are returned from the constituent pipelines, are undergoing a "to document" conversion, as is the case with other mentions of this error message.

 

assert: command failed: {
 "ok" : 0,
 "errmsg" : "BufBuilder attempted to grow() to 67108866 bytes, past the 64MB limit.",
 "code" : 13548,
 "codeName" : "Location13548"
 } : aggregate failed
 _getErrorWithCode@src/mongo/shell/utils.js:25:13
 doassert@src/mongo/shell/assert.js:16:14
 assert.commandWorked@src/mongo/shell/assert.js:370:5
 DBCollection.prototype.aggregate@src/mongo/shell/collection.js:1319:5
 @(shell):1:1
2018-06-18T00:26:00.570+0100 E QUERY [thread1] Error: command failed: {
 "ok" : 0,
 "errmsg" : "BufBuilder attempted to grow() to 67108866 bytes, past the 64MB limit.",
 "code" : 13548,
 "codeName" : "Location13548"
 } : aggregate failed :
 _getErrorWithCode@src/mongo/shell/utils.js:25:13
 doassert@src/mongo/shell/assert.js:16:14
 assert.commandWorked@src/mongo/shell/assert.js:370:5
 DBCollection.prototype.aggregate@src/mongo/shell/collection.js:1319:5
 @(shell):1:1

 



 Comments   
Comment by Ramon Fernandez Marina [ 18/Jun/18 ]

brezniczky@gmail.com, unfortunately the $facet stage doesn't support result sets larger than 16MB at the moment – please watch and vote for SERVER-24804, which is open to lift this limitation.

Thanks,
Ramón.

Generated at Thu Feb 08 04:40:29 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.