diff --git a/lib/node.js b/lib/node.js
index <HASH>..<HASH> 100644
--- a/lib/node.js
+++ b/lib/node.js
@@ -28,6 +28,7 @@ var node = module.exports = {
       }
       var txn = this._safeBatch();
       var node = txn.save(obj);
+      if (obj[this.options.id] != null) node = txn.read(obj);
       txn.label(node, label);
       return this._safeBatchCommit(txn, function(err, result) {
         if (err) callback(err);
support updating nodes with a label. closes #<I>