Issue3149
Created on 2008-06-20 01:38 by MrJean1, last changed 2008-08-26 16:11 by pitrou.
|
msg68438 - (view) |
Author: Jean Brouwers (MrJean1) |
Date: 2008-06-20 01:38 |
|
The multiprocessing module fails to build on Solaris 10 when using the
Sun C compiler. The failure is due to one missing symbol
SEM_VALUE_MAX.
Defining that symbol (e.g. as _POSIX_SEM_VALUE_MAX) builds the
_multiprocessing module for both 32- and 64-bit.
However, for 32-bit, 5 tests from test_multiprocessing fail due to the
missing _ctypes module. For 64-bit, the first 3 tests fail (like for
32-bit) but the 4th test hangs. Here is a log:
./python Lib/test/test_multiprocessing.py
test_array (__main__.WithProcessesTestArray) ... ERROR
test_getobj_getlock_obj (__main__.WithProcessesTestArray) ... ERROR
test_rawarray (__main__.WithProcessesTestArray) ... ERROR
test_notify (__main__.WithProcessesTestCondition) ... Process Process-1:
Traceback (most recent call last):
File "/..../64/Python-2.6b1/Lib/multiprocessing/process.py", line 237,
in _bootstrap
self.run()
File "/.../64/Python-2.6b1/Lib/multiprocessing/process.py", line 93,
in run
self._target(*self._args, **self._kwargs)
File "Lib/test/test_multiprocessing.py", line 610, in f
sleeping.release()
ValueError: semaphore or lock released too many times
This is Solaris 10 on an Ultra20 (Opteron) machine:
> uname -a
SunOS unknown 5.10 Generic_118855-14 i86pc i386 i86pc
> cc -v
cc: Sun C 5.8 2005/10/13
|
|
msg68465 - (view) |
Author: Jean Brouwers (MrJean1) |
Date: 2008-06-20 15:34 |
|
One more comment on SEM_VALUE_MAX for Solaris. _POSIX_SEM_VALUE_MAX is
defined in <limits.h> on Solaris and that header file must be included.
Better might be to use _SEM_VALUE_MAX which is defined in <param.h> and
that header files needs to be included as well. Rerhaps, INT_MAX is
best.
/usr/include/limits.h:#define _POSIX_SEM_NSEMS_MAX 256
/usr/include/limits.h:#define _POSIX_SEM_VALUE_MAX 32767
/usr/include/sys/param.h:#define _SEM_NSEMS_MAX INT_MAX
/usr/include/sys/param.h:#define _SEM_VALUE_MAX INT_MAX
Btw, the value of _POSIX_SEM_MAX_VALUE is 32767.
|
|
msg71984 - (view) |
Author: Antoine Pitrou (pitrou) |
Date: 2008-08-26 16:11 |
|
This is a duplicate of #3110.
|
|
| Date |
User |
Action |
Args |
| 2008-08-26 16:11:55 | pitrou | set | status: open -> closed resolution: duplicate messages:
+ msg71984 nosy:
+ pitrou |
| 2008-06-20 15:34:32 | MrJean1 | set | messages:
+ msg68465 |
| 2008-06-20 02:04:50 | jnoller | set | nosy:
+ roudkerk |
| 2008-06-20 02:01:23 | jnoller | set | assignee: jnoller nosy:
+ jnoller |
| 2008-06-20 01:38:32 | MrJean1 | create | |
|