Bug 1373793 - java-1.8.0-openjdk.i686 and java-1.8.0-openjdk-headless.i686 mismatched version
Summary: java-1.8.0-openjdk.i686 and java-1.8.0-openjdk-headless.i686 mismatched version
Keywords:
Status: CLOSED NOTABUG
Alias: None
Product: Fedora
Classification: Fedora
Component: java-1.8.0-openjdk
Version: 24
Hardware: x86_64
OS: Linux
unspecified
medium
Target Milestone: ---
Assignee: jiri vanek
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2016-09-07 07:25 UTC by Gabriel Machado
Modified: 2016-11-22 13:34 UTC (History)
7 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2016-09-07 14:48:54 UTC
Type: Bug


Attachments (Terms of Use)

Description Gabriel Machado 2016-09-07 07:25:30 UTC
Description of problem:


Version-Release number of selected component (if applicable):


How reproducible:


Steps to Reproduce:
1. dnf update && dnf install java-1.8.0-openjdk-headless


Actual results:
Error : package java-1.8.0-openjdk-1:1.8.0.91-7.b14.fc24.i686 requires java-1.8.0-openjdk-headless = 1:1.8.0.91-7.b14.fc24, but none of the providers can be installed

Expected results:
Successful installation

Additional info:
java-1.8.0-openjdk-1.8.0.102-1.b14.fc24.i686.rpm is not in the updates repository.

64 bits and 32 bits java-1.8.0-openjdk rpm packages have not the same version :
dnf info java-1.8.0-openjdk
Vérification de l'expiration des métadonnées effectuée il y a 0:04:33 sur Wed Sep  7 09:16:39 2016.
Paquets disponibles
Nom         : java-1.8.0-openjdk
Architectur : i686
Époque      : 1
Version     : 1.8.0.91
Révision    : 7.b14.fc24
Taille      : 232 k
Dépôt       : fedora
Résumé      : OpenJDK Runtime Environment
URL         : http://openjdk.java.net/
Licence     : ASL 1.1 and ASL 2.0 and GPL+ and GPLv2 and GPLv2 with exceptions and LGPL+ and LGPLv2 and MPLv1.0 and MPLv1.1 and Public Domain and W3C
Description : The OpenJDK runtime environment.

Nom         : java-1.8.0-openjdk
Architectur : x86_64
Époque      : 1
Version     : 1.8.0.102
Révision    : 1.b14.fc24
Taille      : 228 k
Dépôt       : updates
Résumé      : OpenJDK Runtime Environment
URL         : http://openjdk.java.net/
Licence     : ASL 1.1 and ASL 2.0 and GPL+ and GPLv2 and GPLv2 with exceptions and LGPL+ and LGPLv2 and MPLv1.0 and MPLv1.1 and Public Domain and W3C
Description : The OpenJDK runtime environment.

64 bits and 32 bits java-1.8.0-openjdk-headless rpm packages have the same version :
dnf info java-1.8.0-openjdk-headless
Vérification de l'expiration des métadonnées effectuée il y a 0:06:41 sur Wed Sep  7 09:16:39 2016.
Paquets installés
Nom         : java-1.8.0-openjdk-headless
Architectur : x86_64
Époque      : 1
Version     : 1.8.0.102
Révision    : 1.b14.fc24
Taille      : 103 M
Dépôt       : @System
Depuis le d : updates
Résumé      : OpenJDK Runtime Environment
URL         : http://openjdk.java.net/
Licence     : ASL 1.1 and ASL 2.0 and GPL+ and GPLv2 and GPLv2 with exceptions and LGPL+ and LGPLv2 and MPLv1.0 and MPLv1.1 and Public Domain and W3C
Description : The OpenJDK runtime environment without audio and video support.

Paquets disponibles
Nom         : java-1.8.0-openjdk-headless
Architectur : i686
Époque      : 1
Version     : 1.8.0.102
Révision    : 1.b14.fc24
Taille      : 31 M
Dépôt       : updates
Résumé      : OpenJDK Runtime Environment
URL         : http://openjdk.java.net/
Licence     : ASL 1.1 and ASL 2.0 and GPL+ and GPLv2 and GPLv2 with exceptions and LGPL+ and LGPLv2 and MPLv1.0 and MPLv1.1 and Public Domain and W3C
Description : The OpenJDK runtime environment without audio and video support.

