Lucene - Core
  1. Lucene - Core
  2. LUCENE-3198

Change default Directory impl on 64bit linux to MMap

    Details

    • Type: Improvement Improvement
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 3.3, 4.0-ALPHA
    • Component/s: core/store
    • Labels:
      None
    • Lucene Fields:
      New

      Description

      Consistently in my NRT testing on Fedora 13 Linux, 64 bit JVM (Oracle 1.6.0_21) I see MMapDir getting better search and merge performance when compared to NIOFSDir.

      I think we should fix the default.

        Activity

        Hide
        Robert Muir added a comment -

        bulk close for 3.3

        Show
        Robert Muir added a comment - bulk close for 3.3
        Hide
        Michael McCandless added a comment -

        OK I cutover just Linux, 64 bit, when unmap is available.

        We can open new issues for other platforms when we have some data that MMap is better...

        Show
        Michael McCandless added a comment - OK I cutover just Linux, 64 bit, when unmap is available. We can open new issues for other platforms when we have some data that MMap is better...
        Hide
        Uwe Schindler added a comment -

        Thats fine, I just wanted to talk about the whole issue what to enable when and bring together all possible platform possibilities. In general we should per default only enable SimpleFSDirectory on unknown platforms. Maybe NIO is heavily broken on OS XY (Android lol)?

        Show
        Uwe Schindler added a comment - Thats fine, I just wanted to talk about the whole issue what to enable when and bring together all possible platform possibilities. In general we should per default only enable SimpleFSDirectory on unknown platforms. Maybe NIO is heavily broken on OS XY (Android lol )?
        Hide
        Robert Muir added a comment -

        why jump the gun, we can just enable it for linux/64-bit.

        if others like freebsd or macos X are tested, then we add those to the list, but mmap is a little bit scary to just apply as a blanket default?

        in all cases it should be like the current logic: if (XYZ_OS && 64_bit && UNMAP_SUPPORTED)

        Show
        Robert Muir added a comment - why jump the gun, we can just enable it for linux/64-bit. if others like freebsd or macos X are tested, then we add those to the list, but mmap is a little bit scary to just apply as a blanket default? in all cases it should be like the current logic: if (XYZ_OS && 64_bit && UNMAP_SUPPORTED )
        Hide
        Uwe Schindler added a comment -

        That means we can now enable MMap for all 64 bit platforms? Solaris, windows, Linux - any others except FreeBSD? FreeBSD needs to be checked, but I assume its also faster there. We can check on lucene.zones maybe.

        Show
        Uwe Schindler added a comment - That means we can now enable MMap for all 64 bit platforms? Solaris, windows, Linux - any others except FreeBSD? FreeBSD needs to be checked, but I assume its also faster there. We can check on lucene.zones maybe.

          People

          • Assignee:
            Unassigned
            Reporter:
            Michael McCandless
          • Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development