[issue36588] change sys.platform() to just "aix" for AIX

2019-04-10 Thread Michael Felt

Michael Felt  added the comment:

On 10/04/2019 17:05, STINNER Victor wrote:
> STINNER Victor  added the comment:
>
> I like the idea. Would you like to propose a patch? I suggest to only make 
> such change in Python 3.8 and properly document it.
>
> --
> nosy: +vstinner
>
> ___
> Python tracker 
> <https://bugs.python.org/issue36588>
> ___
>
If I understand correctly, the change should be quite simple:

diff --git a/configure.ac b/configure.ac
index 73ee71c..9632add 100644
--- a/configure.ac
+++ b/configure.ac
@@ -404,6 +404,7 @@ then
 MACHDEP="$ac_md_system$ac_md_release"

 case $MACHDEP in
+   aix*) MACHDEP="aix";;
    linux*) MACHDEP="linux";;
    cygwin*) MACHDEP="cygwin";;
    darwin*) MACHDEP="darwin";;

However, I am less familiar with (where) the appropriate documentation
is. A pointer to the documentation is appreciated.

--

___
Python tracker 
<https://bugs.python.org/issue36588>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue36588] change sys.platform() to just "aix" for AIX

2019-04-10 Thread Michael Felt


New submission from Michael Felt :

This is something that probably shouts - boring - but back in 2012 it was a hot 
topic for linux2 and linux3.

Maybe - as far back as 1996 (when AIX4 was new) "aix3" and "aix4" made sense. 
Whether that is true, or not - is pointless these days - for Python3.

In the python code I have reviewed - for various reasons - I have never seen 
any code with "sys.platform() == "aixX" (where X is any of 5, 6, 7).

There was a reference to "aix3" and "aix4" in setup.py (recently removed, and 
there is no replacement for aix5, aix6, or aix7 - not needed!)

What I mostly see is sys.platform.startswith("aix"). The other form of the same 
test is sys.platform[:3] == 'aix'

sys.platform is "build" related, e.g., potentially bound to libc issues. Even 
if this was the case (AIX offers since 2007 - official binary compatibility 
from old to new (when libc is dynamically linked, not static linked), was 
"unofficial" for aix3 and aix4).

Yes, I am sure there are arguments along the line of "why change" since we have 
been updating it - always, and/or the documentation says so.

linux2 had to stay, because there was known code that compared with linux2 (and 
that code was having problems when python was built on linux3 - hence the 
change to make sys.platform return linux2 for all Python3.2 and younger).

FYI: in Cpython (master) there are no references to "aixX".

All the references there are (in .py) are:

