Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-6221838

No VM messages (by default) should ever be sent down stdout, stdout belongs to the app

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Won't Fix
    • Icon: P5 P5
    • None
    • 1.3.1, 1.4.0, 6
    • hotspot
    • None
    • generic, x86, sparc
    • generic, linux, solaris_8, windows_2000

      I was looking at bug 6208566, where the j2se build is failing on FreeBSD.

      Apparently when the BOOTDIR java is run to create a java/util/CurrencyData.java
      source file, hotspot is sending a warning message to stdout:
          Java HotSpot(TM) Client VM warning: Can't detect initial thread stack location
      which puts it into the output file java/util/CurrencyData.java, which then
      fails to compile.

      Should the hotspot warning() function really be sending it's message to stdout?
      Seems like it should be stderr. Should I file a hotspot bug on this, or
      is there a good reason that the warning() utility in hotspot sends it's message
      to stdout?

      ----

      The more I think about it, this comes down to who owns the stdout and stderr
      of a Java application. It seems like the Java application owns it, not the
      VM. Most of the time, 99.99% at least, this is never a problem, but not being
      able to trust that the Java application owns at least stdout, makes the use
      of stdout in a Java application unstable and unreliable.

      The VM is normally pretty invisible, like libc.so on Solaris. If libc.so
      on solaris would occasionally sens a warning message down stdout on any
      arbitrary application, I don't think people would like that much.

      ###@###.### 2005-1-26 16:58:14 GMT

            coleenp Coleen Phillimore
            ohair Kelly Ohair (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved:
              Imported:
              Indexed: