Date: Thu, 10 Jan 2008 02:02:17 +0100 From: "Danny Pansters" <danny@ricin.com> To: freebsd-questions@freebsd.org Cc: Gunther Mayer <gunther.mayer@googlemail.com> Subject: Re: Python threading - some ports depend on it, others break with it Message-ID: <200801100202.17511.danny@ricin.com> In-Reply-To: <47851504.8090006@gmail.com> References: <47851504.8090006@gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Wednesday 09 January 2008 19:40:04 Gunther Mayer wrote: > Hi guys, > > I'm having so much trouble with this. I'm hosting a trac based project > which is implemented in python and uses an sqlite db backend along with > its python bindings. Now it turns out that pysqlite breaks badly > (compiles and installs fine but chokes on import, see > http://lists.initd.org/pipermail/pysqlite/2006-May/000553.html) if > python itself is compiled *without threading* support. > > However, on the same box I run a postgresql development and testing > database and we have some triggers and other functions implemented in > pl/python. Guess what? The compile of postgresql-plpython chokes upon > configure if python is built *with threading* support. Running it seems > to work fine, but there's a reason upstream put this check into > configure because supposedly this is known to break things. > > Chicken and egg - one of my ports insists on python with threads > enabled, the other port insists I use python without thread support. My > workaround is to compile python without threading, install(or upgrade) > postgresql-plpython, then recompile python with threading, install(or > upgrade) trac and pray that plpython won't eat my dog when I use it. A > really painful and error prone exercise, especially when an upgrade > comes along (security or otherwise). > > I need both of these ports on one box and I'm not sure what to do to > sort out this mess properly. Any ideas? What's up with Python's > threading support on FreeBSD in any case, why is is broken? > > To get you an idea of what versions I'm running, the affected postgresql > ports are > > postgresql-plpython-8.2.6 > postgresql-server-8.2.6 > > for the trac dependencies the involved culprits are: > > py25-pysqlite-2.0.7_1 > python25-2.5.1_1 > python-2.5,2 > sqlite-3.3.8 # peripheral > > I remember with python 2.4 I had the same endless issues over a year ago > so it's not 2.5's fault. Oh, and btw, I'm running 6.2-RELEASE-p9 i386. > > Gunther > _______________________________________________ > freebsd-questions@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-questions > To unsubscribe, send any mail to > "freebsd-questions-unsubscribe@freebsd.org" It's my understanding that threading *in* python works well, but threading *with* python doesn't and you shouldn't use/rely on it. I'm afraid I can't tell you much more without an hour of googling and I wouldn't be sure if I can adequately explain after. I think it has to do with the GIL. I suggest to ask at freebsd-python@freebsd.org. Dan
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200801100202.17511.danny>