Note: This bug is displayed in read-only format because the product is no longer active in Red Hat Bugzilla.

Bug 1062318

Summary: [RFE] ovirt-engine doesn't work with jboss-as >= 8.0 (wildfly) on Fedora 20
Product: [Retired] oVirt Reporter: Sandro Bonazzola <sbonazzo>
Component: ovirt-engine-coreAssignee: bugs <bugs>
Status: CLOSED NOTABUG QA Contact: bugs <bugs>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 3.4CC: acathrow, bmr, gklein, iheim, juan.hernandez, pstehlik, tomek, yeylon
Target Milestone: ---Keywords: Improvement, Triaged
Target Release: 3.5.0   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard: infra
Fixed In Version: Doc Type: Enhancement
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2014-04-08 20:02:10 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: Infra RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1060198    
Attachments:
Description Flags
boot.log
none
engine.log
none
server.log none

Description Sandro Bonazzola 2014-02-06 16:18:06 UTC
providing a symlink from /usr/share/wildfly to /usr/share/jboss-as engine-setup completes successfully.

service ovirt-engine status is however:

# service ovirt-engine status
Redirecting to /bin/systemctl status  ovirt-engine.service
ovirt-engine.service - oVirt Engine
   Loaded: loaded (/usr/lib/systemd/system/ovirt-engine.service; enabled)
   Active: failed (Result: exit-code) since gio 2014-02-06 17:07:04 CET; 6min ago
  Process: 22535 ExecStart=/usr/share/ovirt-engine/services/ovirt-engine/ovirt-engine.py --redirect-output --systemd=notify $EXTRA_ARGS start (code=exited, status=1/FAILURE)
 Main PID: 22535 (code=exited, status=1/FAILURE)
   CGroup: /system.slice/ovirt-engine.service

feb 06 17:07:03 arilinn.home systemd[1]: Starting oVirt Engine...
feb 06 17:07:03 arilinn.home systemd[1]: Started oVirt Engine.
feb 06 17:07:03 arilinn.home java[22557]: Uncaught exception java.lang.ClassNotFoundException in method java.lang.ClassLoader.loadClass()
feb 06 17:07:04 arilinn.home ovirt-engine.py[22535]: 2014-02-06 17:07:04,451 ovirt-engine: ERROR run:532 Error: process terminated with status code 1
feb 06 17:07:04 arilinn.home systemd[1]: ovirt-engine.service: main process exited, code=exited, status=1/FAILURE
feb 06 17:07:04 arilinn.home systemd[1]: Unit ovirt-engine.service entered failed state.

Comment 1 Tomasz Torcz 2014-04-03 11:18:31 UTC
There are patches, but are there any nightly builds that I can test?

Comment 2 Juan Hernández 2014-04-03 11:37:18 UTC
The patches are incomplete and abandoned, so there isn't anything that can be tested.

Comment 3 Juan Hernández 2014-04-03 11:38:28 UTC
Are you interested in working in this?

Comment 4 Tomasz Torcz 2014-04-04 14:06:37 UTC
Nah, I'm just an user, who inadvertently upgraded his engine box to Fedora 20. I have no java skills to solve this issue by myself.

Comment 5 Juan Hernández 2014-04-04 14:12:24 UTC
If you want to use Fedora 20 you can download the .zip version of JBoss AS 7 from here:

  http://download.jboss.org/jbossas/7.1/jboss-as-7.1.1.Final/jboss-as-7.1.1.Final.zip

Uncompress it somewhere:

  unzip boss-as-7.1.1.Final.zip -d /usr/share

Then you can modify the engine configuration to use that version of the application server instead of the default one. Go to /etc/ovirt-engine/engine.conf.d and modify the JBOSS_HOME variable in the 10-setup-jboss.conf file:

  JBOSS_HOME="/usr/share/jboss-as-7.1.1.Final"

After that restart the ovirt-engine service.

Comment 6 Tomasz Torcz 2014-04-07 09:30:26 UTC
Thanks for help, but it didn't work. Although ovirt-engine.service is up, the web interface is not available. Startup generated close to 100 KB of logs, of which the following look relevant:

2014-04-07 11:25:54,886 INFO  [org.jboss.as.server] (DeploymentScanner-threads - 2) JBAS015870: Deploy of deployment "en
gine.ear" was rolled back with failure message {"JBAS014671: Failed services" => {"jboss.deployment.subunit.\"engine.ear
\".\"bll.jar\".component.InitBackendServicesOnStartupBean.START" => "org.jboss.msc.service.StartException in service jbo
ss.deployment.subunit.\"engine.ear\".\"bll.jar\".component.InitBackendServicesOnStartupBean.START: Failed to start servi
ce"}}

Comment 7 Juan Hernández 2014-04-07 09:53:54 UTC
Fedora 20 isn't currently supported, but I use it every day without problems, using the workaround I described in comment 5. Can you clean the logs, try to start again and then attach the logs? We will need /var/log/ovirt-engine/boot.log, /var/log/ovirt-engine/server.log and /var/log/ovirt-engine/engine.log.

Comment 8 Tomasz Torcz 2014-04-07 10:35:09 UTC
Created attachment 883555 [details]
boot.log

Comment 9 Tomasz Torcz 2014-04-07 10:36:08 UTC
Created attachment 883556 [details]
engine.log

Comment 10 Tomasz Torcz 2014-04-07 10:37:27 UTC
Created attachment 883557 [details]
server.log

Comment 11 Juan Hernández 2014-04-07 10:58:17 UTC
The relevant log message in this case is this one:

  org.postgresql.util.PSQLException: The column name ha_configured was not found in this ResultSet.

This database column was added in 3.4, so this means that the version of the engine that you are using doesn't match the database schema. Either you updated the packages without re-running "engine-setup" or you recovered an old database backup.

