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

[macosx] Cocoa AWT: Not running on AppKit thread 0 when expected

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Duplicate
    • Icon: P4 P4
    • None
    • 8u73
    • client-libs
    • 2d
    • x86
    • os_x

      FULL PRODUCT VERSION :
      java version "1.8.0_65"
      Java(TM) SE Runtime Environment (build 1.8.0_65-b17)
      Java HotSpot(TM) 64-Bit Server VM (build 25.65-b01, mixed mode)

      ADDITIONAL OS VERSION INFORMATION :
      Darwin macmini.local 15.3.0 Darwin Kernel Version 15.3.0: Thu Dec 10 18:40:58 PST 2015; root:xnu-3248.30.4~1/RELEASE_X86_64 x86_64

      EXTRA RELEVANT SYSTEM CONFIGURATION :
      OS X 10.11

      A DESCRIPTION OF THE PROBLEM :
      The following bug occurs using PDFBOX 2.0.0-RC3 with Java 8u65 on Apple. The crash gives explicit instructions to file a bug report here.

      > "Please file a bug report at http://java.net/jira/browse/MACOSX_PORT"

      Steps to reproduce:
      # Download pdfbox-app-2.0.0-RC3.jar
      #* [mirror:] http://mirrors.koehn.com/apache/pdfbox/2.0.0-RC3/pdfbox-app-2.0.0-RC3.jar

      # Download a pdf
      #* [mirror:] http://mirrors.koehn.com/apache/pdfbox/2.0.0-RC3/pdfbox-app-2.0.0-RC3.jar
      # Run PDFBOX with PDF
      #* {{$ java -jar ~/Downloads/pdfbox-app-2.0.0-RC3.jar PrintPDF ~/Downloads/pdf_sample.pdf}}
      # When prompted, select a printer (I use Lisanet PDFWriter to save on paper, but the monospaced.ppd{{monospaced}} must be specified during setup).
      # Experience crash

      I've left a severity of high due to the vast number of PDFBOX users that will be subject to this as PDFBOX nears a stable 2.0 release.

      Related:
      https://issues.apache.org/jira/browse/PDFBOX-2682
      http://stackoverflow.com/questions/28471579/pdfbox-on-mac-critical-error-when-silent-printing
      https://bugs.openjdk.java.net/browse/JDK-8042693
      https://bugs.openjdk.java.net/browse/JDK-8038142

      ================================================

      {{
      2016-03-08 00:37:47.287 java[59134:4788836] Cocoa AWT: Not running on AppKit thread 0 when expected. (
      0 libosxapp.dylib 0x000000012da80702 +[ThreadUtilities getJNIEnv] + 38
      1 libawt_lwawt.dylib 0x000000012e0ce005 syncFromJavaPixels + 1842
      2 libawt_lwawt.dylib 0x000000012e0ce49b LockImage + 75
      3 libawt_lwawt.dylib 0x000000012e0e0c08 Java_sun_java2d_CRenderer_doImage + 170
      4 ??? 0x0000000110fe6954 0x0 + 4580075860
      5 ??? 0x0000000110fd8c4d 0x0 + 4580019277
      )
      2016-03-08 00:37:47.288 java[59134:4788836] Please file a bug report at http://java.net/jira/browse/MACOSX_PORT with this message and a reproducible test case.
      2016-03-08 00:37:47.337 java[59134:4788836] java.lang.StackOverflowError
      at sun.java2d.CRenderer.doImage(Native Method)
      at sun.java2d.OSXSurfaceData.blitImage(OSXSurfaceData.java:1027)
      at sun.java2d.CRenderer.blitImage(CRenderer.java:461)
      at sun.java2d.CRenderer.scaleImage(CRenderer.java:455)
      at sun.java2d.CRenderer.transformImage(CRenderer.java:508)
      at sun.java2d.CRenderer.transformImage(CRenderer.java:582)
      at sun.java2d.SunGraphics2D.drawImage(SunGraphics2D.java:3461)
      at sun.print.ProxyGraphics2D.drawImage(ProxyGraphics2D.java:1315)
      at org.apache.pdfbox.rendering.PageDrawer.drawBufferedImage(PageDrawer.java:815)
      at org.apache.pdfbox.rendering.PageDrawer.drawImage(PageDrawer.java:779)
      at org.apache.pdfbox.contentstream.operator.graphics.DrawObject.process(DrawObject.java:62)
      at org.apache.pdfbox.contentstream.PDFStreamEngine.processOperator(PDFStreamEngine.java:814)
      at org.apache.pdfbox.contentstream.PDFStreamEngine.processStreamOperators(PDFStreamEngine.java:471)
      at org.apache.pdfbox.contentstream.PDFStreamEngine.processStream(PDFStreamEngine.java:445)
      at org.apache.pdfbox.contentstream.PDFStreamEngine.processPage(PDFStreamEngine.java:149)
      at org.apache.pdfbox.rendering.PageDrawer.drawPage(PageDrawer.java:187)
      at org.apache.pdfbox.rendering.PDFRenderer.renderPage(PDFRenderer.java:208)
      at org.apache.pdfbox.rendering.PDFRenderer.renderPageToGraphics(PDFRenderer.java:169)
      at org.apache.pdfbox.printing.PDFPrintable.print(PDFPrintable.java:184)
      at sun.lwawt.macosx.CPrinterJob$4.run(CPrinterJob.java:657)
      at sun.lwawt.macosx.CPrinterJob.printToPathGraphics(CPrinterJob.java:671)
      at sun.lwawt.macosx.CPrinterJob.printLoop(Native Method)
      at sun.lwawt.macosx.CPrinterJob.print(CPrinterJob.java:307)
      at qz.printer.action.PrintPixel.printCopies(Unknown Source)
      at qz.printer.action.PrintPDF.print(Unknown Source)
      at qz.ws.PrintSocketClient.processPrintRequest(Unknown Source)
      at qz.ws.PrintSocketClient.processMessage(Unknown Source)
      at qz.ws.PrintSocketClient.onMessage(Unknown Source)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      at java.lang.reflect.Method.invoke(Method.java:497)
      at org.eclipse.jetty.websocket.common.events.annotated.CallableMethod.call(CallableMethod.java:70)
      at org.eclipse.jetty.websocket.common.events.annotated.OptionalSessionCallableMethod.call(OptionalSessionCallableMethod.java:68)
      at org.eclipse.jetty.websocket.common.events.JettyAnnotatedEventDriver$2.run(JettyAnnotatedEventDriver.java:210)
      at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635)
      at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555)
      at java.lang.Thread.run(Thread.java:745)
      2016-03-08 00:37:47.472 java[59134:4788836] NSAlert is being used from a background thread, which is not safe. This is probably going to crash sometimes. Break on void _NSAlertWarnUnsafeBackgroundThreadUsage() to debug. This will be logged only once. This may break in the future.
      }}


      REPRODUCIBILITY :
      This bug can be reproduced always.

      CUSTOMER SUBMITTED WORKAROUND :
      The work-around to this specific bug is to use a different rendering method with PDFBOX as can be observed in the downstream bug report, however there is no known workaround for the underlying JDK bug.



            serb Sergey Bylokhov
            webbuggrp Webbug Group
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: