DATAGRAPH-220 upgrade to neo4j 1.7, also with upgrades of java-rest-binding, neo4j-spatial
This commit is contained in:
@@ -141,7 +141,7 @@
|
||||
</property>
|
||||
<property name="userTransaction">
|
||||
<bean class="org.neo4j.kernel.impl.transaction.UserTransactionImpl">
|
||||
<constructor-arg ref="graphDatabaseService" />
|
||||
<constructor-arg value="#{graphDatabaseService.txManager}" />
|
||||
</bean>
|
||||
</property>
|
||||
</bean>
|
||||
@@ -149,7 +149,6 @@
|
||||
</constructor-arg>
|
||||
</bean>
|
||||
|
||||
|
||||
<bean class="org.springframework.jdbc.datasource.DriverManagerDataSource" id="dataSource">
|
||||
<property name="driverClassName" value="${database.driverClassName}"/>
|
||||
<property name="url" value="${database.url}"/>
|
||||
|
||||
@@ -128,7 +128,7 @@
|
||||
<org.springframework.version>[${org.springframework.version.30}, ${org.springframework.version.40})</org.springframework.version>
|
||||
<data.commons.version>1.2.1.RELEASE</data.commons.version>
|
||||
<neo4j.version>1.7-SNAPSHOT</neo4j.version>
|
||||
<neo4j.spatial.version>0.7</neo4j.spatial.version>
|
||||
<neo4j.spatial.version>0.8-SNAPSHOT</neo4j.spatial.version>
|
||||
<aspectj.version>1.6.12</aspectj.version>
|
||||
<blueprints.version>1.2</blueprints.version>
|
||||
<gremlin.version>1.5</gremlin.version>
|
||||
|
||||
@@ -38,7 +38,7 @@
|
||||
<dependency>
|
||||
<groupId>org.neo4j</groupId>
|
||||
<artifactId>neo4j-rest-graphdb</artifactId>
|
||||
<version>1.6</version>
|
||||
<version>1.7-SNAPSHOT</version>
|
||||
<exclusions>
|
||||
<exclusion>
|
||||
<groupId>org.neo4j</groupId>
|
||||
@@ -57,6 +57,12 @@
|
||||
<optional>true</optional>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.neo4j</groupId>
|
||||
<artifactId>neo4j-shell</artifactId>
|
||||
<version>${neo4j.version}</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.neo4j.server.plugin</groupId>
|
||||
<artifactId>neo4j-gremlin-plugin</artifactId>
|
||||
@@ -111,10 +117,6 @@
|
||||
<groupId>org.apache.felix</groupId>
|
||||
<artifactId>org.apache.felix.fileinstall</artifactId>
|
||||
</exclusion>
|
||||
<exclusion>
|
||||
<groupId>org.neo4j</groupId>
|
||||
<artifactId>neo4j-shell</artifactId>
|
||||
</exclusion>
|
||||
<exclusion>
|
||||
<groupId>org.slf4j</groupId>
|
||||
<artifactId>slf4j-jdk14</artifactId>
|
||||
|
||||
@@ -19,7 +19,7 @@ package org.springframework.data.neo4j.config;
|
||||
import org.neo4j.graphdb.GraphDatabaseService;
|
||||
import org.neo4j.graphdb.Node;
|
||||
import org.neo4j.graphdb.Relationship;
|
||||
import org.neo4j.kernel.AbstractGraphDatabase;
|
||||
import org.neo4j.kernel.GraphDatabaseAPI;
|
||||
import org.neo4j.kernel.impl.transaction.SpringTransactionManager;
|
||||
import org.neo4j.kernel.impl.transaction.UserTransactionImpl;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
@@ -244,8 +244,8 @@ public abstract class Neo4jConfiguration {
|
||||
protected JtaTransactionManager createJtaTransactionManager() {
|
||||
JtaTransactionManager jtaTm = new JtaTransactionManager();
|
||||
final GraphDatabaseService gds = getGraphDatabaseService();
|
||||
if (gds instanceof AbstractGraphDatabase) {
|
||||
final TransactionManager txManager = ((AbstractGraphDatabase) gds).getTxManager();
|
||||
if (gds instanceof GraphDatabaseAPI) {
|
||||
final TransactionManager txManager = ((GraphDatabaseAPI) gds).getTxManager();
|
||||
jtaTm.setTransactionManager(new SpringTransactionManager(gds));
|
||||
jtaTm.setUserTransaction(new UserTransactionImpl(txManager));
|
||||
} else {
|
||||
|
||||
@@ -40,8 +40,8 @@ public abstract class QueryTemplates {
|
||||
static final String SKIP_LIMIT = " skip %d limit %d";
|
||||
static final String START_CLAUSE = "`%s`=node:`%s`(`%s`=" + PLACEHOLDER + ")";
|
||||
static final String START_CLAUSE_FULLTEXT = "`%s`=node:`%s`(" + PLACEHOLDER + ")";
|
||||
static final String WHERE_CLAUSE_1 = "`%1$s`.`%2$s` AND `%1$s`.`%2$s` %3$s {%4$d}";
|
||||
static final String WHERE_CLAUSE_0 = "`%1$s`.`%2$s` AND `%1$s`.`%2$s` %3$s ";
|
||||
static final String WHERE_CLAUSE_1 = "`%1$s`.`%2$s`! %3$s {%4$d}";
|
||||
static final String WHERE_CLAUSE_0 = "`%1$s`.`%2$s`! %3$s ";
|
||||
static final String SORT_CLAUSE = "%s %s";
|
||||
static final String ORDER_BY_CLAUSE = " order by %s";
|
||||
|
||||
|
||||
@@ -26,6 +26,7 @@ import org.neo4j.graphdb.index.IndexManager;
|
||||
import org.neo4j.graphdb.index.UniqueFactory;
|
||||
import org.neo4j.graphdb.traversal.TraversalDescription;
|
||||
import org.neo4j.kernel.AbstractGraphDatabase;
|
||||
import org.neo4j.kernel.GraphDatabaseAPI;
|
||||
import org.neo4j.kernel.Traversal;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
@@ -202,11 +203,11 @@ public class DelegatingGraphDatabase implements GraphDatabase {
|
||||
|
||||
@Override
|
||||
public boolean transactionIsRunning() {
|
||||
if (!(delegate instanceof AbstractGraphDatabase)) {
|
||||
if (!(delegate instanceof GraphDatabaseAPI)) {
|
||||
return true; // assume always running tx (e.g. for REST or other remotes)
|
||||
}
|
||||
try {
|
||||
final TransactionManager txManager = ((AbstractGraphDatabase) delegate).getTxManager();
|
||||
final TransactionManager txManager = ((GraphDatabaseAPI) delegate).getTxManager();
|
||||
return txManager.getStatus() != Status.STATUS_NO_TRANSACTION;
|
||||
} catch (SystemException e) {
|
||||
log.error("Error accessing TransactionManager", e);
|
||||
|
||||
@@ -23,6 +23,7 @@ import org.neo4j.graphdb.GraphDatabaseService;
|
||||
import org.neo4j.kernel.AbstractGraphDatabase;
|
||||
import org.neo4j.kernel.EmbeddedGraphDatabase;
|
||||
import org.neo4j.kernel.HighlyAvailableGraphDatabase;
|
||||
import org.neo4j.kernel.configuration.Config;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.context.support.ClassPathXmlApplicationContext;
|
||||
import org.springframework.core.convert.ConversionService;
|
||||
@@ -76,7 +77,7 @@ public class DataGraphNamespaceHandlerTest {
|
||||
final Config config = assertInjected("-external-embedded");
|
||||
final AbstractGraphDatabase gds = (AbstractGraphDatabase) config.graphDatabaseService;
|
||||
assertEquals(EmbeddedGraphDatabase.class, gds.getClass());
|
||||
final org.neo4j.kernel.Config neoConfig = gds.getConfig();
|
||||
final org.neo4j.kernel.configuration.Config neoConfig = gds.getConfig();
|
||||
assertEquals("true", neoConfig.getParams().get("allow_store_upgrade"));
|
||||
}
|
||||
@Test
|
||||
@@ -84,7 +85,7 @@ public class DataGraphNamespaceHandlerTest {
|
||||
public void injectionForExistingHighlyAvailableGraphDatabaseService() {
|
||||
final Config config = assertInjected("-external-ha");
|
||||
final AbstractGraphDatabase gds = (AbstractGraphDatabase) config.graphDatabaseService;
|
||||
final org.neo4j.kernel.Config neoConfig = gds.getConfig();
|
||||
final org.neo4j.kernel.configuration.Config neoConfig = gds.getConfig();
|
||||
assertEquals(HighlyAvailableGraphDatabase.class, gds.getClass());
|
||||
assertEquals("1", neoConfig.getParams().get("ha.server_id"));
|
||||
}
|
||||
|
||||
@@ -18,6 +18,7 @@ package org.springframework.data.neo4j.config;
|
||||
|
||||
import org.neo4j.graphdb.GraphDatabaseService;
|
||||
import org.neo4j.kernel.AbstractGraphDatabase;
|
||||
import org.neo4j.kernel.GraphDatabaseAPI;
|
||||
import org.neo4j.kernel.impl.transaction.SpringTransactionManager;
|
||||
import org.neo4j.kernel.impl.transaction.UserTransactionImpl;
|
||||
import org.springframework.beans.factory.FactoryBean;
|
||||
@@ -51,8 +52,8 @@ public class TestTransactionManagerFactoryBean implements FactoryBean<JtaTransac
|
||||
|
||||
private JtaTransactionManager createJtaTransactionManager(GraphDatabaseService gds) {
|
||||
JtaTransactionManager jtaTm = new JtaTransactionManager();
|
||||
if (gds instanceof AbstractGraphDatabase) {
|
||||
final TransactionManager txManager = ((AbstractGraphDatabase) gds).getTxManager();
|
||||
if (gds instanceof GraphDatabaseAPI) {
|
||||
final TransactionManager txManager = ((GraphDatabaseAPI) gds).getTxManager();
|
||||
jtaTm.setTransactionManager(new SpringTransactionManager(gds));
|
||||
jtaTm.setUserTransaction(new UserTransactionImpl(txManager));
|
||||
} else {
|
||||
|
||||
@@ -66,7 +66,7 @@ public class CypherQueryBuilderUnitTests {
|
||||
Part part = new Part("infoLike", Person.class);
|
||||
query.addRestriction(part);
|
||||
|
||||
assertThat(query.toString(), is(DEFAULT_START_CLAUSE+" where `person`.`info` AND `person`.`info` =~ {0} return `person`"));
|
||||
assertThat(query.toString(), is(DEFAULT_START_CLAUSE+" where `person`.`info`! =~ {0} return `person`"));
|
||||
}
|
||||
@Test
|
||||
public void createsQueryForGreaterThanPropertyReference() {
|
||||
@@ -74,7 +74,7 @@ public class CypherQueryBuilderUnitTests {
|
||||
Part part = new Part("ageGreaterThan", Person.class);
|
||||
query.addRestriction(part);
|
||||
|
||||
assertThat(query.toString(), is(DEFAULT_START_CLAUSE+" where `person`.`age` AND `person`.`age` > {0} return `person`"));
|
||||
assertThat(query.toString(), is(DEFAULT_START_CLAUSE+" where `person`.`age`! > {0} return `person`"));
|
||||
}
|
||||
@Test
|
||||
public void createsQueryForTwoPropertyExpressions() {
|
||||
@@ -82,7 +82,7 @@ public class CypherQueryBuilderUnitTests {
|
||||
query.addRestriction(new Part("ageGreaterThan", Person.class));
|
||||
query.addRestriction(new Part("info", Person.class));
|
||||
|
||||
assertThat(query.toString(), is(DEFAULT_START_CLAUSE+" where `person`.`age` AND `person`.`age` > {0} and `person`.`info` AND `person`.`info` = {1} return `person`"));
|
||||
assertThat(query.toString(), is(DEFAULT_START_CLAUSE+" where `person`.`age`! > {0} and `person`.`info`! = {1} return `person`"));
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -91,7 +91,7 @@ public class CypherQueryBuilderUnitTests {
|
||||
Part part = new Part("ageIsNull", Person.class);
|
||||
query.addRestriction(part);
|
||||
|
||||
assertThat(query.toString(), is(DEFAULT_START_CLAUSE+" where `person`.`age` AND `person`.`age` is null return `person`"));
|
||||
assertThat(query.toString(), is(DEFAULT_START_CLAUSE+" where `person`.`age`! is null return `person`"));
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -119,7 +119,7 @@ public class CypherQueryBuilderUnitTests {
|
||||
query.addRestriction(new Part("age", Person.class));
|
||||
|
||||
final String className = Person.class.getName();
|
||||
assertThat(query.toString(), is(DEFAULT_START_CLAUSE +" where `person`.`age` AND `person`.`age` = {0} return `person`"));
|
||||
assertThat(query.toString(), is(DEFAULT_START_CLAUSE +" where `person`.`age`! = {0} return `person`"));
|
||||
}
|
||||
@Test
|
||||
public void createsSimpleTraversalClauseCorrectly() {
|
||||
@@ -140,7 +140,7 @@ public class CypherQueryBuilderUnitTests {
|
||||
assertThat(query.toString(), is(
|
||||
"start `person`=node:`Person`(`name`={0}), `person_group`=node:`Group`(`name`={1}) " +
|
||||
"match `person`<-[:`members`]-`person_group`, `person`<-[:`members`]-`person_group`-[:`members`]->`person_group_members` " +
|
||||
"where `person`.`age` AND `person`.`age` > {2} and `person_group_members`.`age` AND `person_group_members`.`age` = {3} " +
|
||||
"where `person`.`age`! > {2} and `person_group_members`.`age`! = {3} " +
|
||||
"return `person`"
|
||||
));
|
||||
}
|
||||
|
||||
@@ -24,8 +24,7 @@ import org.neo4j.graphdb.GraphDatabaseService;
|
||||
import org.neo4j.graphdb.Node;
|
||||
import org.neo4j.graphdb.NotFoundException;
|
||||
import org.neo4j.kernel.AbstractGraphDatabase;
|
||||
import org.neo4j.kernel.Config;
|
||||
import org.neo4j.kernel.EmbeddedGraphDatabase;
|
||||
import org.neo4j.kernel.configuration.Config;
|
||||
import org.objectweb.jotm.Current;
|
||||
import org.springframework.context.support.ClassPathXmlApplicationContext;
|
||||
import org.springframework.data.neo4j.support.node.Neo4jHelper;
|
||||
@@ -35,7 +34,6 @@ import org.springframework.transaction.jta.ManagedTransactionAdapter;
|
||||
import javax.transaction.NotSupportedException;
|
||||
import javax.transaction.SystemException;
|
||||
import javax.transaction.Transaction;
|
||||
import java.util.Map;
|
||||
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertNotNull;
|
||||
|
||||
Reference in New Issue
Block a user