[ https://issues.apache.org/jira/browse/CASSANDRA-4090?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13245412#comment-13245412 ]
paul cannon commented on CASSANDRA-4090: ---------------------------------------- +1 from me. > cqlsh can't handle python being a python3 > ----------------------------------------- > > Key: CASSANDRA-4090 > URL: https://issues.apache.org/jira/browse/CASSANDRA-4090 > Project: Cassandra > Issue Type: Bug > Affects Versions: 1.0.8 > Environment: On Archlinux, where Python3 installations are default > (most distros currently use Python2 as default now) > {code} > $ ls -l `which python` > lrwxrwxrwx 1 root root 7 Nov 21 09:05 /usr/bin/python -> python3 > {code} > Reporter: Andrew Ash > Assignee: Andrew Ash > Attachments: 4090.patch.txt, python3-fix.patch > > > cqlsh fails to run when {{python}} is a Python 3, with this error message: > {code} > andrew@spite:~/src/cassandra-trunk/bin $ ./cqlsh > File "./cqlsh", line 97 > except ImportError, e: > ^ > SyntaxError: invalid syntax > andrew@spite:~/src/cassandra-trunk/bin $ > {code} > The error occurs because the cqlsh script checks for a default installation > of python that is older than a certain version, but not one newer that is > incompatible (e.g. Python3). To fix this, I update the logic to only run > {{python}} if it's a version at least 2.5 but before 3.0 If this version of > python is in that range then role with it, otherwise try python2.6, > python2.7, then python2.5 (no change from before). > This is working on my installation, where {{python}} executes python 3.2.2 > and doesn't break backwards compatibility to distributions that haven't made > the jump to Python3 as default yet. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira