troubleshooting XSLT performance

Hi,

I am using .Net 2.0 to run an XSLT process.

It basically takes a word XML document at it's input, plus a separate XML 
file opened using the document() function and applies changes to the word 
document on the basis of the secondary file.

A customer has reported that for one document, the process takes about an 
hour to run (the word doc is 4mb and the file of changes is about 100k) 
whereas for other similarly sized files it normally takes a few seconds.

we have been unable to reproduce the problem in the development environment. 
clearly the problem is data dependent but the customer's data is 
confidential so they can't send the files to us

is there any way I can get any kind of diagnostics to find out what is 
slowing it down?

TIA

Andy


0
ajfish (40)
9/17/2008 2:39:19 PM
dotnet.xml 7266 articles. 0 followers. Follow

4 Replies
802 Views

Similar Articles

[PageSpeed] 5

Andy Fish wrote:

> is there any way I can get any kind of diagnostics to find out what is 
> slowing it down?

There is a profiler 
http://blogs.msdn.com/xmlteam/archive/2008/02/07/announcing-the-xslt-profiler-addin-for-vs-2008.aspx 


-- 

	Martin Honnen --- MVP XML
	http://JavaScript.FAQTs.com/
0
mahotrash (1778)
9/17/2008 2:48:44 PM
"Martin Honnen" <mahotrash@yahoo.de> wrote in message 
news:OjjD9RNGJHA.5780@TK2MSFTNGP03.phx.gbl...
> Andy Fish wrote:
>
>> is there any way I can get any kind of diagnostics to find out what is 
>> slowing it down?
>
> There is a profiler 
> http://blogs.msdn.com/xmlteam/archive/2008/02/07/announcing-the-xslt-profiler-addin-for-vs-2008.aspx

hmm thanks, I didn't know about that one and it will definitely come in 
handy in our development environment

unfortunately at the moment I'm stuck with the customer's production 
environment. I can deliver him a special build with instrumentation in but I 
can't install visual studio on his production box.


0
ajfish (40)
9/17/2008 3:02:40 PM
* Andy Fish wrote in microsoft.public.dotnet.xml:
>we have been unable to reproduce the problem in the development environment. 
>clearly the problem is data dependent but the customer's data is 
>confidential so they can't send the files to us

You can send them an XSLT that removes all confidential data from the
document, like removing attributes not used in the transformation, use
replacement text for text nodes, and so on. They could then send you
the remaining skeleton. How easy this would be depends on the formats
in question of course.
-- 
Bj�rn H�hrmann � mailto:bjoern@hoehrmann.de � http://bjoern.hoehrmann.de
0
bjoern1 (135)
9/17/2008 3:35:07 PM
"Bjoern Hoehrmann" <bjoern@hoehrmann.de> wrote in message 
news:ci82d45b80st2rmu9mnbsirbeptbg25icl@hive.bjoern.hoehrmann.de...
>* Andy Fish wrote in microsoft.public.dotnet.xml:
>>we have been unable to reproduce the problem in the development 
>>environment.
>>clearly the problem is data dependent but the customer's data is
>>confidential so they can't send the files to us
>
> You can send them an XSLT that removes all confidential data from the
> document, like removing attributes not used in the transformation, use
> replacement text for text nodes, and so on. They could then send you
> the remaining skeleton. How easy this would be depends on the formats
> in question of course.
> -- 

hey that's a neat idea. the document is Word XML so all the words (and only 
the words) will be within <w:t> elements. I think they probably have images 
and diagrams but we could work around that...

at the moment i'm working on changing the XSLT to add logging using a custom 
script block to call log4net. hopefully they can send me the resulting log 
file and i should be able to figure out from that what's happening. if that 
doesn't work, I think yours will be my next stop

thanks

Andy
 


0
ajfish (40)
9/17/2008 4:39:43 PM
Reply:

Similar Artilces:

