Zim

Python 0.66 won't start

Bug #1687070 reported by reagle
24
This bug affects 5 people
Affects Status Importance Assigned to Milestone
Zim
Fix Committed
Undecided
Unassigned

Bug Description

zim on MacOS Capitan

hom:~/tmp/zim-0.66$ python2.7 zim.py -D
2017-04-28 13:06:26.701 Python[86302:7266928] *** WARNING: Method userSpaceScaleFactor in class NSView is deprecated on 10.7 and later. It should not be used in new applications. Use convertRectToBacking: instead.
INFO: This is zim 0.66
DEBUG: Python version is sys.version_info(major=2, minor=7, micro=13, releaselevel='final', serial=0)
DEBUG: Platform is posix
DEBUG: Zim revision is:
  branch: zim-trunk
  revision: 871 <email address hidden>
  date: 2017-04-28 12:31:55 +0200
DEBUG: Running from a source dir: /Users/reagle/Downloads/zim-0.66
DEBUG: Set XDG_DATA_HOME to /Users/reagle/.local/share
DEBUG: Set XDG_DATA_DIRS to [<Dir: /usr/share>, <Dir: /usr/local/share>]
DEBUG: Set XDG_CONFIG_HOME to /Users/reagle/.config
DEBUG: Set XDG_CONFIG_DIRS to [<Dir: /etc/xdg>]
DEBUG: Set XDG_CACHE_HOME to /Users/reagle/.cache
ERROR: Got error in dispatch
Traceback (most recent call last):
  File "/Users/reagle/Downloads/zim-0.66/zim/main/__init__.py", line 678, in _try_dispatch
    _ipc_dispatch(*args)
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 107, in dispatch
    return dispatch(*args) # recurs
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 98, in dispatch
    conn = Client(SERVER_ADDRESS % COUNTER, SERVER_ADDRESS_FAMILY)
  File "/usr/local/Cellar/python/2.7.13/Frameworks/Python.framework/Versions/2.7/lib/python2.7/multiprocessing/connection.py", line 169, in Client
    c = SocketClient(address)
  File "/usr/local/Cellar/python/2.7.13/Frameworks/Python.framework/Versions/2.7/lib/python2.7/multiprocessing/connection.py", line 308, in SocketClient
    s.connect(address)
  File "/usr/local/Cellar/python/2.7.13/Frameworks/Python.framework/Versions/2.7/lib/python2.7/socket.py", line 228, in meth
    return getattr(self._sock,name)(*args)
error: AF_UNIX path too long
DEBUG: Registered object line
DEBUG: Starting primary process
Exception in thread Thread-1:
Traceback (most recent call last):
  File "/usr/local/Cellar/python/2.7.13/Frameworks/Python.framework/Versions/2.7/lib/python2.7/threading.py", line 801, in __bootstrap_inner
    self.run()
  File "/usr/local/Cellar/python/2.7.13/Frameworks/Python.framework/Versions/2.7/lib/python2.7/threading.py", line 754, in run
    self.__target(*self.__args, **self.__kwargs)
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 133, in _listener_thread_main
    l = Listener(SERVER_ADDRESS % COUNTER, SERVER_ADDRESS_FAMILY)
  File "/usr/local/Cellar/python/2.7.13/Frameworks/Python.framework/Versions/2.7/lib/python2.7/multiprocessing/connection.py", line 132, in __init__
    self._listener = SocketListener(address, family, backlog)
  File "/usr/local/Cellar/python/2.7.13/Frameworks/Python.framework/Versions/2.7/lib/python2.7/multiprocessing/connection.py", line 256, in __init__
    self._socket.bind(address)
  File "/usr/local/Cellar/python/2.7.13/Frameworks/Python.framework/Versions/2.7/lib/python2.7/socket.py", line 228, in meth
    return getattr(self._sock,name)(*args)
error: AF_UNIX path too long

ERROR: Exception in main()
Traceback (most recent call last):
  File "/Users/reagle/Downloads/zim-0.66/zim/main/__init__.py", line 745, in main
    ZIM_APPLICATION.run(*argv[1:])
  File "/Users/reagle/Downloads/zim-0.66/zim/main/__init__.py", line 554, in run
    self._run_cmd(cmd, args) # test seam
  File "/Users/reagle/Downloads/zim-0.66/zim/main/__init__.py", line 576, in _run_cmd
    self._run_main_loop(cmd)
  File "/Users/reagle/Downloads/zim-0.66/zim/main/__init__.py", line 597, in _run_main_loop
    _ipc_start_listening(self.run)
  File "/Users/reagle/Downloads/zim-0.66/zim/main/ipc.py", line 127, in start_listening
    raise AssertionError, 'Listener did not start'
AssertionError: Listener did not start
DEBUG: Running ErrorDialog

Revision history for this message
Jaap Karssenberg (jaap.karssenberg) wrote :

Aparent the path to the socket is too long - I wasn't aware of a limit that would occur in practical circumstance, will need to find out what the restrictions are.

Could you edit zim/main/ipc.py and put in "print SERVER_ADDRESS % COUNTER" before line 98 ?

Work around is to run zim with "--standalone"

THanks,

Jaap

Revision history for this message
reagle (joseph.reagle) wrote : Re: [Bug 1687070] Re: Python 0.66 won't start

On 4/29/17 5:32 AM, Jaap Karssenberg wrote:
> print SERVER_ADDRESS % COUNTER

--standalone works

Add the print:

hom:~/tmp/zim-0.66$ python2.7 zim.py
2017-04-29 09:12:10.458 Python[94716:1555150] *** WARNING: Method userSpaceScaleFactor in class NSView is deprecated on 10.7 and later. It should not be used in new applications. Use convertRectToBacking: instead.
INFO: This is zim 0.66
/var/folders/g9/nm8_blpd5hx0vlhmc3x45h340000gn/T/zim-reagle/primary-0.66-4e378e9d496e0457d7abe3bbf846a6d1-0
/var/folders/g9/nm8_blpd5hx0vlhmc3x45h340000gn/T/zim-reagle/primary-0.66-4e378e9d496e0457d7abe3bbf846a6d1-1
/var/folders/g9/nm8_blpd5hx0vlhmc3x45h340000gn/T/zim-reagle/primary-0.66-4e378e9d496e0457d7abe3bbf846a6d1-2

for 0 through 99

Revision history for this message
Jaap Karssenberg (jaap.karssenberg) wrote :

Thanks, looks indeed that the total path is too long.

The socket name of zim itself is a bit long due to the hex key I put in there, but also the path to the tmp folder "/var/folders/g9/nm8_blpd5hx0vlhmc3x45h340000gn/T/" is quite long.

I would expect something like "/tmp/" there. Do you know why it is such a weird folder name?

If the theory holds, setting TMP environment to "/tmp" should work.

Alternative modifying "ipc.py" and change on line 60

 SERVER_ADDRESS = str(zim.fs.get_tmpdir().file('primary-%s' % version).path)

into

 SERVER_ADDRESS = str(zim.fs.get_tmpdir().file('primary').path)

should also work.

Regards,

Jaap

Revision history for this message
reagle (joseph.reagle) wrote :

I've read that /var/folder is a temporary folder that survives reboot on MacOS.

I don't have a $TMP but I see

hom:~$ echo $TMPDIR
/var/folders/g9/nm8_blpd5hx0vlhmc3x45h340000gn/T/

Other Mac users would likely have this problem, so I suggest a change in zim itself rather than me setting an environmental variable.

Revision history for this message
Jaap Karssenberg (jaap.karssenberg) wrote :

Of course, but would like to confirm that reducing the path length indeed
fixes the issue.

Regards,

Jaap

On Mon, May 1, 2017 at 1:56 PM reagle <email address hidden> wrote:

> I've read that /var/folder is a temporary folder that survives reboot on
> MacOS.
>
> I don't have a $TMP but I see
>
> hom:~$ echo $TMPDIR
> /var/folders/g9/nm8_blpd5hx0vlhmc3x45h340000gn/T/
>
> Other Mac users would likely have this problem, so I suggest a change in
> zim itself rather than me setting an environmental variable.
>
> --
> You received this bug notification because you are subscribed to Zim.
> https://bugs.launchpad.net/bugs/1687070
>
> Title:
> Python 0.66 won't start
>
> To manage notifications about this bug go to:
> https://bugs.launchpad.net/zim/+bug/1687070/+subscriptions
>

Revision history for this message
reagle (joseph.reagle) wrote :

On 5/1/17 10:14 AM, Jaap Karssenberg wrote:
> Of course, but would like to confirm that reducing the path length indeed
> fixes the issue.

Sorry, yes, it worked. If you want some uniqueness, maybe you could truncate the hex key to 6 chars...?

Revision history for this message
Jaap Karssenberg (jaap.karssenberg) wrote :

Went with 8, but same idea :)

Fix is in ab219153f92a92a9a4949ecccf0939f0cc2e6433

Changed in zim:
status: New → Fix Committed
Revision history for this message
damien s (damien207) wrote :

I am suggesting to try "Long Path Tool" program.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.