tonysun83 opened a new pull request #606: Use Ejson Body Instead of Compressed Body for External size URL: https://github.com/apache/couchdb/pull/606 ## Overview <!-- Please give a short brief for the pull request, what problem it solves or how it makes things better. --> In two places where we calculate the ExternalSize of the document body, we use the Summary which is a compressed version of the doc body. We change this to use the actual ejson body. In copy_docs we don't have access to the #doc record so we can't access the meta where we store the ejson body. Unfortunately, this means we have to decompress the document body after reading it from disk. ## Testing recommendations Performance tests were conducted to compare pre-fix External Size values and post-fix External Size Values. Here are the results: ``` Version Compression DB Dize DB External Size Pre-Fix snappy 70 MB 46249702 Pre-Fix snappy 700 MB 462495533 Pre-Fix snappy 2.1 GB 1387486406 Post-Fix snappy 70 MB 83950133 Post-Fix snappy 700 MB 839500133 Post-Fix snappy 2.1 GB 2518500133 Pre-Fix deflate_6 70 MB 46249702 Pre-Fix deflate_6 700 MB 413395945 Pre-Fix deflate_6 2.1 GB 994598087 Post-Fix deflate_6 70 MB 83950133 Post-Fix deflate_6 700 MB 430495496 Post-Fix deflate_6 2.1 GB 1291486342 ``` ## GitHub issue number COUCHDB-3429 ## Related Pull Requests <!-- If your changes affects multiple components in different repositories please put links to those pull requests here. --> ## Checklist - [X] Code is written and works correctly; - [X] Changes are covered by tests; - [ ] Documentation reflects the changes; ---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: [email protected]
With regards, Apache Git Services