Troubleshoot
I am find an error in this statement, and the error shown is "Application defined error or object defined error" ActiveSheet.Range(Chr(r + 64 + 0) & c).Formula = "=index(" & Chr(11 + 64) & "2:" & Chr(11 + 64) & (max_date) & ",match(" & Chr(1 + 64) & r & ",L2:L" & max_row & "))" The above statement basically used to match the data from one column with any column, corresponding to the indexed column. used for matching dates and times Could any one please solve this First, you can use oth...

Using XSLT to Append Attributes to an XSD File
I wrote an application to scrape a database and create an XSD file which will be annotated by a map file in order to create a Typed DataSet. I was wondering if I could do the annotation using XSLT. Here is background on Typed DataSet: Using Annotations with a Typed DataSet http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpguide/html/cpconUsingAnnotationsWithTypedDataSet.asp I need to append an attribute a specific XML node. Change <xs:element name="column_1" msdata:ReadOnly="true" minOccurs="0" type="xs:short" /> ...

XSLT: Creating anchors from outer XML files
Hi, I'm trying to put the links (href attribute of the <a> element) out of my XSLT files, in a XML file, and read it from the stylesheet. I suppose that I have to use the document() function to link to the XML file containing the URLs, but I don't know how to do it. I've tried something like this: This is XML file containing the URLs (link.xml): <?xml version="1.0" encoding="utf-8" ?> <LINKS> <L1> /SomePage.aspx </L1> </LINKS> And this is the code from the stylesheet: <a href="{document('link.xml')/L...

Troubleshoot
Can someone help me with the following statement: =AVERAGEIFS(BeezidTable[final],BeezidTable[time],">TIME(HOUR(NOW()),MINUTE(NOW()),SECOND(NOW()))") It returns DIV/0, but it should return a proper average. Thanks, Roy Try =AVERAGEIF(Range, ">" & NOW()-INT(NOW()) , Sum Range) "rwtrader" wrote: > Can someone help me with the following statement: > =AVERAGEIFS(BeezidTable[final],BeezidTable[time],">TIME(HOUR(NOW()),MINUTE(NOW()),SECOND(NOW()))") > It returns DIV/0, but it should return a proper average. > Thanks, Roy...

Field Code WOn't Perform
I inserted the following Field Code: MACROBUTTON NOName [Click and type the Who Should Come] There is no macro named NOName and when I click it nothing happens. I can toggle using Alt-F9 and see it 2 ways: {MACROBUTTON NOName [Click and type the Who Should Come]} AND [Click and type the Who Should Come] But neither way allows me to enter any text. Ideas? See how the procedure you are using differs from the description at http://word.mvps.org/FAQs/TblsFldsFms/UsingMacroButton.htm -- Suzanne S. Barnhill Microsoft MVP (Word) Words into Type Fairhope, Alabama USA h...

Confused with XSLT
I am new to XSLT and am confused by this example. If the {href} is part of the img tag, then the value will appear, however, when I specify "<span>{href}</span>", then the value of <href> will not appear. Is there a reason that one way works and the other does not? Or do I need to use some escape code to force printing? Thanks P.S. I know that a way to print the item is "<xsl:value-of select="href"/>" ========================== <xsl:variable name="image-dir">/images</xsl:variable> <xsl:template match=&qu...

Need Troubleshooting Tips
On SBS2003 w/Exchange, I have a user that has intermitent delivery failures. In most cases, there is no notification that that the email was not delivered. Here is an example: user A will log into OWA to send an email to an internal user B. To user A it looks as if the email has been sent, and a copy shows up in their Sent Items folder. User B does not recieve the email. This happens with both internal and external users, but sporadically. When I went to test it, it was working ok. This is only happening with one user. He has Outlook 2003 configured with 2 mail accounts, Excha...

Can't perform online operations with Money 2006
I'm a newbie to MS Money 2006. Everything has been going along fine. Then today when I tried to sign in on the "Sign in to open your Money file" page I get a popup that says: "Money could not verify your sign-in information, You can use some Money features, but you can't get online updates or perform other online tasks in Money. To regain access to Money's online features, close Money, reopen it and then try signing in again." Closing Money then reopening it doesn't solve the problem. There is no suggestion for an alternate "Solutio...

