Amelchev Nikita created IGNITE-12302:
----------------------------------------

             Summary: Test 
ZookeeperDiscoveryTopologyChangeAndReconnectTest.testDuplicatedNodeId is broken.
                 Key: IGNITE-12302
                 URL: https://issues.apache.org/jira/browse/IGNITE-12302
             Project: Ignite
          Issue Type: Bug
            Reporter: Amelchev Nikita
            Assignee: Amelchev Nikita
             Fix For: 2.8


Test checks that a new node will not be started with the same node id. 
Newly added SystemView creates table on node startup and fails with error:

{noformat}
java.lang.AssertionError: Unexpected exception
        at 
org.apache.ignite.testframework.GridTestUtils.fail(GridTestUtils.java:622)
        at 
org.apache.ignite.testframework.GridTestUtils.assertThrowsAnyCause(GridTestUtils.java:465)
        at 
org.apache.ignite.spi.discovery.zk.internal.ZookeeperDiscoveryTopologyChangeAndReconnectTest.testDuplicatedNodeId(ZookeeperDiscoveryTopologyChangeAndReconnectTest.java:582)
        at 
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at 
java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.base/java.lang.reflect.Method.invoke(Method.java:566)
        at 
org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47)
        at 
org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
        at 
org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44)
        at 
org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
        at 
org.apache.ignite.testframework.junits.GridAbstractTest$7.run(GridAbstractTest.java:2090)
        at java.base/java.lang.Thread.run(Thread.java:834)
Caused by: class org.apache.ignite.IgniteCheckedException: Failed to register 
system view.
        at org.apache.ignite.internal.IgniteKernal.start(IgniteKernal.java:1401)
        at 
org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start0(IgnitionEx.java:2038)
        at 
org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start(IgnitionEx.java:1703)
        at org.apache.ignite.internal.IgnitionEx.start0(IgnitionEx.java:1117)
        at org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:615)
        at 
org.apache.ignite.testframework.junits.GridAbstractTest.startGrid(GridAbstractTest.java:983)
        at 
org.apache.ignite.testframework.junits.GridAbstractTest.startGrid(GridAbstractTest.java:924)
        at 
org.apache.ignite.testframework.junits.GridAbstractTest.startGrid(GridAbstractTest.java:912)
        at 
org.apache.ignite.testframework.junits.GridAbstractTest.startGrid(GridAbstractTest.java:878)
        at 
org.apache.ignite.spi.discovery.zk.internal.ZookeeperDiscoveryTopologyChangeAndReconnectTest.lambda$testDuplicatedNodeId$0(ZookeeperDiscoveryTopologyChangeAndReconnectTest.java:583)
        at 
org.apache.ignite.testframework.GridTestUtils.assertThrowsAnyCause(GridTestUtils.java:449)
        ... 11 more
Caused by: class org.apache.ignite.IgniteException: Failed to register system 
view.
        at 
org.apache.ignite.internal.processors.query.h2.SchemaManager.createSystemView(SchemaManager.java:238)
        at 
org.apache.ignite.internal.processors.query.h2.SchemaManager.createSystemViews(SchemaManager.java:247)
        at 
org.apache.ignite.internal.processors.query.h2.SchemaManager.start(SchemaManager.java:195)
        at 
org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.start(IgniteH2Indexing.java:2083)
[2019-10-17 21:50:42,017][INFO ][main][root] >>> Stopping test: 
ZookeeperDiscoveryTopologyChangeAndReconnectTest#testDuplicatedNodeId in 261 ms 
<<<
        at 
org.apache.ignite.internal.processors.query.GridQueryProcessor.start(GridQueryProcessor.java:250)
        at 
org.apache.ignite.internal.IgniteKernal.startProcessor(IgniteKernal.java:1977)
        at org.apache.ignite.internal.IgniteKernal.start(IgniteKernal.java:1213)
        ... 21 more
Caused by: org.h2.jdbc.JdbcSQLException: Таблица "NODE_ATTRIBUTES" уже 
существует
Table "NODE_ATTRIBUTES" already exists; SQL statement:
CREATE TABLE NODE_ATTRIBUTES(NODE_ID UUID, NAME VARCHAR, VALUE VARCHAR) ENGINE 
"org.apache.ignite.internal.processors.query.h2.sys.SqlSystemTableEngine" 
[42101-197]
        at org.h2.message.DbException.getJdbcSQLException(DbException.java:357)
        at org.h2.message.DbException.get(DbException.java:179)
        at org.h2.message.DbException.get(DbException.java:155)
        at org.h2.command.ddl.CreateTable.update(CreateTable.java:86)
        at org.h2.command.CommandContainer.update(CommandContainer.java:102)
        at org.h2.command.Command.executeUpdate(Command.java:261)
        at org.h2.jdbc.JdbcStatement.executeInternal(JdbcStatement.java:233)
        at org.h2.jdbc.JdbcStatement.execute(JdbcStatement.java:205)
        at 
org.apache.ignite.internal.processors.query.h2.sys.SqlSystemTableEngine.registerView(SqlSystemTableEngine.java:48)
        at 
org.apache.ignite.internal.processors.query.h2.SchemaManager.createSystemView(SchemaManager.java:232)
        ... 27 more
{noformat}

The fail reason is one connection to the h2 database by two nodes:
{noformat}
dbUrl = "jdbc:h2:mem:" + ctx.localNodeId() + DB_OPTIONS;
{noformat}
I suggest disabling registering nodes' views to correctly check node startup 
fail.





--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to