perfino startup error; possible corrupted H2 database - perfino

Looks like something got corrupted with our H2 database. Here is the output of server.log upon startup. Is there any way to recover the data, or are we better off starting fresh?
2018-02-26 13:24:03,867 INFO [main] server: Starting server
2018-02-26 13:24:04,602 INFO [main] server: Starting database in directory E:\ProgramData\perfino
2018-02-26 13:24:05,381 ERROR [main] server: Cannot connect to database or access schema version
org.h2.jdbc.JdbcSQLException: General error: "java.lang.RuntimeException: rowcount remaining=1 SYS" [50000-176]
at org.h2.message.DbException.getJdbcSQLException(DbException.java:344)
at org.h2.message.DbException.get(DbException.java:167)
at org.h2.message.DbException.convert(DbException.java:294)
at org.h2.engine.Database.openDatabase(Database.java:291)
at org.h2.engine.Database.<init>(Database.java:254)
at org.h2.engine.Engine.openSession(Engine.java:57)
at org.h2.engine.Engine.openSession(Engine.java:164)
at org.h2.engine.Engine.createSessionAndValidate(Engine.java:142)
at org.h2.engine.Engine.createSession(Engine.java:125)
at org.h2.engine.Engine.createSession(Engine.java:27)
at org.h2.engine.SessionRemote.connectEmbeddedOrServer(SessionRemote.java:331)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:107)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:91)
at org.h2.Driver.connect(Driver.java:74)
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at com.perfino.c.a.a(ejt:207)
at com.perfino.c.a.a(ejt:138)
at com.perfino.server.ServerMain.main(ejt:248)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.exe4j.runtime.LauncherEngine.launch(LauncherEngine.java:65)
at com.exe4j.runtime.WinLauncher$2.run(WinLauncher.java:96)
Caused by: java.lang.RuntimeException: rowcount remaining=1 SYS
at org.h2.message.DbException.throwInternalError(DbException.java:241)
at org.h2.table.RegularTable.addIndex(RegularTable.java:284)
at org.h2.engine.Database.open(Database.java:705)
at org.h2.engine.Database.openDatabase(Database.java:260)
... 21 more

There is no data recovery tool for H2. If you have a backup of the database, I would recommend switching to the backup.
To reset the database, go to the database directory and remove the files perfino.h2.db and perfino.trace.db while the server is stopped.
The configuration data is located in config.h2.db and will be preserved.

Related

OpsHub migration failure: The set of pending renames would cause a name collision