Troubleshooting SMTP delivery
I've setup a Perl sendmail script on a client's web server. The server is running Microsoft Exchange. The script runs fine, and using Sendmail's log feature, I get a confirmation that the message is queued for delivery: 250 2.6.0 Queued mail for delivery But the message never makes it to its intended recipient. Where in Exchange should we be looking for the problem? (I'm the web developer and not familair with Exchange-- I'm working with the client's IT person to try to resolve the issue) Thanks, Kevin ...

Performance analysis
Hi, my newly created application (a mixture of .net code and C++ Dlls) seems to soak a lot of processor time - even more than i expected. Now, there might be a bottleneck in my application but I can't figure out where. That's why I'm looking for a tool (doesn't matter if commercial or not), that is... - able to do performance analysis on .net windows services - able to both analyse C++- code and .net code - able to give me exact information about the functions that soak the processor time (e.g. percentual values) Does such a tool exist? does anyone have some experience w...

Troubleshoot Performanceproblems
Hi, My E-mailsystem E2K and Outlook2002 have started to show a few performance problems. What is the best way to pinpoint this out. Sometimes a bar is coming up and tells me that data is retrieved from the exchangeserver. The servername that shows up is sometimes a mailboxserver, sometimes a GC. Any tips appreciated TIA /Mariah ...

Poor Printing Performance
Hi everyone, I have a VB program that uses Excel automation to print our a variable number of Excel files to a network printer. Sometimes there can be 50-100 Excel sheets that will be sent to the print queue to be printed. That works very well, the issue comes about during the printing process. The printer will print 6 of sheets, will pause for a minute or two, then print 6 more etc.... This occurs if I go into Excel and manually print out a sheet 50 times or so also. Is this an issue with Excel on our Windows 2k Server Environment, or should I start digging into printer ...

unknown xslt function "format-dateTime"
Iam using Beta2 of VS2005 and getting the error "Error 4 'format-dateTime()' is an unknown XSLT function" at the following line: <xsl:value-of select="format-dateTime($pubDate,'[FNn] [D] [MNn] [Y] [h]:[m01] [PN]')" /> how can I get around this? > > Iam using Beta2 of VS2005 and getting the error "Error 4 'format-dateTime()' > > is an unknown XSLT function" at the following line: > > format-dateTime() is XPath2.0/XSLT2.0/XQuery1.0 function. VS2005 only > supports XPath1.0/XSLT 1.0. Use ms:format-date() exten...

Performing multiple Find/Replaces All At Once?
Hello, regarding my issue here is a very brief summary. I have a database that stores "country of origin" quantitatively based on a standardized document called the Huridocs. When I run data queries for reports I need to present this quantitative data in standard text form (i.e. "1234" coding must become "China"). As a result, I must go through manually doing a "Replace" for each country code to its text equivalent so that my supervisor can do write up's for grants based on the data. What I wanted to know was if it is possible to have a pre-set &q...

troubleshoot views in calendar
When in Calendar view, I like to use the month, and also at the right I like to see 6 months of the small calendar, as well as the task list below that. However, when I close Outlook and then open Outlook again, the calendar view goes back to showing just the month view. It won't seem to keep the view as I set it. I've looked everywhere I can think, but can't seem to find a fix. Can someone help? ...

Process to troubleshoot Outlook hanging.
I have Outlook 2002 SP3. It frequently just hangs during send and receive. Particularly when it says it is "Selecting..." at the bottom. I use all IMAP accounts. Is there are series of step I can use to troubleshoot it? I have already ran Scanpst with no errors. Thanks, Mike ...

Distribution List Troubleshooting
I have a distribution list that I created - the list works when I type in each individual's email address separately in the "to" field. It also works when I send to each person separately. BUT when I try to use the list, only some of the addresses receive the message - others come back undeliverable host. I have deleted and recreated this list three times already, and still the same result. HELP!!!!! ...

