jackrabbit-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From <Sascha.The...@bosch-si.com>
Subject AW: Jackrabbit doesn`t startup anymore
Date Tue, 03 May 2011 07:16:18 GMT
Hi all,

I have now a detailed log output of the raised NumnberFormatException:

2011-05-03 08:55:25,329 [main] ERROR BundleDbPersistenceManager - failed to read bundle: cafebabe-cafe-babe-cafe-babecafebabe:
java.lang.NumberFormatException: For input string: ""
java.lang.NumberFormatException: For input string: ""
	at java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)
	at java.lang.Integer.parseInt(Integer.java:468)
	at java.lang.Integer.parseInt(Integer.java:497)
	at org.apache.jackrabbit.core.nodetype.NodeDefId.valueOf(NodeDefId.java:106)
	at org.apache.jackrabbit.core.persistence.bundle.util.BundleBinding.readBundle(BundleBinding.java:105)
	at org.apache.jackrabbit.core.persistence.bundle.BundleDbPersistenceManager.loadBundle(BundleDbPersistenceManager.java:1161)
	at org.apache.jackrabbit.core.persistence.bundle.BundleDbPersistenceManager.loadBundle(BundleDbPersistenceManager.java:1094)
	at org.apache.jackrabbit.core.persistence.bundle.AbstractBundlePersistenceManager.getBundle(AbstractBundlePersistenceManager.java:701)
	at org.apache.jackrabbit.core.persistence.bundle.AbstractBundlePersistenceManager.exists(AbstractBundlePersistenceManager.java:506)
	at org.apache.jackrabbit.core.state.SharedItemStateManager.hasNonVirtualItemState(SharedItemStateManager.java:1343)
	at org.apache.jackrabbit.core.state.SharedItemStateManager.<init>(SharedItemStateManager.java:203)
	at org.apache.jackrabbit.core.RepositoryImpl.createItemStateManager(RepositoryImpl.java:1317)
	at org.apache.jackrabbit.core.RepositoryImpl$WorkspaceInfo.doInitialize(RepositoryImpl.java:1863)
	at org.apache.jackrabbit.core.RepositoryImpl$WorkspaceInfo.initialize(RepositoryImpl.java:1834)
	at org.apache.jackrabbit.core.RepositoryImpl.initStartupWorkspaces(RepositoryImpl.java:483)
	at org.apache.jackrabbit.core.RepositoryImpl.<init>(RepositoryImpl.java:324)
	at org.apache.jackrabbit.core.RepositoryImpl.create(RepositoryImpl.java:621)
	at [SKIPPED]

Please note that the line numbers in BundleDbPersistenceManager have changed regarding to
the 1.5.6 version of Jackrabbit because I have patched the class. But I think that doesn`t
matter. Any ideas what causes the problem now? Or how to fix the problem?

Thanks in advance,

Sascha

-----Ursprüngliche Nachricht-----
Von: Sascha.Theves@bosch-si.com [mailto:Sascha.Theves@bosch-si.com] 
Gesendet: Montag, 2. Mai 2011 13:24
An: users@jackrabbit.apache.org
Betreff: AW: Jackrabbit doesn`t startup anymore

Hi,

> did you copy the complete repository home directory, i.e. including
> the "ns_*.properties" files?

Yes I copied the complete repository home directory. But I also tried to remove the complete
repository home directory to force a rebuild of the index files without success. Still same
error. Very strange. Debugging is currently not possible because the machine is hosted by
our customer. But I will try to patch Jackrabbit`s BundleDbPersistenceManager to get a complete
stack trace. If I have any news I will post it here.

But anyway, thank you very much for your help so far.

Cheers,

Sascha

