Win a copy of TensorFlow 2.0 in Action this week in the Artificial Intelligence and Machine Learning forum!
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Liutauras Vilda
  • Paul Clapham
  • Bear Bibeault
  • Jeanne Boyarsky
Sheriffs:
  • Ron McLeod
  • Tim Cooke
  • Devaka Cooray
Saloon Keepers:
  • Tim Moores
  • Tim Holloway
  • Jj Roberts
  • Stephan van Hulst
  • Carey Brown
Bartenders:
  • salvin francis
  • Scott Selikoff
  • fred rosenberger

What can be reason java.io.IOException: Broken pipe?

 
Greenhorn
Posts: 1
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Holla ranchers!!!

After migration from jboss to spring-boot 2.0.6 I got a rare reproduce problem with some SOAP web services. Sometimes when application get a huge response from another server and try to forward to client the following exception is occurred: java.io.IOException: Broken pipe.
It doesn't connect with timeout or problem with size of header, I've checked it. So I don't understand what can be a reason else.
Version of cxf 3.1.6

I'll be very appreciate for help.

Below is stack trace


 
Ranch Hand
Posts: 72
1
Python Java Linux Windows
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
This usually is because of an infarction against the transport protocol.
I didn't look into your trace but if this is SOAP over TCP, the TCP protocol wasn't adhered to and one of the parties stopped the connection due to that and raised this exception.

Question: is this reproducible or happens sometimes?

Typically this could be:
1. Client or Server are shutting down too fast. Like, Server provides response and stops the connection rather than complete the protocol and shutdown properly.
2. Internet is unstable.

Try to put some delays around the program, see if this helps. The delays should give the parties enough time to finish the transfer.
Then you need to figure out if you implemented the protocol correctly, or you need better internet, or something else is wrong.

Good Luck!
 
Greenhorn
Posts: 1
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
in my case increasing the buffer size solved the problem:


https://stackoverflow.com/a/32345620/8430173
 
Marshal
Posts: 70684
288
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Welcome to the Ranch

Please explain why the SO post you quoted was voted down so badly.
 
Greenhorn
Posts: 1
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hai All,
@Negar Zamiri, May I know How the problem was solved by Increasing the Buffer size?
I am eagarly Know about that. Could you please give the ans for this?
 
Campbell Ritchie
Marshal
Posts: 70684
288
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Welcome to the Ranch

NZ hasn't posted here since that one post, so you might not get a reply, I am afraid. Have you read that SO link, although it was downvoted quite badly and might therefore not be helpful? Sorry not to be able to give you anything better.
 
Everybody's invited. Except this tiny ad:
Building a Better World in your Backyard by Paul Wheaton and Shawn Klassen-Koop
https://coderanch.com/wiki/718759/books/Building-World-Backyard-Paul-Wheaton
reply
    Bookmark Topic Watch Topic
  • New Topic