report: bzr selftest hangs on win32
Alexander Belchenko
bialix at ukr.net
Thu Sep 21 14:27:15 BST 2006
Andrew Bennetts пишет:
> On Wed, Sep 20, 2006 at 12:23:20PM +0300, Alexander Belchenko wrote:
>> bzr.dev revno 2022 frozen for 0.11 release.
>>
>> Today I ran selftest on my win32 box.
>>
>> The selftest hang on test that name ends with
>> '..._transport.WritableEndToEndTests.test_get_error_enoent'.
>
> That's a serious problem. I might try installing python on my windows partition
> and see if I can reproduce this.
>
>> Failed tests so far:
>>
>> test_diff.TestDiffFiles.test_external_diff_binary FAIL 511ms
>> test_merge_core.MergeTest.test_contents_merge2 FAIL 1973ms
>> ..._transport.SFTPTransportTestRelative.test__remote_path FAIL 29ms
>> ...transport.SSHVendorConnection.test_connection_paramikoERROR 1402ms
>> ...smart_transport.BasicSmartTests.test_server_subprocessERROR 9ms
>> ...art_transport.BasicSmartTests.test_smart_query_versionERROR 9ms
>> ...ransport.TCPClientTests.test_get_client_from_transportERROR 9ms
>> test_smart_transport.TCPClientTests.test_plausible_url ERROR 19ms
>> test_smart_transport.TCPClientTests.test_probe_transport ERROR 9ms
>
> Can you get the tracebacks for any of these?
In attachment you can see tracebacks for those test_smart_transport
tests that I can run.
> I suspect several of them are due
> to this method in smart.py:
>
> def get_url(self):
> """Return the url of the server"""
> host, port = self._server_socket.getsockname()
> # XXX: I think this is likely to break on windows -- self._homedir will
> # have backslashes (and maybe a drive letter?).
> # -- Andrew Bennetts, 2006-08-29
> return "bzr://%s:%d%s" % (host, port, urlutils.escape(self._homedir))
>
> But it would help to have more information.
>
> [...]
>> <bzrlib.transport.smart.SmartStreamServer object at 0x0276D2B0>
>> terminating on exception (10035, 'The socket operation could not
>> complete without blocking')
>> Exception in thread smart-server-child:
>> Traceback (most recent call last):
>> File "E:\Python24\lib\threading.py", line 442, in __bootstrap
>> self.run()
>> File "E:\Python24\lib\threading.py", line 422, in run
>> self.__target(*self.__args, **self.__kwargs)
>> File "D:\Bazaar\sandbox\bzr.dev\bzrlib\transport\smart.py", line 306,
>> in serve
>> while self._serve_one_request() != False:
>> File "D:\Bazaar\sandbox\bzr.dev\bzrlib\transport\smart.py", line 284,
>> in _serve_one_request
>> req_args = self._recv_tuple()
>> File "D:\Bazaar\sandbox\bzr.dev\bzrlib\transport\smart.py", line 268,
>> in _recv_tuple
>> return _recv_tuple(self._in)
>> File "D:\Bazaar\sandbox\bzr.dev\bzrlib\transport\smart.py", line 172,
>> in _recv_tuple
>> req_line = from_file.readline()
>> File "E:\Python24\lib\socket.py", line 340, in readline
>> data = self._sock.recv(self._rbufsize)
>> error: (10035, 'The socket operation could not complete without blocking')
>
> This is odd. It may be the cause of some of the test failures, but I'm not sure
> why that socket would be non-blocking... oh, it's probably because of this line in
> SmartTCPServer.__init__:
>
> self._server_socket.settimeout(1)
>
> socket.settimeout works internally by making the socket non-blocking.
>
> Alexander, could you try commenting out that line and see if it helps?
I comment this line and get this output:
$ python bzr --no-plugins selftest -v
test_smart_transport.WritableEndToEndTests.test_get_error_enoent
bzr: D:/Bazaar/sandbox/andrew.smart-server/bzr
bzrlib: D:\Bazaar\sandbox\andrew.smart-server\bzrlib
running tests...
test_smart_transport.WritableEndToEndTests.test_get_error_enoent
OK 180ms
----------------------------------------------------------------------
Ran 1 test in 0.231s
OK
tests passed
<bzrlib.transport.smart.SmartStreamServer object at 0x01D7BFB0>
terminating on exception 'NoneType' object is not callable
Exception in thread smart-server-child (most likely raised during
interpreter shutdown):
Traceback (most recent call last):
File "E:\Python24\lib\threading.py", line 442, in __bootstrap
File "E:\Python24\lib\threading.py", line 422, in run
File
"D:\Bazaar\sandbox\andrew.smart-server\bzrlib\transport\smart.py", line
306, in serve
File
"D:\Bazaar\sandbox\andrew.smart-server\bzrlib\transport\smart.py", line
284, in _serve_one_request
File
"D:\Bazaar\sandbox\andrew.smart-server\bzrlib\transport\smart.py", line
268, in _recv_tuple
exceptions.TypeError: 'NoneType' object is not callable
Test seems to pass but you can see strange traceback.
--
Alexander
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: testing.log
Url: https://lists.ubuntu.com/archives/bazaar/attachments/20060921/faa19830/attachment.diff
More information about the bazaar
mailing list