Re: [Neo4j] Start script of 1.4.M05/1.4.M06 fails with older versions of bash + FIX

2011-07-06 Thread Jim Webber
Thanks for that Stephan,

I've dropped it into our QA backlog for the 1.4 GA release.

Jim

On 6 Jul 2011, at 12:06, Stephan Hagemann wrote:

> Hi everyone,
> 
> a rather old linux installation on our build server led us to find out that
> the new start script introduced in M05 (?) does not work with all versions
> of bash.
> 
> We got:
> cruise:/virtual/hudson/hudson_home/jobs/graphdb/workspace#
> /opt/neo4j/bin/neo4j start
> /opt/neo4j/bin/neo4j: line 37: syntax error in conditional expression:
> unexpected token `('
> /opt/neo4j/bin/neo4j: line 37: syntax error near `^(['
> /opt/neo4j/bin/neo4j: line 37: `  if [[ ${line} =~ ^([^#\s][^=]+)=(.+)$
> ]]; then'
> 
> On a system with this info:
> ext-xecruise52-1:/opt/neo4j/bin# cat /proc/version
> Linux version 2.6.28.7-ibm-x3650 (root@obc-fai42-1) (gcc version 4.1.2
> 20061115 (prerelease) (Debian 4.1.1-21)) #1 SMP Thu Feb 26 13:50:31 CET 2009
> 
> Here is the quick fix I just found (no patch, since I don't want to suggest
> I know it works on other system versions...).
> Enclose the regexps on line 37ff in quotes as so:
> 
>  if [[ ${line} =~ "^([^#\s][^=]+)=(.+)$" ]]; then
>key=`echo ${BASH_REMATCH[1]} | sed 's/\./_/g'`
>value="${BASH_REMATCH[2]}"
>if [[ ${key} =~ "^(.*)_([0-9]+)$" ]]; then
> 
> 
> Cheers,
> Stephan
> ___
> Neo4j mailing list
> User@lists.neo4j.org
> https://lists.neo4j.org/mailman/listinfo/user

___
Neo4j mailing list
User@lists.neo4j.org
https://lists.neo4j.org/mailman/listinfo/user


[Neo4j] Start script of 1.4.M05/1.4.M06 fails with older versions of bash + FIX

2011-07-06 Thread Stephan Hagemann
Hi everyone,

a rather old linux installation on our build server led us to find out that
the new start script introduced in M05 (?) does not work with all versions
of bash.

We got:
cruise:/virtual/hudson/hudson_home/jobs/graphdb/workspace#
/opt/neo4j/bin/neo4j start
/opt/neo4j/bin/neo4j: line 37: syntax error in conditional expression:
unexpected token `('
/opt/neo4j/bin/neo4j: line 37: syntax error near `^(['
/opt/neo4j/bin/neo4j: line 37: `  if [[ ${line} =~ ^([^#\s][^=]+)=(.+)$
]]; then'

On a system with this info:
ext-xecruise52-1:/opt/neo4j/bin# cat /proc/version
Linux version 2.6.28.7-ibm-x3650 (root@obc-fai42-1) (gcc version 4.1.2
20061115 (prerelease) (Debian 4.1.1-21)) #1 SMP Thu Feb 26 13:50:31 CET 2009

Here is the quick fix I just found (no patch, since I don't want to suggest
I know it works on other system versions...).
Enclose the regexps on line 37ff in quotes as so:

  if [[ ${line} =~ "^([^#\s][^=]+)=(.+)$" ]]; then
key=`echo ${BASH_REMATCH[1]} | sed 's/\./_/g'`
value="${BASH_REMATCH[2]}"
if [[ ${key} =~ "^(.*)_([0-9]+)$" ]]; then


Cheers,
Stephan
___
Neo4j mailing list
User@lists.neo4j.org
https://lists.neo4j.org/mailman/listinfo/user