Subpanel problem & memory leak in Labview 8.0
Hi,
I just installed Labview 8.0 Evaluation package yesterday. I tried to
code a user interface class using dqGOOP object oriented package. It
seems that LV 8 behaves differently from LV 7.1 which is good. One can
use same subvivi in multiple subpanels. I however run into problems
with this new feature i.e. I cannot edit the subvi after it has been
placed on two subpanels. Editing is possible after LV 8 restart.
In my code I create two similar object instances from the panel class. I have a class method panel_run which puts itself on the subpanel defined by refence. I have two subpanels on the main vi, one for each of my panel_run instances. I do not stop the panel_run instances cleanly, instead I use the Labview stop button to stop the execution. Once the main vi has runned, the panel_run subvi cannot be edited any more. When one opens the panel_run
subvi, a clone of the subvi is always opened instead. One cannot modify
the clone. After a few runs, I also got a memory segmentation fault
from labview, which then crashed. I was unable to repeat the crash.
I attached the code. Use panel_test.vi to start the program. Is
there any way to get around this problem of not being able to access a
subvi after it has been placed on a subpanel?
Regards,
Tomi
p.s. Sorry for the wrong category. This is Labview 8.0 problem. There
was not however a category for labview 8, so I selected Labview 7.1.
Tomi Maila
Attachments:
panel_test.zip 569 KB
Open your panel_run VI --> you get a clone
Press CTRL+M --> Will open your VI (Not the Clone)
Close the Clone and work on the VI.
PJM
Got EasyXML?
JKI.VIPM.EasyXML.OpenG.LAVA.Builder.blog
Similar Messages
-
Looking for memory leak in labview 6.02
dear all,
my labview program needs an increasing amount of memory when running (at the time about 12k/s) which leads to swapping memory on my hdd.
i have found out that calling cluster references like Controls[] or decos[] leads to this kind of memory leak and made a work around for that (simply calling it only once at runtime) but there are more memory leak(s)which i cannot find. The bugs that i have found searching the labview resources does not answer my problem.
does anybody already found out more memory leak problems ?
thanksI have been seeing similar behavior; I too have not found all the
leaks. I think I have slowed the allocation by replacing some of my
'build array' functions with the combination of 'initialize array'
followed by 'replace array subset'. The drawback to doing it this way
is that you have a fixed maximum number of elements allocated just once
rather than allowing an array to grow incrementally. Please let me know
if you try removing build arrays and if that helps.
By the way, there is a checkbox under the options menu to deallocate
memory as soon as possible - if you don't mind that your program runs
more slowly, this may help to avoid the problem, at least temporarily.
-vinny
ciossek wrote:
> dear all,
> my labview program needs an increasing amount of memo
ry when running
> (at the time about 12k/s) which leads to swapping memory on my hdd.
> i have found out that calling cluster references like Controls[] or
> decos[] leads to this kind of memory leak and made a work around for
> that (simply calling it only once at runtime) but there are more
> memory leak(s)which i cannot find. The bugs that i have found
> searching the labview resources does not answer my problem.
>
> does anybody already found out more memory leak problems ?
>
> thanks -
Finding Memory Leak in LabVIEW
Hi NG,
we wrote a sort of hugh application in labview that collaborates with our
..NET driven
device framework and a variaty of unmanged c++ libs.
As we are now close to the release we did performance testing and it showed
up that
the app is consuming more memory continously.
We used prefomance counter to check whether the managed objects might not
get garbage collected
but this is done OK, since the handle count stays at a constant level.
We tried to figure out whether one of the c++ libs is causing the problem
but this is not the case either, since
the memory leak exists even if the lib functions are just not being called.
Even labview profiler is not detecting any inconvenient memory consumption
of any of our vis but
windows task manager notices a constant memory consumtion of the executable
(or of labview.exe itselve when running in
dev. environment).
Does anybody know what this might be? Has anybody a clue what other tools we
could use to figure out
where the problem is?
Any help is greatly appreciated.
Thanks in advance, Sebastian Dau!"mfitzsimons" <[email protected]> wrote in message
news:[email protected]..
> Sebastian,
> Memory leaks can be VERY hard to find. I use the divide and conquer
> technique that involves chunking (make into smaller code segments) your
> code into smaller pieces and running the smaller pieces until you find the
> memory leak. It can take weeks to find the source.
you accelerate this process by using the labview profiler.
> The most common is arrays or any data that increases in size as the
> program runs. To fix this you can use a FIFO that allows only so
> many elements to be added before deleting data out of the array. The
> second source is opening references repeatedly and not closing them.
> Look closely at any VI that open anything. Do a search for "Memory
> Leak" on the discussion forum and you will find about 60 postings that may
> help.
> Matt
> If you are using DAQ-MX <a
> href="http://digital.ni.com/public.nsf/allkb/BAF29EE03747EE4B86256E9700541436?OpenDocument"
> target="_blank">http://digital.ni.com/public.nsf/allkb/BAF29EE03747EE4B86256E9700541436?OpenDocument</a>
>
>
arrays and refs have already been checked.
thanks, Sebastian -
Shared memory problem - memory leak?
I've got the following error after calling a stored procedure about 26000 times. Does this mean Oracle 8.1.6 Thin Driver has memory leak in CallableStatement? Thanks.
ORA-04031: unable to allocate 4096 bytes of shared memory ("shared pool","BEGIN checktstn(:1, :2); END;","PL/SQL MPCODE","BAMIMA: Bam Buffer")Me Too!
java.sql.SQLException: ORA-04031: unable to allocate 744 bytes of shared memory ("unknown object","sga heap","library cache")
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:114)
at oracle.jdbc.ttc7.TTIoer.processError(TTIoer.java:208)
at oracle.jdbc.ttc7.Oall7.receive(Oall7.java:542)
at oracle.jdbc.ttc7.TTC7Protocol.doOall7(TTC7Protocol.java:1311)
at oracle.jdbc.ttc7.TTC7Protocol.parseExecuteDescribe(TTC7Protocol.java:595)
at oracle.jdbc.driver.OracleStatement.doExecuteQuery(OracleStatement.java:1600)
at oracle.jdbc.driver.OracleStatement.doExecute(OracleStatement.java:1758)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1805)
at oracle.jdbc.driver.OracleStatement.executeQuery(OracleStatement.java:410)
Does this error pertain to memory leaks? -
Problem: memory leak ?
Hello,
I've created a swing program with internalframes. each internalframes has many objects
and uses a lot of memory. Each time a frame is closed i call disopse on it and i am 'sure'
that there are no more references to the internalframe.
So logically, i can open lots of iframes and close them all. The the memory usage bij java.exe
shoudl be teh same. But that is not the case. I saw garbage collects only frees memmory to
the JVM. But how do i know whether the objects are freed or not.
Should'nt the memory usage decrease when i close all the opened iframes????
The question: How do i know for sure if i do not have any references to an iframe so that the iframe can be collected by the garbage collector? The memory of the program keeps growing and growing if i open 10 frames, close all the frames and then do that all over again.
Help me!Hi,
we had major problems with Swing components leaking memory.
Since Swing components have internal references to the child components, one container could
be leaking lots of memory.
NB : you must explicitely remove all listeners too, action listeners, mouse listeners etc.
Below is a very handy piece of code I wrote to explicitely remove all child components from an initial container. It's depth first recursive, and it certainly done wonders for us.
regards,
Owen
import java.awt.Container;
import java.awt.Component;
import javax.swing.RootPaneContainer;
public class ComponentCleaner
public static void cleanComponent(Component baseComponent)
try
cleanComponent(baseComponent, 0);
catch ( Exception ignore )
// give some exception handling...
* The "depth" parameter was being used for text output debugging.
* But isn't essential now. I'll keep it anyways, as it avoids
* calling the garbage collector every recursion.
protected static void cleanComponent(Component baseComponent,
int depth)
if (baseComponent == null) // recursion terminating clause
return ;
Container cont;
Component[] childComponents;
int numChildren;
// clean up component containers
if(baseComponent instanceof Container)
// now clean up container instance variables
if(baseComponent instanceof RootPaneContainer)
{ // Swing specialised container
cont = (Container)baseComponent;
numChildren = cont.getComponentCount();
childComponents = cont.getComponents();
for(int i = 0;i < numChildren;i++)
// remove each component from the current container
// each child component may be a container itself
cleanComponent(childComponents, depth + 1);
((RootPaneContainer)cont).getContentPane().remove(childComponents[i]);
((RootPaneContainer)cont).getContentPane().setLayout(null);
else
{ // General Swing, and AWT, Containers
cont = (Container)baseComponent;
numChildren = cont.getComponentCount();
childComponents = cont.getComponents();
for(int i = 0;i < numChildren;i++) //for(int i = 0;i < numChildren;i++)
// remove each component from the current container
// each child component may be a container itself
cleanComponent(childComponents[i], depth + 1);
cont.remove(childComponents[i]);
cont.setLayout(null);
} // if component is also a container -
How can i detect "Memory leak" with large LabVIEW projects.
Hi,
I have a huge LabVIEW application that runs out of memory after running continuously for some time. I am not able to find out the VI that is hogging up memory. Is there any tool that dynamically detects the VI that is leaking memory.
Or, is there a tool or a way to identify the critical areas which can be potential culprits that is leaking memory.
Regards
BharathBdev wrote:
Thanks Dennis.
I think Desktop Execution toolkit should solve the problem.
Wayne Wrote
Have you tried Tools»Profile»Performance and Memory ? http://zone.ni.com/reference/en-XX/help/371361F-01/lvdialog/profile/
But this will just give me the amount of memory used by the VIs and not the amount of memory that is not getting released.
And where is the problem about that? Just try to find what VIs keep increasing in memory size. That are the culprits. If you have real memory leaks, meaning there is memory that is not managed by LabVIEW directly but for instance by a DLL somewhere and that DLL looses references to memory, so it goes really lost, then the only way to find that is by successively exclude functionality in your application until you can find the culprit.
There is no other simple way to find out about who is loosing memory references than by doing debugging by exclusion until the problem disappears. The only way to speed this up, which quite often works for me is doing an educated guess, about what components are most likely to do this misbehaviour.
Not knowing anything about your application and if you are talking about memory hogs (fairly easily identifiable by the mentioned Performance and Memory monitor) or actual memory leaks, it is hard to tell how to go about it. Memory hogs are usually the first thing I suspect escpecially with software I inherit somehow from people from whom I'm not sure they know all the ins and outs of LabVIEW programming.
If a leak seems likely the first culprit usually are custom DLLs (yes even DLLs I have written myself), then NI DLLs such as DAQmx, etc. and last there come leaks in LabVIEW itself. This last category is very seldom but it has happened to me. However before going to scream about LabVIEW having a memory leak you really, really should make sure you have very intensivly researched all the other possibilities. The chance that you run into a memory leak in LabVIEW, while not impossible, is so small compared to the other ways of causing either a memory hog or running into a leak in an external component to LabVIEW, that in 99.9% of the cases where someone screams about a LabVIEW memory leak, he is simply wrong.
Rolf Kalbermatter
CIT Engineering Netherlands
a division of Test & Measurement Solutions -
I am using firefox 6.0a2 on fedora 15.
I am updating firefox daily.
System hangs suddenly after installing addons."MichelC" wrote...
> This sounds very much like a reference leak in your program and not
> like a memory leak in LabView (although you wrote that you already
> thought of that)
>
>
>
> - Make sure you terminate all kinds of reference = Vis and files
> references BUT ALSO references to controls and indicators (property
> nodes).
That was exactly the advice I needed. I never realized that I might need to
close references to controls/indicators, but it makes sense. I found a
couple places where a different refnum was being generated on every
iteration of a loop and reworked the code a bit, and now the problem seems
to be solved (fingers crossed).
In case anyone else is interested, the main source of my problem was a
Controls[]
property on a cluster refnum. Every time the loop accessed the
property, it generated a new set of refnums in the Controls[] array. Over
many iterations this led to (presumably) thousands & thousands of orphaned
refnums that were gradually draining my program's will to live.
Thanks for the help!
Regards,
Justin Goeres
Pleasanton, CA -
DataSocket memory leak problem (2VO0SF00) -- more info?
When upgrading to LabVIEW 8.5 recently, I noticed the following known issue in the readme file:
"ID: 2VO0SF00
DataSocket/OPC Leaks Memory using ActiveX VIs to perform open-write-close repeatedly
If you call the DataSocket Open, DataSocket Write, and DataSocket Close functions in succession repeatedly, LabVIEW leaks memory. Workaround — To correct this problem, call the DataSocket Open function once, use the DataSocket Write function to write multiple times, and then use the DataSocket Close function."
Looking back, I think this problem may have been present in previous LabVIEW releases as well, and might be giving rise to a problem that's been dogging me for quite some time (see my thread, "Error 66 with DataSockets", http://forums.ni.com/ni/board/message?board.id=170&thread.id=187206), in addition to general slow/glitchy behaviour when my VI's have been running continuously for a long time. But in order to determine whether or not this issue affects me, and how I should go about fixing it in the context of my own programs, I need a bit more information about the nature of the issue itself and the inner workings of the DataSocket VI's. Any help or insight the community can provide into this would be greatly appreciated!
Here are my questions:
It is my understanding from the "known issue" description above that the memory leak happens when you have a DS Open wired to a DS Write wired to a DS Close, all inside a loop (example 1), and that the suggested workaround would be to move the DS Open and DS Close functions out of the loop on opposite sides, wired to the DS Write which remains inside the loop (example 2). Is this correct?
Does this leak also happen when performing DS open-read-close's repeatedly (example 3)?
What happens when a DS Write (or DS Read) is called without a corresponding DS Open and DS Close (examples 4a and 4b)? Does it implicitly do a DS open before doing the write operation and a DS close afterwards? What I'm getting at is this: would having an isolated DS Write (or DS Read) inside a loop, not connected to any DS Open or DS Close functions at all, cause this same memory leak?
If one computer is running the DS server and a second computer is running the VI with the repeated open-write-close's, on which computer does the memory leak occur?
In my question #1 workaround (example 2), the DS Open and DS Close outside the loop are routed through a shift register and in to and out of the DS Write inside the loop. If the DS connection id goes into the DS Write "connection in" and then splits and goes around the DS Write and out to the DS Close, without coming out of the DS Write "connection out" (example 5), will the memory leak still be avoided? I.e. if the DS Write function doesn't have anything connected to its "connection out", will it try to do an implicit DS Close?
If the VI causing the memory leak is stopped, but LabVIEW stays running, will the leaked memory be reclaimed? What if the VI is closed? What if all of LabVIEW is closed?
FYI, in the examples above "x1a" is a statically-defined DataSocket on the DS server running on the computer Max, to which the computer running the example VI's has read/write access. My actual application has numerous VI's and hundreds of DataSocket items, many of which are written to / read from every 50-100 ms in the style of examples 4a and 4b.
Does anyone have any idea about this stuff?
Thanks in advance,
Patrick
Attachments:
examples_jpg1.zip 63 KB
examples_vi1.zip 40 KBHi Meghan,
Yes, some of the larger VIs in my application do write to / read from several hundred DataSockets, so it's not feasible to use shift registers for each one individually, and hence why I'm passing the references into an array, etc.
Your Alternate Solution 2 is more along the lines of something that would work for me. However, my actual code has a lot of nested loops, sequences and DataSocket items which are not all written to in the same frame, so this solution would still be difficult to implement: it would be cumbersome to unpack the entire 500-element reference id array and build a new one (maintaining the positions and values of the unaffected elements) every time I write to some small subset of the DataSockets.
I think I have a solution which solves the problem and is also scalable to the size of my application -- I've attached it as Example 7. Do you think this will avoid the memory leak? It's the same as your Alternate Solution 2, except that instead of building a new array out of the DS Write reference outs, each reference out replaces the appropriate element of the original array.
If I understand you correctly, in order to avoid implicit reference opens and closes, a DS Write needs to have both it's reference in and reference out wired to something. Thus, even though my Example 7 replaces an element of the array with an identical value, and therefore doesn't actually change the array (which would be a silly thing to do normally), the DS Writes have their reference outs wired to something, and eventually in a convoluted way to a DS Close, so it should avoid the memory leak.
Just out of curiosity (I don't think anything like this would apply to my application or any fixes I implement), when would the implicit reference close happen in the attached Example 8? The DS Write has its reference in and reference out both connected to temporally "adjacent" DS Writes via the shift register, so perhaps it wouldn't try to close the reference on each loop iteration? Or would it look into the future and see that there is no DS Close and decide to implicitly do that itself? Or maybe only the DS Write on the last loop iteration does this?
Thanks for bearing with me through this,
Patrick
Attachments:
example73.JPG 40 KB
example83.JPG 14 KB -
Memory leak with fieldpoint and labview
I have an application which is showing an issue of a memory leak. The application does several things, but the part that seems to be causing the trouble is related to use of Fieldpoint VIs. The application reads individual AI channels on a Fieldpoint AI-110 (10 channels, where the set of channels is measured once per second) I have attached the code related to this. The memory leak is quite large (~1.5GB in 24 hours of operation).
I am using LabView 7.1, and Fieldpoint 4.1. The parent application which uses the attached code is a stand-alone application. The operating system is Windows 2000. Fieldpoint communication occurs over a RS-232 link.
Thanks in advance,
Andy
Attachments:
FPAI100_meas_voltage.vi 62 KBHi Andy,
I did not see anything fundamentally wrong with what you wrote, but there were
a few things that I think could be used to be changed. However, there
were a few things that I did modify that might make a bit of a
difference. In your application you were using sequences and a bunch of
local variables. Since LabVIEW is based upon data flow, you can control
the sequence of execution by making data dependencies and simply wiring one
thing to the next. By simply using LabVIEW the way it is meant to run I
was able to completely remove the sequence structure and also eliminate the use
of all of the local variables, all while having the exact same execution order.
It could be that the local variables were causing the memory leak that you
noticed, but I really doubt they could be the cause of such a large leak.
I really think there is probably something else going on in the application
because from what I saw from this bit of code there really is no way that it
would have such large problems. Users use the FP commands daily without
any problems, so most likely these are not the root of the problem.
Go ahead and try the modified code and see if you can implement similar local
and global variable reducing techniques throughout your application.
Hopefully that will help reduce some of the memory leaks you are seeing.
Typically the largest cause of an apparent memory leak really occurs from
building an array within a loop, so make sure you don't have any situations
where that occurs in your code either.
Regards,
Otis
Training and Certification
Product Support Engineer
National Instruments
Attachments:
724727-FPAI100_meas_voltage.vi 56 KB -
How do I report a major memory leak problem with Firefox 3.6.10 in WinXP?
After I installed Firefox 3.6.9 on a WinXP desktop, I occasionally had minor memory leak problems, reflected by getting "out of virtual memory" messages. I upgraded to 3.6.10 when notified that it was available and that it supposedly fixed stability problems. Ever since then, whenever I use Firefox, it starts out quick as a flash, but very rapidly slows down to a crawl, and has twice brought my system to a halt. IE does not cause this, nor any other program I use, but the execution speed of all programs slows as badly as Firefox. If I knew where to get older versions, I would back up to 3.6.9 or earlier. The situation now prevents me from using Firefox much at all.
Im running windows 7, Firefox 3.6.10 and before i updated to 3.6.10 my CPU never went above 10% with Firefox open. Now it can spike well above 50% and i have nothing different from when i had 3.6.9 to now when i have 3.6.10.
There is no evidence for me to suggest one of the additions i have is causing it, its all pointing to Firefox itself and the last update. -
How can I address a memory leak problem with Firefox?
I have happily used Firefox for the past 7 years, and have rarely had difficulties. However, I am having some trouble now; Firefox (running 3.6.6) seems to have a memory leak on my machine. It's slower than what was discussed in other forum posts, but it still scales up slowly to multiple hundred MBs of Memory with very little CPU usage.
I have tried disabling add-ons and extensions, but this does not stop the problem. I have cleared my cache and other stored data, but that also does not help. Has anyone experienced a similar problem that might be able to help?
== This happened ==
Every time Firefox opened
== within last two weeksHi reble0708,
I have Java console disabled on my Firefox browser.Everything is working fine for me. There maybe other problem on your browser which is making PDF document faded and blurry. Can you post the link where you found the problem viewing the PDF document?
Btw, you can go to ftp://ftp.mozilla.org/pub/firefox/releases/ and select the previous version of Firefox from the given options. There's no need to uninstall Firefox before you downgrade to the previous version of it.But before new installation, backup your Firefox profile folder.
edit: replaced random unofficial download site link. -
Problem with "Leak suspect" report in Memory analyzer
Hi Experts
Thanks for providing such a powerful tool !
Anwyay, i'm getting an error message while trying to run the "Leak suspect" report. Indeed i generated a heapdump on my Sandbox Netweaver server then i retrieved it to my PC. I'm able to display some informations (so i'm assuming my heapdump is correct) in Memory Analyzer but the error came with "Leak suspect" report.
Here is the whole error message :
eclipse.buildId=unknown
java.version=1.6.0_11
java.vendor=Sun Microsystems Inc.
BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=fr_FR
Command-line arguments: -os win32 -ws win32 -arch x86
Error
Fri Jan 29 15:37:23 CET 2010
An internal error occurred during: "default_report org.eclipse.mat.api:suspects".
java.lang.AbstractMethodError: com.sap.tools.memory.netweaver.csn.CSNComponentExtractor.resolveByClassLoader(Lorg/eclipse/mat/snapshot/model/IClassLoader;Lorg/eclipse/mat/util/IProgressListener;)Ljava/lang/String;
at org.eclipse.mat.inspections.LeakHunterQuery.getTroubleTicketMapping(LeakHunterQuery.java:558)
at org.eclipse.mat.inspections.LeakHunterQuery.appendTroubleTicketInformation(LeakHunterQuery.java:701)
at org.eclipse.mat.inspections.LeakHunterQuery.getLeakDescriptionSingleObject(LeakHunterQuery.java:382)
at org.eclipse.mat.inspections.LeakHunterQuery.getLeakSuspectDescription(LeakHunterQuery.java:215)
at org.eclipse.mat.inspections.LeakHunterQuery.execute(LeakHunterQuery.java:148)
at org.eclipse.mat.query.registry.ArgumentSet.execute(ArgumentSet.java:129)
at org.eclipse.mat.query.registry.CommandLine.execute(CommandLine.java:93)
at org.eclipse.mat.report.internal.QueryPart.execute(QueryPart.java:96)
at org.eclipse.mat.report.internal.SectionPart.execute(SectionPart.java:53)
at org.eclipse.mat.report.TestSuite.execute(TestSuite.java:127)
at org.eclipse.mat.report.internal.RunRegisterdReport.execute(RunRegisterdReport.java:50)
at org.eclipse.mat.query.registry.ArgumentSet.execute(ArgumentSet.java:129)
at org.eclipse.mat.ui.QueryExecution$ExecutionJob.run(QueryExecution.java:174)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)
Could you please give me some advice ?
Thanks
FrançoisHi,
Sorry for not updating the question. We (the tool developers) are aware of the problem and we have fixed it already (internally). However we still have to prepare the proper downloadables for the SDN site and change the content available at SDN.
About using onother tool - you probably don't need to: one can still use the tool without the NW extensions (just take it from http://www.eclipse.org/mat/).
The Leak Suspects report is part of the open-source tool (see http://dev.eclipse.org/blogs/memoryanalyzer/2008/05/27/automated-heap-dump-analysis-finding-memory-leaks-with-one-click/).
Without the NW Extensions one won't see the application names extracted out of classloaders, there will be no suggestions for CSN components, and some other SAP specific queries will be missing. Nevertheless it should be still possible to perform memory analysis.
I hope this helps to some extent for the moment. -
Memory Leak Problem at Adobe LiveCycle Server 9.0
Hi All,
We want to upgrade our system to 9.0. During the performance test we have found memory Leak problem at ALS 9.0. I explain the detailed problematic issue below. Is there any body who has any suggest?
We have Adobe Livecycle ES2 9.0 SP2 installed on WAS 6.1. But also WAS on Windows Server 2008 R2. We call java web services from .Net Web service for generating PDFs.
On Java side “com/adobe/internal/pdftoolkit/services/javascript/GibsonMemoryTracking” class is causing Memory Leak problem at server.
Our .Net Codes. I copied below. First we generate PDF then we convert this pdf to static pdf.
First We call the GeneratePDF function.
public static bool GeneratePdf(Document document, byte[] pdfTemplate)
try
//Create a FormDataIntegrationService object and set authentication values
FormDataIntegrationService formDataIntegrationClient = new FormDataIntegrationService();
formDataIntegrationClient.Credentials = new System.Net.NetworkCredential(Settings.ALCUserName, Settings.ALCPassword);
//Import XDP XML data into an XFA PDF document
ALCFormDataIntegrationService.BLOB inXMLData = new ALCFormDataIntegrationService.BLOB();
//Populate the BLOB object
inXMLData.binaryData = System.Text.Encoding.UTF8.GetBytes(document.XmlData);
//Create a BLOB that represents the input PDF form
ALCFormDataIntegrationService.BLOB inPDFForm = new ALCFormDataIntegrationService.BLOB();
inPDFForm.binaryData = pdfTemplate;
//Import data into the PDF form
ALCFormDataIntegrationService.BLOB results = formDataIntegrationClient.importData(inPDFForm, inXMLData);
document.PdfData = results.binaryData;
Utility.Log("GeneratePdf", "Pdf generated successfully.", LogLevel.Info);
return true;
catch (Exception ex)
document.ReturnCode = "22";
document.ReturnMsg = "Exception on generating the pdf";
Utility.Log("GeneratePdf", "Exception: " + ex.Message, LogLevel.Error);
return false;
Then We call the ConvertPDF function.
public static bool ConvertPdf(Document document)
try
//Create a OutputServiceService object
OutputServiceService outputClient = new OutputServiceService();
outputClient.Credentials = new System.Net.NetworkCredential(Settings.ALCUserName, Settings.ALCPassword);
//Create a BLOB object
ALCOutputService.BLOB inData = new ALCOutputService.BLOB();
//Populate the BLOB object
inData.binaryData = document.PdfData;
//Set rendering run-time options
RenderOptionsSpec renderOptions = new RenderOptionsSpec();
renderOptions.cacheEnabled = true;
//Create a non-interactive PDF document
ALCOutputService.BLOB results = outputClient.transformPDF(inData, TransformationFormat.PDF, PDFARevisionNumber.Revision_1, false, null, PDFAConformance.B, false);
document.PdfData = results.binaryData;
Utility.Log("ConvertPdf", "Pdf converted successfully.", LogLevel.Info);
return true;
catch (Exception ex)
document.ReturnCode = "22";
document.ReturnMsg = "Exception on converting dynamic pdf to static pdf";
Utility.Log("ConvertPdf", "Exception: " + ex.Message, LogLevel.Error);
return false;
Our System Configuration:
Expiry date: Never Version: 9.0.0.0,
GM Patch Version: SP2
Service Pack Version: unknown
ADOBE® LIVECYCLE® PDF Generator ES2
9.0.0.0
SP2
ADOBE® LIVECYCLE® Reader Extensions ES2
9.0.0.0
SP2
ADOBE® LIVECYCLE® Output ES2
9.0.0.0
SP2
We changed some configuration which is suggested by Adobe. But this change does not solve our problem.
Changed Configurations via ADMINUI
Memory Leak Problem which is viewed via wily tool:Hi Mahir,
Can you attach the results of this performance test where we can see how GibsonMemoryTracking class is causing the memory leak issue.
Also do you see any stackTrace in the LiveCycle server logs related to memory / heap when you run this performance test ?
Thanks,
Simer -
Memory leak problem while passing Object to stored procedure from C++ code
Hi,
I am facing memory leak problem while passing object to oracle stored procedure from C++ code.Here I am writing brief description of the code :
1) created objects in oracle with the help of "create or replace type as objects"
2) generated C++ classes corresponding to oracle objects with the help of OTT utility.
3) Instantiating classes in C++ code and assigning values.
4) calling oracle stored procedure and setting object in statement with the help of setObject function.
5) deleted objects.
this is all I am doing ,and getting memory leak , if you need the sample code then please write your e-mail id , so that I can attach files in reply.
TIA
Jagendrajust to correct my previous reply , adding delete statement
Hi,
I am using oracle 10.2.0.1 and compiling the code with Sun Studio 11, following is the brief dicription of my code :
1) create oracle object :
create or replace type TEST_OBJECT as object
( field1 number(10),
field2 number(10),
field3 number(10) )
2) create table :
create table TEST_TABLE (
f1 number(10),f2 number (10),f3 number (10))
3) create procedure :
CREATE OR REPLACE PROCEDURE testProc
data IN test_object)
IS
BEGIN
insert into TEST_TABLE( f1,f2,f3) values ( data.field1,data.field2,data.field3);
commit;
end;
4) generate C++ classes along with map file for database object TEST_OBJECT by using Oracle OTT Utility
5) C++ code :
// include OTT generate files here and other required header files
int main()
int x = 0;
int y = 0;
int z =0;
Environment *env = Environment::createEnvironment(Environment::DEFAULT);
Connection* const pConn =
env->createConnection"stmprf","stmprf","spwtrgt3nms");
const string sqlStmt("BEGIN testProc(:1) END;");
Statement * pStmt = pConn->createStatement(sqlStmt);
while(1)
TEST_OBJECT* pObj = new TEST_OBJECT();
pObj->field1 = x++;
pObj->field2 = y++;
pObj->field3 = z++;
pStmt->setObject(1,pObj);
pStmt->executeUpdate();
pConn->commit();
delete pObj;
} -
OBVIOUS MEMORY LEAK
iTunes about:10.6.3.25
windows 64 bit Home on AMD64 HP G60 laptop
downloaded and installed "iTunes32Setup.exe"
saw the problem and uninstalled it
downloaded and installed "iTunes64Setup.exe"
iTunes about:10.6.3.25
now i see process "iTunes.exe*32
it is ok when it play song list
but ***** UP MEMORY when i click on another song to play. apparently it doesn't release previous player thread
OR,
if you right click on a song, the memory will blow up antother 6MB and won't release it...can do it all day long
-- until run out of memory and iTunes freezes...without any of my changes.
sooooo.. is it the uninstaller or is iTunes64Setup.exe mispackaged or do both have memory problems on AMD 64 ?Unfortunately I was able to repeat the memory leak even with turning the Toolbar off. To replicate the problem, I was able to watch the memory leak each time I actively selected a new song with the iTunes open. I was able to repeat the leak with and without both Spotify and TuneUp Companion running and not running. The only thing I noticed is when both Spotify and iTunes were open, the memory leak from iTunes added insult to injure with Spotify which kept trying to sync up with iTunes local library which would crash Spotify as well. But I can confirm the memory leak is in iTunes 10.6.3.25 (looking forward to 10.6.4 fixing the problem).
Maybe you are looking for
-
How do I retrieve lost music and apps?
While updating my iPod touch I lost all of my pictures, videos, music, and apps. How do I restore all of this lost memory?
-
CS5 bug rendering anti-aliased text in 'Save for web'
Seems like there's a bit of a bug when using 'Save for web and devices' with thin weights of type in CS5 for Mac. Although thin type looks fine while working in Illustrator, as soon as you enter the 'Save for web' dialogue, it gets badly mangled. Loo
-
my daughter would like to seperate her ipod from the family account(little brothers using her itunes cash). How can I do that with her being able to keep the content that is already on her ipod?
-
SharePoint 2013 Hybrid Environment
Is it possible to have a SharePoint hybrid environment with My Sites on the cloud & team sites on premise?
-
Public bidding scenario?
Dear Experts, There is a business scenario where the client requires fresh bidders for his bid invitation? He does not want to engage existing bidders present in SRM system? He does not have any ROS (registration of Supplier) system for registration