modsnake-devel Mailing List for mod_snake - Apache modules in Python (Page 2)
Status: Alpha
Brought to you by:
jick
You can subscribe to this list here.
2000 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(2) |
Jul
(1) |
Aug
(2) |
Sep
(2) |
Oct
|
Nov
(3) |
Dec
(37) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2001 |
Jan
(13) |
Feb
(5) |
Mar
(7) |
Apr
(17) |
May
(5) |
Jun
(15) |
Jul
(7) |
Aug
(5) |
Sep
(7) |
Oct
(1) |
Nov
(9) |
Dec
|
2002 |
Jan
(1) |
Feb
(2) |
Mar
(14) |
Apr
(9) |
May
(8) |
Jun
(1) |
Jul
(2) |
Aug
(12) |
Sep
|
Oct
|
Nov
|
Dec
|
From: Jon T. <jt...@co...> - 2002-04-12 21:21:25
|
You may want to check out the new-httpd mailing list. There has been some talk about extremely poor performance with the worker MPM. -- Jon On Fri, Apr 12, 2002 at 02:02:54PM -0700, Zander Lichstein wrote: > only occurs with mpm-worker. Using prefork everything is always ok. > > - Z > |
From: Zander L. <ZLi...@L9...> - 2002-04-12 21:02:56
|
only occurs with mpm-worker. Using prefork everything is always ok. - Z |
From: Zander L. <ZLi...@L9...> - 2002-04-12 18:25:59
|
Further symptoms: Under this heavy load: [Fri Apr 12 11:11:21 2002] [notice] child pid 11024 exit signal = Segmentation fault (11) Fatal Python error: GC object already in linked list [Fri Apr 12 11:11:23 2002] [notice] child pid 11053 exit signal Aborted = (6) [Fri Apr 12 11:11:25 2002] [notice] child pid 11082 exit signal = Segmentation fault (11) Fatal Python error: GC object already in linked list etc when I run ab with -c 1 (1 request at a time), it smokes!... but any = higher concurrncy, and I get those errors. Again: httpd 2.0.35 swig 1.3.6 python 2.2.1 mod_snake HEAD - Z -----Original Message----- From: Zander Lichstein=20 Sent: Friday, April 12, 2002 7:21 AM To: 'mod...@so...' Subject: Python 2.2 performance I recompiled against Python 2.2.1 [release], and the performance is = abysmal: Apache 2.0.35 SWIG 1.3.6 Python 2.2.1 mod_snake (devel) ab for the hello_world was showing >1400 requests/sec under 1.5.2, and = shows ~40/sec under 2.2.1. Where should I start? - Z _______________________________________________________________________ Zander Lichstein, Director, System Architecture L90 - MARKETING | TECHNOLOGY | MEDIA =A0 [v]=A0 310- 751-0147 x206 [f]=A0 310- 578-2091 =A0 http://www.L90.com _______________________________________________________________________ adMonitor: L90's Technology for Business Success http://www.L90adMonitor.com -----Original Message----- From: Jon Travis [mailto:jt...@co...] Sent: Thursday, April 11, 2002 1:35 PM To: Zander Lichstein Cc: 'mod...@so...' Subject: Re: [Modsnake-devel] compile problems with 2.0.35 Sounds good to me .. thanks.. ;-) -- Jon On Thu, Apr 11, 2002 at 12:58:25PM -0700, Zander Lichstein wrote: > I think that that the following line must be changed in bucket.i > =20 > Index: src/bucket.i > = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > RCS file: /cvsroot/modsnake/mod_snake/src/bucket.i,v > retrieving revision 1.11 > diff -c -r1.11 bucket.i > *** src/bucket.i 12 Feb 2001 06:11:24 -0000 1.11 > --- src/bucket.i 11 Apr 2002 19:57:46 -0000 > *************** > *** 272,278 **** > #else > apr_bucket *eos; > =20 > ! if((eos =3D apr_bucket_eos_create()) =3D=3D NULL){ > PyErr_SetString(PyExc_MemoryError, "internal bucket creation error"); > return NULL; > } > --- 272,278 ---- > #else > apr_bucket *eos; > =20 > ! if((eos =3D apr_bucket_eos_create(brigade->bucket_alloc)) =3D=3D = NULL){ > PyErr_SetString(PyExc_MemoryError, "internal bucket creation error"); > return NULL; > } >=20 >=20 > =20 |
From: Zander L. <ZLi...@L9...> - 2002-04-12 14:21:09
|
I recompiled against Python 2.2.1 [release], and the performance is = abysmal: Apache 2.0.35 SWIG 1.3.6 Python 2.2.1 mod_snake (devel) ab for the hello_world was showing >1400 requests/sec under 1.5.2, and = shows ~40/sec under 2.2.1. Where should I start? - Z _______________________________________________________________________ Zander Lichstein, Director, System Architecture L90 - MARKETING | TECHNOLOGY | MEDIA =A0 [v]=A0 310- 751-0147 x206 [f]=A0 310- 578-2091 =A0 http://www.L90.com _______________________________________________________________________ adMonitor: L90's Technology for Business Success http://www.L90adMonitor.com -----Original Message----- From: Jon Travis [mailto:jt...@co...] Sent: Thursday, April 11, 2002 1:35 PM To: Zander Lichstein Cc: 'mod...@so...' Subject: Re: [Modsnake-devel] compile problems with 2.0.35 Sounds good to me .. thanks.. ;-) -- Jon On Thu, Apr 11, 2002 at 12:58:25PM -0700, Zander Lichstein wrote: > I think that that the following line must be changed in bucket.i > =20 > Index: src/bucket.i > = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > RCS file: /cvsroot/modsnake/mod_snake/src/bucket.i,v > retrieving revision 1.11 > diff -c -r1.11 bucket.i > *** src/bucket.i 12 Feb 2001 06:11:24 -0000 1.11 > --- src/bucket.i 11 Apr 2002 19:57:46 -0000 > *************** > *** 272,278 **** > #else > apr_bucket *eos; > =20 > ! if((eos =3D apr_bucket_eos_create()) =3D=3D NULL){ > PyErr_SetString(PyExc_MemoryError, "internal bucket creation error"); > return NULL; > } > --- 272,278 ---- > #else > apr_bucket *eos; > =20 > ! if((eos =3D apr_bucket_eos_create(brigade->bucket_alloc)) =3D=3D = NULL){ > PyErr_SetString(PyExc_MemoryError, "internal bucket creation error"); > return NULL; > } >=20 >=20 > =20 |
From: Jon T. <jt...@co...> - 2002-04-11 20:35:49
|
Sounds good to me .. thanks.. ;-) -- Jon On Thu, Apr 11, 2002 at 12:58:25PM -0700, Zander Lichstein wrote: > I think that that the following line must be changed in bucket.i > > Index: src/bucket.i > =================================================================== > RCS file: /cvsroot/modsnake/mod_snake/src/bucket.i,v > retrieving revision 1.11 > diff -c -r1.11 bucket.i > *** src/bucket.i 12 Feb 2001 06:11:24 -0000 1.11 > --- src/bucket.i 11 Apr 2002 19:57:46 -0000 > *************** > *** 272,278 **** > #else > apr_bucket *eos; > > ! if((eos = apr_bucket_eos_create()) == NULL){ > PyErr_SetString(PyExc_MemoryError, "internal bucket creation error"); > return NULL; > } > --- 272,278 ---- > #else > apr_bucket *eos; > > ! if((eos = apr_bucket_eos_create(brigade->bucket_alloc)) == NULL){ > PyErr_SetString(PyExc_MemoryError, "internal bucket creation error"); > return NULL; > } > > > |
From: Zander L. <ZLi...@L9...> - 2002-04-11 19:58:30
|
I think that that the following line must be changed in bucket.i Index: src/bucket.i =================================================================== RCS file: /cvsroot/modsnake/mod_snake/src/bucket.i,v retrieving revision 1.11 diff -c -r1.11 bucket.i *** src/bucket.i 12 Feb 2001 06:11:24 -0000 1.11 --- src/bucket.i 11 Apr 2002 19:57:46 -0000 *************** *** 272,278 **** #else apr_bucket *eos; ! if((eos = apr_bucket_eos_create()) == NULL){ PyErr_SetString(PyExc_MemoryError, "internal bucket creation error"); return NULL; } --- 272,278 ---- #else apr_bucket *eos; ! if((eos = apr_bucket_eos_create(brigade->bucket_alloc)) == NULL){ PyErr_SetString(PyExc_MemoryError, "internal bucket creation error"); return NULL; } |
From: Bill E. <bi...@rf...> - 2002-04-07 15:33:29
|
Using Python2.2.1c2 & various versions of SWIG (1.3a5 & 1.3a11) Versions of Python2.2.1 before this had errors. modsnake 0.5.0 compiled fine, CVS complains on this one about "compile with -DEAPI". WIthout -DEAPI I get: [root@gorgon mod_snake]# make check cd testsuite && make check make[1]: Entering directory `/usr/local/src/modsnake/mod_snake/testsuite' Server version: Apache/1.3.22 (Unix) (Red-Hat/Linux) Server built: Nov 1 2001 15:51:34 Python version: 2.2 (#1, Apr 7 2002, 17:03:16) [GCC 2.96 20000731 (Red Hat Linux 7.1 2.96-98)] [Sun Apr 7 17:09:58 2002] [warn] Loaded DSO /usr/local/src/modsnake/mod_snake/src/libmod_snake.so uses plain Apache 1.3 API, this module might crash under EAPI! (please recompile it with -DEAPI) Syntax error on line 11 of /usr/local/src/modsnake/mod_snake/testsuite/conf/httpd1.3.conf: Cannot add module via name 'mod_env.c': not in list of loaded modules Traceback (most recent call last): File "run_tests.py", line 8, in ? server_config.start_server() File "server_config.py", line 22, in start_server raise 'Error starting server' Error starting server make[1]: *** [check] Error 1 make[1]: Leaving directory `/usr/local/src/modsnake/mod_snake/testsuite' make: *** [check] Error 2 With -DEAPI I still get the "mod_env.c not in list of loaded modules" error: [root@gorgon mod_snake]# make check cd testsuite && make check make[1]: Entering directory `/usr/local/src/modsnake/mod_snake/testsuite' Server version: Apache/1.3.22 (Unix) (Red-Hat/Linux) Server built: Nov 1 2001 15:51:34 Python version: 2.2 (#1, Apr 7 2002, 17:03:16) [GCC 2.96 20000731 (Red Hat Linux 7.1 2.96-98)] Syntax error on line 11 of /usr/local/src/modsnake/mod_snake/testsuite/conf/httpd1.3.conf: Cannot add module via name 'mod_env.c': not in list of loaded modules Traceback (most recent call last): File "run_tests.py", line 8, in ? server_config.start_server() File "server_config.py", line 22, in start_server raise 'Error starting server' Error starting server make[1]: *** [check] Error 1 make[1]: Leaving directory `/usr/local/src/modsnake/mod_snake/testsuite' make: *** [check] Error 2 Trying the hello world test I get: Starting httpd: WARNING: Python C API version mismatch for module mod_snakec: This Python has API version 1007, module mod_snakec has version 1011. [Sun Apr 7 17:22:10 2002] [crit] mod_snake: Error initializing internal mod_snake! ValueError: bad marshal data Syntax error on line 281 of /etc/httpd/conf/httpd.conf: mod_snake: Unable to load module 01_hello_world.Hello_World [FAILED] If I install 0.5.0, the same helloworld example runs. -- -- Bill Eldridge Radio Free Asia bi...@rf... |
From: <bs...@wa...> - 2002-03-13 10:29:51
|
Hi! I just joined this list to see how mod_snake compares to mod_python. Well I'm not writing just to say hello. On http://modsnake.sourceforge.net/ PHP error: Warning: Failed opening '/home/groups/modsnake/htdocs/copyright.inc' for inclusion (include_path='.:/usr/local/lib/php') in /home/groups/m/mo/modsnake/htdocs/index.php on line 81 If you hadn't noticed :) -- +-----------------+ | Bjarke Sørensen | | <bs...@wa...> | | http://wasd.dk/ | +-----------------+ |
From: Jeff D. <lis...@em...> - 2002-03-08 11:16:06
|
There is a php error on the modsnake.sourceforge.net website. Minor thing, but I suppose it should be fixed. Regards, Jeff |
From: Jeff D. <lis...@em...> - 2002-03-08 08:53:36
|
> Apache will probably not behave very favourably when you play with alarms. > I can't say that I've tried it out, though. I don't believe they use > SIGALRM for anything. True. I would certainly need to look into apache and the signals it uses. It seems like something complicated may be involved here as well. I am beginning to like Erno's idea about lowering the number of requests per child so that we can safely setrlimit the cpu time. The only problem with that approach is that it doesn't work for apache threads, only processes (correct me if I'm wrong). Which brings up another thought: setrlimit affects all threads for all limits, I think, so it isn't practical when using threads. We need to limit per thread or per process. > > > If we're concerned about making it secure against malicious code, maybe > > run all the python code in RExec and don't let it use signal handlers, > > but allow access to most things like files and sockets and such. > > > > Do you think this will work? > > This would definitely work. Probably what should happen is that the > SnakeModule directive should take an additional argument specifying a RExec > class. Or, if you are worried about user-written .epy files, that could be > a per-directory or per-server option for mod_snake_epy. That sounds good. Won't we also need one for pycgi? Regards, Jeff |
From: Jeff D. <lis...@em...> - 2002-03-08 08:05:20
|
> you could use a cpu time limit if you use fork instead of threads: > apache has a setting on the maximum number of requests to serve with > each child. you could set things so that normally the cpu time quota > would be enough for the given number of requests. That's a good idea. I didn't think about it before... I kept imagining apache processes killed ungracefully on a normal, periodic basis. However, the number of requests per child could be low enough that it would usually exit graceully, unless there was some kind of infinite loop. My only question here is: how much cpu time is usually involved? I would imagine a very low number. I am not very familiar with tuning apache. Regards, Jeff |
From: Erno K. <er...@ik...> - 2002-03-07 16:53:44
|
you could use a cpu time limit if you use fork instead of threads: apache has a setting on the maximum number of requests to serve with each child. you could set things so that normally the cpu time quota would be enough for the given number of requests. -- erno |
From: Jon T. <jt...@p0...> - 2002-03-07 16:49:28
|
On Thu, Mar 07, 2002 at 02:29:42AM -0800, Jeff Davis wrote: > The timed execution thing gets me thinking: what about a SIGALRM? Can we just > set a timer and catch the signal from python? Can we have the signal handler > immediaitely return to Apache with an error? Apache will probably not behave very favourably when you play with alarms. I can't say that I've tried it out, though. I don't believe they use SIGALRM for anything. > If we're concerned about making it secure against malicious code, maybe run > all the python code in RExec and don't let it use signal handlers, but allow > access to most things like files and sockets and such. > > Do you think this will work? This would definitely work. Probably what should happen is that the SnakeModule directive should take an additional argument specifying a RExec class. Or, if you are worried about user-written .epy files, that could be a per-directory or per-server option for mod_snake_epy. -- Jon |
From: Jeff D. <lis...@em...> - 2002-03-07 10:33:51
|
The timed execution thing gets me thinking: what about a SIGALRM? Can we just set a timer and catch the signal from python? Can we have the signal handler immediaitely return to Apache with an error? If we're concerned about making it secure against malicious code, maybe run all the python code in RExec and don't let it use signal handlers, but allow access to most things like files and sockets and such. Do you think this will work? Regards, Jeff On Thursday 07 March 2002 01:15 am, Erno Kuusela wrote: > | > I looked a little while ago at trying to limit execution time, but > | > couldn't find a good way to do it. One option was to execute a > | > function when the thread context changed over (Python has an internal > | > limit for how long it runs a thread, which can be set from Python). > > fwiw, you can't defend against this completely, since > one bytecode can take an arbitrary amount of time and storage > (BINARY_POWER with very large numbers, for example). > > -- erno > > _______________________________________________ > Modsnake-devel mailing list > Mod...@li... > https://lists.sourceforge.net/lists/listinfo/modsnake-devel |
From: Erno K. <er...@ik...> - 2002-03-07 09:15:38
|
| > I looked a little while ago at trying to limit execution time, but couldn't | > find a good way to do it. One option was to execute a function when the | > thread context changed over (Python has an internal limit for how long it | > runs a thread, which can be set from Python). fwiw, you can't defend against this completely, since one bytecode can take an arbitrary amount of time and storage (BINARY_POWER with very large numbers, for example). -- erno |
From: Jeff D. <lis...@em...> - 2002-03-07 07:20:18
|
> > Ok, so I looked back in ceval.c -- and IIRC, the problem is not adding > the exception. The problem is that Py_MakePendingCalls doesn't like it > when you Py_AddPendingCall from within a pending call. This may be > fixed, since I took a look, though. > Thanks, I'll look into that. > > That is up to Apache. In Apache 2.0, mod_snake is called like any other > module, so it can be on a threaded or forked basis. > Oh, I understand what you mean now. You mentioned threads before, and it doesn't make sense to set the execution time for an entire thread because the thread apache creates usually lasts for many script executions (hence the speed advantage of mod_snake over CGI or whatever). So, I don't think setting the time limit of a thread will be too much better than a setrlimit on the entire apache thread/process cpu time. I will try to determine the way mod_snake works a little bit better and I hope I can come up with something, primarily to catch an infinite loop or some such thing. > Using setrlimit might not be the most graceful way to handle resources, but > I can't think of a better way for memory, off the top of my head. I tried it before, and if I am correct, the python interpreter just throws an exception... no processes killed or anything. I can't really think of a more graceful way it could be handled. If you declare to many variables, you have to catch the exception. Regards, Jeff |
From: Jon T. <jt...@p0...> - 2002-03-07 06:25:11
|
On Wed, Mar 06, 2002 at 06:23:19PM -0500, Afra Ahmad wrote: > Hi guys, > > I read the documentation and have tried building the combination of > apache 2.0.32 with the latest CVS version of mod_snake, but there are > always compilation errors. > > I am using SWIG Version 1.3.12u-20020306-1703 and configuration works > perfect: > > ./configure --with-apxs=/opt/apache/bin/apxs > > But when I type make, compilation exits with these errors: > mod_snake_wrap.c: At top level: > mod_snake_wrap.c:159: warning: `SWIG_TypeQuery' defined but not used > mod_snake_wrap.c:335: warning: `SWIG_addvarlink' defined but not used > mod_snake_wrap.c:471: warning: `SWIG_ConvertPacked' defined but not used > mod_snake_wrap.c:540: warning: `SWIG_MakeShadow' defined but not used > mod_snake_wrap.c:654: warning: `l_output_helper' defined but not used > make[1]: *** [mod_snake_wrap.lo] Error 1 > > Can anyone please help with this? > > Thank you very much. > > Afra Is there another error in the compilation? These are warnings which shouldn't stop it. -- Jon |
From: Jon T. <jt...@p0...> - 2002-03-07 06:23:53
|
On Wed, Mar 06, 2002 at 10:00:20PM -0800, Jeff Davis wrote: > > > I looked a little while ago at trying to limit execution time, but couldn't > > find a good way to do it. One option was to execute a function when the > > thread context changed over (Python has an internal limit for how long it > > runs a thread, which can be set from Python). IIRC, Python didn't like > > me raising an exception from there. The second thing that was tried, was > > re-writing the bytecode to call something every so often, but that made > > bytecode much slower. If you can find a good way to do it, that would > > be great! > > Interesting. Can you clarify what you mean when you say the python "doesn't > like you raising an exception there"? > > Certainly execution time is the tricky resource. Setrlimit doesn't really > seem like a good idea for the whole process, since the process stays alive > for a long time accross many script runs. I will look into how python handles > those threads if I can, and how mod_snake uses them, etc. I don't think > rewriting the bytecode is an answer that many people will appreciate. Ok, so I looked back in ceval.c -- and IIRC, the problem is not adding the exception. The problem is that Py_MakePendingCalls doesn't like it when you Py_AddPendingCall from within a pending call. This may be fixed, since I took a look, though. > Speaking of which, are there docs about how mod_snake uses new threads, or > should I read the source? It makes me curious though, does mod_snake start a > new thread for each request? That is up to Apache. In Apache 2.0, mod_snake is called like any other module, so it can be on a threaded or forked basis. > However, I figure the RAM is an easy win with setrlimit (or maybe RExec even > provides a way), as are the other restrictions that setrlimit allows you to > modify. Using setrlimit might not be the most graceful way to handle resources, but I can't think of a better way for memory, off the top of my head. -- Jon |
From: Jeff D. <lis...@em...> - 2002-03-07 06:04:24
|
> I looked a little while ago at trying to limit execution time, but couldn't > find a good way to do it. One option was to execute a function when the > thread context changed over (Python has an internal limit for how long it > runs a thread, which can be set from Python). IIRC, Python didn't like > me raising an exception from there. The second thing that was tried, was > re-writing the bytecode to call something every so often, but that made > bytecode much slower. If you can find a good way to do it, that would > be great! Interesting. Can you clarify what you mean when you say the python "doesn't like you raising an exception there"? Certainly execution time is the tricky resource. Setrlimit doesn't really seem like a good idea for the whole process, since the process stays alive for a long time accross many script runs. I will look into how python handles those threads if I can, and how mod_snake uses them, etc. I don't think rewriting the bytecode is an answer that many people will appreciate. Speaking of which, are there docs about how mod_snake uses new threads, or should I read the source? It makes me curious though, does mod_snake start a new thread for each request? However, I figure the RAM is an easy win with setrlimit (or maybe RExec even provides a way), as are the other restrictions that setrlimit allows you to modify. Regards, Jeff |
From: Afra A. <aa...@cs...> - 2002-03-06 23:18:53
|
Hi guys, I read the documentation and have tried building the combination of apache 2.0.32 with the latest CVS version of mod_snake, but there are always compilation errors. I am using SWIG Version 1.3.12u-20020306-1703 and configuration works perfect: ./configure --with-apxs=/opt/apache/bin/apxs But when I type make, compilation exits with these errors: mod_snake_wrap.c: At top level: mod_snake_wrap.c:159: warning: `SWIG_TypeQuery' defined but not used mod_snake_wrap.c:335: warning: `SWIG_addvarlink' defined but not used mod_snake_wrap.c:471: warning: `SWIG_ConvertPacked' defined but not used mod_snake_wrap.c:540: warning: `SWIG_MakeShadow' defined but not used mod_snake_wrap.c:654: warning: `l_output_helper' defined but not used make[1]: *** [mod_snake_wrap.lo] Error 1 Can anyone please help with this? Thank you very much. Afra |
From: Jeff D. <lis...@em...> - 2002-03-06 11:35:51
|
I have been looking into replacing my current development platform (php) with mod_snake. One of the things I like about php is that it seems to control itself well and I can usually prevent a script from "running away", i.e. infinite loop. It has a directive in the config for the max execution time and max RAM for one execution of a script, and that really helps. Is there a similar way to control mod_snake? If not, would people be interested if I developed the feature using either a feature of python or the system's setrlimit functions? And as a side note, when developing mod_snake scripts, will I have to worry about modules not being reloaded after I make changes (or a module loaded by a script, more specifically)? Regards, Jeff |
From: Jon T. <jt...@p0...> - 2002-02-05 16:05:19
|
There have been recent updates to get mod_snake to build with Apache 2.0 from CVS. There has been no official re-release, though. It should probably already just work out of the box with newer Pythons, as well. -- Jon On Tue, Feb 05, 2002 at 06:46:57PM +0900, Joseph Wayne Norton wrote: > > Hello. > > I wanted to see if there were any plans on updating mod_snake with the > latest apache 2.0 and python 2.1.2 (or python 2.2). > > I also found one issue in the src/Makefile.in file. This is needed if > python's socketmodule is compiled with ssl support. > > - j > > > Index: src/Makefile.in > =================================================================== > RCS file: /cvsroot/modsnake/mod_snake/src/Makefile.in,v > retrieving revision 1.9 > diff -u -r1.9 Makefile.in > --- src/Makefile.in 2002/01/10 22:28:30 1.9 > +++ src/Makefile.in 2002/02/05 09:27:04 > @@ -112,9 +112,9 @@ > > > py_to_c: py_to_c.o > - $(PYTHON_LINKCC) -o $@ $< $(PYTHON_LDFLAGS) $(ALL_PYLIBS) \ > + $(PYTHON_LINKCC) -o $@ $< $(PYTHON_LDFLAGS) \ > -L$(PYTHON_BASEDIR)/lib/python$(PYTHON_VERSION)/config \ > - -lpython$(PYTHON_VERSION) > + -lpython$(PYTHON_VERSION) $(ALL_PYLIBS) > > @MAINT_F_RENAME@mod_snake_wrap.c @MAINT_F_RENAME@mod_snake.py: > @MAINT_T_RENAME@mod_snake_wrap.c @MAINT_T_RENAME@mod_snake.py: \ > > _______________________________________________ > Modsnake-devel mailing list > Mod...@li... > https://lists.sourceforge.net/lists/listinfo/modsnake-devel |
From: Joseph W. N. <no...@al...> - 2002-02-05 09:47:15
|
Hello. I wanted to see if there were any plans on updating mod_snake with the latest apache 2.0 and python 2.1.2 (or python 2.2). I also found one issue in the src/Makefile.in file. This is needed if python's socketmodule is compiled with ssl support. - j Index: src/Makefile.in =================================================================== RCS file: /cvsroot/modsnake/mod_snake/src/Makefile.in,v retrieving revision 1.9 diff -u -r1.9 Makefile.in --- src/Makefile.in 2002/01/10 22:28:30 1.9 +++ src/Makefile.in 2002/02/05 09:27:04 @@ -112,9 +112,9 @@ py_to_c: py_to_c.o - $(PYTHON_LINKCC) -o $@ $< $(PYTHON_LDFLAGS) $(ALL_PYLIBS) \ + $(PYTHON_LINKCC) -o $@ $< $(PYTHON_LDFLAGS) \ -L$(PYTHON_BASEDIR)/lib/python$(PYTHON_VERSION)/config \ - -lpython$(PYTHON_VERSION) + -lpython$(PYTHON_VERSION) $(ALL_PYLIBS) @MAINT_F_RENAME@mod_snake_wrap.c @MAINT_F_RENAME@mod_snake.py: @MAINT_T_RENAME@mod_snake_wrap.c @MAINT_T_RENAME@mod_snake.py: \ |
From: Jon T. <jt...@co...> - 2002-01-11 02:41:32
|
Yep, this is indeed a problem. I think I'm going to hack this to work similar to how the Apache guys do it. That is, make a hack file which references all the exported symbols from the linked library -- that way they are all included.=20 -- Jon On Mon, Sep 10, 2001 at 01:33:46AM -0400, Allan M. Wind wrote: > In trying to use sqlrelay ('from SQLRelay import PySQLRClient'), I get > a undefined symbol Py_Main. I think this falls under the following: > http://www.python.org/doc/2.2/ext/link-reqs.html (I am using 2.01 of > Python, but the code found on the 2.0 does not work here). >=20 > The output of the above is the same as PYTHON_LINKFORSHARED which is > unused in src/Makefile, adding it makes no difference. I can force > the linker to include it from libpython2.0.a by adding a '-u Py_Main' > but it feels like a hack. >=20 > sqlrelay picks up Py_Main from /usr/lib/python2.0/config/python.o > which seems ok. Thoughts? >=20 > gcc: 2.95.5 > mod_snake: 0.5.0 > sqlrelay: 0.28 >=20 >=20 > /Allan > --=20 > Allan M. Wind email: all...@me... > P.O. Box 2022 finger: aw...@di... (GPG/PGP) > Woburn, MA 01888-0022 > USA |
From: Brian G. <ge...@cm...> - 2001-11-27 20:07:01
|
Here's the patch I said I'd do. Now all I have to do is update SWIG.... -- ===================================================================== | JAVA must have been developed in the wilds of West Virginia. | | After all, why else would it support only single inheritance?? | ===================================================================== | Finger ge...@an... for my public key. | ===================================================================== |