Hi,
I had installed Symmetric Ds 3.7.17 with DB2 10.1. This worked fine.
Now as the newer major version has been released, i am trying to upgrade it so that SymmetricDs & jetty servers both get upgraded to latest version i.e. 3.8.10. I am using same DB2 10.1. But getting the following error :
2016-12-02 16:05:31,337 INFO [RSMSServer-000][Db2v9SymmetricDialect][symmetric-engine-startup-0] Done with auto update of SymmetricDS tables
2016-12-02 16:05:31,454 INFO [RSMSServer-000][Db2v9SymmetricDialect][symmetric-engine-startup-0] Resetting auto increment columns for sym_data
2016-12-02 16:05:31,467 INFO [RSMSServer-000][Db2v9SymmetricDialect][symmetric-engine-startup-0] Creating environment variables sym_sync_triggers_disabled and sym_sync_node_disabled
2016-12-02 16:05:31,642 ERROR [RSMSServer-000][AbstractSymmetricEngine][symmetric-engine-startup-0] An error occurred while starting SymmetricDS StackTraceKey.init [SqlException:1863705581]
org.jumpmind.db.sql.SqlException: DB2 SQL Error: SQLCODE=-601, SQLSTATE=42710, SQLERRMC=SMIS.SYM_SYNC_NODE_DISABLED;VARIABLE, DRIVER=3.58.82
at org.jumpmind.db.sql.AbstractSqlTemplate.translate(AbstractSqlTemplate.java:303)
at org.jumpmind.db.sql.AbstractSqlTemplate.translate(AbstractSqlTemplate.java:294)
at org.jumpmind.db.sql.JdbcSqlTemplate.execute(JdbcSqlTemplate.java:493)
at org.jumpmind.db.sql.JdbcSqlTemplate.update(JdbcSqlTemplate.java:342)
at org.jumpmind.db.sql.AbstractSqlTemplate.update(AbstractSqlTemplate.java:227)
at org.jumpmind.symmetric.db.db2.Db2SymmetricDialect.createRequiredDatabaseObjects(Db2SymmetricDialect.java:91)
at org.jumpmind.symmetric.db.db2.Db2v9SymmetricDialect.createRequiredDatabaseObjects(Db2v9SymmetricDialect.java:71)
at org.jumpmind.symmetric.db.AbstractSymmetricDialect.initTablesAndDatabaseObjects(AbstractSymmetricDialect.java:156)
at org.jumpmind.symmetric.AbstractSymmetricEngine.setupDatabase(AbstractSymmetricEngine.java:449)
at org.jumpmind.symmetric.AbstractSymmetricEngine.setup(AbstractSymmetricEngine.java:423)
at org.jumpmind.symmetric.AbstractSymmetricEngine.start(AbstractSymmetricEngine.java:580)
at org.jumpmind.symmetric.AbstractSymmetricEngine.start(AbstractSymmetricEngine.java:571)
at org.jumpmind.symmetric.ClientSymmetricEngine.start(ClientSymmetricEngine.java:244)
at org.jumpmind.symmetric.web.SymmetricEngineHolder$EngineStarter.run(SymmetricEngineHolder.java:478)
This error not letting symmetric server to start.
But if I use another database DB2 same version i.e. 10.1, it works fine.
Is there some remains possible at database level related to symmetric 3.7.17, due to which newer version getting this error.
Also note that my older symmetric is still working fine with my DB2 but not 3.8.10.
PFA logs
Please suggest how to solve.
Thank you in advance.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I think this happened because of upgrading from 3.7 to 3.8. When the tables were altered for the upgrade, it put some objects into a pending state. Try dropping the variables and restarting:
drop variable sym_sync_node_disabled;
drop variable sym_sync_triggers_disabled;
It will recreate them on startup, and then rebuild triggers, and hopefully the database objects out of pending state.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
It's possible this is permissions related. One scanario I came up with is if you happened to have WRITE permissions to the global variables SymmetricDS creates, but not READ access, then this error would occur. Can you provide the following:
1) What OS are you running DB/2 on?
2) Run this statement and let me know what you get (this should return 1 row of 1 null column, but it should not throw an error)
SELECT SMIS.sym_source_node_id FROM SYM_NODE_IDENTITY;
2) Can you run this statement and see that you get:
SELECT * FROM SYSIBMADM.PRIVILEGES WHERE OBJECTNAME LIKE 'SYM_%' AND OBJECTTYPE = 'GLOBAL VARIABLE';
Thanks,
Mark
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
DB2 Database Error: ERROR [42703][IBM][DB2/LINUXX8664] SQL0206N "SMIS.SYM_SOURCE_NODE_ID" is not valid in the context where it is used. SQLSTATE=42703
Output is :
SMIS U WRITE Y SYM_SYNC_NODE_DISABLED SMIS GLOBAL VARIABLE
SMIS U WRITE Y SYM_TRIGGER_DISABLED SMIS GLOBAL VARIABLE
SMIS U READ Y SYM_SYNC_NODE_DISABLED SMIS GLOBAL VARIABLE
SMIS U READ Y SYM_TRIGGER_DISABLED SMIS GLOBAL VARIABLE
Hope you could configure out the problem being faced!!
Thanks,
Anshu
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hi,
I had installed Symmetric Ds 3.7.17 with DB2 10.1. This worked fine.
Now as the newer major version has been released, i am trying to upgrade it so that SymmetricDs & jetty servers both get upgraded to latest version i.e. 3.8.10. I am using same DB2 10.1. But getting the following error :
2016-12-02 16:05:31,337 INFO [RSMSServer-000] [Db2v9SymmetricDialect] [symmetric-engine-startup-0] Done with auto update of SymmetricDS tables
2016-12-02 16:05:31,454 INFO [RSMSServer-000] [Db2v9SymmetricDialect] [symmetric-engine-startup-0] Resetting auto increment columns for sym_data
2016-12-02 16:05:31,467 INFO [RSMSServer-000] [Db2v9SymmetricDialect] [symmetric-engine-startup-0] Creating environment variables sym_sync_triggers_disabled and sym_sync_node_disabled
2016-12-02 16:05:31,642 ERROR [RSMSServer-000] [AbstractSymmetricEngine] [symmetric-engine-startup-0] An error occurred while starting SymmetricDS StackTraceKey.init [SqlException:1863705581]
org.jumpmind.db.sql.SqlException: DB2 SQL Error: SQLCODE=-601, SQLSTATE=42710, SQLERRMC=SMIS.SYM_SYNC_NODE_DISABLED;VARIABLE, DRIVER=3.58.82
at org.jumpmind.db.sql.AbstractSqlTemplate.translate(AbstractSqlTemplate.java:303)
at org.jumpmind.db.sql.AbstractSqlTemplate.translate(AbstractSqlTemplate.java:294)
at org.jumpmind.db.sql.JdbcSqlTemplate.execute(JdbcSqlTemplate.java:493)
at org.jumpmind.db.sql.JdbcSqlTemplate.update(JdbcSqlTemplate.java:342)
at org.jumpmind.db.sql.AbstractSqlTemplate.update(AbstractSqlTemplate.java:227)
at org.jumpmind.symmetric.db.db2.Db2SymmetricDialect.createRequiredDatabaseObjects(Db2SymmetricDialect.java:91)
at org.jumpmind.symmetric.db.db2.Db2v9SymmetricDialect.createRequiredDatabaseObjects(Db2v9SymmetricDialect.java:71)
at org.jumpmind.symmetric.db.AbstractSymmetricDialect.initTablesAndDatabaseObjects(AbstractSymmetricDialect.java:156)
at org.jumpmind.symmetric.AbstractSymmetricEngine.setupDatabase(AbstractSymmetricEngine.java:449)
at org.jumpmind.symmetric.AbstractSymmetricEngine.setup(AbstractSymmetricEngine.java:423)
at org.jumpmind.symmetric.AbstractSymmetricEngine.start(AbstractSymmetricEngine.java:580)
at org.jumpmind.symmetric.AbstractSymmetricEngine.start(AbstractSymmetricEngine.java:571)
at org.jumpmind.symmetric.ClientSymmetricEngine.start(ClientSymmetricEngine.java:244)
at org.jumpmind.symmetric.web.SymmetricEngineHolder$EngineStarter.run(SymmetricEngineHolder.java:478)
This error not letting symmetric server to start.
But if I use another database DB2 same version i.e. 10.1, it works fine.
Is there some remains possible at database level related to symmetric 3.7.17, due to which newer version getting this error.
Also note that my older symmetric is still working fine with my DB2 but not 3.8.10.
PFA logs
Please suggest how to solve.
Thank you in advance.
I think this happened because of upgrading from 3.7 to 3.8. When the tables were altered for the upgrade, it put some objects into a pending state. Try dropping the variables and restarting:
drop variable sym_sync_node_disabled;
drop variable sym_sync_triggers_disabled;
It will recreate them on startup, and then rebuild triggers, and hopefully the database objects out of pending state.
Hi Eric,
Thanx for replying. But dropping these variables did not solve the problem.
Anshu,
It's possible this is permissions related. One scanario I came up with is if you happened to have WRITE permissions to the global variables SymmetricDS creates, but not READ access, then this error would occur. Can you provide the following:
1) What OS are you running DB/2 on?
2) Run this statement and let me know what you get (this should return 1 row of 1 null column, but it should not throw an error)
SELECT SMIS.sym_source_node_id FROM SYM_NODE_IDENTITY;
2) Can you run this statement and see that you get:
SELECT * FROM SYSIBMADM.PRIVILEGES WHERE OBJECTNAME LIKE 'SYM_%' AND OBJECTTYPE = 'GLOBAL VARIABLE';
Thanks,
Mark
Hi Mark,
Thanks for replying.
Following are the information needed :
1.)OS on which DB2 is running -- Linux 6.3
DB2 Database Error: ERROR [42703] [IBM][DB2/LINUXX8664] SQL0206N "SMIS.SYM_SOURCE_NODE_ID" is not valid in the context where it is used. SQLSTATE=42703
SMIS U WRITE Y SYM_SYNC_NODE_DISABLED SMIS GLOBAL VARIABLE
SMIS U WRITE Y SYM_TRIGGER_DISABLED SMIS GLOBAL VARIABLE
SMIS U READ Y SYM_SYNC_NODE_DISABLED SMIS GLOBAL VARIABLE
SMIS U READ Y SYM_TRIGGER_DISABLED SMIS GLOBAL VARIABLE
Hope you could configure out the problem being faced!!
Thanks,
Anshu
Anshu,
Are you still having issues with this? Thanks for the info. Can you try this query instead:
SELECT SMIS.SYM_SYNC_NODE_DISABLED FROM SYM_NODE_IDENTITY;
Let me know what you see when running that.
Mark