[Python-Dev] cygwin errors

Tim Peters tim.one@comcast.net
Thu, 17 Jul 2003 23:37:24 -0400

[Skip Montanaro]
>     [ failures in test_time, test_strptime, test_logging ]
> ...
> I've been unable to reproduce any of this on Mac OS X.  I built
> --with-pydebug, tried those combinations you indicated as well as
> three regrtest -r runs (one with -uall), but saw nothing.

Jeremy saw the problem on Linux too, and checked in a locale hack that may
or may not be appropriate.

We're not going to do a release tonight.  Partly because of this thing, but
mostly because we want to give Jason a chance to stare at the Cygwin
problems.  Jeremy points out (correctly) that if we *expect* to make changes
in order to repair the Cygwin woes, there's no real sense in which we could
call what we have now a "release candidate".

> I then returned to my build.O6 directory (OPT=-O6, -DNDEBUG), rebuilt
> and tried again.
> During the -r -uall -O6 run I got some assertion errors in the bsddb3
> thread stuff:
>     Exception in thread writer 0:
>     Traceback (most recent call last):
>       File "/Users/skip/src/python/head/dist/src/Lib/threading.py",
> line 436, in __bootstrap
>         self.run()
>       File "/Users/skip/src/python/head/dist/src/Lib/threading.py",
> line 416, in run
>         self.__target(*self.__args, **self.__kwargs)
>       File
> "/Users/skip/src/python/head/dist/src/Lib/bsddb/test/test_thread.py"
> , line 254, in writerThread
>         self.assertEqual(data, self.makeData(key))
>       File "/Users/skip/src/python/head/dist/src/Lib/unittest.py",
> line 292, in failUnlessEqual
>         raise self.failureException, \
>     AssertionError: None != '0002-0002-0002-0002-0002'

So what's the problem?  None *isn't* equal to any big string, let alone one
with a stuttering disability <wink>.

OK, I note that writerThread() doesn't do the same thing each time it's run:
it branches in two places based on the values random() returns.  So it's not
obvious to me whether it always should pass.

> During both -r -uall runs (debug and non-debug builds) I got a warning
> during the bsddb3 tests:
>     /Users/skip/src/python/head/dist/src/Lib/bsddb/dbutils.py:67:
> RuntimeWarning: DB_INCOMPLETE: Cache flush was unable to complete
>       return function(*_args, **_kwargs)

I stopped worrying about warnings from test_bsddb3 -- but am not sure I
should have.

> If the problem is with the locale code, Mac OS X is the wrong place
> to debug the problem as its locale support is apparently minimal:
>     test_locale skipped -- Locale support on MacOSX is minimal and
> cannot be tested
> I'll try some more cygwin tests tomorrow, though those failures
> looked a lot different than what you're seeing.

Yes, very, and I'm much more worried about them, especially to the extent
they smell like wild-store kinda things.