Comment 1 jiri vanek 2016-09-07 10:31:10 UTC
Hello. I'm finding the report a bit confusing (sorry). This is probably fedora release engineering issue, or maybe also dnf issue or really maybe java issue


First to clarify: When you are installing not-your-architecture, but still compatible one (as you do with i686 on x86_64)  thngs may go wrong.

1) dnf install java-1.8.0-openjdk.i686
Error: package java-1.8.0-openjdk-1:1.8.0.91-7.b14.fc24.i686 requires java-1.8.0-openjdk-headless = 1:1.8.0.91-7.b14.fc24, but none of the providers can be installed

Imho dnf is trying to satisfy  java-1.8.0-openjdk.i686's dependency of headless one by x64. And that is failing... Not exactly sure why.

2)However when you go with 
dnf install java-1.8.0-openjdk.i686 java-1.8.0-openjdk-headless.i686
Last metadata expiration check: 1:42:25 ago on Wed Sep  7 10:31:44 2016.
Dependencies resolved.
========================================================================================
 Package                         Arch     Version                    Repository   Size
========================================================================================
Installing:
 giflib                          i686     4.1.6-15.fc24              fedora       45 k
 java-1.8.0-openjdk              i686     1:1.8.0.91-7.b14.fc24      fedora      232 k
 java-1.8.0-openjdk-headless     i686     1:1.8.0.91-7.b14.fc24      fedora       31 M
Skipping packages with conflicts:(add '--best --allowerasing' to command line to force their upgrade):
 java-1.8.0-openjdk-headless     i686     1:1.8.0.102-1.b14.fc24     updates      31 M

Transaction Summary
========================================================================================
Install  3 Packages
Skip     1 Package

The result is much better.  But you are very right that versions are wrong. I'm pretty sure my updates were correct: 
https://bodhi.fedoraproject.org/updates/FEDORA-2016-7e41b6802e and on all arches:
http://koji.fedoraproject.org/koji/buildinfo?buildID=794434


3) Now - last of all: My specs http://pkgs.fedoraproject.org/cgit/rpms/java-1.8.0-openjdk.git/tree/java-1.8.0-openjdk.spec#n655 are requesting headless *without* architecture ( %{_isa} ) macro.  That shouldbe correct and aligned with packaging guidelines.


So if 3 is the fault, and I should depend with isa... it wil break guidelines (?)
if 1 is the fault then dnf need some fix (dnf)
And if 3 is the fault, then i686 build did not make it to repos.... (release-engineering)


Thoughts?

Comment 2 jiri vanek 2016-09-07 10:33:20 UTC
hmm.. Interesting is that  the installed i686 packages are going form *fedora* repo, but the one with missing depndencises is going from *updates* repo.

Isn't 32bit fedora already "dead"? That means the update repos do not work?

Comment 3 Gabriel Machado 2016-09-07 14:23:45 UTC
jiri vanek, you're  right.

The problem is that updates repository contains only the 64 bits version java-1.8.0-openjdk rpm (version 102). So dnf find the 32 bits version rpm in fedora repository only (version 91).

To install the package, i've downloaded and installed the java-1.8.0-openjdk.i686 (version 102) package from the fedora 24 i686 updates repository. 

To solve definitively this issue, you should add the rpm java-1.8.0-openjdk.i686 (version 102) to x86_64 updates repository too.

Comment 4 jiri vanek 2016-09-07 14:48:54 UTC
Ok. It looks like multilib openjdk is intentionally out of play: https://fedorahosted.org/rel-eng/ticket/5762

As you can use it by direct download from koji and localinstall, I will close as not a bug.

Comment 5 Gabriel Machado 2016-09-07 14:53:34 UTC
it's not a bug, just a missing package.

Who can add the missing package in fedora 24 x86_64 updates repository ?

Comment 6 jiri vanek 2016-09-07 14:58:50 UTC
No one. Openjdk is blacklisted on multilib, On 32b fedora, the update is normally available.


Note You need to log in before you can comment on or make changes to this bug.