# System.Data.Common

``` diff
 namespace System.Data.Common {
     public abstract class DbTransaction : MarshalByRefObject, IAsyncDisposable, IDbTransaction, IDisposable {
+        public virtual bool SupportsSavepoints { get; }
+        public virtual void Release(string savepointName);
+        public virtual Task ReleaseAsync(string savepointName, CancellationToken cancellationToken = default(CancellationToken));
+        public virtual void Rollback(string savepointName);
+        public virtual Task RollbackAsync(string savepointName, CancellationToken cancellationToken = default(CancellationToken));
+        public virtual void Save(string savepointName);
+        public virtual Task SaveAsync(string savepointName, CancellationToken cancellationToken = default(CancellationToken));
     }
 }
```

