You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@guacamole.apache.org by "Nick Couchman (JIRA)" <ji...@apache.org> on 2018/03/07 18:21:00 UTC

[jira] [Commented] (GUACAMOLE-521) PDF generated by Guacamole printer ends up corrupted if document is at least 18 pages long

    [ https://issues.apache.org/jira/browse/GUACAMOLE-521?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16389916#comment-16389916 ] 

Nick Couchman commented on GUACAMOLE-521:
-----------------------------------------

Pretty sure it has nothing to do with page count.  I printed the SSH RFC (https://tools.ietf.org/html/rfc4253), which is 33 pages, and it printed fine, twice in a row.  I copied the URL you mentioned (Java Index page) and printed it, and got all 82 pages just fine.

My initial suspicion, based on you're statement that you're running in a docker container, is that something is running out of RAM or disk space to process the file.  It doesn't look like it uses all that much, but it may use just enough to put it over the edge.  Other than that, if you're running a proxy in front of the Guacamole Client it's possible it's closing the connection.

I'm running Guacamole on CentOS7, so same ghostscript packages you're using, but I'm not running in Docker, and I'm running the latest version out of the git tree.  I don't think there have been any big changes for printing since 0.9.14 was released, though, so I suspect it's some other issue inside Docker and not something specific to Guacamole.

> PDF generated by Guacamole printer ends up corrupted if document is at least 18 pages long
> ------------------------------------------------------------------------------------------
>
>                 Key: GUACAMOLE-521
>                 URL: https://issues.apache.org/jira/browse/GUACAMOLE-521
>             Project: Guacamole
>          Issue Type: Bug
>          Components: guacd-docker
>    Affects Versions: 0.9.14
>         Environment: Running the official Docker containers from guacamole/guacamole:0.9.14 and guacamole/guacd:0.9.14
>            Reporter: Renan Melhado
>            Priority: Major
>         Attachments: resize-guacamole-after-corrupted-pdf.png
>
>
> When printing any document with at least 18 pages to the Guacamole printer, the resulting PDF ends up corrupted (Ghostscript crashes), and the RDP session is disconnected in the next window resize event.
>  # Open a document with at least 18 pages, i.e. [https://docs.oracle.com/javase/7/docs/api/index-files/index-1.html]
>  # Print the whole document with the Guacamole printer and try to open the resulting PDF file. It'll be corrupt.
>  # Go back to the Guacamole RDP tab on the browser and resize the window to trigger the reconnect. The RDP session will be disconnected.
>  
> {code:java}
> guacd[19]: INFO: Connected to RDPDR 1.12 as client 0x0048
> guacd[19]: INFO: Ignoring server capability set type=0x0001, length=44
> guacd[19]: INFO: Ignoring server capability set type=0x0002, length=8
> guacd[19]: INFO: Ignoring server capability set type=0x0003, length=8
> guacd[19]: INFO: Ignoring server capability set type=0x0004, length=8
> guacd[19]: INFO: Ignoring server capability set type=0x0005, length=8
> guacd[19]: INFO: Sending capabilities...
> guacd[19]: INFO: Capabilities sent.
> guacd[19]: INFO: Client ID confirmed
> guacd[19]: INFO: User logged on
> guacd[19]: INFO: Sending printer
> guacd[19]: INFO: Registered device 0 (Guacamole Printer)
> guacd[19]: INFO: Sending filesystem
> guacd[19]: INFO: Registered device 1 (Guacamole Filesystem)
> guacd[19]: INFO: All supported devices sent.
> guacd[19]: INFO: Device 0 (Guacamole Printer) connected successfully
> guacd[19]: INFO: Device 1 (Guacamole Filesystem) connected successfully
> guacd[19]: DEBUG: guac_rdp_fs_open: path="", access=0x80, file_attributes=0x0, create_disposition=0x1, create_options=0x1
> guacd[19]: DEBUG: guac_rdp_fs_open: Normalized path "\" to "\".
> guacd[19]: DEBUG: guac_rdp_fs_open: Translated path "\" to "/opt/testdir/".
> guacd[19]: DEBUG: guac_rdp_fs_open: native open: real_path="/opt/testdir/", flags=0x0
> guacd[19]: DEBUG: guac_rdp_fs_open: Opened "\" as file_id=1
> guacd[19]: DEBUG: guac_rdpdr_fs_process_create: [file_id=1] desired_access=0x80, file_attributes=0x0, create_disposition=0x1, create_options=0x1, path=""
> guacd[19]: DEBUG: guac_rdp_fs_open: path="\Download", access=0x80000000, file_attributes=0x0, create_disposition=0x3, create_options=0x1
> guacd[19]: DEBUG: guac_rdp_fs_open: Normalized path "\Download" to "\Download".
> guacd[19]: DEBUG: guac_rdp_fs_open: Translated path "\Download" to "/opt/testdir/Download".
> guacd[19]: DEBUG: guac_rdp_fs_open: native open: real_path="/opt/testdir/Download", flags=0x0
> guacd[19]: DEBUG: guac_rdp_fs_open: Opened "\Download" as file_id=0
> guacd[19]: DEBUG: guac_rdp_fs_close: Closed "\Download" (file_id=0)
> guacd[19]: DEBUG: guac_rdpdr_fs_process_query_basic_info: [file_id=1]
> guacd[19]: DEBUG: guac_rdpdr_fs_process_close: [file_id=1]
> guacd[19]: DEBUG: guac_rdp_fs_close: Closed "\" (file_id=1)
> guacd[19]: INFO: Print job created
> guacd[19]: INFO: Created PDF filter process PID=29
> guacd[19]: DEBUG: Reading output from filter process...
> guacd[29]: INFO: Running gs
> guacd[19]: DEBUG: Beginning print stream: 27-pages-file.pdf
> guacd[19]: DEBUG: Sending 4750 byte(s) of filtered output.
> guacd[19]: DEBUG: Sending 4081 byte(s) of filtered output.
> guacd[19]: DEBUG: Sending 4113 byte(s) of filtered output.
> guacd[19]: DEBUG: Sending 4082 byte(s) of filtered output.
> guacd[19]: DEBUG: Sending 4240 byte(s) of filtered output.
> guacd[19]: DEBUG: Sending 4146 byte(s) of filtered output.
> guacd[19]: DEBUG: Sending 4174 byte(s) of filtered output.
> guacd[19]: DEBUG: Sending 4164 byte(s) of filtered output.
> guacd[19]: DEBUG: Sending 4483 byte(s) of filtered output.
> guacd[19]: DEBUG: Sending 4263 byte(s) of filtered output.
> guacd[19]: DEBUG: Sending 4430 byte(s) of filtered output.
> guacd[19]: DEBUG: Sending 4499 byte(s) of filtered output.
> guacd[19]: DEBUG: Sending 4174 byte(s) of filtered output.
> guacd[19]: DEBUG: Sending 4418 byte(s) of filtered output.
> guacd[19]: DEBUG: Sending 4373 byte(s) of filtered output.
> guacd[19]: DEBUG: Sending 4317 byte(s) of filtered output.
> guacd[19]: DEBUG: Sending 38 byte(s) of filtered output.
> guacd[19]: DEBUG: Sending 3802 byte(s) of filtered output.
> guacd[19]: ERROR: Error reading from filter: Bad file descriptor
> guacd[19]: DEBUG: End of print stream.
> guacd[19]: DEBUG: Print job completed.
> GPL Ghostscript 9.07: Unrecoverable error, exit code 1
> GPL Ghostscript 9.07: ERROR -12 closing pdfwrite device. See gs/psi/ierrors.h for code explanation.
> guacd[19]: INFO: Unloading device 0 (Guacamole Printer)
> guacd[19]: INFO: Unloading device 1 (Guacamole Filesystem)
> guacd[19]: INFO: Internal RDP client disconnected{code}
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)