Troubleshoot when exiting Excel.
I am working with MS Office XP 2003. I Use to convert my excel files into Pdf files using acrobat writter V5.0. I have trouble when I want to exit excel. Before, it was happening from time to time but now it has become frequent. What should I do to stop this? Hi what trouble do you have exactly=? -error message - Crash -- Regards Frank Kabel Frankfurt, Germany "Leirbag" <Leirbag@discussions.microsoft.com> schrieb im Newsbeitrag news:369F78B9-2520-4726-81A2-CCA5ED51A4B0@microsoft.com... > I am working with MS Office XP 2003. I Use to convert my excel files into Pdf >...

Troubleshooting Installation
Everytime I try to install Publisher 2003 when I click next on the window that gives you the option for a complete, typical or custom install, the window disappears. I have restarted my computer and have tried a 1000 times! Does anyone know what is wrong here?? Katie what version of Windows are you using??? Do you have a virus infection??? -- I have Windows XP Pro and I do not have a virus--I updated my definitions and scanned my computer. >-----Original Message----- >Katie what version of Windows are you using??? > >Do you have a virus infection??? > >-- > ...

NDIS driver performance drop between ce 5 and ce 6
Hello Everyone I am faced with a performance issue over a DMA based NDIS driver for AX88796, My customer has generated a benchmark application, written in .Net to measure the performance of the tcp transfers, connecting the board to the deskop. Turns out that, using the same driver and benchmark application, under ce 5 he gets around 500 000 B/s and under CE 6 this drops to 430 000 B/ s. Is that drop normal? Due to Kernel and NDIS changes, should I expect that drop? Using perfalyzer with a profiling build, I have many hits in DoWaitForObjects and IDLE_STATE under CE6, while ...

Troubleshoot Rules Processing
I use 2007 now. I thought I remembered there was a way to troubleshoot a rule if it didn't work. I am using a phrase from the body of the message. I am not new to rules as I have a lot of them but running just this one rule does not move any messages to the desired folder. Is there a way to step by step walk through a rule? Thanks! -- DrDOS "DrDOS" <dcal53@comcast.net> wrote in message news:B6863E4C-B12D-48A0-8A5B-A0AB8EF81B1C@microsoft.com... >I use 2007 now. I thought I remembered there was a way to troubleshoot a > rule if it didn't wor...

Scalability and Performance Baseline
Hi Folks, I just wonder if anyone of you had issues on Performance if you have the following databases sizes: Product Catalog - 15,000 records or more Accounts and Contacts - 1,500 records We all know that all these records will be replicated offline but my concern is that how long will it take for these records to be replicated to the local client CRM database? My users are concern about the time they have to wait. Another thing is the timeout if these replication will take longer that expected, is there any default time out settings for the replication? Your feedback is very much apprec...

Error:The operation cannot be performed because the message has been changed
hi! I've customized Contact form for OL-2003.I'm calling a procedure Savedata in Item_Write() in which I need to retiieve userproperties of contactitem and save them to database.Code is dim c as outlook.contactitem Set c = ActiveInspector.CurrentItem ---retrieving some userproperties of c in local variables c.save ---to get entryID As I need to store it in database varEntryId=c.EntryID ---saving userproperties of c and EntryID in database for the statement c.save ,sometimes I get the error stating that "The operation cannot be performed because the message has been changed...

performance , speed and portability of VC++.NET and VC++ 6.0
hi all, I'm writing because I haven't been able to find enough information at the book stores and at the MS web site on some of my questions. Perhaps I'm asking the wrong questions, but if you could help me out here, I'd really appreciate it. Iam a project trainee. I have to give an presentation over the topic, For engineering applications, whether VC++ 6.0 is more suitable than other .NET or not. For that i need to know about the performance, portability etc., sincerely, Bhargav > Iam a project trainee. I have to give an presentation over the &g...

troubleshooting
when ever i try to close outlook it gives me a message saying that it failed and then another message saying program ending if you end now you may lose any unsaved data. it didn't do this before. please help me so i can fix the problem thank you stacy ...