assistant: The ConfigMonitor left one zombie behind each time it checked for changes, now fixed.
This commit is contained in:
parent
b543842a7f
commit
a5dded0401
4 changed files with 19 additions and 5 deletions
|
@ -94,6 +94,12 @@ pipeNullSplit params repo = do
|
||||||
where
|
where
|
||||||
sep = "\0"
|
sep = "\0"
|
||||||
|
|
||||||
|
pipeNullSplitStrict :: [CommandParam] -> Repo -> IO [String]
|
||||||
|
pipeNullSplitStrict params repo = do
|
||||||
|
s <- pipeReadStrict params repo
|
||||||
|
return $ filter (not . null) $ split sep s
|
||||||
|
where
|
||||||
|
sep = "\0"
|
||||||
|
|
||||||
pipeNullSplitZombie :: [CommandParam] -> Repo -> IO [String]
|
pipeNullSplitZombie :: [CommandParam] -> Repo -> IO [String]
|
||||||
pipeNullSplitZombie params repo = leaveZombie <$> pipeNullSplit params repo
|
pipeNullSplitZombie params repo = leaveZombie <$> pipeNullSplit params repo
|
||||||
|
|
|
@ -29,15 +29,17 @@ data TreeItem = TreeItem
|
||||||
, file :: FilePath
|
, file :: FilePath
|
||||||
} deriving Show
|
} deriving Show
|
||||||
|
|
||||||
{- Lists the complete contents of a tree. -}
|
{- Lists the complete contents of a tree, with lazy output. -}
|
||||||
lsTree :: Ref -> Repo -> IO [TreeItem]
|
lsTree :: Ref -> Repo -> IO [TreeItem]
|
||||||
lsTree t repo = map parseLsTree <$>
|
lsTree t repo = map parseLsTree <$> pipeNullSplitZombie ps repo
|
||||||
pipeNullSplitZombie [Params "ls-tree --full-tree -z -r --", File $ show t] repo
|
where
|
||||||
|
ps = [Params "ls-tree --full-tree -z -r --", File $ show t]
|
||||||
|
|
||||||
{- Lists specified files in a tree. -}
|
{- Lists specified files in a tree. -}
|
||||||
lsTreeFiles :: Ref -> [FilePath] -> Repo -> IO [TreeItem]
|
lsTreeFiles :: Ref -> [FilePath] -> Repo -> IO [TreeItem]
|
||||||
lsTreeFiles t fs repo = map parseLsTree <$>
|
lsTreeFiles t fs repo = map parseLsTree <$> pipeNullSplitStrict ps repo
|
||||||
pipeNullSplitZombie ([Params "ls-tree -z --", File $ show t] ++ map File fs) repo
|
where
|
||||||
|
ps = [Params "ls-tree -z --", File $ show t] ++ map File fs
|
||||||
|
|
||||||
{- Parses a line of ls-tree output.
|
{- Parses a line of ls-tree output.
|
||||||
- (The --long format is not currently supported.) -}
|
- (The --long format is not currently supported.) -}
|
||||||
|
|
2
debian/changelog
vendored
2
debian/changelog
vendored
|
@ -24,6 +24,8 @@ git-annex (4.20130315) UNRELEASED; urgency=low
|
||||||
* webapp: Improved alerts displayed when syncing with remotes, and
|
* webapp: Improved alerts displayed when syncing with remotes, and
|
||||||
when syncing with a remote fails.
|
when syncing with a remote fails.
|
||||||
* webapp: Force wrap long filenames in transfer display.
|
* webapp: Force wrap long filenames in transfer display.
|
||||||
|
* assistant: The ConfigMonitor left one zombie behind each time
|
||||||
|
it checked for changes, now fixed.
|
||||||
|
|
||||||
-- Joey Hess <joeyh@debian.org> Fri, 15 Mar 2013 00:10:07 -0400
|
-- Joey Hess <joeyh@debian.org> Fri, 15 Mar 2013 00:10:07 -0400
|
||||||
|
|
||||||
|
|
|
@ -24,3 +24,7 @@ Please provide any additional information below.
|
||||||
I'm really not sure what to look for next. Happy to take suggestions.
|
I'm really not sure what to look for next. Happy to take suggestions.
|
||||||
|
|
||||||
[!tag /design/assistant]]
|
[!tag /design/assistant]]
|
||||||
|
|
||||||
|
> [[done]], I found the zombie leak; the ConfigMonitor was
|
||||||
|
> leaving one zombie every time it checked a push/pull.
|
||||||
|
> Not a fast leak, but over time they would add up. --[[Joey]]
|
||||||
|
|
Loading…
Add table
Reference in a new issue