diff options
| author | Matthias Radestock <matthias@rabbitmq.com> | 2014-01-30 15:58:19 +0000 |
|---|---|---|
| committer | Matthias Radestock <matthias@rabbitmq.com> | 2014-01-30 15:58:19 +0000 |
| commit | 63f5b98dcd2bb558983f5f90482eefca24f11d72 (patch) | |
| tree | 43e99ac8ac98d6f190957757e08167d1dfd829e1 /src | |
| parent | 82aa2ffcef9906a91fe33a0b469275edd9b0a43a (diff) | |
| download | rabbitmq-server-git-63f5b98dcd2bb558983f5f90482eefca24f11d72.tar.gz | |
unbreak durable queue dir cleanup
all_queue_directory_names returns just names, not paths
Also, gain some efficiency by performing just one invocation of
rabbit_file:recursive_delete/1, with all dirs.
And some cosmetics.
Diffstat (limited to 'src')
| -rw-r--r-- | src/rabbit_queue_index.erl | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/src/rabbit_queue_index.erl b/src/rabbit_queue_index.erl index b5a316f0cf..919b7376a7 100644 --- a/src/rabbit_queue_index.erl +++ b/src/rabbit_queue_index.erl @@ -358,9 +358,10 @@ start(DurableQueueNames) -> %% Any queue directory we've not been asked to recover is considered garbage QueuesDir = queues_dir(), - [rabbit_file:recursive_delete([QueueDir]) || - QueueDir <- all_queue_directory_names(QueuesDir), - not sets:is_element(filename:basename(QueueDir), DurableDirectories)], + rabbit_file:recursive_delete( + [filename:join(QueuesDir, DirName) || + DirName <- all_queue_directory_names(QueuesDir), + not sets:is_element(DirName, DurableDirectories)]), rabbit_recovery_terms:clear(), @@ -373,9 +374,8 @@ stop() -> rabbit_recovery_terms:stop(). all_queue_directory_names(Dir) -> case rabbit_file:list_dir(Dir) of - {ok, Entries} -> [ Entry || Entry <- Entries, - rabbit_file:is_dir( - filename:join(Dir, Entry)) ]; + {ok, Entries} -> [E || E <- Entries, + rabbit_file:is_dir(filename:join(Dir, E))]; {error, enoent} -> [] end. |
