Uploaded image for project: 'Mahout'
  1. Mahout
  2. MAHOUT-788

ClusterDumper is never flushing output stream

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Trivial
    • Resolution: Fixed
    • 0.6
    • 0.6
    • classic
    • None

    Description

      ClusterDumper utility never calls flush on the OutputStreamWriter. As of issue https://issues.apache.org/jira/browse/MAHOUT-679, the output stream is never being closed when it defaults to System.out – while that's a good thing, it would be nice to flush the stream before exiting the program. As is, when I run cluster dumper with the -b (substring) option set to something like 50, the stream never gets big enough to overflow the default buffer on my machine, so I see no output. Even when it does get big enough to overflow the buffer, I still miss the last cluster's summary. When the output is written to a file, the close() method usually flushes the buffer by default, but it shouldn't hurt to call the flush method either way – therefore I'd suggest adding in an unconditional call to writer.flush(); in the finally block just before conditionally closing the writer. (line 199 in the org.apache.mahout.utils.clustering.ClusterDumper.run(String[] args) method)

      } finally {
      writer.flush();
      if (shouldClose)

      { Closeables.closeQuietly(writer); }

      }

      Attachments

        Activity

          People

            srowen Sean R. Owen
            dscheffy Jeff Hansen
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Time Tracking

                Estimated:
                Original Estimate - 0.5h
                0.5h
                Remaining:
                Remaining Estimate - 0.5h
                0.5h
                Logged:
                Time Spent - Not Specified
                Not Specified