question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

nailgun doesn't work on some installations

See original GitHub issue

With version 0.4.4, on some installations, we find that nailgun doesn’t seem to work - but on others it does. When it doesn’t work, the symptoms are similar to issue #4 - a zero length PNG file is served up. Sometimes, we also see an exception:

   throw err
   ^
Error: read ECONNRESET
   at exports._errnoException (util.js:1018:11)
   at TCP.onread (net.js:572:26)

Commenting out the call to plantuml.useNailgun(); solves the problem, but with the expected performance hit.

We can’t find any obvious pattern about which platforms (including versions) it works on - and which it doesn’t. E.g., we’ve seen it both work and not work on different Windows platforms, and likewise on Ubuntu platforms.

I realise this doesn’t give a lot to go on, but would it be possible to give me some pointers on debugging this issue further?

Issue Analytics

  • State:open
  • Created 6 years ago
  • Reactions:5
  • Comments:15 (1 by maintainers)

github_iconTop GitHub Comments

2reactions
markushedvallcommented, Aug 21, 2019

I’ve been working on an update to the node nailgun server with improved error handling that hopefully will be able to help finding the source of these kind of problems. I will integrate into node-plantuml in a near future.

1reaction
krisztianbcommented, Jun 25, 2020

@jcayzac many thanks for the reply and information.

For me the EOL has always been there so far. My module also supports binary output (PNG) and not just SVG. So a simple trim() won’t do. I’ll leave it as it is for the moment.

Regarding -pipeNoStderr you are right. Currently my module does not use this option. So errors are written to stderr and a “faulty” image containing a PlantUML error message is generated for the diagram. For some use cases I think this is not a bad solution. It might be worth adding an option for this though. I’ll think about it.

Regarding the newline termination: Yes, it can be seen in the example on the module’s README. But it sure can be a gotcha. The module is not going to do this for you. It can’t, because it doesn’t know when the input data ends. I think it is the job of the module’s consumer to take care about this.

Regarding PLANTUML_LIMIT_SIZE: You are right. We already ran into this problem when generating PNG output. I think it does not really make sense to use a pixel graphic format for diagrams, but it might be necessary for devices that can’t handle SVG. I’ll think about adding an option for this too and also maybe for the max. heap size that you are setting to 4 GB in your code.

Thanks again for your time and giving valuable feedback. It’s much appreciated. 👍

Read more comments on GitHub >

github_iconTop Results From Across the Web

Nail Gun Problems - Troubleshooting Your Tool - Backyard Boss
Also, make sure your nailer has been properly cleaned and maintained according to the company that manufactured it. Some nailers require ...
Read more >
How To Fix Nail Gun Not Shooting Nails? (8 PROVEN Fixes!)
Nail gun not shooting nails due to jams, air leaks, dead battery, dust, incompatibility of nails, dry firing. Fix nail gun not firing...
Read more >
Nailer: Driver Won't Return - eReplacementParts.com
A malfunctioning spring inside the piston head valve can impact the operation of the nail gun causing a few problems, one of them...
Read more >
Troubleshoot Guide for Common Nailer Problems
Check to see if any fasteners are stuck or wedged in the driver tip or feeder. The could be hindering the nailer from...
Read more >
How to Choose a Finish Nailer | This Old House: Live
With four nail gauge sizes to choose from, one size does not fit all ... If you do some trim work and a...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found