I have a problem during the migration of a TFS 2010 instance to Visual Studio Online. The error is:
OH-SCM-009: Error occurred while sync. TF14059: Unable to process the pending changes requested. The set of pending renames would cause a name collision for $/.../Releases/Release 2.1/.../.../Properties/Resources.Designer.cs.
The Changeset mentioned in the failure log dialog does not even include this file or a rename for any parent folder. The pending changes in the workspace created by the OpsHub tools contains 480 changes; the source changeset contains not even 50 changes...
How can I solve this issue?
The log at this point (I replaced sensitive information in the path with ...)
10/26/2015 15:44:50,991 ERROR [DefaultQuartzScheduler_Worker-7] (com.opshub.eai.SyncEaiProcess) - Error in executing process definition : SCM Default Integration Workflow at node callMethod
OpsHub-012013: Process execution failed on node: callMethod, in process definition: 'SCM Default Integration Workflow'; nested exception is : script evaluation exception
com.opshub.exceptions.eai.EAIProcessEngineException: OpsHub-012013: Process execution failed on node: callMethod, in process definition: 'SCM Default Integration Workflow'; nested exception is : script evaluation exception
at com.opshub.eai.ProcessEngine.executeTask(ProcessEngine.java:116)
at com.opshub.eai.ProcessEngine.executeProcess(ProcessEngine.java:44)
at com.opshub.eai.SyncEaiProcess.syncEvent(SyncEaiProcess.java:198)
at com.opshub.eai.SyncEaiProcess.sync(SyncEaiProcess.java:123)
at com.opshub.eai.OIMEventGenerator.process(OIMEventGenerator.java:247)
at com.opshub.jobs.core.OHJob.execute(OHJob.java:87)
at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:525)
Caused by: org.jbpm.graph.def.DelegationException: script evaluation exception
at org.jbpm.graph.action.Script.eval(Script.java:139)
at org.jbpm.graph.action.Script.eval(Script.java:73)
at org.jbpm.graph.action.Script.execute(Script.java:62)
at org.jbpm.graph.def.GraphElement.executeAction(GraphElement.java:259)
at org.jbpm.graph.def.GraphElement.executeActions(GraphElement.java:215)
at org.jbpm.graph.def.GraphElement.fireAndPropagateEvent(GraphElement.java:185)
at org.jbpm.graph.def.GraphElement.fireEvent(GraphElement.java:169)
at org.jbpm.graph.def.Transition.take(Transition.java:138)
at org.jbpm.graph.def.Node.leave(Node.java:393)
at org.jbpm.graph.exe.Token.signal(Token.java:192)
at org.jbpm.graph.exe.Token.signal(Token.java:140)
at org.jbpm.graph.exe.ProcessInstance.signal(ProcessInstance.java:270)
at com.opshub.eai.ProcessEngine.executeTask(ProcessEngine.java:102)
... 7 more
Caused by: com.opshub.eai.core.exceptions.OIMSCMAdapterException: OH-SCM-009: Error occurred while sync. TF14059: Unable to process the pending changes requested. The set of pending renames would cause a name collision for $/.../Releases/Release 2.1/.../.../Properties/Resources.Designer.cs.
at com.opshub.eai.core.adapters.OIMSCMAdapter.sync(OIMSCMAdapter.java:371)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at bsh.Reflect.invokeMethod(Unknown Source)
at bsh.Reflect.invokeObjectMethod(Unknown Source)
at bsh.Name.invokeMethod(Unknown Source)
at bsh.BSHMethodInvocation.eval(Unknown Source)
at bsh.BSHPrimaryExpression.eval(Unknown Source)
at bsh.BSHVariableDeclarator.eval(Unknown Source)
at bsh.BSHTypedVariableDeclaration.eval(Unknown Source)
at bsh.Interpreter.eval(Unknown Source)
at bsh.Interpreter.eval(Unknown Source)
at bsh.Interpreter.eval(Unknown Source)
at org.jbpm.graph.action.Script.eval(Script.java:130)
... 19 more
Caused by: java.lang.RuntimeException: TF14059: Unable to process the pending changes requested. The set of pending renames would cause a name collision for $/.../Releases/Release 2.1/.../.../Properties/Resources.Designer.cs.
at com.opshub.eai.tfssource.adapter.TFSVersionControlConnector.checkInAll(TFSVersionControlConnector.java:165)
at com.opshub.eai.tfssource.adapter.TFSSourceAdapter.checkIn(TFSSourceAdapter.java:239)
at com.opshub.eai.tfssource.adapter.TFSSourceAdapter$$EnhancerByCGLIB$$40eba2e5.CGLIB$checkIn$4(<generated>)
at com.opshub.eai.tfssource.adapter.TFSSourceAdapter$$EnhancerByCGLIB$$40eba2e5$$FastClassByCGLIB$$ceeeacdd.invoke(<generated>)
at net.sf.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:167)
at com.opshub.eai.core.adapters.caching.AdapterCacheHandler.intercept(AdapterCacheHandler.java:119)
at com.opshub.eai.tfssource.adapter.TFSSourceAdapter$$EnhancerByCGLIB$$40eba2e5.checkIn(<generated>)
at com.opshub.eai.core.adapters.OIMSCMAdapter.sync(OIMSCMAdapter.java:287)
... 34 more
Caused by: TF14059: Unable to process the pending changes requested. The set of pending renames would cause a name collision for $/.../Releases/Release 2.1/.../.../Properties/Resources.Designer.cs.
at org.apache.axis.message.SOAPFaultBuilder.createFault(SOAPFaultBuilder.java:222)
at org.apache.axis.message.SOAPFaultBuilder.endElement(SOAPFaultBuilder.java:129)
at org.apache.axis.encoding.DeserializationContext.endElement(DeserializationContext.java:1087)
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(Unknown Source)
at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source)
at javax.xml.parsers.SAXParser.parse(Unknown Source)
at org.apache.axis.encoding.DeserializationContext.parse(DeserializationContext.java:227)
at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:696)
at org.apache.axis.Message.getSOAPEnvelope(Message.java:435)
at org.apache.axis.handlers.soap.MustUnderstandChecker.invoke(MustUnderstandChecker.java:62)
at org.apache.axis.client.AxisClient.invoke(AxisClient.java:206)
at org.apache.axis.client.Call.invokeEngine(Call.java:2784)
at org.apache.axis.client.Call.invoke(Call.java:2767)
at org.apache.axis.client.Call.invoke(Call.java:2443)
at org.apache.axis.client.Call.invoke(Call.java:2366)
at org.apache.axis.client.Call.invoke(Call.java:1812)
at com.opshub.tfs.test.BasicHttpBinding_ITFSWebServiceStub.checkinAllStatus(BasicHttpBinding_ITFSWebServiceStub.java:5115)
at com.opshub.eai.tfssource.adapter.TFSVersionControlConnector.checkInAll(TFSVersionControlConnector.java:154)
... 41 more
The following solved the problem:
Stop the migrations and close the migration utility.
Cleanup the tfs client cache from the machine where Migration Utility is installed by deleting the content of following folder(s):
%localappdata%\Microsoft\Team Foundation\3.0\Cache\
%localappdata%\Microsoft\Team Foundation\4.0\Cache\
%localappdata%\Microsoft\Team Foundation\5.0\Cache\
%localappdata%\Microsoft\Team Foundation\5.0\Cache\
Connect to your VSO endpoint from visual studio and delete all the workspace whose name starts with "OH-X..XX".
Now start the migration utility as well as the migration and retry the failures.
Thanks #OpsHub support.