Comment 12 Tomasz Torcz 2014-04-07 11:54:50 UTC
Oh, operator error. After I run "engine-setup   --jboss-home=/usr/share/jboss-as-7.1.1.Final" it indeed worked.
Thank you for this workaround!

Comment 13 Itamar Heim 2014-04-08 20:02:10 UTC
closing this as its not supported yet, and we'll track this properly in the future.

Comment 14 Bryn M. Reeves 2014-06-05 15:52:18 UTC
I just did 'cd /usr/share; ln -s wildfly jboss-as'

So far so good...

Comment 15 Bryn M. Reeves 2014-06-05 16:04:50 UTC
nm, fails to start with Wildfly:

[root@vm-130 tmp]# less /var/log/ovirt-engine/boot.log 
11:56:59,862 INFO  [org.jboss.modules] JBoss Modules version 1.3.0.Final
11:57:01,179 INFO  [org.jboss.msc] JBoss MSC version 1.2.0.Beta1
11:57:01,272 INFO  [org.jboss.as] JBAS015899: WildFly 8.0.0.Final "WildFly" starting
11:57:01,798 ERROR [org.jboss.as.server] JBAS015956: Caught exception during boot: org.jboss.as.controller.persistence.ConfigurationPersistenceException: JBAS014676: Failed to parse configuration
        at org.jboss.as.controller.persistence.XmlConfigurationPersister.load(XmlConfigurationPersister.java:112) [wildfly-controller-8.0.0.Final.jar:8.0.0.Final]
        at org.jboss.as.server.ServerService.boot(ServerService.java:331) [wildfly-server-8.0.0.Final.jar:8.0.0.Final]
        at org.jboss.as.controller.AbstractControllerService$1.run(AbstractControllerService.java:256) [wildfly-controller-8.0.0.Final.jar:8.0.0.Final]
        at java.lang.Thread.run(Thread.java:744) [rt.jar:1.7.0_55]
Caused by: javax.xml.stream.XMLStreamException: JBAS014674: Failed to load module org.jboss.as.web
        at org.jboss.as.controller.parsing.ExtensionXml.parseExtensions(ExtensionXml.java:155) [wildfly-controller-8.0.0.Final.jar:8.0.0.Final]
        at org.jboss.as.server.parsing.StandaloneXml.readServerElement_1_1(StandaloneXml.java:325) [wildfly-server-8.0.0.Final.jar:8.0.0.Final]
        at org.jboss.as.server.parsing.StandaloneXml.readElement(StandaloneXml.java:137) [wildfly-server-8.0.0.Final.jar:8.0.0.Final]
        at org.jboss.as.server.parsing.StandaloneXml.readElement(StandaloneXml.java:107) [wildfly-server-8.0.0.Final.jar:8.0.0.Final]
        at org.jboss.staxmapper.XMLMapperImpl.processNested(XMLMapperImpl.java:110) [staxmapper.jar:1.1.0.Final]
        at org.jboss.staxmapper.XMLMapperImpl.parseDocument(XMLMapperImpl.java:69) [staxmapper.jar:1.1.0.Final]
        at org.jboss.as.controller.persistence.XmlConfigurationPersister.load(XmlConfigurationPersister.java:104) [wildfly-controller-8.0.0.Final.jar:8.0.0.Final]
        ... 3 more
Caused by: java.util.concurrent.ExecutionException: java.lang.UnsupportedOperationException: JBAS013452: Legacy extension 'org.jboss.as.web' is not supported on servers running this version. The extension is only supported for use by hosts running a previous release in a mixed-version managed domain
        at java.util.concurrent.FutureTask.report(FutureTask.java:122) [rt.jar:1.7.0_55]
        at java.util.concurrent.FutureTask.get(FutureTask.java:188) [rt.jar:1.7.0_55]
        at org.jboss.as.controller.parsing.ExtensionXml.parseExtensions(ExtensionXml.java:147) [wildfly-controller-8.0.0.Final.jar:8.0.0.Final]
        ... 9 more
Caused by: java.lang.UnsupportedOperationException: JBAS013452: Legacy extension 'org.jboss.as.web' is not supported on servers running this version. The extension is only supported for use by hosts running a previous release in a mixed-version managed domain
        at org.jboss.as.controller.extension.AbstractLegacyExtension.initializeParsers(AbstractLegacyExtension.java:82) [wildfly-controller-8.0.0.Final.jar:8.0.0.Final]
        at org.jboss.as.controller.parsing.ExtensionXml.loadModule(ExtensionXml.java:183) [wildfly-controller-8.0.0.Final.jar:8.0.0.Final]
        at org.jboss.as.controller.parsing.ExtensionXml.access$000(ExtensionXml.java:69) [wildfly-controller-8.0.0.Final.jar:8.0.0.Final]
        at org.jboss.as.controller.parsing.ExtensionXml$1.call(ExtensionXml.java:127) [wildfly-controller-8.0.0.Final.jar:8.0.0.Final]
        at org.jboss.as.controller.parsing.ExtensionXml$1.call(ExtensionXml.java:124) [wildfly-controller-8.0.0.Final.jar:8.0.0.Final]
        at java.util.concurrent.FutureTask.run(FutureTask.java:262) [rt.jar:1.7.0_55]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [rt.jar:1.7.0_55]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [rt.jar:1.7.0_55]
        at java.lang.Thread.run(Thread.java:744) [rt.jar:1.7.0_55]
        at org.jboss.threads.JBossThread.run(JBossThread.java:122) [jboss-threads.jar:2.1.0.Final]

This was good enough for the very specific case I wanted to test (just needed to run engine-setup). The service starts fine using the JBoss AS7 workaround from comment #5.