Skip to content

Exception while initializing db after installation #1493

@miljanuscumlic

Description

@miljanuscumlic

What is the problem

After installation procedure there is a report on caught exception while initializing db.

What did you expect

No exception to appear.

Describe how to reproduce or add a test

Install exist-db. Uninstall it. Install it again with the same data directory as in the former installation and with old data within it.

Context information

  • eXist-db version 3.3.0, or 3.2.0
  • Java version Java8u131, Java8u141
  • Operating system Windows XP
  • 32
  • custom changes in e.g. conf.xml: none

This is the report I got:

The system cannot find the file C:\Programs\Java\jdk1.8.0_141.
The system cannot find the file C:\Programs\exist-db.
A subdirectory or file C:\Programs\eXist-db\tools\jetty\tmp already exists.
"-Xms64m -Xmx768m -Djava.endorsed.dirs="C:\Programs\eXist-db"\lib\endorsed"
--- Starting embedded database instance ---
Caught an exception while initializing db: Wrong password for user [admin] 
org.xmldb.api.base.XMLDBException: Wrong password for user [admin] 
--- Initialization complete. Shutdown embedded database instance ---
	at org.exist.xmldb.DatabaseImpl.getUser(DatabaseImpl.java:290)
	at org.exist.xmldb.DatabaseImpl.getLocalCollection(DatabaseImpl.java:187)
	at org.exist.xmldb.DatabaseImpl.getCollection(DatabaseImpl.java:165)
	at org.exist.xmldb.DatabaseImpl.getCollection(DatabaseImpl.java:156)
	at org.xmldb.api.DatabaseManager.getCollection(Unknown Source)
	at org.exist.installer.Setup.initDb(Setup.java:77)
	at org.exist.installer.Setup.main(Setup.java:66)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.exist.start.Main.invokeMain(Main.java:140)
	at org.exist.start.Main.run(Main.java:453)
	at org.exist.start.Main.main(Main.java:64)
Caused by: org.exist.security.AuthenticationException: Wrong password for user [admin] 
	at org.exist.security.internal.RealmImpl.authenticate(RealmImpl.java:274)
	at org.exist.security.internal.SecurityManagerImpl.authenticate(SecurityManagerImpl.java:435)
	at org.exist.xmldb.DatabaseImpl.getUser(DatabaseImpl.java:288)
	... 13 more
[[email protected]: Wrong password for user [admin] 
	at org.exist.security.internal.RealmImpl.authenticate(RealmImpl.java:274)
	at org.exist.security.internal.SecurityManagerImpl.authenticate(SecurityManagerImpl.java:435)
	at org.exist.xmldb.DatabaseImpl.getUser(DatabaseImpl.java:288)
	at org.exist.xmldb.DatabaseImpl.getLocalCollection(DatabaseImpl.java:187)
	at org.exist.xmldb.DatabaseImpl.getCollection(DatabaseImpl.java:165)
	at org.exist.xmldb.DatabaseImpl.getCollection(DatabaseImpl.java:156)
	at org.xmldb.api.DatabaseManager.getCollection(Unknown Source)
	at org.exist.installer.Setup.initDb(Setup.java:77)
	at org.exist.installer.Setup.main(Setup.java:66)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.exist.start.Main.invokeMain(Main.java:140)
	at org.exist.start.Main.run(Main.java:453)
	at org.exist.start.Main.main(Main.java:64)
Caused by: org.exist.security.AuthenticationException: Wrong password for user [admin] 
	at org.exist.security.internal.RealmImpl.authenticate(RealmImpl.java:274)
	at org.exist.security.internal.SecurityManagerImpl.authenticate(SecurityManagerImpl.java:435)
	at org.exist.xmldb.DatabaseImpl.getUser(DatabaseImpl.java:288)
	at org.exist.xmldb.DatabaseImpl.getLocalCollection(DatabaseImpl.java:187)
	at org.exist.xmldb.DatabaseImpl.getCollection(DatabaseImpl.java:165)
	at org.exist.xmldb.DatabaseImpl.getCollection(DatabaseImpl.java:156)
	at org.xmldb.api.DatabaseManager.getCollection(Unknown Source)
	at org.exist.installer.Setup.initDb(Setup.java:77)
	at org.exist.installer.Setup.main(Setup.java:66)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.exist.start.Main.invokeMain(Main.java:140)
	at org.exist.start.Main.run(Main.java:453)
	at org.exist.start.Main.main(Main.java:64)

The part from the report Caught an exception while initializing db: Wrong password for user [admin] is pretty unclear because it is shown no matter what password is entered during installation whether it is the same or not as in the former installation.

After installation is done, the database does not seem to be broken and I can login as admin without any problems.

When I choose some empty data directory in my second installation, the report I am getting is:

The system cannot find the file C:\Programs\Java\jdk1.8.0_141.
The system cannot find the file C:\Programs\exist-db.
A subdirectory or file d:\eXist-db\tools\jetty\tmp already exists.
"-Xms64m -Xmx768m -Djava.endorsed.dirs="d:\eXist-db"\lib\endorsed"
--- Starting embedded database instance ---
Setting admin user password...
--- Initialization complete. Shutdown embedded database instance ---

The only difference in these two installation procedures is the chosen data directory.
Btw, I do not know why I am getting these The system cannot find the file errors because both mentioned directories exist.

Metadata

Metadata

Assignees

Labels

bugissue confirmed as bugin progressIssue is actively being worked uponinstaller

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions