You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@guacamole.apache.org by "James Caple (JIRA)" <ji...@apache.org> on 2019/06/26 04:11:00 UTC
[jira] [Commented] (GUACAMOLE-827) BlobWrite FileReader Busy State
When Writing Data To VM
[ https://issues.apache.org/jira/browse/GUACAMOLE-827?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16872900#comment-16872900 ]
James Caple commented on GUACAMOLE-827:
---------------------------------------
I've created a fork of the guacamole-client code and will work on creating a simple client to demonstrate the problem and solution: [https://github.com/jcaple/guacamole-client]
> BlobWrite FileReader Busy State When Writing Data To VM
> -------------------------------------------------------
>
> Key: GUACAMOLE-827
> URL: https://issues.apache.org/jira/browse/GUACAMOLE-827
> Project: Guacamole
> Issue Type: Bug
> Components: guacamole-client
> Affects Versions: 1.0.0
> Environment: Google Chrome
> Reporter: James Caple
> Priority: Major
> Labels: newbie, patch
> Fix For: 1.1.0, 1.2.0
>
> Original Estimate: 48h
> Remaining Estimate: 48h
>
> When creating a custom HTML/JS Guacamole client to write files to a VM using the BlobWriter JS class, an error similar to the following is generated (error is from running the code in Google Chrome):
>
> zone.js:1495 Uncaught (in promise) DOMException: Failed to execute 'readAsArrayBuffer' on 'FileReader': The object is already busy reading Blobs.
> at _global.<computed>.<computed> [as readAsArrayBuffer] (https://redacted/polyfills.6e39da16eddfecb84434.js:3830:60)
> at readNextChunk (https://redacted/main.51a4f7c78afe09ae8d5e.js:168269:20)
> at push../src/app/components/core/desktop/js/BlobWriter.js.redacted.ArrayBufferWriter.sendMoreChunks [as onack] (https://redacted/main.51a4f7c78afe09ae8d5e.js:168295:17)
> at push../node_modules/guacamole-common-js/dist/guacamole-common.js.Guacamole.OutputStream.stream.onack (https://redacted/main.51a4f7c78afe09ae8d5e.js:168396:25)
> at ack (https://redacted/main.51a4f7c78afe09ae8d5e.js:114024:28)
> at push../node_modules/guacamole-common-js/dist/guacamole-common.js.Guacamole.HTTPTunnel.tunnel.oninstruction (https://redacted/main.51a4f7c78afe09ae8d5e.js:114685:13)
> at XMLHttpRequest.parseResponse [as __zone_symbol__ON_PROPERTYreadystatechange] (https://redacted/main.51a4f7c78afe09ae8d5e.js:123910:40)
> at XMLHttpRequest.wrapFn (https://redacted/polyfills.6e39da16eddfecb84434.js:3667:39)
> at ZoneDelegate.push../node_modules/zone.js/dist/zone.js.ZoneDelegate.invokeTask (https://redacted/polyfills.6e39da16eddfecb84434.js:2758:31)
> at Object.onInvokeTask ([https://redacted/main.51a4f7c78afe09ae8d5e.js:33312:33)]
>
> While a file would ultimately get written to the remote VM, it is never a complete file given the error above, which seems to be indicative of the asynchronous nature of the file transfer activity and the contentious use of the BlobWriter FileReader object.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)