Unable to run backup script shipped with Neo4j Enterprise 1.8.2

Operating System: Windows 2012
Neo4j Version: 1.8.2 Enterprise
I am having trouble using the Neo4jBackup.bat script to backup the Neo4j server. I am running the following command from an Administrator command prompt:
.\Neo4jBackup.bat -full -from single://127.0.0.1 -to E:\Neo4j-Backup
When I run this command, I receive the following output and stack trace:
Performing full backup from 'single://127.0.0.1'
Exception in thread "main" java.lang.RuntimeException: java.io.IOException: The filename, directory name, or volume label syntax is incorrect
at org.neo4j.index.impl.lucene.LuceneDataSource.newIndexWriter(LuceneDataSource.java:685)
at org.neo4j.index.impl.lucene.LuceneDataSource.syncGetIndexSearcher(LuceneDataSource.java:574)
at org.neo4j.index.impl.lucene.LuceneDataSource.getIndexSearcher(LuceneDataSource.java:540)
at org.neo4j.index.impl.lucene.LuceneDataSource.makeSureAllIndexesAreInstantiated(LuceneDataSource.java:893)
at org.neo4j.index.impl.lucene.LuceneDataSource.listStoreFiles(LuceneDataSource.java:833)
at org.neo4j.com.ServerUtil.rotateLogsAndStreamStoreFiles(ServerUtil.java:129)
at org.neo4j.backup.BackupImpl.fullBackup(BackupImpl.java:41)
at org.neo4j.backup.BackupClient$BackupRequestType$1.call(BackupClient.java:73)
at org.neo4j.backup.BackupClient$BackupRequestType$1.call(BackupClient.java:69)
at org.neo4j.com.Server$4.run(Server.java:427)
at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: java.io.IOException: The filename, directory name, or volume label syntax is incorrect
at java.io.WinNTFileSystem.canonicalize0(Native Method)
at java.io.Win32FileSystem.canonicalize(Unknown Source)
at java.io.File.getCanonicalPath(Unknown Source)
at org.apache.lucene.store.FSDirectory.getCanonicalPath(FSDirectory.java:129)
at org.apache.lucene.store.FSDirectory.<init>(FSDirectory.java:143)
at org.apache.lucene.store.MMapDirectory.<init>(MMapDirectory.java:93)
at org.apache.lucene.store.FSDirectory.open(FSDirectory.java:180)
at org.apache.lucene.store.FSDirectory.open(FSDirectory.java:172)
at org.neo4j.index.impl.lucene.LuceneDataSource$DirectoryGetter$1.getDirectory(LuceneDataSource.java:914)
at org.neo4j.index.impl.lucene.LuceneDataSource.newIndexWriter(LuceneDataSource.java:664)
... 15 more
What am I doing wrong? The Neo4j settings related to backup are set to:
online_backup_enabled=true
online_backup_port=6362
Your assistance is appreciated. Thank you.
Amir.
Could you try using valid URI syntax for the backup location, like
.\Neo4jBackup.bat -full -from single://127.0.0.1 -to /E:/Neo4j-Backup
Does that work?
Try running the command like this
Neo4jBackup.bat -full -from single://127.0.0.1 -to E:/Neo4j-Backup

