http://openoffice.org/bugzilla/show_bug.cgi?id=117817
Issue Type: DEFECT
Summary: xstorable.storeToURL hangs in Solaris
Classification: Application
Product: Word processor
Version: OOo 3.1
Platform: Sun
OS/Version: Solaris
Status: UNCONFIRMED
Severity: enhancement
Priority: P3
Component: code
AssignedTo: [email protected]
ReportedBy: [email protected]
QAContact: [email protected]
Hi,
We use OOo to generate word documents, OOo runs as service,our Java application
pulls data from Database and files like jpgs from local filesystem and puts
them in odt template and stores the generated document to temp location and
returns the stream for the calling API.
The temp directory is on SAN file system on Solaris server.
While most of the document generations work fine, it hangs for some doucments.
Below is the code snippet, the call that blocks for ever is
xstorable.storeToURL(targetDocName, propertyvalue ), we will have to restart
OOo when this occurs.
public void save(XTextDocument doc, String targetDocName, String
newDocName, StringBuffer errorMsg){
String strFormat = getFileExtension(targetDocName);
try {
XStorable xstorable = ( XStorable ) UnoRuntime.queryInterface(
XStorable.class, doc);
PropertyValue[] propertyvalue = new PropertyValue[ 2 ];
propertyvalue[ 0 ] = new PropertyValue();
propertyvalue[ 0 ].Name = "Overwrite";
propertyvalue[ 0 ].Value = new Boolean(true);
propertyvalue[ 1 ] = new PropertyValue();
propertyvalue[ 1 ].Name = "FilterName";
propertyvalue[ 1 ].Value =
getDocumentFormatFilterNameText(strFormat);
if(strFormat.indexOf("pdf")!=-1) {
xstorable.storeToURL(targetDocName, propertyvalue );
}else {
xstorable.storeAsURL(targetDocName, propertyvalue );
}
//Logger.debug(CLASS_ID, "document saved under " + targetDocName,
null);
tempFileNames.add(newDocName);
}catch( Exception e ) {
errorMsg.append(e.toString());
Logger.error(CLASS_ID, "exception: " + e, e);
} // end of try..catch block
}
Below is truss output for sucessfull and failed doc generations
Successful Document generation truss
Line 27121: 18758/9: 102.4495
access("/xxxx/temp/0.3952605221239466.doc", F_OK) Err#2 ENOENT
Line 27125: 18758/9: 102.4542
access("/xxxx/temp/0.3952605221239466.doc", F_OK) Err#2 ENOENT
Line 27126: 18758/9: 102.4574
access("/xxxx/temp/0.3952605221239466.doc", F_OK) Err#2 ENOENT
Line 27163: 18758/9: 102.4663
stat64("/xxxx/temp/.~lock.0.3952605221239466.doc#", 0xF96FA528) Err#2 ENOENT
Line 27164: 18758/9: 102.4668
open64("/xxxx/temp/.~lock.0.3952605221239466.doc#", O_RDWR|O_CREAT|O_EXCL,
0666) = 37
Line 27178: 18758/9: 102.4723
access("xxxx/temp/0.3952605221239466.doc", F_OK) Err#2 ENOENT
Line 27179: 18758/9: 102.4728
access("xxxx/temp/0.3952605221239466.doc", F_OK) Err#2 ENOENT
Line 27180: 18758/9: 102.4738
access("xxxx/temp/0.3952605221239466.doc", F_OK) Err#2 ENOENT
Line 27181: 18758/9: 102.4743
access("xxxx/temp/0.3952605221239466.doc", F_OK) Err#2 ENOENT
Line 27789: 18758/9: 103.2776
access("/xxxx/temp/0.3952605221239466.doc", F_OK) Err#2 ENOENT
Line 27790: 18758/9: 103.2782
access("/xxxx/temp/0.3952605221239466.doc", F_OK) Err#2 ENOENT
Line 27799: 18758/9: 103.2816
open64("/xxxx/temp/0.3952605221239466.doc", O_RDWR|O_CREAT|O_EXCL, 0666) = 37
Line 27816: 18758/9: 103.2872
access("xxxx/temp/0.3952605221239466.doc", F_OK) = 0
Line 27817: 18758/9: 103.2876
lstat64("xxxx/temp/0.3952605221239466.doc", 0xF96FA9D8) = 0
Line 27876: 18758/9: 103.3177
access("xxxx/temp/0.3952605221239466.doc", F_OK) = 0
Hung document generation truss
Line 111171: 2095/23: 130.0621
access("/xxxx/temp/0.5971080178392973.doc", F_OK) Err#2 ENOENT
Line 111175: 2095/23: 130.0663
access("/xxxx/temp/0.5971080178392973.doc", F_OK) Err#2 ENOENT
Line 111176: 2095/23: 130.0699
access("/xxxx/temp/0.5971080178392973.doc", F_OK) Err#2 ENOENT
Line 111212: 2095/23: 130.0798
stat64("/xxxx/temp/.~lock.0.5971080178392973.doc#", 0xF5DFA528) Err#2 ENOENT
Line 111213: 2095/23: 130.0804
open64("/xxxx/temp/.~lock.0.5971080178392973.doc#", O_RDWR|O_CREAT|O_EXCL,
0666) = 38
Line 111225: 2095/23: 130.0864
access("xxxx/temp/0.5971080178392973.doc", F_OK) Err#2 ENOENT
Line 111226: 2095/23: 130.0870
access("xxxx/temp/0.5971080178392973.doc", F_OK) Err#2 ENOENT
Line 111227: 2095/23: 130.0882
access("xxxx/temp/0.5971080178392973.doc", F_OK) Err#2 ENOENT
Line 111228: 2095/23: 130.0887
access("xxxx/temp/0.5971080178392973.doc", F_OK) Err#2 ENOENT
--
Configure bugmail: http://openoffice.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
---------------------------------------------------------------------
Please do not reply to this automatically generated notification
from Bugzilla. Please log into the website and enter your comments.
---------------------------------------------------------------------
--
-----------------------------------------------------------------
To unsubscribe send email to [email protected]
For additional commands send email to [email protected]
with Subject: help
--
-----------------------------------------------------------------
To unsubscribe send email to [email protected]
For additional commands send email to [email protected]
with Subject: help