diff options
author | Joey Hess <joey@kitenet.net> | 2012-01-29 22:55:06 -0400 |
---|---|---|
committer | Joey Hess <joey@kitenet.net> | 2012-01-29 22:55:06 -0400 |
commit | a964012fc36d22e4554dd12e3594579fb3190501 (patch) | |
tree | 31c3a5ea4fb78088b4981eb4185737353ec1ff3e /Common.hs | |
parent | 0609e102396083afa6380f8b67a69fa849235d16 (diff) |
switch to the strict state monad
I had not realized what a memory leak the lazy state monad could be,
although I have not seen much evidence of actual leaking in git-annex.
However, if running git-annex on a great many files, this could matter.
The additional Utility.State.changeState adds even more strictness,
avoiding a problem I saw in github-backup where repeatedly modifying
state built up a huge pile of thunks.
Diffstat (limited to 'Common.hs')
-rw-r--r-- | Common.hs | 2 |
1 files changed, 1 insertions, 1 deletions
@@ -3,7 +3,7 @@ module Common (module X) where import Control.Monad as X hiding (join) import Control.Monad.IfElse as X import Control.Applicative as X -import Control.Monad.State as X (liftIO) +import Control.Monad.State.Strict as X (liftIO) import Control.Exception.Extensible as X (IOException) import Data.Maybe as X |