Websphere Application server not starting

We have one Websphere Application server instance which went down with OutOfMemory and is not starting after that. The error message in the log below. Any urgent help will be highly appreciated. WAS version is 6.0.2.33
03/04/13 14:16:01:536 BST] 0000000a WsServerImpl E WSVR0009E: Error occurred during startup
META-INF/ws-server-components.xml
[03/04/13 14:16:01:547 BST] 0000000a WsServerImpl E WSVR0009E: Error occurred during startup
com.ibm.ws.exception.ConfigurationError: com.ibm.ws.exception.ConfigurationError: Problem initializing AdminImpl:
at com.ibm.ws.runtime.WsServerImpl.bootServerContainer(WsServerImpl.java:180)
at com.ibm.ws.runtime.WsServerImpl.start(WsServerImpl.java:133)
at com.ibm.ws.runtime.WsServerImpl.main(WsServerImpl.java:387)
at com.ibm.ws.runtime.WsServer.main(WsServer.java:53)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:85)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:58)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:60)
at java.lang.reflect.Method.invoke(Method.java:391)
at com.ibm.ws.bootstrap.WSLauncher.run(WSLauncher.java:219)
at java.lang.Thread.run(Thread.java:568)
Caused by: com.ibm.ws.exception.ConfigurationError: Problem initializing AdminImpl:
at com.ibm.ws.management.component.AdminImpl.initialize(AdminImpl.java:780)
at com.ibm.ws.runtime.component.ContainerImpl.initializeComponent(ContainerImpl.java:1160)
at com.ibm.ws.runtime.component.ContainerImpl.initializeComponents(ContainerImpl.java:1014)
at com.ibm.ws.runtime.component.ServerImpl.initialize(ServerImpl.java:284)
at com.ibm.ws.runtime.WsServerImpl.bootServerContainer(WsServerImpl.java:173)
... 10 more
Caused by: com.ibm.ws.exception.ConfigurationWarning: Problem registering JVM MBean.
at com.ibm.ws.management.component.AdminImpl.initialize(AdminImpl.java:405)
... 14 more
Caused by: com.ibm.websphere.management.exception.AdminException: ADMN0005E: The service is unable to activate MBean: type JVM, collaborator com.ibm.ws.management.component.JVMMBean#6da65714, configuration ID JVM, descriptor null.
at com.ibm.ws.management.MBeanFactoryImpl.activateMBean(MBeanFactoryImpl.java:654)
at com.ibm.ws.management.MBeanFactoryImpl.activateMBean(MBeanFactoryImpl.java:400)
at com.ibm.ws.management.component.AdminImpl.initialize(AdminImpl.java:394)
... 14 more
Caused by: com.ibm.websphere.management.exception.DescriptorParseException: ADMN0001W: The service is unable to parse the MBean descriptor file com/ibm/ws/management/descriptor/xml/JVM.xml.
at com.ibm.ws.management.descriptor.MBeanDescriptorLoader.loadDescriptor(MBeanDescriptorLoader.java:164)
at com.ibm.ws.management.descriptor.MBeanDescriptorManager.loadDescriptorFile(MBeanDescriptorManager.java:349)
at com.ibm.ws.management.descriptor.MBeanDescriptorManager.getDescriptor(MBeanDescriptorManager.java:147)
at com.ibm.ws.management.MBeanFactoryImpl.activateMBean(MBeanFactoryImpl.java:427)
... 16 more
Caused by: java.lang.NullPointerException
at javax.management.MBeanNotificationInfo.equals(MBeanNotificationInfo.java:155)
at com.ibm.ws.management.descriptor.MBeanDescriptorLoader.addFeatures(MBeanDescriptorLoader.java:461)
at com.ibm.ws.management.descriptor.MBeanDescriptorLoader.loadParentTypes(MBeanDescriptorLoader.java:434)
at com.ibm.ws.management.descriptor.MBeanDescriptorLoader.endDocument(MBeanDescriptorLoader.java:217)
at org.apache.xerces.parsers.AbstractSAXParser.endDocument(Unknown Source)
at org.apache.xerces.impl.dtd.XMLDTDValidator.endDocument(Unknown Source)
at org.apache.xerces.impl.XMLDocumentScannerImpl.endEntity(Unknown Source)
at org.apache.xerces.impl.XMLEntityManager.endEntity(Unknown Source)
at org.apache.xerces.impl.XMLEntityScanner.load(Unknown Source)
at org.apache.xerces.impl.XMLEntityScanner.skipSpaces(Unknown Source)
at org.apache.xerces.impl.XMLDocumentScannerImpl$TrailingMiscDispatcher.dispatch(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
at com.ibm.ws.management.descriptor.MBeanDescriptorLoader.loadDescriptor(MBeanDescriptorLoader.java:155)
... 19 more
I think your websphere is trying to use SUN JDK/JRE instead of IBM JDK/JRE.
you can delete all instance of Websphere servers and then you need to restart it and synch the node , node agent before to check jdk version in your environment path in the WAS.

Cassandra streaming

I am using cassandra version 1.1.4 and for bulk loading data. I am creating SSTables and then trying to stream them to the cassandra cluster. I am trying this only on a single node (my own system) and thus have kept replication factor as 1. But streaming fails every time I try to, and the following error message occurs
progress: [/10.66.92.92 0/6 (0)] [total: 0 - 0MB/s (avg: 0MB/s)]Streaming session to /10.66.92.92 failed
Exception in thread "Streaming to /10.66.92.92:1" java.lang.RuntimeException: java.io.EOFException
at org.apache.cassandra.utils.FBUtilities.unchecked(FBUtilities.java:628)
at org.apache.cassandra.utils.WrappedRunnable.run(WrappedRunnable.java:34)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: java.io.EOFException
at java.io.DataInputStream.readInt(Unknown Source)
at org.apache.cassandra.streaming.FileStreamTask.receiveReply(FileStreamTask.java:194)
at org.apache.cassandra.streaming.FileStreamTask.stream(FileStreamTask.java:181)
at org.apache.cassandra.streaming.FileStreamTask.runMayThrow(FileStreamTask.java:94)
at org.apache.cassandra.utils.WrappedRunnable.run(WrappedRunnable.java:30)
... 3 more
progress: [/10.66.92.92 1/6 (16)] [total: 16 - 0MB/s (avg: 0MB/s)]Streaming to the following hosts failed:
[/10.66.92.92]
When I close the server and restart it, I can see my tables inserted, but I dont want this. I want streaming to happen successfully and avoid restarting the server again and again. Cassandra folks please help! I am Using a Windows 7 environment

Ant FTP task fails: java.net.SocketException

I am trying to, with Ant, upload a zip-file via FTP to a Windows Server 2008 R2 FTP server (if it matters). I have a similar task to create the directory /Release, which works, yet somehow uploading via FTP gives me problems.
<ftp action="put"
userid="${adapter.ftp.username}"
password="${adapter.ftp.password}"
server="${ftp.hostname}"
retriesAllowed="5"
verbose="true"
systemTypeKey="WINDOWS"
remotedir="/Release" >
<fileset dir=".">
<include name="Adapter.zip"/>
</fileset>
</ftp>
The Ant debug log:
[ftp] Opening FTP connection to 192.168.2.120
[ftp] custom configuration
[ftp] custom config: system key = WINDOWS
[ftp] custom config: server language code =
[ftp] connected
[ftp] logging in to FTP server
[ftp] login succeeded
[ftp] changing the remote directory to /Release
[ftp] sending files
fileset: Setup scanner in dir C:\dir with patternSet{ includes: [adapter.zip] excludes: [] }
[ftp] transferring C:\dir\adapter.zip
[ftp] try #1: IO error (adapter.zip), retrying
/.../
[ftp] try #6: IO error (adapter.zip), number of maximum retries reached (5), giving up
[ftp] disconnecting
build.xml:165: error during FTP transfer: java.net.SocketException: Software caused connection abort: socket write error
at org.apache.tools.ant.taskdefs.optional.net.FTP.execute(FTP.java:2538)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291)
at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
at org.apache.tools.ant.Task.perform(Task.java:348)
at org.apache.tools.ant.Target.execute(Target.java:390)
at org.apache.tools.ant.Target.performTasks(Target.java:411)
at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399)
at org.apache.tools.ant.Project.executeTarget(Project.java:1368)
at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)
at org.eclipse.ant.internal.launching.remote.EclipseDefaultExecutor.executeTargets(EclipseDefaultExecutor.java:32)
at org.apache.tools.ant.Project.executeTargets(Project.java:1251)
at org.eclipse.ant.internal.launching.remote.InternalAntRunner.run(InternalAntRunner.java:424)
at org.eclipse.ant.internal.launching.remote.InternalAntRunner.main(InternalAntRunner.java:138)
Caused by: java.net.SocketException: Software caused connection abort: 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 sun.nio.cs.StreamEncoder.writeBytes(Unknown Source)
at sun.nio.cs.StreamEncoder.implFlushBuffer(Unknown Source)
at sun.nio.cs.StreamEncoder.implFlush(Unknown Source)
at sun.nio.cs.StreamEncoder.flush(Unknown Source)
at java.io.OutputStreamWriter.flush(Unknown Source)
at java.io.BufferedWriter.flush(Unknown Source)
at org.apache.commons.net.ftp.FTP.sendCommand(FTP.java:472)
at org.apache.commons.net.ftp.FTP.sendCommand(FTP.java:534)
at org.apache.commons.net.ftp.FTP.port(FTP.java:862)
at org.apache.commons.net.ftp.FTPClient._openDataConnection_(FTPClient.java:463)
at org.apache.commons.net.ftp.FTPClient.__storeFile(FTPClient.java:374)
at org.apache.commons.net.ftp.FTPClient.storeFile(FTPClient.java:1379)
at org.apache.tools.ant.taskdefs.optional.net.FTP.sendFile(FTP.java:2149)
at org.apache.tools.ant.taskdefs.optional.net.FTP$2.execute(FTP.java:1792)
at org.apache.tools.ant.util.RetryHandler.execute(RetryHandler.java:57)
at org.apache.tools.ant.taskdefs.optional.net.FTP.executeRetryable(FTP.java:1709)
at org.apache.tools.ant.taskdefs.optional.net.FTP.transferFiles(FTP.java:1788)
at org.apache.tools.ant.taskdefs.optional.net.FTP.transferFiles(FTP.java:1845)
at org.apache.tools.ant.taskdefs.optional.net.FTP.execute(FTP.java:2534)
... 15 more
What am I doing wrong?
Turning off the Windows firewall resolved the issue.
One thing worth trying is passive ftp. The Ant ftp task has a passive attribute for this:
selects passive-mode ("yes") transfers, for better through-firewall
connectivity, at the price of performance. Defaults to "no"
There's a write up of the difference between active and passive mode here. The key point is that for ftp commands (including mkdir and the chdir that works in the OP question) a single open port - usually port 21 - is used. But for data transfers a different, possibly firewall-blocked port is used. Firewall-related problems with ftp can sometimes show the symptoms mentioned above.

Resources