Search Support

Avoid support scams. We will never ask you to call or text a phone number or share personal information. Please report suspicious activity using the “Report Abuse” option.

Learn More

Firefox NS_ERROR_FAILURE when rendering large number of nodes using flowchart library

  • Akukho zimpendulo
  • 1 inale nkinga
  • 6 views
more options

I am testing react applications which draws large number of nodes on Canvas through a flowchart library called cytoscape cytoscape. As the number of node gets big, the rendering slows down. This is expected due to performance limitation of the browser. However, there is an unexpected error: the browser breaks with "NS_ERROR_FAILURE" whenever we zoom-in too close to the graph that is drawn.

As the website breaks with this error, the graph disappears and the user experience is compromised. I want to know if there is a way to prevent this error from happening. Slow rendering is not a critical issue but this breakage is a critical problem for us. Let me know if you know the workaround or you need more context about this issue.

Here is the error message. I attached what the graph looks like. Exception { name: "NS_ERROR_FAILURE", message: "", result: 2147500037, filename: "http://localhost:3000/static/js/bundle.js", lineNumber: 329063, columnNumber: 0, data: null, stack: "./node_modules/cytoscape/dist/cytoscape.cjs.js/LTCp.makeLayer@http://localhost:3000/static/js/bundle.js:329063:7\nmakeLayer@http://localhost:3000/static/js/bundle.js:329160:22\n./node_modules/cytoscape/dist/cytoscape.cjs.js/LTCp.getLayers@http://localhost:3000/static/js/bundle.js:329202:15\n./node_modules/cytoscape/dist/cytoscape.cjs.js/CRp$1.drawLayeredElements@http://localhost:3000/static/js/bundle.js:329881:35\n./node_modules/cytoscape/dist/cytoscape.cjs.js/CRp$6.render@http://localhost:3000/static/js/bundle.js:331719:9\nrenderFn@http://localhost:3000/static/js/bundle.js:327973:9\nFrameRequestCallback*./node_modules/cytoscape/dist/cytoscape.cjs.js/raf</<@http://localhost:3000/static/js/bundle.js:301722:18\nrequestAnimationFrame@http://localhost:3000/static/js/bundle.js:301749:10\nrenderFn@http://localhost:3000/static/js/bundle.js:328000:26\nFrameRequestCallback*./node_modules/cytoscape/dist/cytoscape.cjs.js/raf</<@http://localhost:3000/static/js/bundle.js:301722:18\nrequestAnimationFrame@http://localhost:3000/static/js/bundle.js:301749:10\nrenderFn@http://localhost:3000/static/js/bundle.js:328000:26\nFrameRequestCallback*./node_modules/cytoscape/dist/cytoscape.cjs.js/raf</<@http://localhost:3000/static/js/bundle.js:301722:18\nrequestAnimationFrame@http://localhost:3000/static/js/bundle.js:301749:10\nrenderFn@http://localhost:3000/static/js/bundle.js:328000:26\nFrameRequestCallback*./node_modules/cytoscape/dist/cytoscape.cjs.js/raf</<@http://localhost:3000/static/js/bundle.js:301722:18\nrequestAnimationFrame@http://localhost:3000/static/js/bundle.js:301749:10\nrenderFn@http://localhost:3000/static/js/bundle.js:328000:26\nFrameRequestCallback*./node_modules/cytoscape/dist/cytoscape.cjs.js/raf</<@http://localhost:3000/static/js/bundle.js:301722:18\nrequestAnimationFrame@http://localhost:3000/static/js/bundle.js:301749:10\nrenderFn@http://localhost:3000/static/js/bundle.js:328000:26\nFrameRequestCallback*./node_modules/cytoscape/dist/cytoscape.cjs.js/raf</<@http://localhost:3000/static/js/bundle.js:301722:18\nrequestAnimationFrame@http://localhost:3000/static/js/bundle.js:301749:10\nrenderFn@http://localhost:3000/static/js/bundle.js:328000:26\nFrameRequestCallback*./node_modules/cytoscape/dist/cytoscape.cjs.js/raf</<@http://localhost:3000/static/js/bundle.js:301722:18\nrequestAnimationFrame@http://localhost:3000/static/js/bundle.js:301749:10\nrenderFn@http://localhost:3000/static/js/bundle.js:328000:26\nFrameRequestCallback*./node_modules/cytoscape/dist/cytoscape.cjs.js/raf</<@http://localhost:3000/static/js/bundle.js:301722:18\nrequestAnimationFrame@http://localhost:3000/static/js/bundle.js:301749:10\nrenderFn@http://localhost:3000/static/js/bundle.js:328000:26\nFrameRequestCallback*./node_modules/cytoscape/dist/cytoscape.cjs.js/raf</<@http://localhost:3000/static/js/bundle.js:301722:18\nrequestAnimationFrame@http://localhost:3000/static/js/bundle.js:301749:10\nrenderFn@http://localhost:3000/static/js/bundle.js:328000:26\nFrameRequestCallback*./node_modules/cytoscape/dist/cytoscape.cjs.js/raf</<@http://localhost:3000/static/js/bundle.js:301722:18\nrequestAnimationFrame@http://localhost:3000/static/js/bundle.js:301749:10\nrenderFn@http://localhost:3000/static/js/bundle.js:328000:26\nFrameRequestCallback*./node_modules/cytoscape/dist/cytoscape.cjs.js/raf</<@http://localhost:3000/static/js/bundle.js:301722:18\nrequestAnimationFrame@http://localhost:3000/static/js/bundle.js:301749:10\nrenderFn@http://localhost:3000/static/js/bundle.js:328000:26\nFrameRequestCallback*./node_modules/cytoscape/dist/cytoscape.cjs.js/raf</<@http://localhost:3000/static/js/bundle.js:301722:18\nrequestAnimationFrame@http://localhost:3000/static/js/bundle.js:301749:10\nrenderFn@http://localhost:3000/static/js/bundle.js:328000:26\nFrameRequestCallback*./node_modules/cytoscape/dist/cytoscape.cjs.js/raf</<@http://localhost:3000/static/js/bundle.js:301722:18\nrequestAnimationFrame@http://localhost:3000/static/js/bundle.js:301749:10\nrenderFn@http://localhost:3000/static/js/bundle.js:328000:26\nFrameRequestCallback*./node_modules/cytoscape/dist/cytoscape.cjs.js/raf</<@http://localhost:3000/static/js/bundle.js:301722:18\nrequestAnimationFrame@http://localhost:3000/static/js/bundle.js:301749:10\nrenderFn@http://localhost:3000/static/js/bundle.js:328000:26\nFrameRequestCallback*./node_modules/cytoscape/dist/cytoscape.cjs.js/raf</<@http://localhost:3000/static/js/bundle.js:301722:18\nrequestAnimationFrame@http://localhost:3000/static/js/bundle.js:301749:10\nrenderFn@http://localhost:3000/static/js/bundle.js:328000:26\nFrameRequestCallback*./node_modules/cytoscape/dist/cytoscape.cjs.js/raf</<@http://localhost:3000/static/js/bundle.js:301722:18\nrequestAnimationFrame@http://localhost:3000/static/js/bundle.js:301749:10\nrenderFn@http://localhost:3000/static/js/bundle.js:328000:26\nFrameRequestCallback*./node_modules/cytoscape/dist/cytoscape.cjs.js/raf</<@http://localhost:3000/static/js/bundle.js:301722:18\nrequestAnimationFrame@http://localhost:3000/static/js/bundle.js:301749:10\nrenderFn@http://localhost:3000/static/js/bundle.js:328000:26\n" } </p>

