function testDeferrable_ExplicitTx_Update_Error() {
  var parentRow = sampleRows[0];
  var childRow = sampleRows[1];

  var tx1 = db.createTransaction();
  var tx2 = null;
  return tx1.exec([
    db.insert().into(parentTable).values([parentRow]),
    db.insert().into(childTable).values([childRow])
  ]).then(function() {
    tx2 = db.createTransaction();
    return tx2.begin([parentTable, childTable]);
  }).then(function() {
    // Updating child to point to a non existing parentId.
    var q = db.update(childTable).set(childTable['parentId'], 'otherParentId');
    return tx2.attach(q);
  }).then(function() {
    return lf.testing.util.assertPromiseReject(203, tx2.commit());
  });
}
Tests that a DEFERRABLE constraint violation during updating, results in the
appropriate error when an explicit transaction is used.
@return {!IThenable}