[issue29269] test_socket failing in solaris
Brian Vandenberg added the comment: I accidentally hit submit too early. I tried changing the code in posixmodule.c to use lseek(), something like the following: offset = lseek( in, 0, SEEK_CUR ); do { ret = sendfile(...); } while( ... ); lseek( in, offset, SEEK_SET ); ... however, in addition to readfile not advancing the file pointer it also doesn't seem to cause an EOF condition. In my first attempt at the above I was doing this after the loop: lseek( in, offset, SEEK_CUR ); ... and it just kept advancing the file pointer well beyond the end of the file and sendfile() had absolutely no qualms about reading beyond the end of the file. I even tried adding a read() after the 2nd lseek to see if I could force an EOF condition but that didn't do it. -- ___ Python tracker <https://bugs.python.org/issue29269> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue29269] test_socket failing in solaris
Brian Vandenberg added the comment: Christian, you did exactly what I needed. Thank you. I don't have the means to do a git bisect to find where it broke. It wasn't a problem around 3.3 timeframe and I'm not sure when this sendfile stuff was implemented. The man page for sendfile says "The sendfile() function does not modify the current file pointer of in_fd, (...)". In other words the read pointer for the input descriptor won't be advanced. They expect you to use it like this: offset = 0; do { ret = sendfile(in, out, , len); } while( ret < 0 && (errno == EAGAIN || errno == EINTR) ); ... though making that change in posixmodule.c would break this test severely since the send & receive code is running on the same thread. In posixmodule.c I don't see anything that attempts to return the number of bytes successfully sent. Since the input file descriptor won't have its read pointer advanced, the variable "offset" must be set to the correct offset value, otherwise it just keeps reading the first 32k of the file that was generated for the test. -- ___ Python tracker <https://bugs.python.org/issue29269> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue29269] test_socket failing in solaris
Brian Vandenberg added the comment: Solaris will be around for at least another 10-15 years. The least you could do is look into it and offer some speculations. -- ___ Python tracker <https://bugs.python.org/issue29269> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue29325] pysqlite: Evaluate removal of sqlite3_stmt_readonly
New submission from Brian Vandenberg: I'm not sure where to request changes to pysqlite, so my apologies if this isn't the right place. To begin with: I'll either end up building a newer version of sqlite myself or just accepting that pysqlite won't be part of this python installation. However, I thought it might be useful to know that use of the function "sqlite3_stmt_readonly" is the only thing tying pysqlite to the current minimum requirement to use sqlite 3.7.4. The currently available 'supported' version of sqlite for RHEL6 is 3.6.x and there's likely others out there who (for whatever reason) are stuck on an older release of sqlite and moving to the latest & greatest OS isn't [currently] feasible. -- components: Extension Modules messages: 285804 nosy: phantal priority: normal severity: normal status: open title: pysqlite: Evaluate removal of sqlite3_stmt_readonly type: enhancement ___ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue29325> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue29272] test_logging hangs if /etc/hosts only aliases "localhost" to ::1
New submission from Brian Vandenberg: On some of the linux boxes on our (air-gapped, if that matters) network it looks like some of them were mis-configured and their /etc/hosts file looks something like this: $ cat /etc/hosts 127.0.0.1 snoopy.the.internal.domain snoopy localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 ... whereas for other linux machines not exhibiting this problem: $ cat /etc/hosts 127.0.0.1 woodstock.the.internal.domain woodstock localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 It appears this is causing test_logging to hang while running SocketHandlerTest. Unfortunately I don't have administrative privileges so I'm not able to prove I'm right. I only have circumstantial evidence, but no machine I tested (about 20 machines) contradicts what I stated above. -- components: Tests messages: 285452 nosy: phantal priority: normal severity: normal status: open title: test_logging hangs if /etc/hosts only aliases "localhost" to ::1 type: behavior versions: Python 3.6 ___ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue29272> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue29265] os.cpu_count is problematic on sparc/solaris
Brian Vandenberg added the comment: > It doesn't cause any real problem with the tests, though. I routinely run > with -j40 on my 2 cpu test box because the test run completes faster that way > due to the way many tests spend time waiting for various things. In my case it did because it caused enough file descriptors to be allocated that it hit the cap for max open file handles. -- ___ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue29265> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue29269] test_socket failing in solaris
New submission from Brian Vandenberg: I started looking into this failure to see if I could figure out why but it looks like I'd have to spend more time than I have available to figure out the cause. Environment/setup: * air-gapped network (no internet access) * sparc / Solaris 10 * Built with gcc 6.3.0 * Altered configure script to change -std=c99 to -std=gnu99 (see issue 29264) * The only configure flags used were --prefix and --with-universal-archs=all When I run test_socket I see the following 4 failures; please note, I'm hand typing the results so I may typo something: ERROR: testCount (test.test_socket.SendfileUsingSendfileTest) Traceback: File "(...)/test_socket.py", line 5248, in testCount File "(...)/test_socket.py", line 5151, in recv_data MemoryError Error: testCount (test.test_socket.SendfileUsingSendfileTest) Traceback: File "(...)/test_socket.py", line 277, in _tearDown File "(...)/test_socket.py", line 289, in clientRun File "(...)/test_socket.py", line 5241, in _testCount File "(...)/Lib/socket.py", line 296, in _sendfile_use_sendfile socket.timeout: timed out Error: testWithTimeout (test.test_socket.SendfileUsingSendfileTest) Traceback: File "(...)/test_socket.py", line 5318, in testWithTimeout data = self.recv_data(conn) File "(...)/test_socket.py", line 5151, in recv_data chunk = conn.recv(self.BUFSIZE) MemoryError Error: testWithTimeout (test.test_socket.SendfileUsingSendfileTest) Traceback: File "(...)/test_socket.py", line 277, in _tearDown raise exc File "(...)/test_socket.py", line 289, in clientRun test_func() File "(...)/test_socket.py", line 5313, in _testWithTimeout sent = meth(file) File "(...)/Lib/socket.py", line 296, in _sendfile_use_sendfile socket.timeout: timed out Error: testCountWithOffset (test.test_socket.SendfileUsingSendfileTest) Traceback: File "(...)/test_socket.py", line 5287, in testCountWithOffset self.assertEqual(len(data), count) AssertionError: 4376231 != 17 Ran 539 tests in 69.166s FAILED (failures=1, errors=4, skipped=324) test test_socket failed -- components: Tests messages: 285440 nosy: phantal priority: normal severity: normal status: open title: test_socket failing in solaris type: behavior versions: Python 3.6 ___ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue29269> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue29268] test_spwd fails on solaris using NIS users
New submission from Brian Vandenberg: On all our solaris 10 machines when I run a simple test program it never reports a failure when calling getspnam: #include #include int main( int, char** ) { spwd *asdf = getspnam( "some_user" ); if( NULL == sdf ) { perror( "getspnam" ); } return 0; } If I run the above program on our linux boxes it fails as expected, but on our solaris machines it produces the same information you'd see running "ypcat passwd | grep some_user". I suspect either there's a bug in the solaris implementation of getpwnam() or perhaps there's a configuration issue on our solaris machines, though it's also possible this is just how it behaves in Solaris (at least with NIS). As to whether anything should change for test_spwd -- I suspect this will get closed as "won't fix" but at least this report may help anyone else running into this failure. -- components: Tests messages: 285439 nosy: phantal priority: normal severity: normal status: open title: test_spwd fails on solaris using NIS users type: behavior versions: Python 3.6 ___ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue29268> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue29267] Cannot override some flags in CFLAGS from the command-line
New submission from Brian Vandenberg: Due to issue 29264 I was attempting to override the build default "-std=c99" with: /path/to/configure (...) CFLAGS=-std=gnu99 ... however, the configure script is written like this: CFLAGS_NODIST="$CFLAGS_NODIST -std=c99" This causes it to always override my attempt to override the build default. -- components: Build messages: 285435 nosy: phantal priority: normal severity: normal status: open title: Cannot override some flags in CFLAGS from the command-line type: behavior versions: Python 3.6 ___ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue29267> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue29266] test_create_connection_service_name fails if "http" isn't listed in /etc/services
New submission from Brian Vandenberg: One of our solaris machines doesn't have an entry in /etc/services for "http". This is causing test_create_connection_service_name to fail. In my case I can just ignore that particular failure, but as a fix you might consider overtly getting valid service names from the host to test. Additionally, if you don't already have it you might consider adding a test that validates behavior when using a non-existent service. -- components: Tests messages: 285434 nosy: phantal priority: normal severity: normal status: open title: test_create_connection_service_name fails if "http" isn't listed in /etc/services type: behavior versions: Python 3.6 ___ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue29266> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue29265] test suite is attempting to spawn 258 child processes to run tests
Brian Vandenberg added the comment: This is odd. I just went back and re-ran 3.5.1 to see how many cores and it's having the same problem now. So, scratch that last coment. -- ___ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue29265> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue29265] test suite is attempting to spawn 258 child processes to run tests
Brian Vandenberg added the comment: I forgot to mention, this wasn't an issue in 3.5.1 though I never did check how many jobs it was using. I ran into other issues building that version and moved to a newer version because at least one of them (logging test race condition) was fixed after 3.5.1. -- ___ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue29265> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue29265] test suite is attempting to spawn 258 child processes to run tests
New submission from Brian Vandenberg: I'm attempting to build python 3.6.0 on sparc/solaris 10. After the initial configure/compile complete I ran "make test" and I see: $ make test running build running build_ext (...) running build_scripts copying and adjusting (...) changing mode of (...) renaming (...) (...) Run tests in parallel using 258 child processes I'm fairly sure the issue stems from the fact that each core on the machine has 8 "threads" and there's 32 cores (for a total of 256 virtual cores). Each core can execute 8 parallel tasks only in very specific circumstances. It's intended for use by things like lapack/atlas where you might be doing many computations on the same set of data. Outside of these more restricted circumstances each core can only handle 2 parallel tasks (or so I gathered from the documentation), so at best this machine could handle 64 backgrounded jobs though I normally restrict my builds to the actual core count or less. The most common way to get a "realistic" core count on these machines from shell scripts is: $ core_count=`kstat -m cpu_info | grep core_id | sort -u | wc -l` ... though I'm not sure how the test suite is determining the core count. I didn't see any mention of "kstat" anywhere. -- components: Tests messages: 285430 nosy: phantal priority: normal severity: normal status: open title: test suite is attempting to spawn 258 child processes to run tests type: behavior versions: Python 3.6 ___ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue29265> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue29264] sparc/ffi.c:440 error: 'asm' undeclared
New submission from Brian Vandenberg: When building pythong 3.6.0 on solaris 10/sparc I'm seeing the following error: Modules/_ctypes/libffi/src/sparc/ffi.c:440:8: error: 'asm' undeclared (first use in this function) (...) If I force it to use -std=gnu99 then it seems to compile fine. -- components: ctypes messages: 285428 nosy: phantal priority: normal severity: normal status: open title: sparc/ffi.c:440 error: 'asm' undeclared type: compile error versions: Python 3.6 ___ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue29264> ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com