An all-k-nearest-neighbor (A k NN) query finds from a given object set O , k nearest neighbors for each object in a specified query set Q . This operation is common in many applications such as GIS, data mining, and image analysis. Although it has received much attention in the Euclidean space, there is little prior work on the metric space . In this paper, we study the problem of A k NN retrieval in metric spaces, termed metric AkNN (MA k NN) search , and propose efficient algorithms for supporting MA k NN queries with arbitrary k value. Our methods utilize dynamic disk-based metric indexes (e.g., M-tree), employ a series of pruning rules, take advantage of grouping, reuse, pre-processing, and progressive pruning techniques, require no detailed representations of objects, and can be applied as long as the distance metric satisfies the triangle inequality. In addition, we extend our approaches to tackle metric self-AkNN (MSA k NN) search , a natural variation of MA k NN queries, where the query set Q is identical to the object set O . Extensive experiments using both real and synthetic data sets demonstrate, compared with state-of-the-art euclidean A k NN, MA k NN, and MSA k NN algorithms, the performance of our proposed algorithms and the effectiveness of our presented techniques.