WSO2 API Manager 1.6 文件损坏错误 [英] WSO2 API Manager 1.6 file corrupted error

查看:38
本文介绍了WSO2 API Manager 1.6 文件损坏错误的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我使用 API Manager 1.6.我创建了角色、用户、发布 API 等,并且工作正常.当我重新启动服务器时显示此错误.有什么想法吗?

I working with API Manager 1.6. I created roles, users, publish API, etc.. and works fine. When i restart server show this error. Any Idea?

org.h2.jdbc.JdbcSQLException: File corrupted while reading record: "958 of 958". Possible solution: use the recovery tool [90030-140]
        at org.h2.message.DbException.getJdbcSQLException(DbException.java:327)
        at org.h2.message.DbException.get(DbException.java:167)
        at org.h2.message.DbException.get(DbException.java:144)
        at org.h2.store.PageStore.readPage(PageStore.java:1094)
        at org.h2.store.PageStore.getPage(PageStore.java:561)
        at org.h2.index.PageDataIndex.getPage(PageDataIndex.java:218)
        at org.h2.index.PageDataNode.getLastKey(PageDataNode.java:221)
        at org.h2.index.PageDataIndex.<init>(PageDataIndex.java:74)
        at org.h2.table.RegularTable.<init>(RegularTable.java:75)
        at org.h2.store.PageStore.addMeta(PageStore.java:1443)
        at org.h2.store.PageStore.readMetaData(PageStore.java:1380)
        at org.h2.store.PageStore.recover(PageStore.java:1178)
        at org.h2.store.PageStore.openExisting(PageStore.java:317)
        at org.h2.store.PageStore.open(PageStore.java:271)
        at org.h2.engine.Database.getPageStore(Database.java:2059)
        at org.h2.engine.Database.open(Database.java:534)
        at org.h2.engine.Database.openDatabase(Database.java:207)
        at org.h2.engine.Database.<init>(Database.java:202)
        at org.h2.engine.Engine.openSession(Engine.java:56)
        at org.h2.engine.Engine.openSession(Engine.java:146)
        at org.h2.engine.Engine.getSession(Engine.java:125)
        at org.h2.engine.Session.createSession(Session.java:122)
        at org.h2.engine.SessionRemote.connectEmbeddedOrServer(SessionRemote.java:241)
        at org.h2.engine.SessionRemote.createSession(SessionRemote.java:219)
        at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:111)
        at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:95)
        at org.h2.Driver.connect(Driver.java:73)
        at org.apache.tomcat.jdbc.pool.PooledConnection.connectUsingDriver(PooledConnection.java:278)
        at org.apache.tomcat.jdbc.pool.PooledConnection.connect(PooledConnection.java:182)
        at org.apache.tomcat.jdbc.pool.ConnectionPool.createConnection(ConnectionPool.java:701)
        at org.apache.tomcat.jdbc.pool.ConnectionPool.borrowConnection(ConnectionPool.java:635)
        at org.apache.tomcat.jdbc.pool.ConnectionPool.getConnection(ConnectionPool.java:188)
        at org.apache.tomcat.jdbc.pool.DataSourceProxy.getConnection(DataSourceProxy.java:127)
        at org.wso2.carbon.user.core.claim.dao.ClaimDAO.getDialectCount(ClaimDAO.java:158)
        at org.wso2.carbon.user.core.common.DefaultRealm.populateProfileAndClaimMaps(DefaultRealm.java:411)
        at org.wso2.carbon.user.core.common.DefaultRealm.init(DefaultRealm.java:101)
        at org.wso2.carbon.user.core.common.DefaultRealmService.initializeRealm(DefaultRealmService.java:223)
        at org.wso2.carbon.user.core.common.DefaultRealmService.<init>(DefaultRealmService.java:101)
        at org.wso2.carbon.user.core.common.DefaultRealmService.<init>(DefaultRealmService.java:114)
        at org.wso2.carbon.user.core.internal.Activator.startDeploy(Activator.java:69)
        at org.wso2.carbon.user.core.internal.BundleCheckActivator.start(BundleCheckActivator.java:61)
        at org.eclipse.osgi.framework.internal.core.BundleContextImpl$1.run(BundleContextImpl.java:711)
        at java.security.AccessController.doPrivileged(Native Method)
        at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:702)
        at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:683)
        at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:381)
        at org.eclipse.osgi.framework.internal.core.AbstractBundle.resume(AbstractBundle.java:390)
        at org.eclipse.osgi.framework.internal.core.Framework.resumeBundle(Framework.java:1176)
        at org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartLevelManager.java:559)
        at org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartLevelManager.java:544)
        at org.eclipse.osgi.framework.internal.core.StartLevelManager.incFWSL(StartLevelManager.java:457)
        at org.eclipse.osgi.framework.internal.core.StartLevelManager.doSetStartLevel(StartLevelManager.java:243)
        at org.eclipse.osgi.framework.internal.core.StartLevelManager.dispatchEvent(StartLevelManager.java:438)
        at org.eclipse.osgi.framework.internal.core.StartLevelManager.dispatchEvent(StartLevelManager.java:1)
        at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)
        at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:340)