michael@x071:[/data/prj/python/git/cpython-master]find . -name \*.py | xargs 
egrep "[\"']aix"
./Lib/asyncio/unix_events.py:if is_socket or (is_fifo and not 
sys.platform.startswith("aix")):
./Lib/ctypes/__init__.py:if _sys.platform.startswith("aix"):
./Lib/ctypes/util.py:elif sys.platform.startswith("aix"):
./Lib/ctypes/util.py:elif sys.platform.startswith("aix"):
./Lib/distutils/command/build_ext.py:elif sys.platform[:3] == 'aix':
./Lib/distutils/util.py:elif osname[:3] == "aix":
./Lib/sysconfig.py:elif osname[:3] == "aix":
./Lib/test/test_asyncio/test_events.py:if sys.platform.startswith("aix"):
./Lib/test/test_faulthandler.py:
@unittest.skipIf(sys.platform.startswith('aix'),
./Lib/test/test_strftime.py:or sys.platform.startswith(("aix", "sunos", 
"solaris"))):
./Lib/test/test_strptime.py:@unittest.skipIf(sys.platform.startswith('aix'),
./Lib/test/test_locale.py:@unittest.skipIf(sys.platform.startswith('aix'),
./Lib/test/test_locale.py:@unittest.skipIf(sys.platform.startswith('aix'),
./Lib/test/test_fileio.py:   not 
sys.platform.startswith(('sunos', 'aix')):
./Lib/test/test_tools/test_i18n.py:
@unittest.skipIf(sys.platform.startswith('aix'),
./Lib/test/test_wait4.py:if sys.platform.startswith('aix'):
./Lib/test/test_c_locale_coercion.py:elif sys.platform.startswith("aix"):
./Lib/test/test_shutil.py:AIX = sys.platform[:3] == 'aix'
./Lib/test/test_utf8_mode.py:elif sys.platform.startswith("aix"):

I'll write the patch - if I recall it should be a one-liner in configure.ac, 
but I think some discussion (or blessing) first is appropriate.

Maybe even review whether other platforms no longer rely on the X for the 
platform.

Hoping this helps!

--
components: Build
messages: 339869
nosy: Michael.Felt
priority: normal
severity: normal
status: open
title: change sys.platform() to just "aix" for AIX
versions: Python 3.8, Python 3.9

___
Python tracker 
<https://bugs.python.org/issue36588>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue36503] remove references to aix3 and aix4 in \*.py

2019-04-02 Thread Michael Felt


Change by Michael Felt :


--
keywords: +patch
pull_requests: +12587
stage:  -> patch review

___
Python tracker 
<https://bugs.python.org/issue36503>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue36503] remove references to aix3 and aix4 in \*.py

2019-04-02 Thread Michael Felt


New submission from Michael Felt :

sys.platform returns "aix[3|4|4|5|6|7"

AIX 3 and AIX 4 are no longer around, in any supported form, so references to 
these specific releases is pointless.

This will remove the (two) places where they are still referenced.

--
components: Build, Tests
messages: 339322
nosy: Michael.Felt
priority: normal
severity: normal
status: open
title: remove references to aix3 and aix4 in \*.py
versions: Python 3.7, Python 3.8, Python 3.9

___
Python tracker 
<https://bugs.python.org/issue36503>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue36210] correct AIX logic in setup.py for (non-existant) optional extensions

2019-04-02 Thread Michael Felt


Change by Michael Felt :


--
title: correct AIX logic in setup.py for non-existant optional extensions -> 
correct AIX logic in setup.py for (non-existant) optional extensions

___
Python tracker 
<https://bugs.python.org/issue36210>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue36210] correct AIX logic in setup.py for non-existant optional extensions

2019-04-01 Thread Michael Felt


Change by Michael Felt :


--
versions: +Python 3.7

___
Python tracker 
<https://bugs.python.org/issue36210>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue36210] correct AIX logic in setup.py for non-existant optional extensions

2019-04-01 Thread Michael Felt


Michael Felt  added the comment:

Updating this to not only correct the failure of 3rd-party library ncurses 
(while IBM curses builds with no issue) to also stop announcing that the 
optional modules osaudiodev and spwd have not been built.

Neither are supported on AIX - so they will never be there.

--
title: ncurses versus cursus integration - platform differences and defaults -> 
correct AIX logic in setup.py for non-existant optional extensions

___
Python tracker 
<https://bugs.python.org/issue36210>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue36273] test_thread leaks a core dump on PPC64 AIX 3.x

2019-03-27 Thread Michael Felt


Michael Felt  added the comment:

I have looked at this briefly.

I would consider it a regression, or a spurious incident as the bot run before 
(https://buildbot.python.org/all/#/builders/10/builds/2223) and after 
(https://buildbot.python.org/all/#/builders/10/builds/2225) do not show this 
error. It may also be spurious - as there are other users on that bot system 
and the cause could be a side-effect of something else.

FYI: The error message is something similar to what I see when building using 
xlc - there is a core dump - but I cannot get a copy of the core dump to 
evaluate it.

See: https://bugs.python.org/issue35828#msg336134 - where I ask for a hint on 
how to get the code that reports the ENV change to save/copy a core dump.

--

___
Python tracker 
<https://bugs.python.org/issue36273>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue10514] configure does not create accurate Makefile on AIX

2019-03-19 Thread Michael Felt


Michael Felt  added the comment:

>From memory I do not believe this is still a problem, at least on Python3.

There was recently a different issue (do not recall the #) where there was an 
issue with CXX regardless of compiler.

In any case, the apporach I would recommend would be to export the environment 
variable OBJECT_MODE=64.

The only issue I have run into is when pip modules require a C compiler and 
there is a size mis-match (unset OBJECT_MODE is assumed to be 32. exporting 
OBJECT_MODE=64 and then running the pip command again ends successfully (or at 
least goes farther).

--

___
Python tracker 
<https://bugs.python.org/issue10514>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue34720] Fix test_importlib.test_bad_traverse for AIX

2019-03-12 Thread Michael Felt


Change by Michael Felt :


--
versions:  -Python 3.6

___
Python tracker 
<https://bugs.python.org/issue34720>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue11192] test_socket error on AIX

2019-03-12 Thread Michael Felt


Change by Michael Felt :


--
versions:  -Python 3.6

___
Python tracker 
<https://bugs.python.org/issue11192>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue34373] test_time errors on AIX

2019-03-12 Thread Michael Felt


Change by Michael Felt :


--
versions:  -Python 3.6

___
Python tracker 
<https://bugs.python.org/issue34373>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue35704] On AIX, test_unpack_archive_xztar fails with default MAXDATA settings

2019-03-12 Thread Michael Felt


Change by Michael Felt :


--
versions:  -Python 3.6

___
Python tracker 
<https://bugs.python.org/issue35704>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue35704] On AIX, test_unpack_archive_xztar fails with default MAXDATA settings

2019-03-11 Thread Michael Felt


Michael Felt  added the comment:

On 10/03/2019 19:25, Michael Felt wrote:
> Michael Felt  added the comment:
>
> Could this also be backported to 3.7 and 3.6 please?
Only 3.7 I guess - As 3.6 is in security mode.
>
> --
> versions: +Python 3.6, Python 3.7
>
> ___
> Python tracker 
> <https://bugs.python.org/issue35704>
> ___
>

--

___
Python tracker 
<https://bugs.python.org/issue35704>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue35633] test_eintr fails on AIX since fcntl functions were modified

2019-03-11 Thread Michael Felt


Michael Felt  added the comment:

On 10/03/2019 19:34, Michael Felt wrote:
> Michael Felt  added the comment:
>
> Could this also be backported to version 3.6?
>
> --
> versions: +Python 3.6
Not to worry: As 3.6 is in security mode.
>
> ___
> Python tracker 
> <https://bugs.python.org/issue35633>
> ___
>

--

___
Python tracker 
<https://bugs.python.org/issue35633>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue34720] Fix test_importlib.test_bad_traverse for AIX

2019-03-11 Thread Michael Felt


Michael Felt  added the comment:

On 10/03/2019 19:31, Michael Felt wrote:
> Michael Felt  added the comment:
>
> could this be backported to versions 3.7, and if applicable, to version 3.6
Only 3.7 - As 3.6 is in security mode.
>
> --
>
> ___
> Python tracker 
> <https://bugs.python.org/issue34720>
> ___
>

--

___
Python tracker 
<https://bugs.python.org/issue34720>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue34490] transport.get_extra_info('sockname') of test_asyncio fails on AIX

2019-03-11 Thread Michael Felt


Michael Felt  added the comment:

On 10/03/2019 19:37, Michael Felt wrote:
> Michael Felt  added the comment:
>
> Could this also be backported to Version 3.6?
Ignore this since 3.6 is in security mode.
>
> --
> versions: +Python 3.6
>
> ___
> Python tracker 
> <https://bugs.python.org/issue34490>
> ___
>

--

___
Python tracker 
<https://bugs.python.org/issue34490>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue11192] test_socket error on AIX

2019-03-11 Thread Michael Felt


Michael Felt  added the comment:

On 10/03/2019 19:40, Michael Felt wrote:
> Michael Felt  added the comment:
>
> Could this also be backported to Version 3.7 and 3.6 (I do not expect it to 
> be backported to 2.7, but I had mistakenly removed it 2.7 when I changed it 
> to 3.8 - and should have added 3.6 and 3.7 then).
Likewise: As 3.6 is in security mode - I guess only 3.7 then.
>
> --
> versions: +Python 2.7, Python 3.6, Python 3.7
>
> ___
> Python tracker 
> <https://bugs.python.org/issue11192>
> ___
>

--

___
Python tracker 
<https://bugs.python.org/issue11192>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue34373] test_time errors on AIX

2019-03-11 Thread Michael Felt


Michael Felt  added the comment:

On 10/03/2019 19:43, Michael Felt wrote:
> Michael Felt  added the comment:
>
> Could this alos be backported to Version 3.7 and 3.6 - thx!
As 3.6 is in security mode - I guess only 3.7 then.
> --
> versions: +Python 3.6, Python 3.7
>
> ___
> Python tracker 
> <https://bugs.python.org/issue34373>
> ___
>

--

___
Python tracker 
<https://bugs.python.org/issue34373>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue34711] Lib/http/server.py: Return HTTPStatus.NOT_FOUND if path.endswith(/) and not a directory

2019-03-11 Thread Michael Felt

Michael Felt  added the comment:

On 11/03/2019 09:42, Stéphane Wirtel wrote:
> Stéphane Wirtel  added the comment:
>
> Hi Michael,
>
> I think no, because 3.6 is in security mode.
Clear reason. Maybe makes the baclport to 3.7 more opportune. Thx for
the reply!
>
> --
> nosy: +matrixise
> versions:  -Python 3.6
>
> ___
> Python tracker 
> <https://bugs.python.org/issue34711>
> ___
>

--

___
Python tracker 
<https://bugs.python.org/issue34711>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue34347] AIX: test_utf8_mode.test_cmd_line fails

2019-03-10 Thread Michael Felt


Michael Felt  added the comment:

Could this be backported to version 3.7?

--

___
Python tracker 
<https://bugs.python.org/issue34347>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue34373] test_time errors on AIX

2019-03-10 Thread Michael Felt


Michael Felt  added the comment:

Could this alos be backported to Version 3.7 and 3.6 - thx!

--
versions: +Python 3.6, Python 3.7

___
Python tracker 
<https://bugs.python.org/issue34373>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue11192] test_socket error on AIX

2019-03-10 Thread Michael Felt


Michael Felt  added the comment:

Could this also be backported to Version 3.7 and 3.6 (I do not expect it to be 
backported to 2.7, but I had mistakenly removed it 2.7 when I changed it to 3.8 
- and should have added 3.6 and 3.7 then).

--
versions: +Python 2.7, Python 3.6, Python 3.7

___
Python tracker 
<https://bugs.python.org/issue11192>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue34711] Lib/http/server.py: Return HTTPStatus.NOT_FOUND if path.endswith(/) and not a directory

2019-03-10 Thread Michael Felt


Michael Felt  added the comment:

Could this also be backported to Version 3.7 and 3.6?

--
versions: +Python 3.6, Python 3.7

___
Python tracker 
<https://bugs.python.org/issue34711>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue34490] transport.get_extra_info('sockname') of test_asyncio fails on AIX

2019-03-10 Thread Michael Felt


Michael Felt  added the comment:

Could this also be backported to Version 3.6?

--
versions: +Python 3.6

___
Python tracker 
<https://bugs.python.org/issue34490>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue35633] test_eintr fails on AIX since fcntl functions were modified

2019-03-10 Thread Michael Felt


Michael Felt  added the comment:

Could this also be backported to version 3.6?

--
versions: +Python 3.6

___
Python tracker 
<https://bugs.python.org/issue35633>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue34720] Fix test_importlib.test_bad_traverse for AIX

2019-03-10 Thread Michael Felt


Michael Felt  added the comment:

could this be backported to versions 3.7, and if applicable, to version 3.6

--

___
Python tracker 
<https://bugs.python.org/issue34720>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue34720] Fix test_importlib.test_bad_traverse for AIX

2019-03-10 Thread Michael Felt


Michael Felt  added the comment:

Could this also be backported to 3.6 and 3.7 please?

--
versions: +Python 3.6, Python 3.7

___
Python tracker 
<https://bugs.python.org/issue34720>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue35704] On AIX, test_unpack_archive_xztar fails with default MAXDATA settings

2019-03-10 Thread Michael Felt


Michael Felt  added the comment:

Could this also be backported to 3.7 and 3.6 please?

--
versions: +Python 3.6, Python 3.7

___
Python tracker 
<https://bugs.python.org/issue35704>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue36210] ncurses versus cursus integration - platform differences and defaults

2019-03-06 Thread Michael Felt


Change by Michael Felt :


--
keywords: +patch
pull_requests: +12197
stage:  -> patch review

___
Python tracker 
<https://bugs.python.org/issue36210>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue36210] ncurses versus cursus integration - platform differences and defaults

2019-03-06 Thread Michael Felt


New submission from Michael Felt :

Only marking Python3.8, but this is a historical issue I have ignored as long 
as possible.

There are many - ancient and recent issues open around the extension module 
_curses - and over the years it appears many assumptions have come into the 
code (such as configure.ac that says CPP needs to be expended with 
/usr/include/ncursesw, but not /usr/include/ncurses (which is what the ncurses 
project uses).

Further, Pyhton3 assumes that ncurses is the better solution, so if it can find 
a libncurses library that must be the best approach.

While ncurses might, all other things being equal, be a preferred library - it 
does not mean it is the best for all platforms.

On AIX - the assumptions made (at least where the include files are) tends to 
make it impossible to build the _cursesmodule in any form when a third-party 
ncurses is installed.

When ncurses is not installed _curses builds fine and _curses_panel is skipped.

I propose that "setup.py" - on AIX - specifies libcurses.a rather than 
libncurses - as the default.

--
components: Extension Modules
messages: 337298
nosy: Michael.Felt
priority: normal
severity: normal
status: open
title: ncurses versus cursus integration - platform differences and defaults
type: behavior
versions: Python 3.8

___
Python tracker 
<https://bugs.python.org/issue36210>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue35828] test_multiprocessing_fork - crashes in PyDict_GetItem - segmentation error

2019-03-04 Thread Michael Felt


Michael Felt  added the comment:

I see I already asked howto better utilize this info:

ConnectionRefusedError: [Errno 79] Connection refused
Warning -- files was modified by test_multiprocessing_fork
  Before: []
  After:  ['core']

-- so, more specific -- which module, or file, is doing this check - as I would 
like to do postmortem analysis of the core dump.

Thx.

--

___
Python tracker 
<https://bugs.python.org/issue35828>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue36034] Suprise halt caused by -Werror=implicit-function-declaration in ./Modules/posixmodule.c

2019-02-21 Thread Michael Felt

Michael Felt  added the comment:

xlc has an option -qsource that creates output like this - first showing
the code with macro, then showing the expansion

>>>>> SOURCE SECTION <<<<<
...
   16 | dev = st.st_dev;
   17 | minor = minor(dev);
   17 + minor = (int)((dev)&0x);
   18 | major = major(dev);
   18 + major = (int)((unsigned)(dev)>>16);

I'll check and see if -E processes the output in the same way. Thx.

On 2/19/2019 9:29 PM, Alexey Izbyshev wrote:
> Alexey Izbyshev  added the comment:
>
> I don't know what you mean by "in-line" pre-processing output, but you can 
> use -E option to get the normal preprocessor output. Line directives will 
> tell you where those functions come from on a system where there is no 
> compilation error.
>
> Of course, if those functions are defined in some other headers on AIX 6.1, 
> it won't help you, so you might as well just grep /usr/include :)
>
> --
> nosy: +izbyshev
>
> ___
> Python tracker 
> <https://bugs.python.org/issue36034>
> ___
>

--

___
Python tracker 
<https://bugs.python.org/issue36034>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue35828] test_multiprocessing_fork - crashes in PyDict_GetItem - segmentation error

2019-02-20 Thread Michael Felt


Michael Felt  added the comment:

Also - this looks like a core dump was 'seen', but later removed.

Warning -- files was modified by test_multiprocessing_forkserver
  Before: []
  After:  ['core']

What can I change so that ot does not cleanup the core file?

--

___
Python tracker 
<https://bugs.python.org/issue35828>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue35828] test_multiprocessing_fork - crashes in PyDict_GetItem - segmentation error

2019-02-20 Thread Michael Felt


Michael Felt  added the comment:

Another message that surprises me is:
Warning -- multiprocessing.process._dangling was modified by 
test_multiprocessing_spawn
  Before: <_weakrefset.WeakSet object at 0x3076e810>
  After:  <_weakrefset.WeakSet object at 0x3076e390>

Normally speaking the address 0x3000 and higher should be "out of bounds" 
aka a SEGV - unless special actions are taken to open a memory region above 
0x2fff - for default AIX memory model.

Just calling malloc(), afaik, does not do automatically create a new memory 
section (0x000-0x0fff is reserved for kernel CODE, 
0x1000-0x1fff is reserved for application CODE, and 
0x2000-0x2fff is .data,.bss, "empty aka not-active", .stack).
The area between .end_bss and .stack is the area that sbrk() provides memory 
from (for calls to malloc(), e.g.)

In short, is there something I do not know understand about Python object 
pointers that 0x3000+ values are actually living in 0x2000-0x2fff 
space?

--

___
Python tracker 
<https://bugs.python.org/issue35828>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue35828] test_multiprocessing_fork - crashes in PyDict_GetItem - segmentation error

2019-02-20 Thread Michael Felt


Michael Felt  added the comment:

I am still trying to get further with this, but I won't get far enough without 
some help on how to best dig deeper.

For one, it should be leaving a core dump, but it never seems to leave the core 
dump in the working directory. I know it is doing core dump because the "errpt" 
system tells me it is.

Further, anyone who can help me better understand messages such as:
Warning -- Dangling processes: {, }

All I can figure out is that the "parent" process has children that "die". Is 
there anything useful in the SpawnProcess name info?

--

___
Python tracker 
<https://bugs.python.org/issue35828>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue36034] Suprise halt caused by -Werror=implicit-function-declaration in ./Modules/posixmodule.c

2019-02-19 Thread Michael Felt


Michael Felt  added the comment:

correction - gcc version is v4.7.4

--

___
Python tracker 
<https://bugs.python.org/issue36034>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue36034] Suprise halt caused by -Werror=implicit-function-declaration in ./Modules/posixmodule.c

2019-02-19 Thread Michael Felt


New submission from Michael Felt :

On a system using an older version of gcc (v5.7.4) I get an error: (also AIX 
6.1)

gcc -pthread -Wno-unused-result -Wsign-compare -g -O0 -Wall  -O  
-std=c99 -Wextra -Wno-unused-result -Wno-unused-parameter 
-Wno-missing-field-initializers -Werror=implicit-function-declaration  
-I./Include/internal  -I. -I./Include-DPy_BUILD_CORE_BUILTIN  
-DPy_BUILD_CORE -I./Include/internal -c ./Modules/posixmodule.c -o 
Modules/posixmodule.o
./Modules/posixmodule.c: In function 'os_preadv_impl':
./Modules/posixmodule.c:8765:9: error: implicit declaration of function 
'preadv' [-Werror=implicit-function-declaration]
./Modules/posixmodule.c: In function 'os_pwritev_impl':
./Modules/posixmodule.c:9336:9: error: implicit declaration of function 
'pwritev' [-Werror=implicit-function-declaration]
cc1: some warnings being treated as errors

On another system - same code base (commit 
e7a4bb554edb72fc6619d23241d59162d06f249a) no "error" status. (AIX 7.2)

Not knowing gcc I have no idea which is correct - maybe they both are because 
the second system (where I am a guest) has an explicit declaration of these 
routines.

Is there a flag I can add to gcc to get the "in-line" pre-processing output so 
I can look for differences with regard to these two functions?

Thanks for hint.

--
messages: 335936
nosy: Michael.Felt
priority: normal
severity: normal
status: open
title: Suprise halt caused by -Werror=implicit-function-declaration in 
./Modules/posixmodule.c
type: compile error
versions: Python 3.8

___
Python tracker 
<https://bugs.python.org/issue36034>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue35773] test_bdb fails on AIX bot (regression)

2019-02-19 Thread Michael Felt


Michael Felt  added the comment:

Again - after switching the env variable LANG to the 'default' everything works 
as expected.

Leaving it open as a regression - because everything was working with a 
non-default setting.

When I have more time I'll do a git bisect to try and establish the change 
where it went wrong.

--

___
Python tracker 
<https://bugs.python.org/issue35773>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue27632] build on AIX fails when builddir != srcdir, more than bad path to ld_so_aix

2019-02-19 Thread Michael Felt


Michael Felt  added the comment:

As far as 'master' is concerned, this has been resolved, so I'll close it 
myself.

--
stage:  -> resolved
status: open -> closed
versions: +Python 3.8 -Python 3.4

___
Python tracker 
<https://bugs.python.org/issue27632>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue34757] Placeholder for discussion on Combined patches for AIX - to resolve failig tests

2019-02-18 Thread Michael Felt


Michael Felt  added the comment:

The PR's have been merged. Many thanks.

Closing this issue and looking forward.

--
stage: patch review -> resolved
status: open -> closed

___
Python tracker 
<https://bugs.python.org/issue34757>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue35633] test_eintr fails on AIX since fcntl functions were modified

2019-02-18 Thread Michael Felt


Change by Michael Felt :


--
pull_requests: +11940

___
Python tracker 
<https://bugs.python.org/issue35633>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue35773] test_bdb fails on AIX bot (regression)

2019-02-17 Thread Michael Felt


Michael Felt  added the comment:

Some record keeping - to keep track of when this regression first appeared on 
the bot:

buildername POWER6 AIX 3.x  Builder
buildnumber 718 Build
codebaseBuild
event   pushChange
github_distinct trueChange
got_revisiona37f52436f9aa4b9292878b72f3ff1480e2606c3Git
owners  ["Christian Heimes "] Build
project python/cpython  Build
repository  https://github.com/python/cpython   Build
revisiona37f52436f9aa4b9292878b72f3ff1480e2606c3Build
scheduler   3.x Scheduler

And the last build without this error:
buildnumber 717 Build
codebaseBuild
event   pushChange
github_distinct trueChange
got_revisionc9f872b0bdce5888f1879fa74e098bf4a05430c5Git
owners  ["Victor Stinner "]Build
project python/cpython  Build
repository  https://github.com/python/cpython   Build
revisionc9f872b0bdce5888f1879fa74e098bf4a05430c5Build
scheduler   3.x Scheduler

I am hoping, with this info - someone who understands the commit process better 
than I can help me see the difference between these two builds.

I have tried

git diff c9f872b0bdce5888f1879fa74e098bf4a05430c5  
a37f52436f9aa4b9292878b72f3ff1480e2606c3

And this only seems to be a change in something related to ssl (bpo-35746) - so 
I am not really understanding what (else) has happened.

The behavior seems to be language handling related, and not really bdb or ssl 
which is where the test and git diff points at.

Ideas and/or suggestions welcome.

(p.s., no longer showing as a bot error as I have changed my LANG setting)

--

___
Python tracker 
<https://bugs.python.org/issue35773>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue35773] test_bdb fails on AIX bot (regression)

2019-02-16 Thread Michael Felt


Michael Felt  added the comment:

OK. I have narrowed it down to this:
when
LANG=en_US.8859-15

the test fails.

root@x064:[/home/root]grep LANG /etc/environment
LANG=en_US

And now it passes.

--

___
Python tracker 
<https://bugs.python.org/issue35773>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue28009] core logic of uuid.getnode() is broken for netstat

2019-02-14 Thread Michael Felt


Michael Felt  added the comment:

On 14/02/2019 23:57, Indra Talip wrote:
> Indra Talip  added the comment:
>
> The current code and proposed changes use 'netstat -ia' to find the node 
> however if netstat needs to perform a reverse DNS query to resolve some 
> interfaces this makes using uuid1 *really* slow especially when reverse DNS 
> queries aren't set up correctly or timeout.
>mac = _find_mac_netstat('netstat', '-ia', b'Address', lambda i: i)
>
> Would it be possible to change the netstat call to add 'n' to the nestat 
> options, i.e. _find_mac_netstat('netstat', '-ian', ...) to prevent netstat 
> from attempting to resolve addresses?
Sounds like an excellent idea. Gives me a reason to get started again. Thx!
> --
> nosy: +italip
>
> ___
> Python tracker 
> <https://bugs.python.org/issue28009>
> ___
>

--

___
Python tracker 
<https://bugs.python.org/issue28009>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue35773] test_bdb fails on AIX bot (regression)

2019-02-01 Thread Michael Felt


Michael Felt  added the comment:

OK. New info.

Back in the time of issue 34347 I installed some extra filesets to support 
UTF-8 on the virtual machine (aka partition) that I have the bot on.

On systems where this fileset is not installed this test does not fail.

Shall dig further - in a bout a week - but I expect it is something very 
different than whatever bdb is testing.

fyi - the additional fileset (not normally installed afaik) is/are: 
  bos.loc.com.utf   7.1.4.30C FCommon Locale Support - UTF-8
  bos.loc.utf.EN_US 7.1.4.30C FBase System Locale UTF Code

--

___
Python tracker 
<https://bugs.python.org/issue35773>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue35773] test_bdb fails on AIX bot (regression)

2019-01-31 Thread Michael Felt


Michael Felt  added the comment:

Update:
buildbot@x064:[/home/buildbot/buildarea/3.x.aixtools-aix-power6/issue]./python 
-m test -v test_bdb
== CPython 3.8.0a0 (heads/master-dirty:0785889468, Jan 30 2019, 16:16:31) [C]
== AIX-1-00C291F54C00-powerpc-32bit big-endian
== cwd: 
/home/buildbot/buildarea/3.x.aixtools-aix-power6/issue/build/test_python_11862246
== CPU count: 8
== encodings: locale=ISO8859-15, FS=iso8859-15
Run tests sequentially
0:00:00 [1/1] test_bdb
test_down (test.test_bdb.StateTestCase) ... ok
...
test_step_at_return_with_no_trace_in_caller (test.test_bdb.IssuesTestCase) ... 
ok

==
FAIL: test_skip (test.test_bdb.StateTestCase)
--
Traceback (most recent call last):
  File 
"/home/buildbot/buildarea/3.x.aixtools-aix-power6/issue/Lib/test/test_bdb.py", 
line 731, in test_skip
tracer.runcall(tfunc_import)
  File 
"/home/buildbot/buildarea/3.x.aixtools-aix-power6/issue/Lib/test/test_bdb.py", 
line 448, in __exit__
self.test_case.fail(err_msg)
  File 
"/home/buildbot/buildarea/3.x.aixtools-aix-power6/issue/Lib/test/test_bdb.py", 
line 582, in fail
raise self.failureException(msg) from None
AssertionError: encoding with 'iso8859-15' codec failed (BdbNotExpectedError: 
Wrong event type at expect_set item 2, got 'call'
  Expected: ('line', 3, 'tfunc_import')
  Got:  ('call', 11, 'encode'), ('quit',),)

--

Ran 31 tests in 0.392s

Is this somehow related to "encoding" as in AIX is not using utf-8 as default?

--

___
Python tracker 
<https://bugs.python.org/issue35773>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue35828] test_multiprocessing_fork - crashes in PyDict_GetItem - segmentation error

2019-01-30 Thread Michael Felt


Michael Felt  added the comment:

After enabling PYTHONTHREADDEBUG=1 I got the dprintf output.

I added line info (as fixed text) asin:
Python/thread_pthread.h:
  +511  PyLockStatus
  +512  PyThread_acquire_lock_timed(PyThread_type_lock lock, PY_TIMEOUT_T 
microseconds,
  +513  int intr_flag)
  +514  {
  +515  PyLockStatus success = PY_LOCK_FAILURE;
  +516  pthread_lock *thelock = (pthread_lock *)lock;
  +517  int status, error = 0;
  +518
  +519  dprintf(("519: PyThread_acquire_lock_timed(%p, %lld, %d) called\n",
  +520   lock, microseconds, intr_flag));
  +521
  +522  if (microseconds == 0) {
  +523  status = pthread_mutex_trylock( >mut );
  +524  if (status != EBUSY)
  +525  CHECK_STATUS_PTHREAD("pthread_mutex_trylock[1]");
  +526  }
  +527  else {
  +528  status = pthread_mutex_lock( >mut );
  +529  CHECK_STATUS_PTHREAD("pthread_mutex_lock[1]");
  +530  }

and can establish that USE_SEMAPHORES is not being used.

There are many reasons why - I expect - something re: Python3.5 (issue23428) 
talks about this routine and also something about CLOCk_MONOTONIC versus 
CLOCK_REALTIME (hope I spelled those right).

Further, back in Python 2.3 days - issue525532 added POSIX support for 
semaphores.

I would love to proceed - but particularly, issue23428 makes me think I should 
not think that the logic that keeps USE_SEMAPHORE is incorrect.

Help appreciated!

p.s. - deeper details

with PYTHONTHREADDEBUG=1 I no longer get a segmentation fault. Instead I get:

Total duration: 1 min 53 sec
Tests result: NO TEST RUN
Exception in thread Thread-1:
Traceback (most recent call last):
  File 
"/home/buildbot/buildarea/3.x.aixtools-aix-power6/issue/Lib/threading.py", line 
917, in _bootstrap_inner
self.run()
  File 
"/home/buildbot/buildarea/3.x.aixtools-aix-power6/issue/Lib/test/libregrtest/runtest_mp.py",
 line 145, in run
stop = self._runtest()
  File 
"/home/buildbot/buildarea/3.x.aixtools-aix-power6/issue/Lib/test/libregrtest/runtest_mp.py",
 line 135, in _runtest
result = json.loads(result)
  File 
"/home/buildbot/buildarea/3.x.aixtools-aix-power6/issue/Lib/json/__init__.py", 
line 348, in loads
return _default_decoder.decode(s)
  File 
"/home/buildbot/buildarea/3.x.aixtools-aix-power6/issue/Lib/json/decoder.py", 
line 337, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File 
"/home/buildbot/buildarea/3.x.aixtools-aix-power6/issue/Lib/json/decoder.py", 
line 355, in raw_decode
raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)

Exception in thread Thread-2:
Traceback (most recent call last):
  File 
"/home/buildbot/buildarea/3.x.aixtools-aix-power6/issue/Lib/threading.py", line 
917, in _bootstrap_inner
self.run()
  File 
"/home/buildbot/buildarea/3.x.aixtools-aix-power6/issue/Lib/test/libregrtest/runtest_mp.py",
 line 145, in run
stop = self._runtest()
  File 
"/home/buildbot/buildarea/3.x.aixtools-aix-power6/issue/Lib/test/libregrtest/runtest_mp.py",
 line 135, in _runtest
result = json.loads(result)
  File 
"/home/buildbot/buildarea/3.x.aixtools-aix-power6/issue/Lib/json/__init__.py", 
line 348, in loads
return _default_decoder.decode(s)
  File 
"/home/buildbot/buildarea/3.x.aixtools-aix-power6/issue/Lib/json/decoder.py", 
line 337, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File 
"/home/buildbot/buildarea/3.x.aixtools-aix-power6/issue/Lib/json/decoder.py", 
line 355, in raw_decode
raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
?

This is prefixed by:
PyThread_allocate_lock called
PyThread_allocate_lock() -> 200a9b40
519: PyThread_acquire_lock_timed(200a9b40, 0, 0) called
577: PyThread_acquire_lock_timed(200a9b40, 0, 0) -> 1
PyThread_release_lock(200a5fe0) called
519: PyThread_acquire_lock_timed(200a9b40, 0, 0) called
577: PyThread_acquire_lock_timed(200a9b40, 0, 0) -> 0
519: PyThread_acquire_lock_timed(200a9b40, 2996, 1) called
519: PyThread_acquire_lock_timed(200fe220, 0, 0) called
577: PyThread_acquire_lock_timed(200fe220, 0, 0) -> 1
PyThread_release_lock(200fe220) called
519: PyThread_acquire_lock_timed(200fe220, 0, 0) called
577: PyThread_acquire_lock_timed(200fe220, 0, 0) -> 1
PyThread_release_lock(200fe220) called
519: PyThread_acquire_lock_timed(20156c00, 0, 0) called
577: PyThread_acquire_lock_timed(20156c00, 0, 0) -> 1
PyThread_release_lock(20156c00) called
519: PyThread_acquire_lock_timed(20156c00, 0, 0) called
577: PyThread_acquire_lock_timed(20156c00, 0, 0) -> 1
PyThread_release_lock(20156c00) called
519: PyThread_acquire_l

[issue35828] test_multiprocessing_fork - crashes in PyDict_GetItem - segmentation error

2019-01-30 Thread Michael Felt


Michael Felt  added the comment:

OK. being more specific about the test situation.

When I run ./python -m test test_multiprocessing_fork all is fine. However, 
when I run it as: ./python -m test -j2 test_multiprocessing_main_handling 
test_multiprocessing_fork

test_multiprocessing_main_handling PASSes and test_multiprocessing_fork crashes 
(and has a segmentation core dump in the process).

--
title: test_multiprocessing_* - crash in PyDict_GetItem - segmentation error -> 
test_multiprocessing_fork - crashes in PyDict_GetItem - segmentation error

___
Python tracker 
<https://bugs.python.org/issue35828>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue35828] test_multiprocessing_* - crash in PyDict_GetItem - segmentation error

2019-01-26 Thread Michael Felt


Michael Felt  added the comment:

OK, I have gone as far back as "where" in dbx can bring me.

Could this, somehow, be related with changes made in issue-33015 ?

In any case, does it seem correct that "pthread_wrapper(void *arg) can be 
correct if arg is nil?

  +155  /* bpo-33015: pythread_callback struct and pythread_wrapper() cast
  +156 "void func(void *)" to "void* func(void *)": always return NULL.
  +157
  +158 PyThread_start_new_thread() uses "void func(void *)" type, whereas
  +159 pthread_create() requires a void* return value. */
  +160  typedef struct {
  +161  void (*func) (void *);
  +162  void *arg;
  +163  } pythread_callback;
  +164
  +165  static void *
  +166  pythread_wrapper(void *arg)
  +167  {
  +168  /* copy func and func_arg and free the temporary structure */
  +169  pythread_callback *callback = arg;
  +170  void (*func)(void *) = callback->func;
  +171  void *func_arg = callback->arg;
  +172  PyMem_RawFree(arg);
  +173
  +174  func(func_arg);
  +175  return NULL;
  +176  }

(dbx) print boot
0x2030cab0
(dbx) which boot
_threadmodule.t_bootstrap.boot
(dbx) print boot
0x2030cab0
(dbx) print *boot
(interp = 0x2030cb00, func = 0xcbcbcbcb, args = 0x1018c460, keyw = 0xcbcbcbcb, 
tstate = 0xcbcbcbcb)
(dbx) which arg
thread.pythread_wrapper.arg
(dbx) print arg
(nil)
(dbx) print *arg
reference through nil pointer
(dbx) which callback
thread.pythread_wrapper.callback
(dbx) print callback
0x2030cb00
(dbx) print *callback
(func = 0x2030cb50, arg = 0x3500)

I am "nervous" when it comes to accepting a value such as 0xcbcbcbcb or 
0xdbdbdbdb as values for pointers to objects - or even "int" or unsigned values 
- look so "specific pattern" like.

Suggestions on how to look at this "better" would be appreciated.

Michael

--

___
Python tracker 
<https://bugs.python.org/issue35828>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue35828] test_multiprocessing_* - crash in PyDict_GetItem - segmentation error

2019-01-26 Thread Michael Felt


Change by Michael Felt :


--
title: test_multiprocessing_* tests - success versus fail varies over time -> 
test_multiprocessing_* - crash in PyDict_GetItem - segmentation error

___
Python tracker 
<https://bugs.python.org/issue35828>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue35828] test_multiprocessing_* tests - success versus fail varies over time

2019-01-25 Thread Michael Felt


New submission from Michael Felt :

Last August I started running a bot for AIX using xlc_r as the compiler, rather 
than gcc that the other AIX bot uses.

Initially, I had no issues with the test_multiprocess* tests, but of late (last 
two+ months I am guessing) I have been having regular issues when the bot 
builds, but not when I would run the tests (all 418) or individually - when run 
manually.

The last two weeks I have invested time - and have been repaid - in that I can 
now get a regular failure when running the tests.

Your assistance is appreciated. I'll continue to work on this when I have time.


Short version:

This looks like there is a statement "crafted" to cause a crash:
(dbx) where
PyDict_GetItem(op = 0x2002ddc8, key = 0x30061e68), line 1320 in "dictobject.c"
_PyDict_GetItemId(dp = 0xdbdbdbdb, key = 0xdbdbdbdb), line 3276 in 
"dictobject.c"
...

This is based on bot run that failed (Python 3.8.0a0 (heads/master:0785889468)).

The test message that comes back is:

test_multiprocessing_fork failed
Process Process-94:
Traceback (most recent call last):
  File 
"/home/buildbot/buildarea/3.x.aixtools-aix-power6/issue/Lib/multiprocessing/process.py",
 line 302, in _bootstrap
self.run()
  File 
"/home/buildbot/buildarea/3.x.aixtools-aix-power6/issue/Lib/multiprocessing/process.py",
 line 99, in run
self._target(*self._args, **self._kwargs)
  File 
"/home/buildbot/buildarea/3.x.aixtools-aix-power6/issue/Lib/test/_test_multiprocessing.py",
 line 2847, in _putter
manager.connect()
  File 
"/home/buildbot/buildarea/3.x.aixtools-aix-power6/issue/Lib/multiprocessing/managers.py",
 line 512, in connect
conn = Client(self._address, authkey=self._authkey)
  File 
"/home/buildbot/buildarea/3.x.aixtools-aix-power6/issue/Lib/multiprocessing/connection.py",
 line 796, in XmlClient
return ConnectionWrapper(Client(*args, **kwds), _xml_dumps, _xml_loads)
  File 
"/home/buildbot/buildarea/3.x.aixtools-aix-power6/issue/Lib/multiprocessing/connection.py",
 line 502, in Client
c = SocketClient(address)
  File 
"/home/buildbot/buildarea/3.x.aixtools-aix-power6/issue/Lib/multiprocessing/connection.py",
 line 629, in SocketClient
s.connect(address)
ConnectionRefusedError: [Errno 79] Connection refused
test test_multiprocessing_fork failed -- Traceback (most recent call last):
  File 
"/home/buildbot/buildarea/3.x.aixtools-aix-power6/issue/Lib/test/_test_multiprocessing.py",
 line 2865, in test_rapid_restart
queue = manager.get_queue()
  File 
"/home/buildbot/buildarea/3.x.aixtools-aix-power6/issue/Lib/multiprocessing/managers.py",
 line 701, in temp
token, exp = self._create(typeid, *args, **kwds)
  File 
"/home/buildbot/buildarea/3.x.aixtools-aix-power6/issue/Lib/multiprocessing/managers.py",
 line 584, in _create
conn = self._Client(self._address, authkey=self._authkey)
  File 
"/home/buildbot/buildarea/3.x.aixtools-aix-power6/issue/Lib/multiprocessing/connection.py",
 line 796, in XmlClient
return ConnectionWrapper(Client(*args, **kwds), _xml_dumps, _xml_loads)
  File 
"/home/buildbot/buildarea/3.x.aixtools-aix-power6/issue/Lib/multiprocessing/connection.py",
 line 502, in Client
c = SocketClient(address)
  File 
"/home/buildbot/buildarea/3.x.aixtools-aix-power6/issue/Lib/multiprocessing/connection.py",
 line 629, in SocketClient
s.connect(address)
ConnectionRefusedError: [Errno 79] Connection refused

I had a hard time finding anything - because I was looking for a permission 
issue in the Socket "domain", but what seems more likely is that the "server" 
thread/process is crashing with a segmentation fault and a "client" thread is 
getting "refused" because the server no longer exists and/or never got 
successfully started.

I finally managed to capture a core dump and I hope that this will help you 
help me with getting deeper and closer to a resolution/understanding on what is 
going on.

buildbot@x064:[/home/buildbot/buildarea/3.x.aixtools-aix-power6/issue]area/coredumps/core.12582914.25123239
<
Type 'help' for help.
warning: The core file is not a fullcore. Some info may
not be available.
[using memory image in 
/home/buildbot/buildarea/coredumps/core.12582914.25123239]
reading symbolic information ...

Segmentation fault in PyDict_GetItem at line 1320 in file "Objects/dictobject.c"
 1320   if (!PyDict_Check(op))
(dbx) where
PyDict_GetItem(op = 0x2002ddc8, key = 0x30061e68), line 1320 in "dictobject.c"

>From other data about the program I expect the segmentation error is caused by 
>the key value. Unless the program has done a mmap/shmap request for memory 
>allocation (something not done by default) the address 0x3000-0x3fff 
>is not a valid address.

Summary:

This looks like there

[issue35633] test_eintr fails on AIX since fcntl functions were modified

2019-01-21 Thread Michael Felt


Michael Felt  added the comment:

Done.

> On 1/15/2019 11:23 AM, STINNER Victor wrote:
> I would prefer to simply skip the lockf() test rather than ignoring 
> PermissionError for flock() and lockf() on all platforms. Can you please 
> write a PR for that?
> 
> There is no need to add a NEWS entry, I will add "skip news". If you want to 
> add a NEWS entry, mention at least the fixed test and AIX.

--

___
Python tracker 
<https://bugs.python.org/issue35633>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue35633] test_eintr fails on AIX since fcntl functions were modified

2019-01-18 Thread Michael Felt

Michael Felt  added the comment:

I’ll make a new PR and delete the news entry. 

Sent from my iPhone

> On 15 Jan 2019, at 11:23, STINNER Victor  wrote:
> 
> 
> STINNER Victor  added the comment:
> 
>> On AIX the test for flock() passes, but the test for lockf() fails: (...)
> 
> I would prefer to simply skip the lockf() test rather than ignoring 
> PermissionError for flock() and lockf() on all platforms. Can you please 
> write a PR for that?
> 
> There is no need to add a NEWS entry, I will add "skip news". If you want to 
> add a NEWS entry, mention at least the fixed test and AIX.
> 
> --
> 
> ___
> Python tracker 
> <https://bugs.python.org/issue35633>
> ___
>

--

___
Python tracker 
<https://bugs.python.org/issue35633>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue35773] test_bdb fails on AIX bot (regression)

2019-01-18 Thread Michael Felt


New submission from Michael Felt :

I see in the bot history that test_bdb is now failing on AIX

https://buildbot.python.org/all/#/builders/161/builds/718/steps/4/logs/stdio

== CPython 3.8.0a0 (heads/master:a37f52436f, Jan 15 2019, 22:53:01) [C]
== AIX-1-00C291F54C00-powerpc-32bit big-endian
== cwd: 
/home/buildbot/buildarea/3.x.aixtools-aix-power6/build/build/test_python_5177546
== CPU count: 8
== encodings: locale=ISO8859-15, FS=iso8859-15

FYI: it is not failing on the GCC based bot (mine is based on XLC).

--
components: Tests
messages: 333957
nosy: Michael.Felt
priority: normal
severity: normal
status: open
title: test_bdb fails on AIX bot (regression)
type: behavior
versions: Python 3.8

___
Python tracker 
<https://bugs.python.org/issue35773>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue35633] test_eintr fails on AIX since fcntl functions were modified

2019-01-15 Thread Michael Felt


Michael Felt  added the comment:

On 07/01/2019 15:46, STINNER Victor wrote:
> STINNER Victor  added the comment:
>
> Since you are getting indentation error, I'm not sure about your test. Can 
> you please apply the patch below and run again test_eintr? Does it still fail 
> with PermissionError?
Answer - Yes. Still get PermissionError
>
> diff --git a/Lib/test/eintrdata/eintr_tester.py 
> b/Lib/test/eintrdata/eintr_tester.py
> index 25c169bde5..4db5dc9045 100644
> --- a/Lib/test/eintrdata/eintr_tester.py
> +++ b/Lib/test/eintrdata/eintr_tester.py
> @@ -492,13 +492,13 @@ class FNTLEINTRTest(EINTRBaseTest):
>  self.addCleanup(support.unlink, support.TESTFN)
>  code = '\n'.join((
>  "import fcntl, time",
> -"with open('%s', 'wb') as f:" % support.TESTFN,
> +"with open('%s', 'w+b') as f:" % support.TESTFN,
>  "   fcntl.%s(f, fcntl.LOCK_EX)" % lock_name,
>  "   time.sleep(%s)" % self.sleep_time))
>  start_time = time.monotonic()
>  proc = self.subprocess(code)
>  with kill_on_error(proc):
> -with open(support.TESTFN, 'wb') as f:
> +with open(support.TESTFN, 'w+b') as f:
>  while True:  # synchronize the subprocess
>  dt = time.monotonic() - start_time
>  if dt > 60.0:
>
> --
>
> ___
> Python tracker 
> <https://bugs.python.org/issue35633>
> ___
>

--

___
Python tracker 
<https://bugs.python.org/issue35633>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue35735] Current "make test" status for AIX

2019-01-14 Thread Michael Felt


Change by Michael Felt :


--
stage:  -> resolved
status: open -> closed

___
Python tracker 
<https://bugs.python.org/issue35735>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue35735] Current "make test" status for AIX

2019-01-14 Thread Michael Felt


Michael Felt  added the comment:

Well, I can close this again - whatever was wrong with test_xml_etree_c 
disappeared - and a cursory look at test_os reveals that the issue might be the 
time lag between the NFS server where the temp files are made and the "local" 
sense of time.

Most of the time I do not have an issue, so closing as false positives.

--

___
Python tracker 
<https://bugs.python.org/issue35735>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue35735] Current "make test" status for AIX

2019-01-13 Thread Michael Felt


New submission from Michael Felt :

Hi all,

as we get closer to having the current tests all patched I want to have a place 
to post new "failures" - since the BOT process is unable to report regressions 
before all tests are passing for a time.

Initially, the tests run normally, and report two unexpected failures. However, 
the second pass does not complete - it is giving a segmentation error (repeated 
twice, starting third run shortly).

i.e., the tests test_eintr and test_importlib have PR that are waitig to be 
merged. the failure of test_os and test_xml_etree_c are new.

Tested: heads/master-dirty:5bb146aaea

 ./python  ../git/python3-3.8/Tools/scripts/run_tests.py
/data/prj/python/python3-3.8/python -u -W default -bb -E -m test -r -w -j 0 -u 
all,-largefile,-audio,-gui
== CPython 3.8.0a0 (heads/master-dirty:5bb146aaea, Jan 13 2019, 21:30:27) [C]
== AIX-1-00C291F54C00-powerpc-32bit big-endian
== cwd: /data/prj/python/python3-3.8/build/test_python_9109548
== CPU count: 8
== encodings: locale=ISO8859-1, FS=iso8859-1
Using random seed 9105159
Run tests in parallel using 10 child processes
0:00:01 [  1/418] test_nis passed
0:00:01 [  2/418] test_zipfile64 skipped (resource denied)
test_zipfile64 skipped -- test requires loads of disk-space bytes and a long 
time to run
0:00:01 [  3/418] test_stringprep passed
...
0:10:23 [418/418/4] test_tools passed (4 min 31 sec)

== Tests result: FAILURE ==

390 tests OK.

4 tests failed:
test_eintr test_importlib test_os test_xml_etree_c

24 tests skipped:
test_dbm_gnu test_devpoll test_epoll test_gdb test_idle
test_kqueue test_msilib test_ossaudiodev test_readline test_spwd
test_sqlite test_startfile test_tcl test_tix test_tk
test_ttk_guionly test_ttk_textonly test_turtle test_unicode_file
test_unicode_file_functions test_winconsoleio test_winreg
test_winsound test_zipfile64

Re-running failed tests in verbose mode
...
Re-running test 'test_xml_etree_c' in verbose mode
test_bpo_31728 (test.test_xml_etree_c.MiscTests) ... ok
test_del_attribute (test.test_xml_etree_c.MiscTests) ... ok
test_iterparse_leaks (test.test_xml_etree_c.MiscTests) ... ok
test_length_overflow (test.test_xml_etree_c.MiscTests) ... skipped 'not enough 
memory: 2.0G minimum needed'
test_parser_ref_cycle (test.test_xml_etree_c.MiscTests) ... ok
test_setstate_leaks (test.test_xml_etree_c.MiscTests) ... ok
test_trashcan (test.test_xml_etree_c.MiscTests) ... ok
test_xmlpullparser_leaks (test.test_xml_etree_c.MiscTests) ... ok
test_alias_working (test.test_xml_etree_c.TestAliasWorking) ... ok
test_correct_import_cET (test.test_xml_etree_c.TestAcceleratorImported) ... ok
test_correct_import_cET_alias (test.test_xml_etree_c.TestAcceleratorImported) 
... ok
test_parser_comes_from_C (test.test_xml_etree_c.TestAcceleratorImported) ... ok
test_element (test.test_xml_etree_c.SizeofTest) ... ok
test_element_with_attrib (test.test_xml_etree_c.SizeofTest) ... ok
test_element_with_children (test.test_xml_etree_c.SizeofTest) ... ok

--

Ran 15 tests in 0.871s

OK (skipped=1)
test_all (test.test_xml_etree.ModuleTest) ... ok
test_sanity (test.test_xml_etree.ModuleTest) ... ok
test_delslice (test.test_xml_etree.ElementSlicingTest) ... ok
test_getslice_negative_steps (test.test_xml_etree.ElementSlicingTest) ... ok
test_getslice_range (test.test_xml_etree.ElementSlicingTest) ... ok
test_getslice_single_index (test.test_xml_etree.ElementSlicingTest) ... ok
test_getslice_steps (test.test_xml_etree.ElementSlicingTest) ... ok
test_setslice_negative_steps (test.test_xml_etree.ElementSlicingTest) ... ok
test_setslice_range (test.test_xml_etree.ElementSlicingTest) ... ok
test_setslice_single_index (test.test_xml_etree.ElementSlicingTest) ... ok
test_setslice_steps (test.test_xml_etree.ElementSlicingTest) ... ok
test_augmentation_type_errors (test.test_xml_etree.BasicElementTest) ... Fatal 
Python error: Segmentation fault

Current thread 0x0001 (most recent call first):
  File "/data/prj/python/git/python3-3.8/Lib/unittest/case.py", line 197 in 
handle
  File "/data/prj/python/git/python3-3.8/Lib/unittest/case.py", line 782 in 
assertRaises
  File "/data/prj/python/git/python3-3.8/Lib/test/test_xml_etree.py", line 1811 
in test_augmentation_type_errors
  File "/data/prj/python/git/python3-3.8/Lib/unittest/case.py", line 642 in run
  File "/data/prj/python/git/python3-3.8/Lib/unittest/case.py", line 702 in 
__call__
  File "/data/prj/python/git/python3-3.8/Lib/unittest/suite.py", line 122 in run
  File "/data/prj/python/git/python3-3.8/Lib/unittest/suite.py", line 84 in 
__call__
  File "/data/prj/python/git/python3-3.8/Lib/unittest/suite.py", line 122 in run
  File "/data/prj/python/git/python3-3.8/Lib/unittest/suite.py", line 84 in 
__call__
  File "/data/prj/python/git/python3-3.8/Lib/unittest/runner

[issue35704] On AIX, test_unpack_archive_xztar fails with default MAXDATA settings

2019-01-10 Thread Michael Felt


Change by Michael Felt :


--
keywords: +patch
pull_requests: +11029
stage:  -> patch review

___
Python tracker 
<https://bugs.python.org/issue35704>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue35704] On AIX, test_unpack_archive_xztar fails with default MAXDATA settings

2019-01-10 Thread Michael Felt


New submission from Michael Felt :

By default AIX builds 32-bit applications - and the combined .data, .bss and 
.stack areas share one memory segment of 256 Mbyte.

This can be modified by either specifying a larger value for maxdata during 
linking (e.g., with LDFLAGS=-bmaxdata:0x4000) or using the program ldedit 
(e.g., ldedit -b maxdata:0x4000).

The subtest test_shutil.test_unpack_archive_xztar fails with the default. The 
patch here looks at the MAXDATA value of the executable XCOFF headers and skips 
the test when AIX is 32-bit and MAXDATA < 0x2000.

This helps the result of AIX bots to be more accurate - as this so-called 
failure is not an issue with python itself.

--
components: Tests
messages: 70
nosy: Michael.Felt
priority: normal
severity: normal
status: open
title: On AIX, test_unpack_archive_xztar fails with default MAXDATA settings
type: enhancement
versions: Python 3.8

___
Python tracker 
<https://bugs.python.org/issue35704>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue35198] Build issue while compiling cpp files in AIX

2019-01-09 Thread Michael Felt


Michael Felt  added the comment:

On 08/01/2019 15:40, Ayappan wrote:
> Ayappan  added the comment:
>
> Not sure what went wrong here.
> I used gcc & g++ and didn't hit this issue.
>
> --
>
> ___
> Python tracker 
> <https://bugs.python.org/issue35198>
> ___
>
Well, it is probably an issue with xlc as I have vac.C and
vacpp.cmp.core installed (aka xlc and xlC). These days it seems only gcc
environment gets tested in depth and portability issues with "posix"
compilers get missed.

GCC is a fine compiler - just not the one I am using for a number of
"logistical" reasons.

Thanks for the update!

Michael

--

___
Python tracker 
<https://bugs.python.org/issue35198>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue35633] test_eintr fails on AIX since fcntl functions were modified

2019-01-07 Thread Michael Felt

Michael Felt  added the comment:

On 07/01/2019 15:46, STINNER Victor wrote:
> STINNER Victor  added the comment:
>
> Since you are getting indentation error, I'm not sure about your test. Can 
> you please apply the patch below and run again test_eintr? Does it still fail 
> with PermissionError?

I was clearly a bit blind.. Now with:

  +490  class FNTLEINTRTest(EINTRBaseTest):
  +491  def _lock(self, lock_func, lock_name):
  +492  self.addCleanup(support.unlink, support.TESTFN)
  +493  code = '\n'.join((
  +494  "import fcntl, time",
  +495  "with open('%s', 'w+b') as f:" % support.TESTFN,
  +496  "   fcntl.%s(f, fcntl.LOCK_EX)" % lock_name,
  +497  "   time.sleep(%s)" % self.sleep_time))
  +498  start_time = time.monotonic()
  +499  proc = self.subprocess(code)
  +500  with kill_on_error(proc):
  +501  with open(support.TESTFN, 'w+b') as f:
  +502  while True:  # synchronize the subprocess
  +503  dt = time.monotonic() - start_time
  +504  if dt > 60.0:
  +505  raise Exception("failed to sync child in
%.1f sec" % dt)
  +506  try:
  +507  lock_func(f, fcntl.LOCK_EX | fcntl.LOCK_NB)
  +508  lock_func(f, fcntl.LOCK_UN)
  +509  time.sleep(0.01)
  +510  except BlockingIOError:
  +511  break

I get - PermissionError - as before.

root@x066:[/data/prj/python/python3-3.8]./python -m test -v test_eintr
== CPython 3.8.0a0 (heads/master-dirty:b4ea8bb080, Jan 1 2019, 18:24:36) [C]
== AIX-1-00C291F54C00-powerpc-32bit big-endian
== cwd: /data/prj/python/python3-3.8/build/test_python_3342514
== CPU count: 8
== encodings: locale=ISO8859-1, FS=iso8859-1
Run tests sequentially
0:00:00 [1/1] test_eintr
test_all (test.test_eintr.EINTRTests) ...
--- run eintr_tester.py ---
test_flock (__main__.FNTLEINTRTest) ... ok
test_lockf (__main__.FNTLEINTRTest) ... ERROR
test_read (__main__.OSEINTRTest) ... ok
test_wait (__main__.OSEINTRTest) ... ok
test_wait3 (__main__.OSEINTRTest) ... ok
test_wait4 (__main__.OSEINTRTest) ... ok
test_waitpid (__main__.OSEINTRTest) ... ok
test_write (__main__.OSEINTRTest) ... ok
test_devpoll (__main__.SelectEINTRTest) ... skipped 'need select.devpoll'
test_epoll (__main__.SelectEINTRTest) ... skipped 'need select.epoll'
test_kqueue (__main__.SelectEINTRTest) ... skipped 'need select.kqueue'
test_poll (__main__.SelectEINTRTest) ... ok
test_select (__main__.SelectEINTRTest) ... ok
test_sigtimedwait (__main__.SignalEINTRTest) ... ok
test_sigwaitinfo (__main__.SignalEINTRTest) ... ok
test_accept (__main__.SocketEINTRTest) ... ok
test_open (__main__.SocketEINTRTest) ... ok
test_os_open (__main__.SocketEINTRTest) ... ok
test_recv (__main__.SocketEINTRTest) ... ok
test_recvmsg (__main__.SocketEINTRTest) ... ok
test_send (__main__.SocketEINTRTest) ... ok
test_sendall (__main__.SocketEINTRTest) ... ok
test_sendmsg (__main__.SocketEINTRTest) ... ok
test_sleep (__main__.TimeEINTRTest) ... ok

==
ERROR: test_lockf (__main__.FNTLEINTRTest)
--
Traceback (most recent call last):
  File
"/data/prj/python/git/python3-3.8/Lib/test/eintrdata/eintr_tester.py",
line 522, in test_lockf
    self._lock(fcntl.lockf, "lockf")
  File
"/data/prj/python/git/python3-3.8/Lib/test/eintrdata/eintr_tester.py",
line 507, in _lock
    lock_func(f, fcntl.LOCK_EX | fcntl.LOCK_NB)
PermissionError: [Errno 13] Permission denied

--
Ran 24 tests in 9.098s

FAILED (errors=1, skipped=3)
--- eintr_tester.py completed: exit code 1 ---
FAIL

==
FAIL: test_all (test.test_eintr.EINTRTests)
--
Traceback (most recent call last):
  File "/data/prj/python/git/python3-3.8/Lib/test/test_eintr.py", line
31, in test_all
    self.fail("eintr_tester.py failed")
AssertionError: eintr_tester.py failed

--

Ran 1 test in 9.674s

FAILED (failures=1)
test test_eintr failed
test_eintr failed

== Tests result: FAILURE ==

>
> diff --git a/Lib/test/eintrdata/eintr_tester.py 
> b/Lib/test/eintrdata/eintr_tester.py
> index 25c169bde5..4db5dc9045 100644
> --- a/Lib/test/eintrdata/eintr_tester.py
> +++ b/Lib/test/eintrdata/eintr_tester.py
> @@ -492,13 +492,13 @@ class FNTLEINTRTest(EINTRBaseTest):
>  self.addCleanup(support.unlink, support.TESTFN)
>  code = '\n'.join((
> 

[issue35633] test_eintr fails on AIX since fcntl functions were modified

2019-01-05 Thread Michael Felt

Michael Felt  added the comment:

On 04/01/2019 23:42, STINNER Victor wrote:
> STINNER Victor  added the comment:
>
> Does the test pass if you open the file in read+write ("w+b") mode rather 
> than write-only ("wb") mode?
>
> I'm talking about this line:
>
> open(support.TESTFN, 'wb')
>
> Note: if you want to test, you have the modify the mode twice:
>   "with open('%s', 'wb') as f:" % support.TESTFN,
> and
>   with open(support.TESTFN, 'wb') as f:

Without except containing PermissionError:

  +500  with kill_on_error(proc):
  +501  with open(support.TESTFN, 'w+b') as f:
  +502  while True:  # synchronize the subprocess
  +503  dt = time.monotonic() - start_time
  +504  if dt > 60.0:
  +505  raise Exception("failed to sync child in
%.1f sec" % dt)
  +506  try:
  +507  lock_func(f, fcntl.LOCK_EX | fcntl.LOCK_NB)
  +508  lock_func(f, fcntl.LOCK_UN)
  +509  time.sleep(0.01)
  +510  except BlockingIOError:
  +511  break
FAILS on test_lockf, passes on test_flock -> with open(support.TESTFN,
'w+b') as f:

FAILS on both test_lockf and test_flock (as expected I am guessing) ->
with open(support.TESTFN, 'r+b') as f:

I am not python savvy enough to get it tested using the syntax: ' "with
open('%s', 'wb') as f:" % support.TESTFN, '

  +500  with kill_on_error(proc):
  +501  "with open('%s', 'wb') as f:" % support.TESTFN,
  +502  while True:  # synchronize the subprocess
  +503  dt = time.monotonic() - start_time
  +504  if dt > 60.0:
  +505  raise Exception("failed to sync child in
%.1f sec" % dt)
  +506  try:
  +507  lock_func(f, fcntl.LOCK_EX | fcntl.LOCK_NB)
  +508  lock_func(f, fcntl.LOCK_UN)
  +509  time.sleep(0.01)
  +510  except BlockingIOError:
  +511  break

--- run eintr_tester.py ---
  File
"/data/prj/python/git/python3-3.8/Lib/test/eintrdata/eintr_tester.py",
line 502
    while True:  # synchronize the subprocess
    ^
IndentationError: unexpected indent
--- eintr_tester.py completed: exit code 1 ---

>
> --
> nosy: +vstinner
>
> ___
> Python tracker 
> <https://bugs.python.org/issue35633>
> ___
>

--
title: test_eintr: test_lockf() fails with "PermissionError: [Errno 13] 
Permission denied" on AIX -> test_eintr fails on AIX since fcntl functions were 
modified

___
Python tracker 
<https://bugs.python.org/issue35633>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue35633] test_eintr: test_lockf() fails with "PermissionError: [Errno 13] Permission denied" on AIX

2019-01-05 Thread Michael Felt

Michael Felt  added the comment:

I had tried “wb+”, not “w+b”. Is there a difference? I forget if I tried just 
“w+”. 

But I’ll do them anyway/again to be sure. 

Sent from my iPhone

> On 4 Jan 2019, at 23:43, STINNER Victor  wrote:
> 
> 
> Change by STINNER Victor :
> 
> 
> --
> title: test_eintr fails on AIX since fcntl functions were modified -> 
> test_eintr: test_lockf() fails with "PermissionError: [Errno 13] Permission 
> denied" on AIX
> 
> ___
> Python tracker 
> <https://bugs.python.org/issue35633>
> ___
>

--

___
Python tracker 
<https://bugs.python.org/issue35633>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue35198] Build issue while compiling cpp files in AIX

2019-01-04 Thread Michael Felt


Michael Felt  added the comment:

Further along - however, I never get to the "link" routine.

Again, this is likely a pandas coding issue - currently python is calling xlc_r 
..., but when I manually modify it to xlC_r I get the same error.

xlc_r -D_LARGE_FILES -O -I/opt/include -O2 -qmaxmem=-1 -qarch=pwr5 
-I/opt/include -O2 -qmaxmem=-1 -qarch=pwr5 -Ipandas/_libs -I./pandas/_libs 
-Ipandas/_libs/src/klib -Ipandas/_libs/src 
-I/opt/lib/python3.8/site-packages/numpy/core/include 
-I/opt/include/python3.8dm -c pandas/_libs/window.cpp -o 
build/temp.aix-6.1-3.8-pydebug/pandas/_libs/window.o
"pandas/_libs/window.cpp", line 9943.23: 1540-0063 (S) The text "(" is 
unexpected.
"pandas/_libs/window.cpp", line 10030.23: 1540-0063 (S) The text "(" is 
unexpected.
"pandas/_libs/window.cpp", line 11165.21: 1540-0063 (S) The text "(" is 
unexpected.
error: command 'xlc_r' failed with exit status 1
root@x066:[/data/prj/aixtools/git/pandas-master]ebug/pandas/_libs/window.o  
  <
"pandas/_libs/window.cpp", line 9943.23: 1540-0063 (S) The text "(" is 
unexpected.
"pandas/_libs/window.cpp", line 10030.23: 1540-0063 (S) The text "(" is 
unexpected.
"pandas/_libs/window.cpp", line 11165.21: 1540-0063 (S) The text "(" is 
unexpected.

root@x066:[/data/prj/aixtools/git/pandas-master]xlC_r -D_LARGE_FILES -O 
-I/opt/include -O2 -qm>
"pandas/_libs/window.cpp", line 9943.23: 1540-0063 (S) The text "(" is 
unexpected.
"pandas/_libs/window.cpp", line 10030.23: 1540-0063 (S) The text "(" is 
unexpected.
"pandas/_libs/window.cpp", line 11165.21: 1540-0063 (S) The text "(" is 
unexpected.

FYI. Will look more tomorrow, but if you have an idea, like the -D_LARGE_FILES 
fix, I am much obliged.

--

___
Python tracker 
<https://bugs.python.org/issue35198>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue35198] Build issue while compiling cpp files in AIX

2019-01-04 Thread Michael Felt


Michael Felt  added the comment:

On 04/01/2019 17:08, Kevin wrote:
> Kevin  added the comment:
>
> Ah. We always compile with GCC, so would not have hit that particular problem.
>
> --
>
> ___
> Python tracker 
> <https://bugs.python.org/issue35198>
> ___
>
FYI. I found a 'hack' in ./setup.py to skip adding the argument.
Progressing.

--

___
Python tracker 
<https://bugs.python.org/issue35198>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue35198] Build issue while compiling cpp files in AIX

2019-01-04 Thread Michael Felt


Michael Felt  added the comment:

While the PR probably solves this - there is a 'bug' in pandas (I expect) that 
prevents me from completing the test - as, I expect LONG before the .cpp source 
is to be compiled - there is a error because a wrong flag is passed to the 
compiler (-Wno-unused-function) and the build stops.

Have not had the time to disect pandas so that I can get a .cpp source compiled.

+
Successfully installed pip-18.1
root@x066:[/data/prj/python/git/kadler]pip list
/opt/lib/python3.8/site-packages/pip/_vendor/html5lib/_trie/_base.py:3: 
DeprecationWdeprecated, and in 3.8 it will stop working
  from collections import Mapping
PackageVersion
-- ---
pip18.1
setuptools 39.0.1
root@x066:[/data/prj/python/git/kadler]pip install numpy
/opt/lib/python3.8/site-packages/pip/_vendor/html5lib/_trie/_base.py:3: 
DeprecationWdeprecated, and in 3.8 it will stop working
  from collections import Mapping
Collecting numpy
/opt/lib/python3.8/site-packages/pip/_vendor/msgpack/fallback.py:220: 
PendingDepreca
  warnings.warn(
  Using cached 
https://files.pythonhosted.org/packages/2d/80/1809de155bad674b494248b
Installing collected packages: numpy
  Running setup.py install for numpy ... done
Successfully installed numpy-1.15.4

...
Installing collected packages: six, python-dateutil, pytz, pandas
...
copying pandas/io/formats/templates/html.tpl -> 
build/lib.aix-6.1-3.8-pydebug/pandas/io/formats/templates
UPDATING build/lib.aix-6.1-3.8-pydebug/pandas/_version.py
set build/lib.aix-6.1-3.8-pydebug/pandas/_version.py to '0.23.4'
running build_ext
building 'pandas._libs.algos' extension
creating build/temp.aix-6.1-3.8-pydebug
creating build/temp.aix-6.1-3.8-pydebug/pandas
creating build/temp.aix-6.1-3.8-pydebug/pandas/_libs
xlc_r -O -I/opt/include -O2 -qmaxmem=-1 -qarch=pwr5 -I/opt/include -O2 
-qmaxmem=-1 -qarch=pwr5 -Ipandas/_libs/src/klib -Ipandas/_libs/src 
-I/opt/lib/python3.8/site-packages/numpy/core/include 
-I/opt/include/python3.8dm -c pandas/_libs/algos.c -o 
build/temp.aix-6.1-3.8-pydebug/pandas/_libs/algos.o -Wno-unused-function
xlc_r: 1501-210 (S) command option Wno-unused-function contains an 
incorrect subargument
error: command 'xlc_r' failed with exit status 40


Command "/opt/bin/python3 -u -c "import setuptools, 
tokenize;__file__='/tmp/pip-install-xnscgehv/pandas/setup.py';f=getattr(tokenize,
 'open', open)(__file__);code=f.read().replace('\r\n', 
'\n');f.close();exec(compile(code, __file__, 'exec'))" install --record 
/tmp/pip-record-0w46p413/install-record.txt --single-version-externally-managed 
--compile" failed with error code 1 in /tmp/pip-install-xnscgehv/pandas/

--

___
Python tracker 
<https://bugs.python.org/issue35198>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue35633] test_eintr fails on AIX since fcntl functions were modified

2019-01-03 Thread Michael Felt


Change by Michael Felt :


--
components:  -IO

___
Python tracker 
<https://bugs.python.org/issue35633>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue35189] PEP 475: fnctl functions are not retried if interrupted by a signal (EINTR)

2019-01-03 Thread Michael Felt


Change by Michael Felt :


--
pull_requests: +10842, 10843, 10845

___
Python tracker 
<https://bugs.python.org/issue35189>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue35189] PEP 475: fnctl functions are not retried if interrupted by a signal (EINTR)

2019-01-03 Thread Michael Felt


Change by Michael Felt :


--
pull_requests: +10842, 10843, 10844, 10845

___
Python tracker 
<https://bugs.python.org/issue35189>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue35189] PEP 475: fnctl functions are not retried if interrupted by a signal (EINTR)

2019-01-03 Thread Michael Felt


Change by Michael Felt :


--
pull_requests: +10842, 10843

___
Python tracker 
<https://bugs.python.org/issue35189>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue35189] PEP 475: fnctl functions are not retried if interrupted by a signal (EINTR)

2019-01-03 Thread Michael Felt


Change by Michael Felt :


--
pull_requests: +10842

___
Python tracker 
<https://bugs.python.org/issue35189>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue35633] test_eintr fails on AIX since fcntl functions were modified

2019-01-03 Thread Michael Felt


Change by Michael Felt :


--
keywords: +patch, patch
pull_requests: +10840, 10841
stage:  -> patch review

___
Python tracker 
<https://bugs.python.org/issue35633>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue35633] test_eintr fails on AIX since fcntl functions were modified

2019-01-03 Thread Michael Felt


Change by Michael Felt :


--
keywords: +patch
pull_requests: +10840
stage:  -> patch review

___
Python tracker 
<https://bugs.python.org/issue35633>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue35633] test_eintr fails on AIX since fcntl functions were modified

2019-01-03 Thread Michael Felt


Michael Felt  added the comment:

After reading the PEP I realized it is much simpler. The test is for interrupts 
that occur at a low-level - and not for permission issues. The test is failing 
because there is a permission issue, not a missed interrupt issue. Modifying 
the code to: (see line 510)

  +506  try:
  +507  lock_func(f, fcntl.LOCK_EX | fcntl.LOCK_NB)
  +508  lock_func(f, fcntl.LOCK_UN)
  +509  time.sleep(0.01)
  +510  except (BlockingIOError, PermissionError):
  +511  break
  +512  # the child locked the file just a moment ago for 
'sleep_time' seconds
  +513  # that means that the lock below will block for 
'sleep_time' minus some
  +514  # potential context switch delay
  +515  lock_func(f, fcntl.LOCK_EX)
  +516  dt = time.monotonic() - start_time
  +517  self.assertGreaterEqual(dt, self.sleep_time)
  +518  self.stop_alarm()

fixes this.

--

___
Python tracker 
<https://bugs.python.org/issue35633>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue35633] test_eintr fails on AIX since fcntl functions were modified

2019-01-01 Thread Michael Felt


New submission from Michael Felt :

test_eintr fails on AIX since fcntl functions were modified
In issue35189 the fnctl() module was modified so that the EINTR interruption 
should be retried automatically.

On AIX the test for flock() passes, but the test for lockf() fails:

 ==
> ERROR: test_lockf (__main__.FNTLEINTRTest)
> --
> Traceback (most recent call last):
>   File "/data/prj/python/git/python3-3.8/Lib/test/eintrdata/eintr_tester.py", 
> line 522, in test_lockf
> self._lock(fcntl.lockf, "lockf")
>   File "/data/prj/python/git/python3-3.8/Lib/test/eintrdata/eintr_tester.py", 
> line 507, in _lock
> lock_func(f, fcntl.LOCK_EX | fcntl.LOCK_NB)
> PermissionError: [Errno 13] Permission denied
>

Researching...

--
components: IO, Tests
messages: 332846
nosy: Michael.Felt
priority: normal
severity: normal
status: open
title: test_eintr fails on AIX since fcntl functions were modified
type: behavior
versions: Python 3.7, Python 3.8

___
Python tracker 
<https://bugs.python.org/issue35633>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue28009] core logic of uuid.getnode() is broken for netstat

2018-12-28 Thread Michael Felt


Michael Felt  added the comment:

p.s., removed 2.7 and 3.6 as too old for any interest.

--
versions:  -Python 2.7, Python 3.6

___
Python tracker 
<https://bugs.python.org/issue28009>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue28009] core logic of uuid.getnode() is broken for netstat

2018-12-28 Thread Michael Felt


Michael Felt  added the comment:

As I am not clear on where to have a more general discussion (in a PR 
conversation) or here - going to start here because I cannot figure out which 
comment in the PR to reply to.

Generally, before modifying the test_uuid.py to based tests on 
uuid.__NODE_GETTERS - these need to be defined.

I have my AIX systems, I found a macos I could do some queries on, and 
downloaded cygwin and came up with this starting point:

_MACOS = sys.platform == 'darwin'
_WIN32 = sys.platform == 'win32'
_CYGWIN= sys.platform == 'cygwin'
_AIX = sys.platform.startswith("aix")

...

if _AIX:
_NODE_GETTERS = [_unix_getnode, _netstat_getnode]
elif _MACOS:
_NODE_GETTERS = [_unix_getnode, _ifconfig_getnode, _netstat_getnode]
elif _CYGWIN:
_NODE_GETTERS = [_ipconfig_getnode]
elif _WIN32:
_NODE_GETTERS = [_windll_getnode, _ipconfig_getnode, _netbios_getnode]
else:
_NODE_GETTERS = [_unix_getnode, _ifconfig_getnode, _ip_getnode,
  _arp_getnode, _lanscan_getnode, _netstat_getnode]


What I am also wondering - is it worthwhile to have a way to only define the 
getter() routines a platform can actually use? e.g., On AIX I can call 
uuid._ipconfig_getter(), but get nonsense. Or is it too much effort?

Finally, can someone with access to other platforms where differences may be 
expected (e.g., Solaris, hpux, or even different flavors of Linux) - to make 
this _NODE_GETTERS mode complete (specific).

--

___
Python tracker 
<https://bugs.python.org/issue28009>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue35189] PEP 475: fnctl functions are not retried if interrupted by a signal (EINTR)

2018-12-27 Thread Michael Felt


Michael Felt  added the comment:

On 27/12/2018 15:48, Michael Felt wrote:
> Michael Felt  added the comment:
>
> The "improved" output after getting back to "latest" commit:
>
> == CPython 3.8.0a0 (heads/master-dirty:34ae04f74d, Dec 27 2018, 14:05:08) [C]
> == AIX-1-00C291F54C00-powerpc-32bit big-endian
> == cwd: /data/prj/python/python3-3.8/build/test_python_13566116
> == CPU count: 8
> == encodings: locale=ISO8859-1, FS=iso8859-1
> Run tests sequentially
> 0:00:00 [1/1] test_eintr
> test_all (test.test_eintr.EINTRTests) ...
> --- run eintr_tester.py ---
> test_flock (__main__.FNTLEINTRTest) ... ok
> test_lockf (__main__.FNTLEINTRTest) ... ERROR
> test_read (__main__.OSEINTRTest) ... ok
> test_wait (__main__.OSEINTRTest) ... ok
> test_wait3 (__main__.OSEINTRTest) ... ok
> test_wait4 (__main__.OSEINTRTest) ... ok
> test_waitpid (__main__.OSEINTRTest) ... ok
> test_write (__main__.OSEINTRTest) ... ok
> test_devpoll (__main__.SelectEINTRTest) ... skipped 'need select.devpoll'
> test_epoll (__main__.SelectEINTRTest) ... skipped 'need select.epoll'
> test_kqueue (__main__.SelectEINTRTest) ... skipped 'need select.kqueue'
> test_poll (__main__.SelectEINTRTest) ... ok
> test_select (__main__.SelectEINTRTest) ... ok
> test_sigtimedwait (__main__.SignalEINTRTest) ... ok
> test_sigwaitinfo (__main__.SignalEINTRTest) ... ok
> test_accept (__main__.SocketEINTRTest) ... ok
> test_open (__main__.SocketEINTRTest) ... ok
> test_os_open (__main__.SocketEINTRTest) ... ok
> test_recv (__main__.SocketEINTRTest) ... ok
> test_recvmsg (__main__.SocketEINTRTest) ... ok
> test_send (__main__.SocketEINTRTest) ... ok
> test_sendall (__main__.SocketEINTRTest) ... ok
> test_sendmsg (__main__.SocketEINTRTest) ... ok
> test_sleep (__main__.TimeEINTRTest) ... ok
>
> ==
> ERROR: test_lockf (__main__.FNTLEINTRTest)
> --
> Traceback (most recent call last):
>   File "/data/prj/python/git/python3-3.8/Lib/test/eintrdata/eintr_tester.py", 
> line 522, in test_lockf
> self._lock(fcntl.lockf, "lockf")
>   File "/data/prj/python/git/python3-3.8/Lib/test/eintrdata/eintr_tester.py", 
> line 507, in _lock
> lock_func(f, fcntl.LOCK_EX | fcntl.LOCK_NB)
> PermissionError: [Errno 13] Permission denied
>
> --
> Ran 24 tests in 8.822s
>
> FAILED (errors=1, skipped=3)
> --- eintr_tester.py completed: exit code 1 ---
> FAIL
>
> ==
> FAIL: test_all (test.test_eintr.EINTRTests)
> --
> Traceback (most recent call last):
>   File "/data/prj/python/git/python3-3.8/Lib/test/test_eintr.py", line 31, in 
> test_all
> self.fail("eintr_tester.py failed")
> AssertionError: eintr_tester.py failed
>
> --
>
> Ran 1 test in 9.392s
>
> FAILED (failures=1)
> test test_eintr failed
> test_eintr failed
>
> == Tests result: FAILURE ==
>
> 1 test failed:
> test_eintr
>
> Total duration: 9 sec 609 ms
> Tests result: FAILURE
>
> --
>
> ___
> Python tracker 
> <https://bugs.python.org/issue35189>
> ___
>
I have been doing reading and debugging.

Question: does mode "wb" imply also open for reading? Both Freebsd and
AIX man pages specify that a file needs to be open for a shared lock to
even be considered.

Further, AIX talks about "enforced" and "advisory" locks, as well as
"read" and "write" locks. In much older documentation I recall the names
"simple" and "complex" locks. From memory, advisory (aka simple) locks
tend to be exclusive in nature. Shared is only for reading, writing is
always exclusive. I'll have to dig for how "wait" is actually handled -
and work to not confuse "in memory" locks (for multi-threaded locking of
variables) with "file-locking".

Regards,

Michael

--

___
Python tracker 
<https://bugs.python.org/issue35189>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue35189] PEP 475: fnctl functions are not retried if interrupted by a signal (EINTR)

2018-12-27 Thread Michael Felt


Michael Felt  added the comment:

The "improved" output after getting back to "latest" commit:

== CPython 3.8.0a0 (heads/master-dirty:34ae04f74d, Dec 27 2018, 14:05:08) [C]
== AIX-1-00C291F54C00-powerpc-32bit big-endian
== cwd: /data/prj/python/python3-3.8/build/test_python_13566116
== CPU count: 8
== encodings: locale=ISO8859-1, FS=iso8859-1
Run tests sequentially
0:00:00 [1/1] test_eintr
test_all (test.test_eintr.EINTRTests) ...
--- run eintr_tester.py ---
test_flock (__main__.FNTLEINTRTest) ... ok
test_lockf (__main__.FNTLEINTRTest) ... ERROR
test_read (__main__.OSEINTRTest) ... ok
test_wait (__main__.OSEINTRTest) ... ok
test_wait3 (__main__.OSEINTRTest) ... ok
test_wait4 (__main__.OSEINTRTest) ... ok
test_waitpid (__main__.OSEINTRTest) ... ok
test_write (__main__.OSEINTRTest) ... ok
test_devpoll (__main__.SelectEINTRTest) ... skipped 'need select.devpoll'
test_epoll (__main__.SelectEINTRTest) ... skipped 'need select.epoll'
test_kqueue (__main__.SelectEINTRTest) ... skipped 'need select.kqueue'
test_poll (__main__.SelectEINTRTest) ... ok
test_select (__main__.SelectEINTRTest) ... ok
test_sigtimedwait (__main__.SignalEINTRTest) ... ok
test_sigwaitinfo (__main__.SignalEINTRTest) ... ok
test_accept (__main__.SocketEINTRTest) ... ok
test_open (__main__.SocketEINTRTest) ... ok
test_os_open (__main__.SocketEINTRTest) ... ok
test_recv (__main__.SocketEINTRTest) ... ok
test_recvmsg (__main__.SocketEINTRTest) ... ok
test_send (__main__.SocketEINTRTest) ... ok
test_sendall (__main__.SocketEINTRTest) ... ok
test_sendmsg (__main__.SocketEINTRTest) ... ok
test_sleep (__main__.TimeEINTRTest) ... ok

==
ERROR: test_lockf (__main__.FNTLEINTRTest)
--
Traceback (most recent call last):
  File "/data/prj/python/git/python3-3.8/Lib/test/eintrdata/eintr_tester.py", 
line 522, in test_lockf
self._lock(fcntl.lockf, "lockf")
  File "/data/prj/python/git/python3-3.8/Lib/test/eintrdata/eintr_tester.py", 
line 507, in _lock
lock_func(f, fcntl.LOCK_EX | fcntl.LOCK_NB)
PermissionError: [Errno 13] Permission denied

--
Ran 24 tests in 8.822s

FAILED (errors=1, skipped=3)
--- eintr_tester.py completed: exit code 1 ---
FAIL

==
FAIL: test_all (test.test_eintr.EINTRTests)
--
Traceback (most recent call last):
  File "/data/prj/python/git/python3-3.8/Lib/test/test_eintr.py", line 31, in 
test_all
self.fail("eintr_tester.py failed")
AssertionError: eintr_tester.py failed

--

Ran 1 test in 9.392s

FAILED (failures=1)
test test_eintr failed
test_eintr failed

== Tests result: FAILURE ==

1 test failed:
test_eintr

Total duration: 9 sec 609 ms
Tests result: FAILURE

--

___
Python tracker 
<https://bugs.python.org/issue35189>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue35189] PEP 475: fnctl functions are not retried if interrupted by a signal (EINTR)

2018-12-27 Thread Michael Felt


Michael Felt  added the comment:

Forgot to include the test failure message:

==
FAIL: test_all (test.test_eintr.EINTRTests)
--
Traceback (most recent call last):
  File "/data/prj/python/git/python3-3.8/Lib/test/test_eintr.py", line 18, in 
test_all
script_helper.assert_python_ok("-u", tester)
  File "/data/prj/python/git/python3-3.8/Lib/test/support/script_helper.py", 
line 157, in assert_python_ok
return _assert_python(True, *args, **env_vars)
  File "/data/prj/python/git/python3-3.8/Lib/test/support/script_helper.py", 
line 143, in _assert_python
res.fail(cmd_line)
  File "/data/prj/python/git/python3-3.8/Lib/test/support/script_helper.py", 
line 70, in fail
raise AssertionError("Process return code is %d\n"
AssertionError: Process return code is 1
command line: ['/data/prj/python/python3-3.8/python', '-X', 'faulthandler', 
'-I', '-u', 
'/data/prj/python/git/python3-3.8/Lib/test/eintrdata/eintr_tester.py']

stdout:
---

---

stderr:
---
.E..sss.
==
ERROR: test_lockf (__main__.FNTLEINTRTest)
--
Traceback (most recent call last):
  File "/data/prj/python/git/python3-3.8/Lib/test/eintrdata/eintr_tester.py", 
line 522, in test_lockf
self._lock(fcntl.lockf, "lockf")
  File "/data/prj/python/git/python3-3.8/Lib/test/eintrdata/eintr_tester.py", 
line 507, in _lock
lock_func(f, fcntl.LOCK_EX | fcntl.LOCK_NB)
PermissionError: [Errno 13] Permission denied

--
Ran 24 tests in 9.692s

FAILED (errors=1, skipped=3)
---

--

Ran 1 test in 10.404s

FAILED (failures=1)
test test_eintr failed
test_eintr failed

== Tests result: FAILURE ==

1 test failed:
test_eintr

Total duration: 10 sec 645 ms

--

___
Python tracker 
<https://bugs.python.org/issue35189>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue35189] PEP 475: fnctl functions are not retried if interrupted by a signal (EINTR)

2018-12-27 Thread Michael Felt


Michael Felt  added the comment:

I have not looked at 3.6, but I have bisected the 3.7 and 3.8 branches for AIX. 
I get:

On 3.7 Branch:
Bisecting: 0 revisions left to test after this (roughly 0 steps)
[56742f1eb05401a27499af0ccdcb4e4214859fd1] [3.7] bpo-35189: Retry fnctl calls 
on EINTR (GH-10413) (GH-10678)

On 3.8 Branch:
Bisecting: 0 revisions left to test after this (roughly 0 steps)
[b409ffa848b280c1db1b4f450bfae14f263099ac] bpo-35189: Retry fnctl calls on 
EINTR (GH-10413)

So, my assumption is that the PR-10413 is not 100% correct for AIX.

Will look further, but also request - will this issue reopen, or do we need a 
new issue?

--
nosy: +Michael.Felt

___
Python tracker 
<https://bugs.python.org/issue35189>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue34897] distutils test errors when CXX is not set

2018-12-25 Thread Michael Felt


Change by Michael Felt :


--
pull_requests: +10576

___
Python tracker 
<https://bugs.python.org/issue34897>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue34897] distutils test errors when CXX is not set

2018-12-25 Thread Michael Felt


Change by Michael Felt :


--
pull_requests: +10576, 10577

___
Python tracker 
<https://bugs.python.org/issue34897>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue28009] core logic of uuid.getnode() is broken for netstat

2018-11-14 Thread Michael Felt


Change by Michael Felt :


--
title: core logic of uuid.getnode() is broken for AIX - all versions -> core 
logic of uuid.getnode() is broken for netstat

___
Python tracker 
<https://bugs.python.org/issue28009>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue28009] core logic of uuid.getnode() is broken for AIX - all versions

2018-11-14 Thread Michael Felt


Michael Felt  added the comment:

Historically, I started this issue because I saw that none of the calls made in 
uuid.py were working for AIX.

I also assumed that they ALL worked already, at least somewhere.

a) one cause is the difference between AIX and (all) others was the letter 
chosen to separate the six fields that from the hexadecimal macaddr. (AIX uses 
'.', others use ':').

b) on AIX only netstat -ia returns a macaddr - so the GETTERS array of routines 
to call could be shorter

c) as the tests accept (I'll call it) no response aka None this was "passing" 
for all calls on AIX, including the mock test which had ":" hard coded into the 
test procedure and the mock data.

d) the current test has to fail (i.e., always return None) when the output is 
coming from netstat because the output layout is fundamentally different. With 
netstat the keyword is in the first-line only and it determines the position, 
or index, of a potential value in the following lines. Other commands, such as 
ifconfig on linux, have the keyword and value on the same line with the keyword 
(position:index) proceeding the value (position:index+1)

All this time I thought this was ONLY and AIX issue but in examining other 
platforms I see that some (e.g., Linux) do not have a macaddr value in netstat 
output - while others do (e.g., macos).

In short, I would appreciate the current PR being merged so that AIX has at 
least basic support. However, I am ready to continue, as a new PR, re-working 
the tests (so that a response of None is at least a warning) when a macaddr is 
not found for a platform - rather than over customization of test_uuid.py (as I 
have started to do here for AIX).

For platforms that do return a macaddr using netstat I would like to hear if 
that platform uses the "inline" method such as the command 'ifconfig' does on 
Linux, or if it is the "header" method such as on AIX and macos.

Thank you for your consideration.

--

___
Python tracker 
<https://bugs.python.org/issue28009>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue35198] Build issue while compiling cpp files in AIX

2018-11-11 Thread Michael Felt


Michael Felt  added the comment:

Still getting the same errors, even with 64-bit build, so still not close to 
testing the actual problem.
FYI: last time I build pandas the version was 0.19.0 - then it was 'simple'.

Anyway, short of a simple (test) python module that includes c++ code, I'll 
look at changing the pandas build files to force any c++ file to the front.

More - (asap, but still when I have time)

--

___
Python tracker 
<https://bugs.python.org/issue35198>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue35198] Build issue while compiling cpp files in AIX

2018-11-10 Thread Michael Felt


Michael Felt  added the comment:

Getting farther - after "hacking" pandas setup.py to not force a gcc flag.

Still not getting as far, I think, as the initial poster.

...
/opt/include/python3.8dm -c pandas/_libs/parsers.c -o 
build/temp.aix-6.1-3.8-pydebug/pandas/_libs/parsers.o
xlc_r -O -I/opt/include -O2 -qmaxmem=-1 -qarch=pwr5 -I/opt/include -O2 
-qmaxmem=-1 -qarch=pwr5 -Ipandas/_libs/src/klib -Ipandas/_libs/src 
-I/opt/lib/python3.8/site-packages/numpy/core/include 
-I/opt/include/python3.8dm -c pandas/_libs/src/parser/tokenizer.c -o 
build/temp.aix-6.1-3.8-pydebug/pandas/_libs/src/parser/tokenizer.o
"/opt/include/python3.8dm/pyconfig.h", line 1538.9: 1506-236 (W) Macro name 
_POSIX_C_SOURCE has been redefined.
"/opt/include/python3.8dm/pyconfig.h", line 1538.9: 1506-358 (I) 
"_POSIX_C_SOURCE" is defined on line 160 of /usr/include/standards.h.
"/opt/include/python3.8dm/pyconfig.h", line 1553.9: 1506-236 (W) Macro name 
_XOPEN_SOURCE has been redefined.
"/opt/include/python3.8dm/pyconfig.h", line 1553.9: 1506-358 (I) 
"_XOPEN_SOURCE" is defined on line 156 of /usr/include/standards.h.
"/usr/include/unistd.h", line 171.17: 1506-343 (S) Redeclaration of lseek64 
differs from previous declaration on line 169 of "/usr/include/unistd.h".
"/usr/include/unistd.h", line 171.17: 1506-050 (I) Return type "long long" in 
redeclaration is not compatible with the previous return type "long".
"/usr/include/unistd.h", line 171.17: 1506-377 (I) The type "long long" of 
parameter 2 differs from the previous type "long".
"/usr/include/sys/lockf.h", line 64.20: 1506-343 (S) Redeclaration of lockf64 
differs from previous declaration on line 62 of "/usr/include/sys/lockf.h".
"/usr/include/sys/lockf.h", line 64.20: 1506-377 (I) The type "long long" of 
parameter 3 differs from the previous type "long".
"/usr/include/unistd.h", line 809.33: 1506-343 (S) Redeclaration of ftruncate64 
differs from previous declaration on line 807 of "/usr/include/unistd.h".
"/usr/include/unistd.h", line 809.33: 1506-377 (I) The type "long long" of 
parameter 2 differs from the previous type "long".
"/usr/include/unistd.h", line 845.33: 1506-343 (S) Redeclaration of truncate64 
differs from previous declaration on line 843 of "/usr/include/unistd.h".
"/usr/include/unistd.h", line 845.33: 1506-377 (I) The type "long long" of 
parameter 2 differs from the previous type "long".
"/usr/include/unistd.h", line 862.33: 1506-343 (S) Redeclaration of pread64 
differs from previous declaration on line 859 of "/usr/include/unistd.h".
"/usr/include/unistd.h", line 862.33: 1506-377 (I) The type "long long" of 
parameter 4 differs from the previous type "long".
"/usr/include/unistd.h", line 863.33: 1506-343 (S) Redeclaration of pwrite64 
differs from previous declaration on line 860 of "/usr/include/unistd.h".
"/usr/include/unistd.h", line 863.33: 1506-377 (I) The type "long long" of 
parameter 4 differs from the previous type "long".
"/usr/include/unistd.h", line 942.25: 1506-343 (S) Redeclaration of fclear64 
differs from previous declaration on line 939 of "/usr/include/unistd.h".
"/usr/include/unistd.h", line 942.25: 1506-050 (I) Return type "long long" in 
redeclaration is not compatible with the previous return type "long".
"/usr/include/unistd.h", line 942.25: 1506-377 (I) The type "long long" of 
parameter 2 differs from the previous type "long".
"/usr/include/unistd.h", line 943.25: 1506-343 (S) Redeclaration of 
fsync_range64 differs from previous declaration on line 940 of 
"/usr/include/unistd.h".
"/usr/include/unistd.h", line 943.25: 1506-377 (I) The type "long long" of 
parameter 3 differs from the previous type "long".
"pandas/_libs/src/parser/tokenizer.c", line 265.40: 1506-280 (W) Function 
argument assignment between types "long long*" and "unsigned long*" is not 
allowed.
"pandas/_libs/src/parser/tokenizer.c", line 292.30: 1506-280 (W) Function 
argument assignment between types "long long*" and "unsigned long*" is not 
allowed.
"pandas/_libs/src/parser/tokenizer.c", line 323.28: 1506-280 (W) Function 
argument assignment between types "long long*" and "unsigned long*" is not 
allowed.
error: command 'xlc_r' failed with exit status 1
root@x066:[/data/prj/python/pandas-0.23.4]set | grep OBJ
root@x066:[/data/prj/python/pandas-0.23.4]python3
Python 3.8.0a0 (heads/master-dirty:b9498e2367, Nov 10 2018, 13:51:41) [C] on 
a

[issue35198] Build issue while compiling cpp files in AIX

2018-11-10 Thread Michael Felt


Change by Michael Felt :


--
versions: +Python 3.8

___
Python tracker 
<https://bugs.python.org/issue35198>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue35198] Build issue while compiling cpp files in AIX

2018-11-10 Thread Michael Felt


Michael Felt  added the comment:

There are, perhaps, other issues as well.

After a build of "master"

a) pip3 install pandas
 - failed to find/download and build numpy
 - after "manual" pip3 install numpy and got to " six, python-dateutil, pytz, 
pandas"

Then:
 Running setup.py install for pandas ... error
Complete output from command /opt/bin/python3.8 -u -c "import setuptools, 
tokenize;__file__='/tmp/pip-install-f5rvzoc0/pandas/setup.py';f=getattr(tokenize,
 'open', open)(__file__);code=f.read().replace('\r\n', 
'\n');f.close();exec(compile(code, __file__, 'exec'))" install --record 
/tmp/pip-record-kmi2p9sd/install-record.txt --single-version-externally-managed 
--compile:
...
UPDATING build/lib.aix-6.1-3.8-pydebug/pandas/_version.py
set build/lib.aix-6.1-3.8-pydebug/pandas/_version.py to '0.23.4'
running build_ext
building 'pandas._libs.algos' extension
creating build/temp.aix-6.1-3.8-pydebug
creating build/temp.aix-6.1-3.8-pydebug/pandas
creating build/temp.aix-6.1-3.8-pydebug/pandas/_libs
xlc_r -O -I/opt/include -O2 -qmaxmem=-1 -qarch=pwr5 -I/opt/include -O2 
-qmaxmem=-1 -qarch=pwr5 -Ipandas/_libs/src/klib -Ipandas/_libs/src 
-I/opt/lib/python3.8/site-packages/numpy/core/include 
-I/opt/include/python3.8dm -c pandas/_libs/algos.c -o 
build/temp.aix-6.1-3.8-pydebug/pandas/_libs/algos.o -Wno-unused-function
xlc_r: 1501-210 (S) command option Wno-unused-function contains an 
incorrect subargument
error: command 'xlc_r' failed with exit status 40


Command "/opt/bin/python3.8 -u -c "import setuptools, 
tokenize;__file__='/tmp/pip-install-f5rvzoc0/pandas/setup.py';f=getattr(tokenize,
 'open', open)(__file__);code=f.read().replace('\r\n', 
'\n');f.close();exec(compile(code, __file__, 'exec'))" install --record 
/tmp/pip-record-kmi2p9sd/install-record.txt --single-version-externally-managed 
--compile" failed with error code 1 in /tmp/pip-install-f5rvzoc0/pandas/

So, it looks like, using xlc - I may not have even gotten as far window.gcc due 
to issues in pandas (the incorrect flag -Wno-used-function - have to find where 
that came from!)

--
Added file: https://bugs.python.org/file47919/pip3_build_pandas_0001.text

___
Python tracker 
<https://bugs.python.org/issue35198>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue34897] distutils test errors when CXX is not set

2018-11-05 Thread Michael Felt


Michael Felt  added the comment:

Thx.

So, while "" is not None (i.e., "" is not False), it does test as a Boolean 
expression as 'False' so the test for None or "" is the same as testing for "" 
(but not the same as testing for None).

I accept your logic - and shall make the change in the test in 
Lib/test/support/__init__.py rather than in the assignment in  
Lib/distutils/ccompiler.py

--

___
Python tracker 
<https://bugs.python.org/issue34897>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue34765] Update install-sh

2018-10-30 Thread Michael Felt


Michael Felt  added the comment:

The AIX build-bots thank you. Back to "failed-test" status.

1721...failed test (failure)

1720...failed compile (failure)

--

___
Python tracker 
<https://bugs.python.org/issue34765>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue34765] Update install-sh

2018-10-29 Thread Michael Felt


Michael Felt  added the comment:

FYI: On my manual build server I have coreutils "install" installed, and it 
seems install-sh is not called in that case (which is why I never saw with 
manual builds)

FYI: There is also an issue (I hope side-effect) that pyexpat is not building 
while install-sh is not executing.

I see the new PR - thx for the quick response!

--

___
Python tracker 
<https://bugs.python.org/issue34765>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue34765] Update install-sh

2018-10-29 Thread Michael Felt


Michael Felt  added the comment:

This is closed, however, since this was merged the AIX buildbots have failed. 
This is because the file mode bits lack the -x

root@x066:[/data/prj/python/git/cpython-master]find . -name install-sh -ls
148833829   16 -rw-r--r--  1 root  felt 15368 Oct 29 17:34 
./install-sh

Can this be fixed as part of this issue, or do I need to open a new one?

Currently both AIX build-bots fail in the build phase with:

renaming build/scripts-3.8/pydoc3 to build/scripts-3.8/pydoc3.8
renaming build/scripts-3.8/idle3 to build/scripts-3.8/idle3.8
renaming build/scripts-3.8/2to3 to build/scripts-3.8/2to3-3.8
./install-sh -c -m 644 ./Tools/gdb/libpython.py python-gdb.py
./install-sh: not found

--
nosy: +Michael.Felt

___
Python tracker 
<https://bugs.python.org/issue34765>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue34897] distutils test errors when CXX is not set

2018-10-29 Thread Michael Felt

Michael Felt  added the comment:

> On 10/26/2018 5:36 PM, Tal Einat wrote:
> Tal Einat  added the comment:
> 
> I'm not sure that the resolution currently suggested, changing 
> compiler.set_executables(), is the right way to go.
> 
> This change to distutils is a break of backwards compatibility. Though it is 
> a minor change, it could still break existing code.
> 
> Fixing test.support seems just as good to me in terms of code design, and 
> better in that it is only used internally for our tests.
> 
> (BTW, instead of `elif cmd is None or (not cmd):`, you can just use `elif not 
> cmd:`.)
Thx. One of the python bits I need to embrace.

Although - during my testing I saw that the null string "" was not being
accepted as None, but was accepted as "not cmd".

My reading error was taking None to mean a value was not initialized
while it seems to be None is a 'value' that is assigned, while ´not xxx'
can be either - never assigned or a null-length string.

This is the "ambiguity", at least for myself, that I feel I tracked down.

It is "unfortunate" if this breaks backward compatibility - IF the
backward compatibility has been based on an ambiguity. Or I again, miss
a fine-point of Python coding. Won´'t be the last time I expect.

Comments requested.

> 
> --
> nosy: +taleinat
> 
> ___
> Python tracker 
> <https://bugs.python.org/issue34897>
> ___

--

___
Python tracker 
<https://bugs.python.org/issue34897>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue28009] core logic of uuid.getnode() is broken for AIX - all versions

2018-10-28 Thread Michael Felt

Michael Felt  added the comment:

re; the current status of PR8672 - which I shall probably close as it no longer 
merges.

@taleinat re: the need for lambda

As _find_mac_netstat() is only called once the need for the last two arguments 
may be unnecessary. My reason for including them was to keep _find_mac_netstat 
comparable to _find_mac.

1) I am reluctant to make changes to historical code, however, in this case it 
was needed as _find_mac has, imho, a requirement for input that differs from 
AIX netstat.

* On linux (debian, centos) I do not find a MAC address for netstat
* On linux, where, e.g., ifconfig does return a value - the lambda i: i±1 is 
vital as the value follows the keyword on the same line.
For AIX lambda I: i is needed because only the first line (header) has 
keywords, the remaining lines give the values.

Linux: ifconfig (keyword "ether")

root@x074:~# ifconfig
eth0: flags=4163  mtu 1500
inet 192.168.129.74  netmask 255.255.255.0  broadcast 192.168.129.255
inet6 fe80::f8d1:81ff:fe12:b104  prefixlen 64  scopeid 0x20
inet6 2001:981:56fd:1:f8d1:81ff:fe12:b104  prefixlen 64  scopeid 
0x0
ether fa:d1:81:12:b1:04  txqueuelen 1000  (Ethernet)
RX packets 1605776  bytes 177990366 (169.7 MiB)
RX errors 0  dropped 1027921  overruns 0  frame 0
TX packets 25045  bytes 1567902 (1.4 MiB)
TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
device interrupt 20


So, when the keyword is found, as each word on the line is examined "i+1" gives 
the value

For AIX (in anycase), the keyword is Address - the output is:
michael@x071:[/data/prj/python/git/python3-3.8]netstat -ia
Name  Mtu   Network Address   Ipkts IerrsOpkts Oerrs  Coll
en0   1500  link#2  fa.d1.8c.f7.62.4 2348009992 0 946551098 0 0
01:00:5e:00:00:01
en0   1500  192.168.129 x071 2348009992 0 946551098 0 0
224.0.0.1
en0   1500  192.168.90  x071 2348009992 0 946551098 0 0
224.0.0.1
en1   1500  link#3  fa.d1.8c.f7.62.5 64346336 0 89935059 0 0
01:00:5e:00:00:01
en1   1500  192.168.2   mail.aixtools.xx 64346336 0 89935059 0 0
224.0.0.1

Note - the value with colons - as many (all?) other systems - this seems to be 
a constant, and a value on a line all by itself - so the old code could never 
ever find it, even if it could have parsed it. The actual MAC address is on a 
line with several entries - matching the values given by the "header" line - so 
lambda i: i is needed to examine the later lines to find a suitably formatted 
value.

So, should I write _find_mac_netstat for AIX only (and maybe set "skipIf" 
Linux). There are many assumptions in this code. I do not feel qualified to 
change things I cannot test - so, as much as possible I follow the tried and 
true.

I hope this clarifies my intent well enough that you can make a decision.

--

___
Python tracker 
<https://bugs.python.org/issue28009>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue34988] Rc2 candidates: "gcc" not found on AIX

2018-10-18 Thread Michael Felt


Michael Felt  added the comment:

On 16/10/2018 21:35, Ned Deily wrote:
> Ned Deily  added the comment:
>
> I'm glad it works.  Any object to closing this issue then?
I have no objection. Should I do that?
>
> --
> resolution:  -> not a bug
> stage:  -> resolved
> status: open -> pending
>
> ___
> Python tracker 
> <https://bugs.python.org/issue34988>
> ___
>

--
status: pending -> open

___
Python tracker 
<https://bugs.python.org/issue34988>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue34988] Rc2 candidates: "gcc" not found on AIX

2018-10-16 Thread Michael Felt


Michael Felt  added the comment:

using CC=gcc ./configure works fine

And, this does not appear to be a regression:

HEAD is now at 1bf9cc5 3.7.0 final
$ cd ../python3-3.7.0
$ ./configure
checking for git... found
checking build system type... powerpc-ibm-aix7.2.0.0
checking host system type... powerpc-ibm-aix7.2.0.0
checking for python3.7... no
checking for python3... python3
checking for --enable-universalsdk... no
checking for --with-universal-archs... no
checking MACHDEP... checking for --without-gcc...
checking for --with-icc... no
checking for gcc... xlc_r
checking whether the C compiler works... no
configure: error: in `/home/aixtools/python/git/python3-3.7.0':
configure: error: C compiler cannot create executables
See `config.log' for more details

--

___
Python tracker 
<https://bugs.python.org/issue34988>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue34988] Rc2 candidates: "gcc" not found on AIX

2018-10-16 Thread Michael Felt


Michael Felt  added the comment:

I'll compare with the 3.7.0. As I did not have access to gcc then, would have 
never seen it.

Yesterday I used --with-gcc, today I'll use CC=gcc and update after I know more.

--

___
Python tracker 
<https://bugs.python.org/issue34988>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



<    1   2   3   4   5   6   7   8   >