diff --git a/community/kernel/src/main/java/org/neo4j/kernel/impl/index/IndexProviderStore.java b/community/kernel/src/main/java/org/neo4j/kernel/impl/index/IndexProviderStore.java index c88a76f7ff7f8..ae66a8dc39914 100644 --- a/community/kernel/src/main/java/org/neo4j/kernel/impl/index/IndexProviderStore.java +++ b/community/kernel/src/main/java/org/neo4j/kernel/impl/index/IndexProviderStore.java @@ -24,7 +24,6 @@ import java.nio.ByteBuffer; import java.util.Random; -import org.neo4j.graphdb.factory.GraphDatabaseSettings; import org.neo4j.io.fs.FileSystemAbstraction; import org.neo4j.io.fs.StoreChannel; import org.neo4j.kernel.impl.store.NotCurrentStoreVersionException; @@ -135,10 +134,7 @@ private Long[] readRecordsWithNullDefaults( StoreChannel fileChannel, int count, int wholeRecordsRead = bytesRead / RECORD_SIZE; if ( wholeRecordsRead < RECORD_COUNT && !allowUpgrade ) { - throw new UpgradeNotAllowedByConfigurationException( - "Index version (managed by " + file + ") has changed " + "and cannot be upgraded unless " + - GraphDatabaseSettings.allow_upgrade.name() + - "=true is supplied in the configuration" ); + throw new UpgradeNotAllowedByConfigurationException( "Index version (managed by " + file + ") has changed and needs to be upgraded" ); } buf.flip(); diff --git a/community/kernel/src/main/java/org/neo4j/kernel/impl/storemigration/UpgradeNotAllowedByConfigurationException.java b/community/kernel/src/main/java/org/neo4j/kernel/impl/storemigration/UpgradeNotAllowedByConfigurationException.java index 1b3783f80741d..044db9e037779 100644 --- a/community/kernel/src/main/java/org/neo4j/kernel/impl/storemigration/UpgradeNotAllowedByConfigurationException.java +++ b/community/kernel/src/main/java/org/neo4j/kernel/impl/storemigration/UpgradeNotAllowedByConfigurationException.java @@ -25,14 +25,19 @@ public class UpgradeNotAllowedByConfigurationException extends UpgradeNotAllowed { public UpgradeNotAllowedByConfigurationException( String msg ) { - super( msg ); + super( String.format( "%s Detailed description: %s", baseMessage() , msg) ); } public UpgradeNotAllowedByConfigurationException() { - super( String.format( - "Failed to start Neo4j with an older data store version. " - + "To enable automatic upgrade, please set configuration parameter \"%s=true\"", - GraphDatabaseSettings.allow_upgrade.name() ) ); + super( baseMessage() ); + } + + private static String baseMessage() + { + return String.format( + "Neo4j cannot be started, because the database files require upgrading and upgrades are " + + "disabled in configuration. Please set '%s' to 'true' in your configuration file and try again.", + GraphDatabaseSettings.allow_upgrade.name() ); } } diff --git a/community/kernel/src/main/java/org/neo4j/kernel/impl/transaction/log/LogVersionUpgradeChecker.java b/community/kernel/src/main/java/org/neo4j/kernel/impl/transaction/log/LogVersionUpgradeChecker.java index c69b0254f0b75..695bc09e06f77 100644 --- a/community/kernel/src/main/java/org/neo4j/kernel/impl/transaction/log/LogVersionUpgradeChecker.java +++ b/community/kernel/src/main/java/org/neo4j/kernel/impl/transaction/log/LogVersionUpgradeChecker.java @@ -47,11 +47,8 @@ public static void check( LogTailScanner tailScanner, Config config ) throws Upg LogEntryVersion latestLogEntryVersion = tailScanner.getTailInformation().latestLogEntryVersion; if ( latestLogEntryVersion != null && LogEntryVersion.moreRecentVersionExists( latestLogEntryVersion ) ) { - String message = String.format( - "The version your upgrading to is using a new transaction log format. This is a non-reversible " + - "upgrade and you wont be able to downgrade after starting. To allow upgrade, please set " + - "configuration parameter \"%s=true\"", - GraphDatabaseSettings.allow_upgrade.name() ); + String message = "The version your upgrading to is using a new transaction log format. This is a " + + "non-reversible upgrade and you wont be able to downgrade after starting"; throw new UpgradeNotAllowedByConfigurationException( message ); } diff --git a/community/neo4j/src/test/java/db/DatabaseStartupTest.java b/community/neo4j/src/test/java/db/DatabaseStartupTest.java index 84ba8a420a9dd..e9d193cce388e 100644 --- a/community/neo4j/src/test/java/db/DatabaseStartupTest.java +++ b/community/neo4j/src/test/java/db/DatabaseStartupTest.java @@ -81,8 +81,9 @@ public void startTheDatabaseWithWrongVersionShouldFailWithUpgradeNotAllowed() th // then assertTrue( ex.getCause() instanceof LifecycleException ); assertTrue( ex.getCause().getCause() instanceof UpgradeNotAllowedByConfigurationException ); - assertEquals( "Failed to start Neo4j with an older data store version. To enable automatic upgrade, " + - "please set configuration parameter \"" + allow_upgrade.name() + "=true\"", + assertEquals( "Neo4j cannot be started, because the database files require upgrading and upgrades " + + "are disabled in configuration. Please set '" + allow_upgrade.name() + "' to 'true' in your " + + "configuration file and try again.", ex.getCause().getCause().getMessage()); } } diff --git a/community/server/src/main/java/org/neo4j/server/exception/UpgradeDisallowedStartupException.java b/community/server/src/main/java/org/neo4j/server/exception/UpgradeDisallowedStartupException.java index d281ca0853682..819dab70944ce 100644 --- a/community/server/src/main/java/org/neo4j/server/exception/UpgradeDisallowedStartupException.java +++ b/community/server/src/main/java/org/neo4j/server/exception/UpgradeDisallowedStartupException.java @@ -24,8 +24,6 @@ import org.neo4j.logging.Log; import org.neo4j.server.ServerStartupException; -import static org.neo4j.graphdb.factory.GraphDatabaseSettings.allow_upgrade; - public class UpgradeDisallowedStartupException extends ServerStartupException { public UpgradeDisallowedStartupException( UpgradeNotAllowedException cause ) @@ -36,11 +34,10 @@ public UpgradeDisallowedStartupException( UpgradeNotAllowedException cause ) @Override public void describeTo( Log log ) { - if ( getCause() instanceof UpgradeNotAllowedByConfigurationException ) + Throwable cause = getCause(); + if ( cause instanceof UpgradeNotAllowedByConfigurationException ) { - log.error( "Neo4j cannot be started, because the database files require upgrading and upgrades are " + - "disabled in configuration. Please set '%s' to 'true' in your configuration file and try again.", - allow_upgrade.name() ); + log.error( cause.getMessage() ); } else { diff --git a/community/server/src/test/java/org/neo4j/server/exception/ServerStartupErrorsTest.java b/community/server/src/test/java/org/neo4j/server/exception/ServerStartupErrorsTest.java index 5dccb83657077..d8411edb38a48 100644 --- a/community/server/src/test/java/org/neo4j/server/exception/ServerStartupErrorsTest.java +++ b/community/server/src/test/java/org/neo4j/server/exception/ServerStartupErrorsTest.java @@ -50,8 +50,7 @@ public void shouldDescribeUpgradeFailureInAFriendlyWay() // then logging.assertExactly( inLog( "console" ) .error( "Neo4j cannot be started, because the database files require upgrading and upgrades are " + - "disabled in configuration. Please set '%s' to 'true' in your configuration file and try " + - "again.", GraphDatabaseSettings.allow_upgrade.name() ) ); - + "disabled in configuration. Please set '" + GraphDatabaseSettings.allow_upgrade.name() + + "' to 'true' in your configuration file and try " + "again." ) ); } }