@@ -38,6 +38,8 @@ import Data.Pool
3838import Data.Time
3939import Generics.SOP (K(..))
4040
41+import qualified Control.Monad.Fail as Fail
42+
4143import Squeal.PostgreSQL.PQ
4244import Squeal.PostgreSQL.Schema
4345
@@ -105,6 +107,10 @@ instance Monad m => Monad (PoolPQ schemas m) where
105107 x' <- x pool
106108 runPoolPQ (f x') pool
107109
110+-- | `MonadFail` instance for `PoolPQ`.
111+instance Monad m => Fail.MonadFail (PoolPQ schemas m) where
112+ fail = Fail.fail
113+
108114-- | `MonadTrans` instance for `PoolPQ`.
109115instance MonadTrans (PoolPQ schemas) where
110116 lift m = PoolPQ $ \ _pool -> m