I am testing react applications which draws large number of nodes on Canvas through a flowchart library called [https://js.cytoscape.org/ cytoscape] cytoscape. As the number of node gets big, the rendering slows down. This is expected due to performance limitation of the browser. However, there is an unexpected error: the browser breaks with "NS_ERROR_FAILURE" whenever we zoom-in too close to the graph that is drawn. As the website breaks with this error, the graph disappears and the user experience is compromised. I want to know if there is a way to prevent this error from happening. Slow rendering is not a critical issue but this breakage is a critical problem for us. Let me know if you know the workaround or you need more context about this issue. Here is the error message. I attached what the graph looks like. Exception { name: "NS_ERROR_FAILURE", message: "", result: 2147500037, filename: "http://localhost:3000/static/js/bundle.js", lineNumber: 329063, columnNumber: 0, data: null, stack: "./node_modules/cytoscape/dist/cytoscape.cjs.js/LTCp.makeLayer@http://localhost:3000/static/js/bundle.js:329063:7\nmakeLayer@http://localhost:3000/static/js/bundle.js:329160:22\n./node_modules/cytoscape/dist/cytoscape.cjs.js/LTCp.getLayers@http://localhost:3000/static/js/bundle.js:329202:15\n./node_modules/cytoscape/dist/cytoscape.cjs.js/CRp$1.drawLayeredElements@http://localhost:3000/static/js/bundle.js:329881:35\n./node_modules/cytoscape/dist/cytoscape.cjs.js/CRp$6.render@http://localhost:3000/static/js/bundle.js:331719:9\nrenderFn@http://localhost:3000/static/js/bundle.js:327973:9\nFrameRequestCallback*./node_modules/cytoscape/dist/cytoscape.cjs.js/raf</<@http://localhost:3000/static/js/bundle.js:301722:18\nrequestAnimationFrame@http://localhost:3000/static/js/bundle.js:301749:10\nrenderFn@http://localhost:3000/static/js/bundle.js:328000:26\nFrameRequestCallback*./node_modules/cytoscape/dist/cytoscape.cjs.js/raf</<@http://localhost:3000/static/js/bundle.js:301722:18\nrequestAnimationFrame@http://localhost:3000/static/js/bundle.js:301749:10\nrenderFn@http://localhost:3000/static/js/bundle.js:328000:26\nFrameRequestCallback*./node_modules/cytoscape/dist/cytoscape.cjs.js/raf</<@http://localhost:3000/static/js/bundle.js:301722:18\nrequestAnimationFrame@http://localhost:3000/static/js/bundle.js:301749:10\nrenderFn@http://localhost:3000/static/js/bundle.js:328000:26\nFrameRequestCallback*./node_modules/cytoscape/dist/cytoscape.cjs.js/raf</<@http://localhost:3000/static/js/bundle.js:301722:18\nrequestAnimationFrame@http://localhost:3000/static/js/bundle.js:301749:10\nrenderFn@http://localhost:3000/static/js/bundle.js:328000:26\nFrameRequestCallback*./node_modules/cytoscape/dist/cytoscape.cjs.js/raf</<@http://localhost:3000/static/js/bundle.js:301722:18\nrequestAnimationFrame@http://localhost:3000/static/js/bundle.js:301749:10\nrenderFn@http://localhost:3000/static/js/bundle.js:328000:26\nFrameRequestCallback*./node_modules/cytoscape/dist/cytoscape.cjs.js/raf</<@http://localhost:3000/static/js/bundle.js:301722:18\nrequestAnimationFrame@http://localhost:3000/static/js/bundle.js:301749:10\nrenderFn@http://localhost:3000/static/js/bundle.js:328000:26\nFrameRequestCallback*./node_modules/cytoscape/dist/cytoscape.cjs.js/raf</<@http://localhost:3000/static/js/bundle.js:301722:18\nrequestAnimationFrame@http://localhost:3000/static/js/bundle.js:301749:10\nrenderFn@http://localhost:3000/static/js/bundle.js:328000:26\nFrameRequestCallback*./node_modules/cytoscape/dist/cytoscape.cjs.js/raf</<@http://localhost:3000/static/js/bundle.js:301722:18\nrequestAnimationFrame@http://localhost:3000/static/js/bundle.js:301749:10\nrenderFn@http://localhost:3000/static/js/bundle.js:328000:26\nFrameRequestCallback*./node_modules/cytoscape/dist/cytoscape.cjs.js/raf</<@http://localhost:3000/static/js/bundle.js:301722:18\nrequestAnimationFrame@http://localhost:3000/static/js/bundle.js:301749:10\nrenderFn@http://localhost:3000/static/js/bundle.js:328000:26\nFrameRequestCallback*./node_modules/cytoscape/dist/cytoscape.cjs.js/raf</<@http://localhost:3000/static/js/bundle.js:301722:18\nrequestAnimationFrame@http://localhost:3000/static/js/bundle.js:301749:10\nrenderFn@http://localhost:3000/static/js/bundle.js:328000:26\nFrameRequestCallback*./node_modules/cytoscape/dist/cytoscape.cjs.js/raf</<@http://localhost:3000/static/js/bundle.js:301722:18\nrequestAnimationFrame@http://localhost:3000/static/js/bundle.js:301749:10\nrenderFn@http://localhost:3000/static/js/bundle.js:328000:26\nFrameRequestCallback*./node_modules/cytoscape/dist/cytoscape.cjs.js/raf</<@http://localhost:3000/static/js/bundle.js:301722:18\nrequestAnimationFrame@http://localhost:3000/static/js/bundle.js:301749:10\nrenderFn@http://localhost:3000/static/js/bundle.js:328000:26\nFrameRequestCallback*./node_modules/cytoscape/dist/cytoscape.cjs.js/raf</<@http://localhost:3000/static/js/bundle.js:301722:18\nrequestAnimationFrame@http://localhost:3000/static/js/bundle.js:301749:10\nrenderFn@http://localhost:3000/static/js/bundle.js:328000:26\nFrameRequestCallback*./node_modules/cytoscape/dist/cytoscape.cjs.js/raf</<@http://localhost:3000/static/js/bundle.js:301722:18\nrequestAnimationFrame@http://localhost:3000/static/js/bundle.js:301749:10\nrenderFn@http://localhost:3000/static/js/bundle.js:328000:26\nFrameRequestCallback*./node_modules/cytoscape/dist/cytoscape.cjs.js/raf</<@http://localhost:3000/static/js/bundle.js:301722:18\nrequestAnimationFrame@http://localhost:3000/static/js/bundle.js:301749:10\nrenderFn@http://localhost:3000/static/js/bundle.js:328000:26\nFrameRequestCallback*./node_modules/cytoscape/dist/cytoscape.cjs.js/raf</<@http://localhost:3000/static/js/bundle.js:301722:18\nrequestAnimationFrame@http://localhost:3000/static/js/bundle.js:301749:10\nrenderFn@http://localhost:3000/static/js/bundle.js:328000:26\nFrameRequestCallback*./node_modules/cytoscape/dist/cytoscape.cjs.js/raf</<@http://localhost:3000/static/js/bundle.js:301722:18\nrequestAnimationFrame@http://localhost:3000/static/js/bundle.js:301749:10\nrenderFn@http://localhost:3000/static/js/bundle.js:328000:26\n" }
Ama-screenshot ananyekiwe

Kufanele ulogele ukungena ku-akhawunti yakho ukuze uphendule amaphosti. Uyacelwauqale umbuzo omusha, uma ungekabi nayo i-akhawunti namanje.