[Python-Dev] bsddb: Test failures on windows (HELP!)
Mark Hammond
mhammond at skippinet.com.au
Thu Jul 24 07:44:31 CEST 2008
> Trent, I was wondering if you could look at some test failures in MS
> Windows builds. I can't debug Windows issues myself :-(. This is a MS
> free environment...
In these errors I see lots of bsdbd errors, many of the form:
| DBFileExistsError: (17, 'File exists -- __fop_file_setup: Retry limit
(100) exceeded')
Maybe an old test file isn't being nuked? Others of the form:
| self.assertTrue(time.time()<timeout)
| AssertionError
which also look more related to the test suite than to Windows.
There are also lots of errors due to the environment having a unicode object
in it:
| test test_site failed -- Traceback (most recent call last):
| ...
| TypeError: environment can only contain strings
| test test_subprocess failed -- errors occurred; run in verbose mode for
details
| [Possibly the same error as below?]
| test test_sys failed -- Traceback (most recent call last):
| File "...\subprocess.py", line 817, in _execute_child
| startupinfo)
| TypeError: environment can only contain strings
* A couple of wsgi related errors, including one about the environment - but
this has more information:
AssertionError: "AssertionError: Environmental variable LIB is not a string:
<type 'unicode'> (value: u'C:\\\\Program Files\\\\Microsoft Visual Studio
9.0\\\\VC\\\\LIB;C:\\\\Program Files\\\\Microsoft
SDKs\\\\Windows\\\\v6.0A\\\\lib;c:\\\\program files\\\\microsoft visual
studio .NET 2003\\\\vc7\\\\atlmfc\\\\lib;c:\\\\program files\\\\microsoft
visual studio .NET 2003\\\\vc7\\\\lib;c:\\\\program files\\\\microsoft
visual studio .NET 2003\\\\vc7\\\\PlatformSDK\\\\lib;C:\\\\Program
Files\\\\Microsoft Visual Studio .NET 2003\\\\SDK\\\\v1.1\\\\Lib\\\\')" !=
"AssertionError: Headers (('Content-Type', 'text/plain')) must be of type
list: <type 'tuple'>"
So LIB has a Unicode value - evn though it has no Unicode characters, and
was presumably in the environment Python inherited (but presumably was
initially a string).
I can't reproduce the Unicode errors: 'python test_sys.py' works and I
couldn't run a full test suite (see below). Python allows you to set
unicode objects in os.environ, so its possible part of the test suite is
modifying the environment.
I tried to run a full test, but it hangs in various places before test_sys
(bz2, multiprocessing), and I ended up giving up. This was on for either 32
or 64bits with the current trunk, but sadly I've no idea what could be
happening there :(
So it sounds like just tracking down how a unicode object is getting into
the environment will solve the vast majority of the errors - except for the
bsddb and wsgi ones, which don't look particularly Windows specific...
Hope that helps a bit...
Mark
More information about the Python-Dev
mailing list