What to include when asking for help

Waddya got?

It's important to convey your setup and configuration.

SQL Server version
FreeTDS version (or snapshot date, if not a release)
which client library you are using
what language or Perl module, as appropriate, you're using
your client OS and hardware architecture

Attach a logfile

If you're puzzled by some interaction with the server (often the case), it's a very good idea to set TDSDUMP and attach the log to your message. Messages are currently limited to 75 KB attachments, and the logs are quite detailed, so make your query as short as possible. If necessary, trim the log; gzip is also your friend here. It's always a good idea to post it on a website where people can fetch it if they're so inclined.

Think about it this way: If you attach a log no one reads, you wasted some bandwidth. If you don't attach one and someone asks you for it, you wasted a day. Like that.

Help the Help

If you've found an error, weakness, misbehavior, discrepancy, call-it-what-you-will in one of the published APIs, it's very helpful if you write a unit test for it, and tell us what the Microsoft or Sybase behavior is. Those problems get fixed. Oftentimes, right away. Everyone who's sent us a unit test has gotten their feature in the next release. If you don't, you'll at least get an explanation.

Moving down, Perl or PHP code provided it creates all the tables it needs and populates them will generally result in a quick fix. A stand-alone query that will run in SQSH also works well. Here again, it helps to attach a log.

Tip

If you provide an SQL query in your question to the list, provide a table definition, too. Problems are often related to specific datatypes, so a table definition is an absolute must. You can run sp_help table to generate one.

It is very helpful if you can show an example of the problem using sqsh or an appropriate utility. Using those programs limits the scope of question to FreeTDS itself.

If the problem is a segmentation fault or bus error, that's bad. Please obtain a backtrace and include it in your mail. See the "Page contains no data" section for how to do this.