[2014-04-15 17:26:35,660] ERROR - DefaultRealmService Cannot initialize the realm.
org.wso2.carbon.user.core.UserStoreException: Database Error - File corrupted while reading record: "958 of 958". Possible solution: use the recovery tool [90030-140]
        at org.wso2.carbon.user.core.claim.dao.ClaimDAO.getDialectCount(ClaimDAO.java:168)
        at org.wso2.carbon.user.core.common.DefaultRealm.populateProfileAndClaimMaps(DefaultRealm.java:411)
        at org.wso2.carbon.user.core.common.DefaultRealm.init(DefaultRealm.java:101)
        at org.wso2.carbon.user.core.common.DefaultRealmService.initializeRealm(DefaultRealmService.java:223)
        at org.wso2.carbon.user.core.common.DefaultRealmService.<init>(DefaultRealmService.java:101)
        at org.wso2.carbon.user.core.common.DefaultRealmService.<init>(DefaultRealmService.java:114)
        at org.wso2.carbon.user.core.internal.Activator.startDeploy(Activator.java:69)
        at org.wso2.carbon.user.core.internal.BundleCheckActivator.start(BundleCheckActivator.java:61)
        at org.eclipse.osgi.framework.internal.core.BundleContextImpl$1.run(BundleContextImpl.java:711)
        at java.security.AccessController.doPrivileged(Native Method)
        at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:702)
        at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:683)
        at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:381)
        at org.eclipse.osgi.framework.internal.core.AbstractBundle.resume(AbstractBundle.java:390)
        at org.eclipse.osgi.framework.internal.core.Framework.resumeBundle(Framework.java:1176)
        at org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartLevelManager.java:559)
        at org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartLevelManager.java:544)
        at org.eclipse.osgi.framework.internal.core.StartLevelManager.incFWSL(StartLevelManager.java:457)
        at org.eclipse.osgi.framework.internal.core.StartLevelManager.doSetStartLevel(StartLevelManager.java:243)
        at org.eclipse.osgi.framework.internal.core.StartLevelManager.dispatchEvent(StartLevelManager.java:438)
        at org.eclipse.osgi.framework.internal.core.StartLevelManager.dispatchEvent(StartLevelManager.java:1)
        at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)
        at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:340)
Caused by: org.h2.jdbc.JdbcSQLException: File corrupted while reading record: "958 of 958". Possible solution: use the recovery tool [90030-140]
        at org.h2.message.DbException.getJdbcSQLException(DbException.java:327)
        at org.h2.message.DbException.get(DbException.java:167)
        at org.h2.message.DbException.get(DbException.java:144)
        at org.h2.store.PageStore.readPage(PageStore.java:1094)
        at org.h2.store.PageStore.getPage(PageStore.java:561)
        at org.h2.index.PageDataIndex.getPage(PageDataIndex.java:218)
        at org.h2.index.PageDataNode.getLastKey(PageDataNode.java:221)
        at org.h2.index.PageDataIndex.<init>(PageDataIndex.java:74)
        at org.h2.table.RegularTable.<init>(RegularTable.java:75)
        at org.h2.store.PageStore.addMeta(PageStore.java:1443)
        at org.h2.store.PageStore.readMetaData(PageStore.java:1380)
        at org.h2.store.PageStore.recover(PageStore.java:1178)
        at org.h2.store.PageStore.openExisting(PageStore.java:317)
        at org.h2.store.PageStore.open(PageStore.java:271)
        at org.h2.engine.Database.getPageStore(Database.java:2059)
        at org.h2.engine.Database.open(Database.java:534)
        at org.h2.engine.Database.openDatabase(Database.java:207)
        at org.h2.engine.Database.<init>(Database.java:202)
        at org.h2.engine.Engine.openSession(Engine.java:56)
        at org.h2.engine.Engine.openSession(Engine.java:146)
        at org.h2.engine.Engine.getSession(Engine.java:125)
        at org.h2.engine.Session.createSession(Session.java:122)
        at org.h2.engine.SessionRemote.connectEmbeddedOrServer(SessionRemote.java:241)
        at org.h2.engine.SessionRemote.createSession(SessionRemote.java:219)
        at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:111)
        at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:95)
        at org.h2.Driver.connect(Driver.java:73)
        at org.apache.tomcat.jdbc.pool.PooledConnection.connectUsingDriver(PooledConnection.java:278)
        at org.apache.tomcat.jdbc.pool.PooledConnection.connect(PooledConnection.java:182)
        at org.apache.tomcat.jdbc.pool.ConnectionPool.createConnection(ConnectionPool.java:701)
        at org.apache.tomcat.jdbc.pool.ConnectionPool.borrowConnection(ConnectionPool.java:635)
        at org.apache.tomcat.jdbc.pool.ConnectionPool.getConnection(ConnectionPool.java:188)
        at org.apache.tomcat.jdbc.pool.DataSourceProxy.getConnection(DataSourceProxy.java:127)
        at org.wso2.carbon.user.core.claim.dao.ClaimDAO.getDialectCount(ClaimDAO.java:158)
        ... 22 more
