drop all MongoDB MapReduce temp collections (tmp.mrs... collections)

Programming 2012.07.11 16:50

몽고디비에서 MapReduce 작업을 하다가 실패하는 경우 쓰래기 컬렉션들이 생성된채로 남아 있게 된다.


tmp.mrs.logs_1320387613_149
tmp.mrs.logs_1320387655_156
tmp.mrs.logs_1320390722_606
tmp.mrs.logs_1320395235_1164
tmp.mrs.logs_1320396089_1277
tmp.mrs.logs_1320405546_2308
tmp.mrs.logs_1320405750_2327
tmp.mrs.logs_1320405958_2352
... (you get the idea)


이런형태로..


이는 설정에서 쓰래기 컬렉션이 남지 않게 설정하면 되는것으로 알곤 있지만..


일단 생성된 녀석들을 한번에 drop 시키는 방법은..


db.system.namespaces.find({name: /tmp.mr/}).forEach(function(z) { try{ db.getMongo().getCollection( z.name ).drop(); } catch(err) {} });


이렇게 한줄로 샥~


몽고디비 역시 더러워...-_-;; 별루야 정말;


저작자 표시 비영리 변경 금지
신고
크리에이티브 커먼즈 라이선스
Creative Commons License


티스토리 툴바