Persistent socket connection - socket write error
I'm connecting to a server using sockets. My application acts like a client, sending requests, and also like a server, listenning for notifications. I was using a client socket for the first task (send a message when required) and a server socket for the second (permanently listen for incoming messages). This needs to be some kind of persistent connection.
It happens now I'm required to send and receive using the same port. The only way I found to do this is to have a single socket (client) bound to a certain port. It connects to the server and one thread keeps listenning for incoming messages (by reading the input stream) while another process is launched whenever I need to send a message (by writing to the socket's output stream). The socket is created only once (when the application starts) and its output/input streams reused whenever needed.
This works well for a while. However, when I try to send a message after some idle time (lets say 20 minutes) strange things happen. The first attempt to send a message returns success (although nothing is actually received by the server). The second attempt returns java.net.SocketException: Software caused connection abort: socket write error. I don't understand this behaviour. Can there be a timeout? I only write to the socket after testing if it's connected.. So why is this failing? Also, any other ideas on how to send and receive using the same port? A different and better approach maybe..
Thanks in advance
Socket.isConnected just tells you whether you have personally called Socket.connect() or new Socket(host, port,...). It doesn't tell you anything about the state of the connection.
You should certainly issue periodic application 'pings' at suitable intervals, and many application protocols do this. For example, Java RMI reuses connections that are less than 15 seconds old but only if they pass a ping test.
In general however you can't insist on a persistent connection over TCP/IP, especially if you have this kind of hardware in the circuit. What you can do is recognize when the connection has been lost and form a new one. The network is going to fail somewhere some time and your program has to be robust against that.
Similar Messages
-
Hi,
I m facing some strange issues in a java file. The requirement is something like, i need to process some business operation , connect to a third party vendor and they need to process some operation in 10 secs and they reverted back with the result. The whole process should complete in 15 secs.
So for the first time while connection to the third party it is working fine, but for the second time it fails and showing connection failed in the UI. When i retires it is successfully connects. i checked the log file, there it is throwing exceptions some of the time. Please find the piece of code below. From the third party there is no issues from them , all the operations sucessfully done from their side..
try {
// open socket connection
socket = openSocketConnection(host, port, connectTimeOut, responseTimeout);
if(socket.isConnected()){
// some steps of business processing.....
// write request
// read response
// set pipeline
// set error status
catch(SocketTimeoutException ste){}
catch (UnknownHostException uhe) {}
catch (SocketException soe) {}
catch (Exception e) { }
finally {
try {
if (socket != null)socket.close();
} catch (Exception e) { }
// method for connecting the server....
openSocketConnection(String host, int port, int connectTimeOut, int responseTimeout) throws SocketTimeoutException, ServiceException,IOException {
Socket socket = null;
socket = new Socket();
socket.bind(null);
socket.connect(new InetSocketAddress(host,port),connectTimeOut);
if (socket.isConnected()) {
socket.setSoTimeout(responseTimeout);
} else {
throw new ServiceException("Error opening socket connection to Third party Vendor.");<------- mostly in second time throwing exception, but when retires working fine...
return socket;
Can anyone please help me out for this.Remove the isConnected() test and associated code: it's contributing nothing here. If the socket itself throws an exception then you have a problem. At the moment all you have is a self-inflicted wound.
You can also remove the bind(null) call. -
MDM_TECH 554_700 ABAP API giving socket connection error
Hi,
I have recently installed the MDM_TECH 554_700 on a 64Bit R/3 system and configured the ABAP API thru customization for a 32Bit MDM Server. Currently I am facing a problem with 'NiRaw2ConnectError: Connection refused' error and when I checked the detailed log it shows that "ERROR => mdeKernelError, NiRawToConnectError: The attempt to establish a socket connection caused an error (rc=-10) [mdm_mdeClien 265]". I have checked the necessary kernel files ( dw_mdm.dll) to make the socket connection between the MDM system, the OSS note 965209 & 950245 and not able to trace the problem. Is it possible to make the connection between 64Bit R/3 and 32Bit MDM server? Help on this issue is highly appreciated.
Regards,
VeluAlejandro,
The MDM ABAP API & MDM Server Versions are same. Both of them are in SP04. Here is the details on the versions:
MDM ABAP API - MDM SP04 provider, Server build 5.5.32.48 - 5.5.32.x
MDM Server 5.5 - SP04 ( 5.5.32.65)
Regards,
Velu -
Problem with socket connection
have my gps reciver connected to the usb port - i have a daemon gpsd running which makes data available on tcp port 2947 for querying. when i do telnet, it gives proper data.
but when i open a socket connection using java, it does not print anything as output. actually telnet asks for an escape charatcer so i am sending "r" initially to the server but still the program does not print anything as output.
here is my java code -
import java.io.*;
import java.net.Socket;
public class test2
public static void main(String[] args)
try
Socket s = new Socket("localhost",2947);
PrintWriter out = new PrintWriter(new BufferedWriter(new OutputStreamWriter(
s.getOutputStream())),true);
out.println("r");
BufferedReader in = new BufferedReader(new InputStreamReader(s.getInputStream()));
String line;
while(true)
line = in.readLine();
System.out.println(line);
catch (Exception e)
or sometimes it even shows error as
Exception in thread "main" java.net.SocketException: Invalid argument or cannot assign requested address
at java.net.PlainSocketImpl.socketConnect(Native Method)
and this is the output which i get on telnet -
ot@localhost ~]# telnet localhost 2947
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
r
GPSD,R=1
$GPRMC,000212,V,18000.0000,N,00000.0000,W,0.0000,180.000,101102,,*1A
$GPGSA,A,1,,,,,,,,,,,,,,,,*32
$PGRME,400.00,0.00,0.00*7B
$GPRMC,000213,V,18000.0000,N,00000.0000,W,0.0000,180.000,101102,,*1B
$GPGSA,A,1,,,,,,,,,,,,,,,,*32
$PGRME,400.00,0.00,0.00*7B
$GPRMC,000214,V,18000.0000,N,00000.0000,W,0.0000,180.000,101102,,*1C
$GPGSA,A,1,,,,,,,,,,,,,,,,*32Actually the problem does not seem to be in the code because i tried some basic client server programs (without any gpsd etc in picture) and even they are not working in linux though they work perfectly in windows (on the same machine). In linux it shows exception
My socket programs dont work in linux it shows error -
ot@localhost winc]# java parser
Exception in thread "main" java.net.SocketException: Invalid argument or cannot assign requested address
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:305)
at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:171)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:158)
at java.net.Socket.connect(Socket.java:452)
at java.net.Socket.connect(Socket.java:402)
at java.net.Socket.<init>(Socket.java:309)
at java.net.Socket.<init>(Socket.java:124)
at parser.main(parser.java:10)
i have removed the firewall settings etc and it still doesnot work in linux
what could be the cause for this?
Sowmya -
Unable to initialize socket connection to Content Server
Hi,
Webcenter installed on linux, content server installed on windows. Here is the error I see in the log files. I did added the ip address of the linux machine in windows host file but in Spaces I see JCR Connection problem. Any idea on what might be wrong. Here ar the settings I have Repository Connection:
User Name: sysadmin
CIS Socket Type: Socket
Server Host: windowsmachine
Server Port: 5444
Authntication Method: Identity Propagation
javax.jcr.RepositoryException: oracle.stellent.ridc.protocol.ProtocolException: Unable to initialize socket connection to Content Server
at oracle.jcr.impl.ExceptionFactory.repository(ExceptionFactory.java:161)
at oracle.stellent.jcr.IdcPersistenceManagerFactory.createPersistenceManager(IdcPersistenceManagerFactory.java:177)
at oracle.jcr.impl.OracleRepositoryImpl.login(OracleRepositoryImpl.java:444)
at oracle.vcr.jam.LoginTask.call(LoginTask.java:68)
at oracle.vcr.jam.LoginTask.call(LoginTask.java:29)
at oracle.webcenter.concurrent.Submission$2.run(Submission.java:495)
at java.security.AccessController.doPrivileged(Native Method)
at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:313)
at oracle.webcenter.concurrent.Submission.runAsPrivileged(Submission.java:509)
at oracle.webcenter.concurrent.Submission.run(Submission.java:436)
at oracle.webcenter.concurrent.Submission$SubmissionFutureTask.run(Submission.java:792)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at oracle.webcenter.concurrent.ModifiedThreadPoolExecutor$Worker.runTask(ModifiedThreadPoolExecutor.java:657)
at oracle.webcenter.concurrent.ModifiedThreadPoolExecutor$Worker.run(ModifiedThreadPoolExecutor.java:682)
at java.lang.Thread.run(Thread.java:619)
Caused by: oracle.stellent.ridc.protocol.ProtocolException: Unable to initialize socket connection to Content Server
at oracle.stellent.ridc.protocol.intradoc.socket.SocketConnectionManager.initializeConnection(SocketConnectionManager.java:23)
at oracle.stellent.ridc.protocol.intradoc.socket.SocketConnectionManager.initializeConnection(SocketConnectionManager.java:10)
at oracle.stellent.ridc.protocol.impl.SimpleConnectionPool.acquireConnection(SimpleConnectionPool.java:35)
at oracle.stellent.ridc.IdcClient.sendRequest(IdcClient.java:130)
at oracle.stellent.jcr.IdcPersistenceManagerFactory.createPersistenceManager(IdcPersistenceManagerFactory.java:163)
... 15 more
Caused by: oracle.stellent.ridc.protocol.ProtocolException: java.net.ConnectException: Connection refused
at oracle.stellent.ridc.protocol.intradoc.socket.SocketConnection.connect(SocketConnection.java:41)
at oracle.stellent.ridc.protocol.intradoc.socket.SocketConnectionManager.initializeConnection(SocketConnectionManager.java:21)
... 19 more
Caused by: java.net.ConnectException: Connection refused
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
at java.net.Socket.connect(Socket.java:519)
at java.net.Socket.connect(Socket.java:469)
at java.net.Socket.<init>(Socket.java:366)
at java.net.Socket.<init>(Socket.java:180)
at oracle.stellent.ridc.protocol.intradoc.socket.SocketConnection.createSocket(SocketConnection.java:111)
at oracle.stellent.ridc.protocol.intradoc.socket.SocketConnection.connect(SocketConnection.java:38)
... 20 moreThis error usually occurs because you have not authorized the client's IP address in UCM. The steps to add the WebCenter host to the list of authorized clients are detailed in section [4.3.1.3.1 of the Installation Guide|http://download.oracle.com/docs/cd/E12839_01/install.1111/e12001/webcenterservice_install.htm#sthref161].
Regards,
Nicolas -
Socket connection refused - please help!!!!
My socket programs dont work in linux it shows error -
ot@localhost winc]# java parser
Exception in thread "main" java.net.SocketException: Invalid argument or cannot assign requested address
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:305)
at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:171)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:158)
at java.net.Socket.connect(Socket.java:452)
at java.net.Socket.connect(Socket.java:402)
at java.net.Socket.<init>(Socket.java:309)
at java.net.Socket.<init>(Socket.java:124)
at parser.main(parser.java:10)
Even the basic client server programs show this kind of error in linux. what is the cause for it? And the same programs work perfectly when run in windows. i have removed the firewall settings etc and it still doesnot work in linux
Please help me solve the problem . it is very urgent.Actually i don't know how the firewall can cause the problem, can u please explain me.
Here is the stack trace.
INFO: Thread-3::Wed Dec 03 11:27:00 EST 2008 : resetConnection-->Connection couldn't be established with the Outbound message receiver at: 157.21.29.121:4996
Dec 3, 2008 11:27:05 AM com.lsc.hl7.handler.THOutboundProperties log
INFO: Thread-3::Wed Dec 03 11:27:05 EST 2008 : resetConnection-->Trying to reconnect[in IOException]........
The Message is: Connection refused: connect
The exception trace is :
java.net.PlainSocketImpl.socketConnect(Native Method)
java.net.PlainSocketImpl.doConnect(Unknown Source)
java.net.PlainSocketImpl.connectToAddress(Unknown Source)
java.net.PlainSocketImpl.connect(Unknown Source)
java.net.SocksSocketImpl.connect(Unknown Source)
java.net.Socket.connect(Unknown Source)
java.net.Socket.connect(Unknown Source)
com.lsc.hl7.handler.THOutboundConnHandler.resetConnection(THOutboundConnHandler.java:129)
com.lsc.hl7.handler.THOBHandlerThread.sendMailAndLogAboutORUReceiverConnectionLoss(THOBHandlerThread.java:199)
com.lsc.hl7.handler.THOBHandlerThread.run(THOBHandlerThread.java:118) -
Closing socket connection from 2nd thread
I did some research on different operating systems to find a unique solution how to timeout a blocking recv call in one thread.
Closing the connection from another thread helps but I found that there are two different methods how to close the connection:
- either just calling close with the correct linger options
- call shutdown first and then close
Unfortunately most platforms work fine with only one of these methods and fail more or less severe with the other method.
While I think to fully understand the behavior of Windows and Linux, Solaris is still a big question mark for me.
I have some machines (running Solaris 8, 7 and 2.6) which work well with just closing and crash the system when using shutdown (while having bad luck in the timing of the other peer). And I have another 2.6 machine that behaves the other way around.
I created a detailed description about the whole problem and my findings in a PDF if you are interested: http://www.webwasher.com/download/notes/timeoutblockingsocketcall.pdf
Is anybody able to explain how the Solaris implementation works here?
And does anybody know why I see the differences with the two 2.6 boxes? (I changed patch level and exchanged clib without success.
MartinI have a main program which creates a thread.Why not create a thread once the object has been read.
The thread would take some time to process this
object before it accepts another object to be passed
in from the main program.Threads are used for concurrent execution. If you don't want concurrent execution, don't use additional threads. Have the main program do the reading and execution and then it cannot read another object until it has finished executing the previous one.
>
However, I realise that my main program:
s = new Socket("localhost", 2001);
will produce a socket connection
socket connection even if the thread is still
processing the object. Why is this possible?This is what threads do. It is call multi-threading.
Initially I thought the thread would lock the socketIt will lock the sockect when you lock it with synchronized. Howver you are creating a new socket each time so even this would not do what you suggest.
and my main program would not be able to get a socket
connection until my thread releases the socket.Everytime you call new Socket() it creates a NEW socket. You can open as many socket as the server can handle. (10000+)
Code in my thread to accept a socket connection:
server = new ServerSocket(2001);
ois = new ObjectInputStream(server.accept().getInputStream());I would suggest putting the Socket created by server.accept() into a variable. Otherwise you will not be able to reply to the request, nor will you be able to close() the connection.
How can I workaround this issue. Hope somebody can help. Thanks.You don't need a workaround, you need to fix the logic of your application. -
JCOM throwing SocketException: Connection reset by peer: socket write error
I have an ejb which is calling a simple ActiveX component using JCOM.
Ocassionally the ejb loses the ability to connect to the ActiveX component. Any attempt to call a method results in a java.net.SocketException: Connection reset by peer: socket write error.
However the ActiveX component continues to run correctly. I can still connect to it using a vb test client. This is using com to connect, not DCOM as used by JCOM(JIntegra).
The application server and the ActiveX component are running on the same server.
Any suggestions as to why the JIntegra DCOM request could be failing?
Thanks,
Greg.I have an ejb which is calling a simple ActiveX component using JCOM.
Ocassionally the ejb loses the ability to connect to the ActiveX component. Any attempt to call a method results in a java.net.SocketException: Connection reset by peer: socket write error.
However the ActiveX component continues to run correctly. I can still connect to it using a vb test client. This is using com to connect, not DCOM as used by JCOM(JIntegra).
The application server and the ActiveX component are running on the same server.
Any suggestions as to why the JIntegra DCOM request could be failing?
Thanks,
Greg. -
Rmi - connection aborted:socket write error
Weblogic 5.1 is running on my localhost and a remote object successfully registered on the weblogic. There is an applet trying to establish a connection and after the client is registered in the client list I get the following exception
Thu Jan 25 11:29:06 PST 2001:<E> <ServletContext-General> Servlet failed with Ex
ception
java.net.SocketException: Connection aborted by peer: socket write error
at java.net.SocketOutputStream.socketWrite(Native Method)
at java.net.SocketOutputStream.write(SocketOutputStream.java:83)
at weblogic.servlet.internal.ChunkUtils.writeChunks(ChunkUtils.java:88)
at weblogic.servlet.internal.ServletOutputStreamImpl.flush(ServletOutput
StreamImpl.java:121)
at weblogic.servlet.internal.ServletOutputStreamImpl.writeStream(Servlet
OutputStreamImpl.java:444)
at weblogic.servlet.ClasspathServlet.sendResource(ClasspathServlet.java:
114)
at weblogic.servlet.ClasspathServlet.doGet(ClasspathServlet.java:87)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:865)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubIm
pl.java:105)
at weblogic.servlet.internal.ServletContextImpl.invokeServlet(ServletCon
textImpl.java:742)
at weblogic.servlet.internal.ServletContextImpl.invokeServlet(ServletCon
textImpl.java:686)
at weblogic.servlet.internal.ServletContextManager.invokeServlet(Servlet
ContextManager.java:247)
at weblogic.socket.MuxableSocketHTTP.invokeServlet(MuxableSocketHTTP.jav
a:361)
at weblogic.socket.MuxableSocketHTTP.execute(MuxableSocketHTTP.java:261)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
And the java console shows this message:
java.lang.NoClassDefFoundError
at weblogic/rmi/extensions/BasicRequest.init (BasicRequest.java)
at weblogic/rmi/extensions/BasicRequest.<init> (BasicRequest.java:18)
at weblogic/rmi/extensions/AbstractRemoteObjectReference.getRequest (AbstractRemoteObjectReference.java:71)
at weblogic/jndi/internal/RemoteContextFactoryImpl_WLStub.getContext (RemoteContextFactoryImpl_WLStub.java:77)
at weblogic/jndi/WLInitialContextFactoryDelegate.newRemoteContext (WLInitialContextFactoryDelegate.java:316)
at weblogic/jndi/WLInitialContextFactoryDelegate.newContext (WLInitialContextFactoryDelegate.java:242)
at weblogic/jndi/WLInitialContextFactoryDelegate.getInitialContext (WLInitialContextFactoryDelegate.java:205)
at weblogic/jndi/Environment.getContext (Environment.java:122)
at weblogic/jndi/Environment.getInitialContext (Environment.java:105)
at weblogic/rmi/Naming.getContext (Naming.java:225)
at weblogic/rmi/Naming.lookup (Naming.java:67)
at AppletTest.init (AppletTest.java:30)
at com/ms/applet/AppletPanel.securedCall0 (AppletPanel.java)
at com/ms/applet/AppletPanel.securedCall (AppletPanel.java)
at com/ms/applet/AppletPanel.processSentEvent (AppletPanel.java)
at com/ms/applet/AppletPanel.processSentEvent (AppletPanel.java)
at com/ms/applet/AppletPanel.run (AppletPanel.java)
at java/lang/Thread.run (Thread.java
Can someone help solve this problem.
Thansk in advance,
Nirmal R.The point where the failure occurs in in the initialization of the transaction framework, so I would guess that you do not have the plug-in for the applet.
Nirmal R wrote:
Weblogic 5.1 is running on my localhost and a remote object successfully registered on the weblogic. There is an applet trying to establish a connection and after the client is registered in the client list I get the following exception
Thu Jan 25 11:29:06 PST 2001:<E> <ServletContext-General> Servlet failed with Ex
ception
java.net.SocketException: Connection aborted by peer: socket write error
at java.net.SocketOutputStream.socketWrite(Native Method)
at java.net.SocketOutputStream.write(SocketOutputStream.java:83)
at weblogic.servlet.internal.ChunkUtils.writeChunks(ChunkUtils.java:88)
at weblogic.servlet.internal.ServletOutputStreamImpl.flush(ServletOutput
StreamImpl.java:121)
at weblogic.servlet.internal.ServletOutputStreamImpl.writeStream(Servlet
OutputStreamImpl.java:444)
at weblogic.servlet.ClasspathServlet.sendResource(ClasspathServlet.java:
114)
at weblogic.servlet.ClasspathServlet.doGet(ClasspathServlet.java:87)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:865)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubIm
pl.java:105)
at weblogic.servlet.internal.ServletContextImpl.invokeServlet(ServletCon
textImpl.java:742)
at weblogic.servlet.internal.ServletContextImpl.invokeServlet(ServletCon
textImpl.java:686)
at weblogic.servlet.internal.ServletContextManager.invokeServlet(Servlet
ContextManager.java:247)
at weblogic.socket.MuxableSocketHTTP.invokeServlet(MuxableSocketHTTP.jav
a:361)
at weblogic.socket.MuxableSocketHTTP.execute(MuxableSocketHTTP.java:261)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
And the java console shows this message:
java.lang.NoClassDefFoundError
at weblogic/rmi/extensions/BasicRequest.init (BasicRequest.java)
at weblogic/rmi/extensions/BasicRequest.<init> (BasicRequest.java:18)
at weblogic/rmi/extensions/AbstractRemoteObjectReference.getRequest (AbstractRemoteObjectReference.java:71)
at weblogic/jndi/internal/RemoteContextFactoryImpl_WLStub.getContext (RemoteContextFactoryImpl_WLStub.java:77)
at weblogic/jndi/WLInitialContextFactoryDelegate.newRemoteContext (WLInitialContextFactoryDelegate.java:316)
at weblogic/jndi/WLInitialContextFactoryDelegate.newContext (WLInitialContextFactoryDelegate.java:242)
at weblogic/jndi/WLInitialContextFactoryDelegate.getInitialContext (WLInitialContextFactoryDelegate.java:205)
at weblogic/jndi/Environment.getContext (Environment.java:122)
at weblogic/jndi/Environment.getInitialContext (Environment.java:105)
at weblogic/rmi/Naming.getContext (Naming.java:225)
at weblogic/rmi/Naming.lookup (Naming.java:67)
at AppletTest.init (AppletTest.java:30)
at com/ms/applet/AppletPanel.securedCall0 (AppletPanel.java)
at com/ms/applet/AppletPanel.securedCall (AppletPanel.java)
at com/ms/applet/AppletPanel.processSentEvent (AppletPanel.java)
at com/ms/applet/AppletPanel.processSentEvent (AppletPanel.java)
at com/ms/applet/AppletPanel.run (AppletPanel.java)
at java/lang/Thread.run (Thread.java
Can someone help solve this problem.
Thansk in advance,
Nirmal R. -
Connection reset by peer: socket write error
Anybody can help me?
I run vdbench to test our NAS server, but it always failed with "
Slave localhost-0 aborting: Error writing file Y:\dir11\vdb.1_2.dir\vdb.2_2.dir\vdb.3_1.dir\vdb.4_1.dir\vdb.5_2.dir\vdb.6_2.dir\vdb.7_1.dir\vdb.8_2.dir\vdb.9_2.dir\vdb.10_1.dir\vdb_f0001.file
Error: Windows System Error code: 64: ", how to solve this fail ?
conf file:
fsd=fsd,anchor=Y:\dir,count=(11,15),depth=10,width=2,files=1,size=(10k,20,100k,20,160k,20,8m,20,10m,10,1g,5,2g,5)
fwd=fwd1,fsd=(fsd11,fsd12,fsd13,fsd14,fsd15),rdpct=85,xfersize=(10k,22,100k,22,160k,22,8m,22,10m,12),fileio=random,fileselect=random,threads=5
rd=rd1,fwd=fwd1,operations=read,fwdrate=max,format=yes,elapsed=10,interval=1
logfile.html:
14:22:49.510 Vdbench distribution: vdbench50401
14:22:49.510
14:22:49.526 input argument scanned: '-fcifs'
14:22:49.526 java.vendor Sun Microsystems Inc.
14:22:49.526 java.home C:\Program Files\Java\jre6
14:22:49.526 java.vm.specification.version 1.0
14:22:49.526 java.vm.version 16.3-b01
14:22:49.526 java.vm.vendor Sun Microsystems Inc.
14:22:49.526 java.specification.version 1.6
14:22:49.526 java.class.version 50.0
14:22:49.526 user.name zcuser1002
14:22:49.526 user.dir C:\Users\zcuser1002\Desktop\Y-vdbench-1021
14:22:49.526 java.class.path C:\Users\zcuser1002\Desktop\Y-vdbench-1021\;C:\Users\zcuser1002\Desktop\Y-vdbench-1021\classes;C:\Users\zcuser1002\Desktop\Y-vdbench-1021\vdbench.jar
14:22:49.526 os.name Windows Server 2008 R2
14:22:49.526 os.arch amd64
14:22:49.526 os.version 6.1
14:22:49.526 sun.arch.data.model 64
14:22:49.557 'fsd=fsd,count=(start,count)' added fsd11 Y:\dir11
15:08:57.031 2704 0.0 0.00 0.9 4.42 0.0 0.0 0.00 0.0 0.00 0.00 0.00 0.00 0 0.0 0.00 0.0 0.00 0.0 0.00 0.0 0.00 0.0 0.00 0.0 0.00 0.0 0.00 0.0 0.00
15:08:58.030 2705 343.0 386.6 8.5 4.36 0.0 0.0 0.00 343.0 386.6 0.00 42.22 42.22 129071 0.0 0.00 0.0 0.00 0.0 0.00 0.0 0.00 0.0 0.00 0.0 0.00 0.0 0.00 0.0 0.00
15:08:59.031 2706 15.0 983.4 0.0 3.41 0.0 0.0 0.00 15.0 983.4 0.00 1.85 1.85 129160 0.0 0.00 0.0 0.00 0.0 0.00 0.0 0.00 0.0 0.00 0.0 0.00 0.0 0.00 0.0 0.00
15:09:51.406 localhost-0: anchor=Y:\dir15: Created 420 of 1024 files (41.02%)
15:10:02.202 2707 12143 31.35 8.0 6.25 0.0 0.0 0.00 12143 31.35 0.00 1513 1513.9 130736 0.0 0.00 0.0 0.00 65.0 59795 65.0 202.8 67.0 44969 0.0 0.00 0.0 0.00 0.0 0.00
15:10:02.234 2708 0.0 0.00 8.6 8.40 0.0 0.0 0.00 0.0 0.00 0.00 0.00 0.00 0 0.0 0.00 0.0 0.00 0.0 0.00 0.0 0.00 0.0 0.00 0.0 0.00 0.0 0.00 0.0 0.00
15:10:02.249 2709 0.0 0.00 43.7 37.5 0.0 0.0 0.00 0.0 0.00 0.00 0.00 0.00 0 0.0 0.00 0.0 0.00 0.0 0.00 0.0 0.00 27.0 4268 0.0 0.00 0.0 0.00 0.0 0.00
15:10:02.265 2710 0.0 0.00 0.0 0.00 0.0 0.0 0.00 0.0 0.00 0.00 0.00 0.00 0 0.0 0.00 0.0 0.00 0.0 0.00 0.0 0.00 0.0 0.00 0.0 0.00 0.0 0.00 0.0 0.00
15:10:02.296 2711 0.0 0.00 100.0 81.2 0.0 0.0 0.00 0.0 0.00 0.00 0.00 0.00 0 0.0 0.00 0.0 0.00 0.0 0.00 0.0 0.00 0.0 0.00 0.0 0.00 0.0 0.00 0.0 0.00
15:10:02.312 2712 0.0 0.00 0.0 0.00 0.0 0.0 0.00 0.0 0.00 0.00 0.00 0.00 0 0.0 0.00 0.0 0.00 0.0 0.00 0.0 0.00 0.0 0.00 0.0 0.00 0.0 0.00 0.0 0.00
15:10:02.312 localhost-0: 15:10:02.218 op: write lun: Y:\dir11\vdb.1_2.dir\vdb.2_2.dir\vdb.3_1.dir\vdb.4_1.dir\vdb.5_2.dir\vdb.6_2.dir\vdb.7_1.dir\vdb.8_2.dir\vdb.9_2.dir\vdb.10_1.dir\vdb_f0001.file lba: 1484652544 0x587E0000 xfer: 131072 errno: Windows System Error code: 64: ??¡§????????????
15:10:02.327 localhost-0: 15:10:02.234 op: write lun: Y:\dir14\vdb.1_2.dir\vdb.2_2.dir\vdb.3_1.dir\vdb.4_1.dir\vdb.5_2.dir\vdb.6_2.dir\vdb.7_1.dir\vdb.8_2.dir\vdb.9_2.dir\vdb.10_1.dir\vdb_f0001.file lba: 1971847168 0x75880000 xfer: 131072 errno: Windows System Error code: 64: ??¡§????????????
15:10:02.343 2713 0.0 0.00 100.0 74.9 0.0 0.0 0.00 0.0 0.00 0.00 0.00 0.00 0 0.0 0.00 0.0 0.00 0.0 0.00 0.0 0.00 0.0 0.00 0.0 0.00 0.0 0.00 0.0 0.00
15:10:02.343
15:10:02.343 **********************************************************
15:10:02.343 Slave localhost-0 aborting: Error writing file Y:\dir11\vdb.1_2.dir\vdb.2_2.dir\vdb.3_1.dir\vdb.4_1.dir\vdb.5_2.dir\vdb.6_2.dir\vdb.7_1.dir\vdb.8_2.dir\vdb.9_2.dir\vdb.10_1.dir\vdb_f0001.file
Error: Windows System Error code: 64: ??¡§????????????
lba: 1484652544
xfersize: 131072
blocks_done: 11327
bytes_done: 1484652544
open_for_read: false
15:10:02.343 **********************************************************
15:10:02.343
15:10:18.013 Exception from slave: localhost-0
15:10:18.013
15:10:18.013 common.failure():
java.net.SocketException: Connection reset by peer: socket write error
java.net.SocketException: Connection reset by peer: socket write error
at java.net.SocketOutputStream.socketWrite0(Native Method)
at java.net.SocketOutputStream.socketWrite(Unknown Source)
at java.net.SocketOutputStream.write(Unknown Source)
at java.io.ObjectOutputStream$BlockDataOutputStream.drain(Unknown Source)
at java.io.ObjectOutputStream$BlockDataOutputStream.setBlockDataMode(Unknown Source)
at java.io.ObjectOutputStream.reset(Unknown Source)
at Vdb.SlaveSocket.putMessage(SlaveSocket.java:277)
at Vdb.CollectSlaveStats.<init>(CollectSlaveStats.java:121)
at Vdb.Reporter.run(Reporter.java:183)
localhost-0.stdout.html:
stdout/stderr for slave=localhost-0
14:22:50.072 14:22:50.072 SlaveJvm execution parameter: '-m localhost'
14:22:50.072 14:22:50.072 SlaveJvm execution parameter: '-n localhost-10-141104-14.22.49.432'
14:22:50.072 14:22:50.072 SlaveJvm execution parameter: '-l localhost-0'
14:22:50.072 14:22:50.072 SlaveJvm execution parameter: '-p 5570'
14:22:50.072 14:22:50.072 SlaveJvm positional parameter: 'SlaveJvm'
14:22:50.118 14:22:50.118 successfully connected to master localhost
14:22:50.118 14:22:50.118 Connection to localhost using port 5570 successful
14:22:50.571 14:22:50.571 execute(): ls -l Y:\dir11
14:22:50.618 14:22:50.618 execute(): ls -l Y:\dir12
14:22:50.633 14:22:50.633 execute(): ls -l Y:\dir13
14:22:50.664 14:22:50.664 execute(): ls -l Y:\dir14
14:22:50.680 14:22:50.680 execute(): ls -l Y:\dir15
14:22:50.711 14:22:50.711 Configuration interpretation took 0.45 seconds
Link to Run Definitions: <A HREF="#_225912260">format_for_rd1 For loops: None</A>
<A HREF="#_156265924">rd1 For loops: None</A>
14:22:50.852 14:22:50.852 Beginning of run setup
14:22:50.852 14:22:50.852 **********************
14:22:50.852
14:22:50.852
14:22:51.538 14:22:51.538 Completed the creation of the directory list for Y:\dir11: 2046 directories.
14:22:56.811 14:22:56.811 Memory total Java heap: 77.438 MB; Free: 32.782 MB; Used: 44.655 MB;
14:22:56.874 14:22:56.874 checkMemory()
14:22:56.874 14:22:56.874 Memory total Java heap: 77.438 MB; Free: 52.364 MB; Used: 25.074 MB;
14:23:03.426 14:23:03.426 Generated 1024 file names; total anchor size: 130.841g
14:23:03.426 14:23:03.426 Writing control file for anchor=Y:\dir11 at start of run.
14:23:03.457 14:23:03.441 Completed control file for anchor=Y:\dir11 at start of run. dirs: 2046/2046 files: 1024/88 sizes: 130.841g/8.721g/0/0.0
14:23:03.457 14:23:03.441 During anchor creation for anchor=Y:\dir11 there were 2046 directories and 88 files
14:23:03.551 14:23:03.551 Completed the creation of the directory list for Y:\dir12: 2046 directories.
14:23:08.902 14:23:08.902 Memory total Java heap: 77.438 MB; Free: 24.149 MB; Used: 53.288 MB;
14:23:08.964 14:23:08.964 checkMemory()
14:23:08.964 14:23:08.964 Memory total Java heap: 77.438 MB; Free: 50.640 MB; Used: 26.798 MB;
14:23:15.579 14:23:15.579 Generated 1024 file names; total anchor size: 130.841g
14:23:15.579 14:23:15.579 Writing control file for anchor=Y:\dir12 at start of run.
14:23:15.594 14:23:15.594 Completed control file for anchor=Y:\dir12 at start of run. dirs: 2046/2046 files: 1024/74 sizes: 130.841g/7.092g/0/0.0
14:23:15.594 14:23:15.594 During anchor creation for anchor=Y:\dir12 there were 2046 directories and 74 files
14:23:15.688 14:23:15.688 Completed the creation of the directory list for Y:\dir13: 2046 directories.
14:23:21.210 14:23:21.210 Memory total Java heap: 74.688 MB; Free: 19.725 MB; Used: 54.963 MB;
14:23:21.273 14:23:21.273 checkMemory()
14:23:21.273 14:23:21.273 Memory total Java heap: 76.562 MB; Free: 48.176 MB; Used: 28.386 MB;
14:23:28.168 14:23:28.168 Generated 1024 file names; total anchor size: 130.841g
14:23:28.168 14:23:28.168 Writing control file for anchor=Y:\dir13 at start of run.
14:23:28.184 14:23:28.184 Completed control file for anchor=Y:\dir13 at start of run. dirs: 2046/2046 files: 1024/84 sizes: 130.841g/8.886g/0/0.0
14:23:28.184 14:23:28.184 During anchor creation for anchor=Y:\dir13 there were 2046 directories and 84 files
14:23:28.262 14:23:28.262 Completed the creation of the directory list for Y:\dir14: 2046 directories.
14:23:33.785 14:23:33.785 Memory total Java heap: 74.250 MB; Free: 17.213 MB; Used: 57.037 MB;
14:23:33.863 14:23:33.863 checkMemory()
14:23:33.863 14:23:33.863 Memory total Java heap: 72.812 MB; Free: 42.829 MB; Used: 29.983 MB;
14:23:40.976 14:23:40.976 Generated 1024 file names; total anchor size: 130.841g
14:23:40.976 14:23:40.976 Writing control file for anchor=Y:\dir14 at start of run.
14:23:40.976 14:23:40.976 Completed control file for anchor=Y:\dir14 at start of run. dirs: 2046/2046 files: 1024/87 sizes: 130.841g/8.778g/0/0.0
14:23:40.976 14:23:40.976 During anchor creation for anchor=Y:\dir14 there were 2046 directories and 87 files
14:23:41.054 14:23:41.054 Completed the creation of the directory list for Y:\dir15: 2046 directories.
14:23:46.296 14:23:46.296 Memory total Java heap: 74.062 MB; Free: 42.390 MB; Used: 31.672 MB;
14:23:46.374 14:23:46.374 checkMemory()
14:23:46.374 14:23:46.374 Memory total Java heap: 101.000 MB; Free: 68.809 MB; Used: 32.191 MB;
14:23:52.958 14:23:52.958 Generated 1024 file names; total anchor size: 130.841g
14:23:52.958 14:23:52.958 Writing control file for anchor=Y:\dir15 at start of run.
14:23:52.989 14:23:52.973 Completed control file for anchor=Y:\dir15 at start of run. dirs: 2046/2046 files: 1024/96 sizes: 130.841g/8.995g/0/0.0
14:23:52.989 14:23:52.973 During anchor creation for anchor=Y:\dir15 there were 2046 directories and 96 files
14:23:52.989 14:23:52.973 Skew for fwd=format,fsd=fsd11,operation=read: 20.0
14:23:52.989 14:23:52.973 Skew for fwd=format,fsd=fsd12,operation=read: 20.0
14:23:52.989 14:23:52.973 Skew for fwd=format,fsd=fsd13,operation=read: 20.0
14:23:52.989 14:23:52.973 Skew for fwd=format,fsd=fsd14,operation=read: 20.0
14:23:52.989 14:23:52.973 Skew for fwd=format,fsd=fsd15,operation=read: 20.0
14:23:53.051 14:23:53.051 Started 8 threads for fwd=format,fsd=fsd11
14:23:53.114 14:23:53.114 Started 8 threads for fwd=format,fsd=fsd12
14:23:53.161 14:23:53.161 Started 8 threads for fwd=format,fsd=fsd13
14:23:53.207 14:23:53.207 Started 8 threads for fwd=format,fsd=fsd14
14:23:53.270 14:23:53.270 Started 8 threads for fwd=format,fsd=fsd15
14:23:53.270 14:23:53.270 Started 40 FwgThreads
14:23:53.270 14:23:53.270 Waiting for task synchronization
14:23:53.270 14:23:53.270 task_wait_start_complete() end
<a name="_225912260"></a><i><b>14:23:53.971 Starting RD=format_for_rd1</b></i>
14:23:54.002 14:23:54.002 task_run_all(): 41 tasks
14:23:54.051 14:23:54.051 Message to master: anchor=Y:\dir15 mkdir complete.
14:23:54.051 14:23:54.051 Message to master: anchor=Y:\dir11 mkdir complete.
14:23:54.051 14:23:54.051 Message to master: anchor=Y:\dir13 mkdir complete.
14:23:54.066 14:23:54.066 Message to master: anchor=Y:\dir14 mkdir complete.
14:23:54.066 14:23:54.066 Message to master: anchor=Y:\dir12 mkdir complete.
14:24:24.685 14:24:24.685 Message to master: anchor=Y:\dir14: Created 130 of 1024 files (12.70%)
14:24:56.311 14:24:56.311 Message to master: anchor=Y:\dir12: Created 130 of 1024 files (12.70%)
14:25:40.473 14:25:40.464 Message to master: anchor=Y:\dir13: Created 140 of 1024 files (13.67%)
14:32:52.125 14:32:52.125 Message to master: anchor=Y:\dir12: Created 140 of 1024 files (13.67%)
14:33:30.374 14:33:30.374 Message to master: anchor=Y:\dir12: Created 160 of 1024 files (15.63%)
14:34:33.842 14:34:33.842 Message to master: anchor=Y:\dir14: Created 170 of 1024 files (16.60%)
14:35:49.810 14:35:49.810 Message to master: anchor=Y:\dir14: Created 180 of 1024 files (17.58%)
14:36:34.451 14:36:34.451 Message to master: anchor=Y:\dir14: Created 190 of 1024 files (18.55%)
14:38:13.437 14:38:13.437 Message to master: anchor=Y:\dir14: Created 200 of 1024 files (19.53%)
14:39:01.966 14:39:01.966 Message to master: anchor=Y:\dir11: Created 210 of 1024 files (20.51%)
14:39:57.837 14:39:57.837 Message to master: anchor=Y:\dir15: Created 220 of 1024 files (21.48%)
14:41:51.763 14:41:51.763 Message to master: anchor=Y:\dir13: Created 220 of 1024 files (21.48%)
14:42:31.156 14:42:31.156 Message to master: anchor=Y:\dir14: Created 240 of 1024 files (23.44%)
14:45:32.607 14:45:32.607 Message to master: anchor=Y:\dir15: Created 260 of 1024 files (25.39%)
14:46:44.611 14:46:44.611 Message to master: anchor=Y:\dir11: Created 270 of 1024 files (26.37%)
14:47:53.707 14:47:53.707 Message to master: anchor=Y:\dir14: Created 280 of 1024 files (27.34%)
14:48:25.032 14:48:25.032 Message to master: anchor=Y:\dir12: Created 280 of 1024 files (27.34%)
14:48:56.946 14:48:56.946 Message to master: anchor=Y:\dir13: Created 290 of 1024 files (28.32%)
14:50:40.869 14:50:40.868 Message to master: anchor=Y:\dir11: Created 300 of 1024 files (29.30%)
14:51:22.062 14:51:22.062 Message to master: anchor=Y:\dir15: Created 330 of 1024 files (32.23%)
14:53:55.390 14:53:55.390 Message to master: anchor=Y:\dir14: Created 350 of 1024 files (34.18%)
14:56:20.897 14:56:20.897 Message to master: anchor=Y:\dir14: Created 360 of 1024 files (35.16%)
14:58:08.513 14:58:08.513 Message to master: anchor=Y:\dir11: Created 360 of 1024 files (35.16%)
14:59:34.933 14:59:34.933 Message to master: anchor=Y:\dir12: Created 360 of 1024 files (35.16%)
15:02:15.234 15:02:15.234 Message to master: anchor=Y:\dir13: Created 370 of 1024 files (36.13%)
15:02:48.482 15:02:48.482 Message to master: anchor=Y:\dir14: Created 380 of 1024 files (37.11%)
15:04:27.359 15:04:27.359 Message to master: anchor=Y:\dir13: Created 380 of 1024 files (37.11%)
15:05:57.406 15:05:57.406 Message to master: anchor=Y:\dir15: Created 390 of 1024 files (38.09%)
15:07:18.982 15:07:18.982 Message to master: anchor=Y:\dir11: Created 390 of 1024 files (38.09%)
15:08:15.419 15:08:15.419 Message to master: anchor=Y:\dir11: Created 410 of 1024 files (40.04%)
15:08:50.624 15:08:50.624 Message to master: anchor=Y:\dir13: Created 410 of 1024 files (40.04%)
15:09:51.406 15:09:51.406 Message to master: anchor=Y:\dir15: Created 420 of 1024 files (41.02%)
15:10:02.202 15:10:02.202 file_write error2: 64
15:10:02.202 15:10:02.202 file_write error2: 64
15:10:02.202 15:10:02.202 handle: 0000000000000B38
15:10:02.202 15:10:02.202 seek: 0000000075880000
15:10:02.202 15:10:02.202 handle: 0000000000000BC0
15:10:02.202 15:10:02.202 length: 0000000000020000
15:10:02.202 15:10:02.202 seek: 00000000587E0000
15:10:02.202 15:10:02.202 buffer: 0000000034430000
15:10:02.202 15:10:02.202 length: 0000000000020000
15:10:02.202 15:10:02.202 buffer: 000000002E3E0000
15:10:02.234 15:10:02.234
15:10:02.234 15:10:02.234 Error writing file Y:\dir11\vdb.1_2.dir\vdb.2_2.dir\vdb.3_1.dir\vdb.4_1.dir\vdb.5_2.dir\vdb.6_2.dir\vdb.7_1.dir\vdb.8_2.dir\vdb.9_2.dir\vdb.10_1.dir\vdb_f0001.file
15:10:02.234 15:10:02.234 Error: Windows System Error code: 64: ??¡§????????????
15:10:02.234 15:10:02.234 lba: 1484652544
15:10:02.234 15:10:02.234 xfersize: 131072
15:10:02.234 15:10:02.234 blocks_done: 11327
15:10:02.234 15:10:02.234 bytes_done: 1484652544
15:10:02.234 15:10:02.234 open_for_read: false
15:10:02.234 15:10:02.234
15:10:02.234 java.lang.RuntimeException: Error writing file Y:\dir11\vdb.1_2.dir\vdb.2_2.dir\vdb.3_1.dir\vdb.4_1.dir\vdb.5_2.dir\vdb.6_2.dir\vdb.7_1.dir\vdb.8_2.dir\vdb.9_2.dir\vdb.10_1.dir\vdb_f0001.file
15:10:02.234 Error: Windows System Error code: 64: ??¡§????????????
15:10:02.234 lba: 1484652544
15:10:02.234 xfersize: 131072
15:10:02.234 blocks_done: 11327
15:10:02.234 bytes_done: 1484652544
15:10:02.234 open_for_read: false
15:10:02.234 at Vdb.common.failure(common.java:308)
15:10:02.234 at Vdb.ActiveFile.writeError(ActiveFile.java:611)
15:10:02.234 at Vdb.ActiveFile.writeBlock(ActiveFile.java:458)
15:10:02.234 at Vdb.FwgThread.doSequentialWrite(FwgThread.java:327)
15:10:02.234 at Vdb.OpCreate.doOperation(OpCreate.java:51)
15:10:02.234 at Vdb.OpFormat.doOperation(OpFormat.java:91)
15:10:02.234 at Vdb.FwgThread.run(FwgThread.java:157)'Socket write error' is merely the master finding out that the slave aborted unexpectedly.
It it the '64' you have to worry about.
Windows system error code 64:
(It appears that the Vdbench translation from number to text may have some language issues and therefore can not properly print it).
ERROR_NETNAME_DELETED
64 (0x40)
The specified network name is no longer available. -
I have created a bundle for the class com.xxx.cq.wcm.foundation.profile.impl.TnailImages from the foundation file com.day.cq.wcm.foundation.profile.impl.ProfileImages.
Here are the changes I made ot this class
1. width and height for the default foundation class ProfileImages to have our own default width and height in TnailImages.
2. selectors changed to our own like
* @scr.property name="sling.servlet.selectors" values.0="adjust"
* values.1="adjust.small"
3. Variable changed to private static final String THUMBNAIL = "small";
4. Metatype annotation won't compile for CQ5.5 I changed this * @scr.component metatype="false"
to
* @Component(immediate = true)
This bundle compiled successfully and I see it in OSGi felix console, it is in start mode. Even then I did a restart of this bundle as well as whole CQ5.
When I call an image using the following tag
<img alt="" src="/content/dam/geometrixx/portraits/scott_reynolds.jpg.adjust.small.jpg">
there are no spases anywhere
the servlet ThumbNailImages is not being call, I see the following error in error.log
servletengine Unable to send back last chunk: Software caused connection abort: socket write error
this image is not being displayed in the page, firebug displays failed to load URL
Default img works fine
<img alt="" src="/content/dam/geometrixx/portraits/scott_reynolds.jpg.prof.thumbnail.jpg">
Class com.day.cq.wcm.foundation.profile.impl.ProfileImages is available in
/libs/foundation/src/impl/src/main/java/com/day/cq/wcm/foundation/profile/impl/ProfileImag es.java
Here are my annotations * @Component(immediate = true) * @scr.service * @scr.property name="sling.servlet.resourceTypes" value="nt:file" * @scr.property name="sling.servlet.extensions" values.0="res" * values.1="jpg" * values.2="png" * values.3="gif" * @scr.property name="sling.servlet.selectors" values.0="adjust" * values.1="adjust.small" */ It seems that this servlet is not being called, when I invoke http://xyz.com:4502/content/dam/geometrixx/portraits/scott_reynolds.jpg.adjust.small.jpg I am getting 404 Cannot serve request to /content/dam/geometrixx/portraits/scott_reynolds.jpg.adjust.small.jpg in org.apache.sling.servlets.get.DefaultGetServlet
3 (2013-05-20 11:02:40) TIMER_END{2,resolveServlet(JcrNodeResource, type=dam:Asset, superType=null, path=/content/dam/geometrixx/portraits/scott_reynolds.jpg)} Using servlet com.day.cq.dam.core.impl.servlet.BinaryProviderServlet 3 (2013-05-20 11:02:40) TIMER_END{2,ServletResolution} URI=/content/dam/geometrixx/portraits/scott_reynolds.jpg.adjust.small.jpg handled by Servlet=com.day.cq.dam.core.impl.servlet.BinaryProviderServlet
It seems that my Servlet TnailImages is not being called, it is always going to default servlet.Hi Akhter,
Seeme like in your servlet the value for resourceType set to nt:file. Change it to "sling/servlet/default" and verify.
Thanks,
Sham -
Seeburger sFTP receiver adapter error: Socket Write Error, EOF Received
Hello experts,
We have a sFTP to sFTP scenario for which we are getting below error every time the scenario is executed.
Error Messages are as follows:
Put File: Could not connect to remote host, Reason: Unexpected termination; software caused connection abort; socket write error[unknown cause].
Sometimes below error occurs :
Put File: Could not connect to remote host, Reason: EOF received from remote side [unknown cause].
Every time after restart of sFTP adapter on XI box, failed messages are sent successfully to receiver sFTP server.
There is no error for sender sFTP channel. This error occurs only for the receiver sFTP channel.
On receiver sFTP side, we are using Public key-private key authentication.
Can anyone please let me know what could be the cause of connection failure. ?
Thanks a lot in advance!
(I searched many threads on SDN but could not find anything relevant to this particular situation, so posting a separate question.)
MinalThanks Naveen for the reply..
I missed to mention that we are working on XI3.0 with SP19 and seeburger sFTP is 1.7.4
Looks like key exchange is working properly as after every restart of adapter all failed messages are processed successfully..
It is observed that if there is an idle time of 8-10 hours between last data transfer and current data transfer then this error occurs.
We have increased connection timeout and transmission timeout parameters also for sFTP properties in visual admin.
Thanks,
Minal
Edited by: Minal Vaidya on Oct 5, 2011 8:46 AM -
Urgent helep: socket write error
Hi All,
My application is continuously writing the following error message to the domain
log of WLS eventhough app is running ok
javax.servlet.ServletException: Connection aborted by peer: socket write error
<<no stack trace available>>
My major concern is that,it will fill up the heap soon.
Did anybody run into similar issue?
Thanks in advance.
RC
Please do not cross-port.
RC wrote:
> Hi All,
> My application is continuously writing the following error message to the domain
> log of WLS eventhough app is running ok
>
> javax.servlet.ServletException: Connection aborted by peer: socket write error
> <<no stack trace available>>
>
> My major concern is that,it will fill up the heap soon.
> Did anybody run into similar issue?
> Thanks in advance.
>
> RC
Rajesh Mirchandani
Developer Relations Engineer
BEA Support
-
Simple Webserver SocketException: socket write error
I'm stuck and need some help solving this problem.
When I try to get the 404 message with the webserver, I get this in the output console:
"HttpRequest - java.net.SocketException: Connection reset by peer: socket write error"
I have found the part that makes the problem, but I can't find a solution.
I hope someone can help me with this!
try
outputStream.writeBytes(entityBody);
import java.io.*;
import java.net.*;
import java.util.*;
public final class WebServer
public static void main(String[] args) throws Exception
//Port number
int port = 8080;
// Establish the listen socket.
ServerSocket webSocket = new ServerSocket(port);
// Process HTTP service requests in an infinite loop.
while(true)
// Listen for a TCP connection request
Socket tcpSocket = webSocket.accept();
HttpRequest httpRequest = new HttpRequest(tcpSocket);
Thread thread = new Thread(httpRequest);
thread.start();
import java.io.*;
import java.net.*;
import java.util.*;
public class HttpRequest implements Runnable
final static String CRLF = "\r\n";
private Socket socket;
private String path = "public_html/";
public HttpRequest(Socket socket)
this.socket = socket;
public void run()
try
processReguest();
catch(Exception ex)
System.err.println(ex);
private void processReguest() throws Exception
// Get a reference to the socket's input and output streams.
InputStreamReader inputReader = new InputStreamReader(socket.getInputStream());
DataOutputStream outputStream = new DataOutputStream(socket.getOutputStream());
BufferedReader buffReader = new BufferedReader(inputReader);
String requestLine = buffReader.readLine();
System.out.println();
System.out.println(requestLine);
String headerLine = null;
while((headerLine = buffReader.readLine()).length() != 0)
System.out.println(headerLine);
// Extract the filename from the request line
StringTokenizer tokens = new StringTokenizer(requestLine);
tokens.nextToken();
String fileName = tokens.nextToken();
//Prepend a "." so that the file request is within the current directory
fileName = path + "." + fileName;
//Open the request file
FileInputStream fileInputStream = null;
boolean fileExists = true;
try
fileInputStream = new FileInputStream(fileName);
catch(FileNotFoundException ex)
fileExists = false;
//Construct the response message.
String statusLine = null;
String connection = null;
String contentLength = null;
String contentTypeLine = null;
String entityBody = null;
String contentType = contentType(fileName);
if(!requestLine.startsWith("GET") && !requestLine.startsWith("HEAD"))
statusLine = "HTTP/1.0 405 Method Not Allowed" + CRLF;
contentLength = "Content-Length: 0" + CRLF;
connection = "Connection: close" + CRLF;
contentTypeLine = "Content-type: " + "text/html" + CRLF;
entityBody = "<HTML><HEAD><TITLE>405 - Method Not Allowed</TITLE></HEAD><BODY>405 - Method Not Allowed</BODY></HTML>";
fileInputStream = null;
fileExists = false;
else if(fileExists && !contentType.equals("application/octet-stream"))
statusLine = "HTTP/1.0 200 OK" + CRLF;
contentTypeLine = "Content-type: " + contentType(fileName) + CRLF;
connection = "Connection: close" + CRLF;
contentLength = "Content-Length: " + Integer.toString(fileInputStream.available()) + CRLF;
else if(fileExists && contentType.equals("application/octet-stream"))
statusLine = "HTTP/1.0 415 Unsupported Media Type" + CRLF;
contentLength = "Content-Length: 0" + CRLF;
connection = "Connection: close" + CRLF;
contentTypeLine = "Content-type: " + "text/html" + CRLF;
entityBody = "<HTML><HEAD><TITLE>415 - Unsupported Media Type</TITLE></HEAD><BODY>415 - Unsupported Media Type</BODY></HTML>";
fileInputStream = null;
fileExists = false;
else
statusLine = "HTTP/1.0 404 Bad Request" + CRLF;
contentLength = "Content-Length: 0" + CRLF;
connection = "Connection: close" + CRLF;
contentTypeLine = "Content-type: " + "text/html" + CRLF;
entityBody = "<HTML><HEAD><TITLE>404 - Not Found</TITLE></HEAD><BODY>404 - Not Found</BODY></HTML>";
// Send the status line
outputStream.writeBytes(statusLine);
// Send the connection status
outputStream.writeBytes(connection);
// Send the Content-Length
outputStream.writeBytes(contentLength);
// Send the content type line
outputStream.writeBytes(contentTypeLine);
//Send a blank line to indicate the end of the header lines.
outputStream.writeBytes(CRLF);
// Send the enity body
if(fileExists)
//Den här funkar??
sendBytes(fileInputStream, outputStream);
fileInputStream.close();
else
try
outputStream.writeBytes(entityBody);
catch(SocketException ex)
System.out.println(ex);
socket.close();
inputReader.close();
outputStream.close();
buffReader.close();
private void sendBytes(FileInputStream fileInputStream, DataOutputStream outputStream) throws IOException
//Construct a 1k buffer to hold bytes on their way to the socket
byte[] buffer = new byte[1024];
int bytes = 0;
// Copy request file inte socket's output stream
while((bytes = fileInputStream.read(buffer)) != -1)
outputStream.write(buffer,0, bytes);
private String contentType(String fileName)
if(fileName.endsWith(".htm") || fileName.endsWith(".html"))
return "text/html";
else if(fileName.endsWith(".jpg") || fileName.endsWith(".jpeg"))
return "image/jpeg";
else if(fileName.endsWith(".gif"))
return "image/gif";
else if(fileName.endsWith(".png"))
return "image/png";
else if(fileName.endsWith(".txt"))
return "text/plain";
return "application/octet-stream";
}You've told the client that the content length is zero bytes so I presume it closes the connection as soon as it finishes receiving headers. It depends what client you're using of course but that seems reasonable behaviour...
-
Java.net.SocketException; connection reset by peer. socket write error
Java.SQLException; cannot open anymore tables.
I am getting this error when i'm using Tomcat 3.3 server. I am using servlet classes and access database.This error comes in 1-2 days and then it shows an sql exception that it cannot open any more tables. I am using an access database thru an ODBC datasource.
The problem is solved when tomcat is restarted.
If anybody knows the solution pl.let me know, anitaThanks 4 ur response. I am connecting to the database through JDBC which in turn uses an ODBC data source. The connection has been declared as global and is thus supposed to exist till the servlet is not destroyed.
We r using an access D/B which is inturn accessed through ODBC.
So it is not restarted or disturbed.
Pl. help
Maybe you are looking for
-
Using Windows 7 and firefox 3.6.8 Occurs on all sites w/Firfox but not with IE.
-
Since I got my new iMac, or since I upgraded to iTunes 10 (which happened at the same time), iTunes opens erratically with no iPod or iPhone attached. It even starts playing the first song/book in the list that was opened in the last session. What ca
-
Mighty wired mouse is trigger happy in boot camp
I'm having a problem with the side buttons on the mouse reacting too easily in windows under boot camp on my new iMac. Can't see any adjustment available in control panel. Any ideas?
-
I have video heavy iba, It has 10 videos which come out to around 1.98gb. I believe the AppleStore will pass book validations up to 2 gigs per book? I need to try to cut these videos down so for instance: Video 1 is an m4v converted from an .mov in
-
Hi, have spent the last hour searching previous posts and completly confused myself. Have only edited in 4:3 Pal 720x576 ratio. Have been askes to edit a 16:9 show (pal). Then on to 16:9 DVD Have tested the video workflow, and am fairly happy as to g