External-Memory Sorting in Java : the First Release

In my previous post, you were invited to help with a reference implementation of external sorting in Java. Several people tested and improved the code. I like the result.

  • I posted the code on Google code. All contributors are  owners of the project. The source code is under subversion.
  • I have added a link to it from the wikipedia page.

What is left to do?

  • The code remains untested. Please run your benchmarks! Find bugs!
  • Please contribute unit tests.
  • Can you write a tutorial on how to use the code?
  • Can you simplify the code further while making it faster and more robust?

Caveat: My intent was for the code to be in the public domain—nobody should own reference implementations—but Google code would not allow it. I selected the lesser GPL license instead, for now.

Reference: There is a fast external sorting implementation in Java by the Yahoo! people. (Thanks to Thierry Faure for pointing it out.) I have not looked at it.

Published by

Daniel Lemire

A computer science professor at the University of Quebec (TELUQ).

4 thoughts on “External-Memory Sorting in Java : the First Release”

  1. Nowadays people expect to be able to build a project and run tests with a build tool. 🙂 I could add this. I just wanted to make sure that there not 3 builds in place.

  2. @Vellino I didn’t know what to do license-wise. The code itself says it is in the public domain.

    Hopefully, it won’t matter. Nobody will hire lawyers to resolve conflicts around this piece of code. I really, really hope so.

Leave a Reply to Daniel Lemire Cancel reply

Your email address will not be published. The comment form expects plain text. If you need to format your text, you can use HTML elements such strong, blockquote, cite, code and em. For formatting code as HTML automatically, I recommend tohtml.com.

You may subscribe to this blog by email.