title: TypeError: Converting circular structure to JSON when changed to NodeJS Async Await
body: <p>I recently learned about NodeJS Async/Await. Changed my codes to make it cleaner and easier to read.</p>
  
  <ul>
  <li>Upgraded to NodeJS 8.2.1. </li>
  <li>MongoDB 2.2.30</li>
  <li>Express 4.1.4</li>
  </ul>
  
  <p>Code Looks like below: </p>
  
  <pre><code>    var express = require('express');
      var router = express.Router();
      var MongoClient = require('mongodb').MongoClient;
      var assert = require('assert');
      var url = process.env.mongo;
  
  
      /* GET home page. */
      router.get('/', async function(req, res, next) {
        try{
          let db = await MongoClient.connect(url);
          let col = await db.collection('product');
          let documents = await col.find();
          return res.send(documents)
        }catch(err){
          console.log(err)
        }
  
      });
  
  
  module.exports = router;
  </code></pre>
  
  <p>Having problem with this error,</p>
  
  <pre><code>TypeError: Converting circular structure to JSON
  at JSON.stringify (&lt;anonymous&gt;)
  at stringify (/home/edmondtm/test-async/node_modules/express/lib/response.js:1064:12)
  at ServerResponse.json (/home/edmondtm/test-async/node_modules/express/lib/response.js:243:14)
  at ServerResponse.send (/home/edmondtm/test-async/node_modules/express/lib/response.js:152:21)
  at /home/edmondtm/test-async/routes/index.js:15:16
  at &lt;anonymous&gt;
  at process._tickCallback (internal/process/next_tick.js:188:7)
  </code></pre>
  
  <p>Note: No problem if change:
  let documents = await col.find(); to
  let documents = await col.findOne();</p>
  
  <p>Hope someone can help me.</p>