[2014-04-15 17:26:35,666] ERROR - Activator Cannot start User Manager Core bundle
org.wso2.carbon.user.core.UserStoreException: Cannot initialize the realm.
        at org.wso2.carbon.user.core.common.DefaultRealmService.initializeRealm(DefaultRealmService.java:231)
        at org.wso2.carbon.user.core.common.DefaultRealmService.<init>(DefaultRealmService.java:101)
        at org.wso2.carbon.user.core.common.DefaultRealmService.<init>(DefaultRealmService.java:114)
        at org.wso2.carbon.user.core.internal.Activator.startDeploy(Activator.java:69)
        at org.wso2.carbon.user.core.internal.BundleCheckActivator.start(BundleCheckActivator.java:61)
        at org.eclipse.osgi.framework.internal.core.BundleContextImpl$1.run(BundleContextImpl.java:711)
        at java.security.AccessController.doPrivileged(Native Method)
        at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:702)
        at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:683)
        at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:381)
        at org.eclipse.osgi.framework.internal.core.AbstractBundle.resume(AbstractBundle.java:390)
        at org.eclipse.osgi.framework.internal.core.Framework.resumeBundle(Framework.java:1176)
        at org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartLevelManager.java:559)
        at org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartLevelManager.java:544)
        at org.eclipse.osgi.framework.internal.core.StartLevelManager.incFWSL(StartLevelManager.java:457)
        at org.eclipse.osgi.framework.internal.core.StartLevelManager.doSetStartLevel(StartLevelManager.java:243)
        at org.eclipse.osgi.framework.internal.core.StartLevelManager.dispatchEvent(StartLevelManager.java:438)
        at org.eclipse.osgi.framework.internal.core.StartLevelManager.dispatchEvent(StartLevelManager.java:1)
        at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)
        at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:340)
Caused by: org.wso2.carbon.user.core.UserStoreException: Database Error - File corrupted while reading record: "958 of 958". Possible solution: use the recovery tool [90030-140]
        at org.wso2.carbon.user.core.claim.dao.ClaimDAO.getDialectCount(ClaimDAO.java:168)
        at org.wso2.carbon.user.core.common.DefaultRealm.populateProfileAndClaimMaps(DefaultRealm.java:411)
        at org.wso2.carbon.user.core.common.DefaultRealm.init(DefaultRealm.java:101)
        at org.wso2.carbon.user.core.common.DefaultRealmService.initializeRealm(DefaultRealmService.java:223)
        ... 19 more
