git.iko.soy/typeable/postgresql-simple
on master help sign in
Export defaults
commite1d1b6f6d47365e5890d1660c3798e36ca618ffb authorLeon P Smith <leon@melding-monads.com> dateMon 30 Jan 2012, 12:07 (15 years ago) parent476112c
1 file changed+18−9
src/Database/PostgreSQL/Simple.hs+18−9
src/Database/PostgreSQL/Simple.hs+18−9
@@ -88,6 +88,9 @@ module Database.PostgreSQL.Simple
8888 , TransactionMode(..)
8989 , IsolationLevel(..)
9090 , ReadWriteMode(..)
91+ , defaultTransactionMode
92+ , defaultIsolationLevel
93+ , defaultReadWriteMode
9194 , withTransactionMode
9295-- , Base.autocommit
9396 , begin
@@ -338,7 +341,7 @@ data FoldOptions
338341 transactionMode :: !TransactionMode
339342 }
340343
341−defaultFoldOptions = FoldOptions {
344+defaultFoldOptions = FoldOptions {
342345 fetchQuantity = Automatic,
343346 transactionMode = TransactionMode ReadCommitted ReadOnly
344347 }
@@ -493,14 +496,20 @@ data ReadWriteMode
493496 | ReadOnly
494497 deriving (Show, Eq, Ord, Enum, Bounded)
495498
496−data TransactionMode = TransactionMode {
497− isolationLevel :: !IsolationLevel,
499+data TransactionMode = TransactionMode {
500+ isolationLevel :: !IsolationLevel,
498501 readWriteMode :: !ReadWriteMode
499− } deriving (Show, Eq, Ord)
502+ } deriving (Show, Eq)
500503
501504defaultTransactionMode :: TransactionMode
502505defaultTransactionMode = TransactionMode ReadCommitted ReadWrite
503506
507+defaultIsolationLevel :: IsolationLevel
508+defaultIsolationLevel = ReadCommitted
509+
510+defaultReadWriteMode :: ReadWriteMode
511+defaultReadWriteMode = ReadWrite
512+
504513-- | Execute an action inside a SQL transaction.
505514--
506515-- This function initiates a transaction with a \"@begin
@@ -538,14 +547,14 @@ begin = beginMode defaultTransactionMode
538547beginMode :: TransactionMode -> Connection -> IO ()
539548beginMode mode conn = do
540549 execute_ conn $! case mode of
541− TransactionMode ReadCommitted ReadWrite ->
550+ TransactionMode ReadCommitted ReadWrite ->
542551 "BEGIN"
543− TransactionMode ReadCommitted ReadOnly ->
552+ TransactionMode ReadCommitted ReadOnly ->
544553 "BEGIN READ ONLY"
545− TransactionMode RepeatableRead ReadWrite ->
554+ TransactionMode RepeatableRead ReadWrite ->
546555 "BEGIN ISOLATION LEVEL REPEATABLE READ"
547− TransactionMode RepeatableRead ReadOnly ->
548− "BEGIN ISOLATION LEVEL REPEATABLE READ READ ONLY"
556+ TransactionMode RepeatableRead ReadOnly ->
557+ "BEGIN ISOLATION LEVEL REPEATABLE READ READ ONLY"
549558 TransactionMode Serializable ReadWrite ->
550559 "BEGIN ISOLATION LEVEL SERIALIZABLE"
551560 TransactionMode Serializable ReadOnly ->