[freetds] Compiling on FreeBSD without ICONV

Lowden, James K LowdenJK at bernstein.com
Tue Jun 10 11:07:25 EDT 2003

> From: Alan Pettigrew [mailto:freetds at pettigrew.fsnet.co.uk]
> Sent: June 10, 2003 4:46 AM
> The multi-hread version crashes very early on in isql and 
> tsql.  I have
> rebuild as --enable-threadsafe=no and it now runs.  I'm told 
> that threading
> on freeBSD and Linux are different, so I guess there is a 
> basic problem.

I don't know FreeBSD, but NetBSD is often similar.  NetBSD, unlike Linux,
distinguishes between user- and kernel-threads.  The kernel on a
uniprocessor machine does just one thing at a time, and sponsors just one
thread per process.  Userland (libc, I imagine), has a separate scheduler
that decides which process thread will be run by the kernel.  

This is all supposed to be transparent to the caller AIUI.  Maybe it is and
maybe it's not, but you made the right choice: no one is actively working on
the multithreaded configuration for FreeBSD.  NetBSD hasn't released theirs
(it will be in 2.0).  So it will be awhile.  

> Unfortunately I'm not a freeBSD expert, just a user at the 
> moment.  If I find anything out I will let you know.

Thanks.  I'd like to hold you to that, when it comes time to test.  ;-)

> Perl DBD crashes in src/tds/login.c line 339 (on CVS version from 8th)
> calling connect.  

tsql and isql work, and Perl doesn't.  Have you recompiled DBD::Sybase with
the new FreeTDS headers?  The TDSSOCKET structure has grown.  I can't think
why that would matter (we do all the allocations), but it's very suspicious.
You might also try something other than TDS 4.2, just to eliminate that

Otherwise, if you could post the bt and print out the contents of the
parameters to the connect call, maybe you'll expose a clue.  

The information contained in this transmission may contain privileged and confidential information and is intended only for the use of the person(s) named above. If you are not the intended recipient, or an employee or agent responsible for delivering this message to the intended recipient, any review, dissemination, distribution or duplication of this communication is strictly prohibited. If you are not the intended recipient, please contact the sender immediately by reply e-mail and destroy all copies of the original message. Please note that we do not accept account orders and/or instructions by e-mail, and therefore will not be responsible for carrying out such orders and/or instructions.

More information about the FreeTDS mailing list