diff --git a/lib/stream.js b/lib/stream.js
index <HASH>..<HASH> 100644
--- a/lib/stream.js
+++ b/lib/stream.js
@@ -22,6 +22,7 @@ util.inherits(ReadableStream, Readable);
 ReadableStream.prototype._setCursor = function(cursor) {
   if (cursor instanceof Cursor === false) {
     this.emit('error', new Error('Cannot create a stream on a single value.'));
+    this.push(null);
     return this;
   }
   this._cursor = cursor;
@@ -86,6 +87,7 @@ ReadableStream.prototype._fetchAndDecrement = function() {
       }
       else {
         self.emit('error', error);
+        self.push(null);
       }
     });
   }
@@ -138,6 +140,7 @@ ReadableStream.prototype._fetch = function() {
       }
       else {
         self.emit('error', error);
+        self.push(null);
       }
     });
   }
Close the stream if an error is emitted since we can't recover frm it