-----Ursprüngliche Nachricht-----
Von: Stefan Guggisberg [mailto:stefan.guggisberg@gmail.com] 
Gesendet: Montag, 2. Mai 2011 11:19
An: users@jackrabbit.apache.org
Betreff: Re: Jackrabbit doesn`t startup anymore

On Mon, May 2, 2011 at 9:18 AM,  <Sascha.Theves@bosch-si.com> wrote:
> Hi,
>
>> i would need a full stacktrace of the following error:
>
>> 2011-04-29 07:41:14,278 [main] ERROR BundleDbPersistenceManager - failed
>> to read bundle: cafebabe-cafe-babe-cafe-babecafebabe:
>> java.lang.NumberFormatException: For input string: ""
>
> Attached you will find a debug output log of Jackrabbit. Unfortunately, I do not see
a full stack trace of the NumberFormatException. I think the exception must be catched somewhere
in Jackrabbit? Any ideas how to get the full stack?

either debug jackrabbit and set a breakpoint on the line in
BundleDbPersistenceManager.java
which logs the error, or change that line to print the full stacktrace
and rebuild jackrabbit from
the soruces.

all i can say is that for some reason the deserialization of the root
node data fails.

>
>> what exact steps did you perform to setup the test on the other machine?
>
> I copied the whole application, including the workspace and the lucene index data and
the database configuration, to the other machine and started up the application.

did you copy the complete repository home directory, i.e. including
the "ns_*.properties" files?

>
>> has anything changed on the original machine? environment settings, locales etc?
>
> I do not see any differences. What should I exactly look for?

e.g. environment settings (default encoding, charset, locale), jvm
runtime version, etc.

>
>> what os? deployment details?
>
> OS is a Unix operating system. Jackrabbit is embedded in our application which runs in
an OSGi container. Jackrabbit is connected to a Oracle database which is hosted on another
machine. Java 5 is installed on the machine. More details are printed in the attached log
file.
>
> Any ideas how to get rid of the problem are appreciated because I really need to get
it working again on the orig. machine.

you'll probably have to debug jackrabbit in order to see why the
deserialization of the root node bundle fails.

cheers
stefan

>
> Thanks in advance,
>
> Sascha
>
> -----Ursprüngliche Nachricht-----
> Von: Stefan Guggisberg [mailto:stefan.guggisberg@gmail.com]
> Gesendet: Freitag, 29. April 2011 15:22
> An: users@jackrabbit.apache.org
> Betreff: Re: Jackrabbit doesn`t startup anymore
>
> On Fri, Apr 29, 2011 at 11:54 AM,  <Sascha.Theves@bosch-si.com> wrote:
>> Hi,
>>
>> thanks for your fast reply. We didn`t try a db backup yet but what we have tried
is to install Jackrabbit on another machine with exactly the same configuration (also same
db in use). That Jackrabbit instance works without problems. We can start and stop it and
we can browse the nodes.
>
> that's good news :)
>
>> So it seems that it doesn`t depend on the database...
>
> agreed
>
>> Any other ideas?
>
> what exact steps did you perform to setup the test on the other machine?
> has anything changed on the original machine? environment settings, locales etc?
> what os? deployment details?
>
> obviously there's a problem reading the root node (cafebabe...) on the
> original machine.
>
> i would need a full stacktrace of the following error:
>
> 2011-04-29 07:41:14,278 [main] ERROR BundleDbPersistenceManager - failed
> to read bundle: cafebabe-cafe-babe-cafe-babecafebabe:
> java.lang.NumberFormatException: For input string: ""
>
> it might be that the internal namespace index files (ns_*.properties)
> got corrupted.
>
> cheers
> stefan
>
>>
>> Thanks,
>>
>> Sascha
>>
>>
>>
>> -----Ursprüngliche Nachricht-----
>> Von: Stefan Guggisberg [mailto:stefan.guggisberg@gmail.com]
>> Gesendet: Freitag, 29. April 2011 10:53
>> An: users@jackrabbit.apache.org
>> Betreff: Re: Jackrabbit doesn`t startup anymore
>>
>> On Fri, Apr 29, 2011 at 9:58 AM,  <Sascha.Theves@bosch-si.com> wrote:
>>> Hi all,
>>>
>>>
>>>
>>> we have running a Jackrabbit 1.5.6 instance for months now without any
>>> problems. But since yesterday we were not able anymore to list nodes
>>> anymore and so on. We just got back empty results so that it seems that
>>> no data was ever persisted. After that we shutdown the Jackrabbit
>>> instance and now we are not able to start it again. The following
>>> exception occurs when starting up:
>>>
>>>
>>>
>>> 2011-04-29 07:41:14,278 [main] ERROR BundleDbPersistenceManager - failed
>>> to read bundle: cafebabe-cafe-babe-cafe-babecafebabe:
>>> java.lang.NumberFormatException: For input string: ""
>>>
>>> 2011-04-29 07:41:14,278 [main] ERROR BundleDbPersistenceManager - failed
>>> to read bundle: cafebabe-cafe-babe-cafe-babecafebabe:
>>> java.lang.NumberFormatException: For input string: ""
>>>
>>> 2011-04-29 07:41:14,409 [main] ERROR ConnectionRecoveryManager - could
>>> not execute statement, reason: ORA-00001: unique constraint
>>> (UJXMTSRADMIN.DEFAULT_BUNDLE_IDX) violated
>>
>> seems like your oracle db got corrupted somehow. did you perform sanity
>> checks on your oracle instance? did you try with a db backup?
>>
>> cheers
>> stefan
>>
>>>
>>> , state/code: 23000/1
>>>
>>> 2011-04-29 07:41:14,409 [main] ERROR ConnectionRecoveryManager - could
>>> not execute statement, reason: ORA-00001: unique constraint
>>> (UJXMTSRADMIN.DEFAULT_BUNDLE_IDX) violated
>>>
>>> , state/code: 23000/1
>>>
>>> 2011-04-29 07:41:14,417 [main] ERROR BundleDbPersistenceManager - failed
>>> to write bundle: deadbeef-cafe-babe-cafe-babecafebabe
>>>
>>> java.sql.SQLException: ORA-00001: unique constraint
>>> (UJXMTSRADMIN.DEFAULT_BUNDLE_IDX) violated
>>>
>>>
>>>
>>>                at
>>> oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:12
>>> 5)
>>>
>>>                at
>>> oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:305)
>>>
>>>                at
>>> oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:272)
>>>
>>>                at
>>> oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:626)
>>>
>>>                at
>>> oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.jav
>>> a:182)
>>>
>>>                at
>>> oracle.jdbc.driver.T4CPreparedStatement.execute_for_rows(T4CPreparedStat
>>> ement.java:630)
>>>
>>>                at
>>> oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.
>>> java:1081)
>>>
>>>                at
>>> oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePrepare
>>> dStatement.java:2905)
>>>
>>>                at
>>> oracle.jdbc.driver.OraclePreparedStatement.execute(OraclePreparedStateme
>>> nt.java:2996)
>>>
>>>                at
>>> org.apache.jackrabbit.core.persistence.bundle.util.ConnectionRecoveryMan
>>> ager.executeStmtInternal(ConnectionRecoveryManager.java:371)
>>>
>>>                at
>>> org.apache.jackrabbit.core.persistence.bundle.util.ConnectionRecoveryMan
>>> ager.executeStmtInternal(ConnectionRecoveryManager.java:298)
>>>
>>>                at
>>> org.apache.jackrabbit.core.persistence.bundle.util.ConnectionRecoveryMan
>>> ager.executeStmt(ConnectionRecoveryManager.java:261)
>>>
>>>                at
>>> org.apache.jackrabbit.core.persistence.bundle.util.ConnectionRecoveryMan
>>> ager.executeStmt(ConnectionRecoveryManager.java:239)
>>>
>>>                at
>>> org.apache.jackrabbit.core.persistence.bundle.BundleDbPersistenceManager
>>> .storeBundle(BundleDbPersistenceManager.java:1198)
>>>
>>>                at
>>> org.apache.jackrabbit.core.persistence.bundle.AbstractBundlePersistenceM
>>> anager.putBundle(AbstractBundlePersistenceManager.java:732)
>>>
>>>                at
>>> org.apache.jackrabbit.core.persistence.bundle.AbstractBundlePersistenceM
>>> anager.storeInternal(AbstractBundlePersistenceManager.java:672)
>>>
>>>                at
>>> org.apache.jackrabbit.core.persistence.bundle.AbstractBundlePersistenceM
>>> anager.store(AbstractBundlePersistenceManager.java:536)
>>>
>>>                at
>>> org.apache.jackrabbit.core.persistence.bundle.BundleDbPersistenceManager
>>> .store(BundleDbPersistenceManager.java:524)
>>>
>>>                at
>>> org.apache.jackrabbit.core.state.SharedItemStateManager.createRootNodeSt
>>> ate(SharedItemStateManager.java:1303)
>>>
>>>                at
>>> org.apache.jackrabbit.core.state.SharedItemStateManager.<init>(SharedIte
>>> mStateManager.java:204)
>>>
>>>                at
>>> org.apache.jackrabbit.core.RepositoryImpl.createItemStateManager(Reposit
>>> oryImpl.java:1317)
>>>
>>>                at
>>> org.apache.jackrabbit.core.RepositoryImpl$WorkspaceInfo.doInitialize(Rep
>>> ositoryImpl.java:1863)
>>>
>>>                at
>>> org.apache.jackrabbit.core.RepositoryImpl$WorkspaceInfo.initialize(Repos
>>> itoryImpl.java:1834)
>>>
>>>                at
>>> org.apache.jackrabbit.core.RepositoryImpl.initStartupWorkspaces(Reposito
>>> ryImpl.java:483)
>>>
>>>                at
>>> org.apache.jackrabbit.core.RepositoryImpl.<init>(RepositoryImpl.java:324
>>> )
>>>
>>>                at
>>> org.apache.jackrabbit.core.RepositoryImpl.create(RepositoryImpl.java:621
>>> )
>>>
>>>
>>>
>>> I think the SQL exception is only raised because Jackrabbit is not able
>>> to read the bundle "cafebabe-cafe-babe-cafe-babecafebabe". Do you have
>>> any ideas how to fix the problem or what could have caused the problem?
>>>
>>> Any suggestions would be helpful.
>>>
>>>
>>>
>>> Thanks in advance.
>>>
>>>
>>>
>>> Sascha
>>>
>>>
>>>
>>>
>>
>

Mime
View raw message