Caused by: org.h2.jdbc.JdbcSQLException: File corrupted while reading record: "958 of 958". Possible solution: use the recovery tool [90030-140]
        at org.h2.message.DbException.getJdbcSQLException(DbException.java:327)
        at org.h2.message.DbException.get(DbException.java:167)
        at org.h2.message.DbException.get(DbException.java:144)
        at org.h2.store.PageStore.readPage(PageStore.java:1094)
        at org.h2.store.PageStore.getPage(PageStore.java:561)
        at org.h2.index.PageDataIndex.getPage(PageDataIndex.java:218)
        at org.h2.index.PageDataNode.getLastKey(PageDataNode.java:221)
        at org.h2.index.PageDataIndex.<init>(PageDataIndex.java:74)
        at org.h2.table.RegularTable.<init>(RegularTable.java:75)
        at org.h2.store.PageStore.addMeta(PageStore.java:1443)
        at org.h2.store.PageStore.readMetaData(PageStore.java:1380)
        at org.h2.store.PageStore.recover(PageStore.java:1178)
        at org.h2.store.PageStore.openExisting(PageStore.java:317)
        at org.h2.store.PageStore.open(PageStore.java:271)
        at org.h2.engine.Database.getPageStore(Database.java:2059)
        at org.h2.engine.Database.open(Database.java:534)
        at org.h2.engine.Database.openDatabase(Database.java:207)
        at org.h2.engine.Database.<init>(Database.java:202)
        at org.h2.engine.Engine.openSession(Engine.java:56)
        at org.h2.engine.Engine.openSession(Engine.java:146)
        at org.h2.engine.Engine.getSession(Engine.java:125)
        at org.h2.engine.Session.createSession(Session.java:122)
        at org.h2.engine.SessionRemote.connectEmbeddedOrServer(SessionRemote.java:241)
        at org.h2.engine.SessionRemote.createSession(SessionRemote.java:219)
        at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:111)
        at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:95)
        at org.h2.Driver.connect(Driver.java:73)
        at org.apache.tomcat.jdbc.pool.PooledConnection.connectUsingDriver(PooledConnection.java:278)
        at org.apache.tomcat.jdbc.pool.PooledConnection.connect(PooledConnection.java:182)
        at org.apache.tomcat.jdbc.pool.ConnectionPool.createConnection(ConnectionPool.java:701)
        at org.apache.tomcat.jdbc.pool.ConnectionPool.borrowConnection(ConnectionPool.java:635)
        at org.apache.tomcat.jdbc.pool.ConnectionPool.getConnection(ConnectionPool.java:188)
        at org.apache.tomcat.jdbc.pool.DataSourceProxy.getConnection(DataSourceProxy.java:127)
        at org.wso2.carbon.user.core.claim.dao.ClaimDAO.getDialectCount(ClaimDAO.java:158)
        ... 22 more
[2014-04-15 17:26:45,468]  INFO - TaglibUriRule TLD skipped. URI: http://tiles.apache.org/tags-tiles is already defined
./wso2server.sh: line 298:  2110 Killed                  $JAVACMD -Xbootclasspath/a:"$CARBON_XBOOTCLASSPATH" -Xms512m -Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath="$CARBON_HOME/repository/logs/heap-dump.hprof" $JAVA_OPTS -Dcom.sun.management.jmxremote -classpath "$CARBON_CLASSPATH" -Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS" -Djava.io.tmpdir="$CARBON_HOME/tmp" -Dcatalina.base="$CARBON_HOME/lib/tomcat" -Dwso2.server.standalone=true -Dcarbon.registry.root=/ -Djava.command="$JAVACMD" -Dcarbon.home="$CARBON_HOME" -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.util.logging.config.file="$CARBON_HOME/repository/conf/etc/logging-bridge.properties" -Dcarbon.config.dir.path="$CARBON_HOME/repository/conf" -Dcomponents.repo="$CARBON_HOME/repository/components/plugins" -Dconf.location="$CARBON_HOME/repository/conf" -Dcom.atomikos.icatch.file="$CARBON_HOME/lib/transactions.properties" -Dcom.atomikos.icatch.hide_init_file_path=true -Dorg.apache.jasper.runtime.BodyContentImpl.LIMIT_BUFFER=true -Dcom.sun.jndi.ldap.connect.pool.authentication=simple -Dcom.sun.jndi.ldap.connect.pool.timeout=3000 -Dorg.terracotta.quartz.skipUpdateCheck=true -Djava.security.egd=file:/dev/./urandom -Dfile.encoding=UTF8 -DapplyPatches org.wso2.carbon.bootstrap.Bootstrap $*

推荐答案

您的本地 H2 数据库出现文件损坏错误.

You are getting a file corrupted error for your local H2 Database.

WSO2 不推荐使用 H2 数据库.

WSO2 does not recommend using H2 database.

通常建议为 WSO2 API Manager 数据源、用户存储和注册表使用生产就绪"数据库.

It's usually recommended to use a "production-ready" database for WSO2 API Manager datasource, User Store and Registry.

对于注册表挂载,您可以将 H2 用于本地存储库.但是,您不应将 H2 数据库用于配置和治理存储库.

For registry mounting, you can use H2 for local repository. However you shouldn't use H2 database for Config and Governance repositories.

请参阅 WSO2 API 管理器集群和部署指南了解更多信息.

See WSO2 API Manager Clustering and Deployment Guide for more information.

您可以使用 wso2server.sh -Dsetup 重新创建数据库.但我认为这不是您需要的,因为它会清理您的数据.我认为您应该使用另一个数据库来避免此类错误.

You may use wso2server.sh -Dsetup to re-create the database. But I think this is not what you need as it would clean up your data. I think you should use another database to avoid these kinds of errors.

我希望这会有所帮助.

这篇关于WSO2 API Manager 1.6 文件损坏错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