Technical Support needs additional information about your problem in order to help you. Give them the full error message you received, your logging information, and stack traces if you had a core dump. Also tell them about your cloud topology, and the exact version(s) of SmartSockets and any associated products, including any hotfixes, you are using.
If you have a core dump, do not send it unless specifically requested. Instead, rename it so that it will not be accidentally overwritten and send a stack trace instead. If Technical Support wants your core file, they will ask for it. You should also generate and save a checksum, using 'md5sum' if possible, so that the integrity of your core file can be confirmed if you are later asked for it.
In order to ensure that none of the data related to your problem is overwritten, it is strongly recommended that you create an archive (for example, using 'tar') containing the core file, any logs, and a copy of your application and its source code (if this is a problem with a client and not RTserver). This is especially important with development applications as rebuilding the application will make your core file infinitely less useful.
Stack traces help find where a problem started when a process results in a core dump. A stack trace takes a core file in as an argument, and gives you a list of functions that called each other, all the way back to where the error occurred.
A stack trace looks like this:
0 TipcSomethingOrOther(stuff in here) 1 TipcSomethingElse(stuff in here) 2 TipcSomethingMore(stuff in here) 3 TipcFirstFunction(stuff here)
This tells you that a call was made to TipcFirstFunctions
, which made a call to TipcSomethingMore
, which called TipcSomethingElse
, which called TipcSomethingOrOther
, which failed. The stuff between the parenthesis is more information. If you compiled your program with the -g option, the information between the parenthesis is more helpful. For example, you can find the line number for each function and other things.
This is how to generate a stack trace:
debugger
executable
core
For example, if you are using the DBX debugger and the core dump came from the RTserver, use this command:
dbx $RTHOME/bin/$RTARCH/rtserver core
where
For example:
dbx> where
Cut and paste or copy the resulting stack trace into an email to Technical Support. If possible, configure your mail client so it does not insert additional line breaks. No additional formatting is needed.
If you are asked to send a core file, first make sure you have an uncompressed copy of it in a safe place. Then, generate a checksum of the file, using the 'md5sum' utility if possible. Next, compress it using bzip2
if available (usually available on Linux installations), otherwise using gzip (pre-compiled binaries of gzip can be obtained from www.gzip.org). Finally, generate a checksum of the compressed file as well. This saves time by allowing Technical Support to immediately detect and diagnose transmission errors. Technical Support will provide details on how to send the core file.
TIBCO SmartSockets™ API Quick Reference Software Release 6.8, July 2006 Copyright © TIBCO Software Inc. All rights reserved www.tibco.com |