What to have


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

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:

  1. Run your native command line debugger against the executable the created the core dump:
  2. 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

  3. When the debugger prompt appears, enter where
  4. 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.

Core Files

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