Bug 1811234 - EnableMultipleStreamsException when doing system-upgrade download to from f30 to if certain modules are enabled
Summary: EnableMultipleStreamsException when doing system-upgrade download to from f30...
Keywords:
Status: CLOSED EOL
Alias: None
Product: Fedora
Classification: Fedora
Component: dnf
Version: 30
Hardware: x86_64
OS: Linux
high
high
Target Milestone: ---
Assignee: Jaroslav Mracek
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard: openqa
: 1811457 1816430 (view as bug list)
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2020-03-06 22:48 UTC by trevor.schaub
Modified: 2020-05-26 14:24 UTC (History)
37 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2020-05-26 14:24:56 UTC
Type: Bug


Attachments (Terms of Use)
backtrace of the crash (89.34 KB, text/plain)
2020-04-22 21:47 UTC, Adam Williamson
no flags Details

Description trevor.schaub 2020-03-06 22:48:23 UTC
Description of problem:
First bug so likely messy format.
Doing a system-upgrade download action on a fully updated f30 trying to go to f31 fails with EnableMultipleStreamsException and core dump.

terminate called after throwing an instance of 'libdnf::ModulePackageContainer::EnableMultipleStreamsException'
  what():  Cannot enable multiple streams for module 'gimp'
Aborted (core dumped)


Tried the workaround mentioned in bug 1689460 originally mentioned in bug 1656509 to give it a harder shove with the same failure.

This is the standard upgrade:
dnf system-upgrade download --refresh --releasever=31
This is the workaround mentioned in the other bugs for setting module_platform_id and forcing a couple options:
dnf system-upgrade download --refresh --releasever=31 --setopt=module_platform_id=platform:f31 --skip-broken --allowerasing

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


How reproducible:
Every time on this host upgraded with system-upgrade since f22 (and several modules enabled), however not seen on a host originally installed as f28 with no modules enabled (both fully updated f30 systems).

Steps to Reproduce:
1. Ensure the system is fully patched and reboot if necessary 'dnf upgrade --refresh'
2. Begin the system-upgrade download process 'dnf system-upgrade download --refresh --releasever=31'
3. The module mentioned is gimp so tried bypassing that by disabling the gimp module 'dnf module disable gimp'
4. This just resulted in another enabled module being listed as the cause of the exception. 

Actual results:
Exception and core dump not even getting started on the package downloads.
terminate called after throwing an instance of 'libdnf::ModulePackageContainer::EnableMultipleStreamsException'
  what():  Cannot enable multiple streams for module 'gimp'
Aborted (core dumped)

Expected results:
Should have begun downloading packages and either succeeded or showed an issue with system-upgrade that can be fixed (such as any mentioned on the system-upgrade how-to).

Additional info:
Though some module packages were installed (gimp, parts of maven, libgit2) and several were enabled (default) none of the modules showed as installed unless I chose to 'dnf module install gimp' (for example since the only package in gimp module was installed).

Enabled modules on the failing sytem:
[root@jupiter ~]# dnf module list --enabled
Last metadata expiration check: 0:12:33 ago on Fri 06 Mar 2020 04:15:48 PM EST.
Fedora Modular 30 - x86_64
Name         Stream          Profiles               Summary                                                     
ant          1.10 [d][e]     default [d]            Java build tool                                             
gimp         2.10 [d][e]     default [d], devel     GIMP                                                        
libgit2      0.27 [d][e]                            Library implementation of Git                               
maven        3.5 [d][e]      default [d]            Java project management and project comprehension tool      
scala        2.10 [d][e]     default [d]            A hybrid functional/object-oriented language for the JVM    

Fedora Modular 30 - x86_64 - Updates
Name         Stream          Profiles               Summary                                                     
ant          1.10 [d][e]     default [d]            Java build tool                                             
gimp         2.10 [d][e]     default [d], devel     GIMP                                                        
libgit2      0.27 [d][e]                            Library implementation of Git                               
maven        3.5 [d][e]      default [d]            Java project management and project comprehension tool 

Disabling modules obviously causes other issues where dependencies for other packages are no longer available. HOWEVER, once gimp, libgit2 and ant modules were disabled the system-upgrade download would progress to the transaction summary which included this:

Resetting modules:
 ant                                                                           
 gimp                                                                          
 libgit2                                                                       
 maven                                                                         
 scala 

After cancelling the system-upgrade enabling the modules again to fix dependency issues breaks system-upgrade again.

Comment 1 trevor.schaub 2020-03-06 22:57:50 UTC
Should have included this:

Installed Packages
dnf.noarch                               4.2.18-1.fc30                  @updates
dnf-data.noarch                          4.2.18-1.fc30                  @updates
dnf-plugins-core.noarch                  4.0.13-1.fc30                  @updates
dnf-yum.noarch                           4.2.18-1.fc30                  @updates
python3-dnf-plugin-system-upgrade.noarch 4.0.8-2.fc30                   @updates

Comment 2 Hubert Figuiere 2020-03-07 16:08:45 UTC
It is happening to me on Fedora 31 when trying to install Fedora 32 (beta). Disabling the following modules: eclipse, maven and ant work around the issue.

Comment 3 trevor.schaub 2020-03-07 20:44:16 UTC
Hubert,
I didn't proceed with the system-upgrade for 30-31 after disabling modules. Could you confirm that the you completed the upgrade and it still took care of modules and dependencies properly? It should and it's comment about resetting modules appears to indicate this should be the case, but useful to confirm.

My indication of high severity is partly due to the release of f32 very soon where f30 will become EOS. If a stable workaround is confirmed then it could be lowered since clean system-upgrade would still be possible, just needs information added to https://fedoraproject.org/wiki/Common_F31_bugs.

Comment 4 Hubert Figuiere 2020-03-07 20:49:08 UTC
Yes I went ahead after disabling these modules, one after the other (took three attempts). Now running Fedora 32. 

No idea if I have lost functionality yet as Java isn't my cup of tea.

Comment 5 trevor.schaub 2020-03-07 23:49:37 UTC
Personally I am focusing more on packages, dependencies and enabled modules than functionality of the package itself.

I assume the easiest quick check would be to review the currently enabled modules and see if the ones you disabled for the system-upgrade are now enabled again (as I would hope they are). There may have also been a "Resetting modules" notice in the list of packages it was going to download, but that's long gone now. You could also try some of the dnf commands to verify your current packages and look for anything dangling without required dependencies (or if dependencies are still using f31 packages because the updated ones were not available due to disabled module).

The danger with this method is that it would have to be verified if the modules enabled during the system-upgrade match the installed packages, or if it instead chooses the default version for the major version being upgraded to. If it uses the new default that could break people's systems and doesn't fit with the whole purpose of modules being introduced.

If just disabling the problem modules is the requirement for a workaround it's not horrible, just needs effort to verify the modules before and after. The root cause still needs to be fixed, but at least it shouldn't block the ability to upgrade. For now I'm going to leave it to see if the fix is implemented soon enough that I can test it.

Comment 6 Hubert Figuiere 2020-03-08 00:51:53 UTC
I still have these errors:

Modular dependency problems:

 Problem 1: conflicting requests
  - nothing provides module(platform:f31) needed by module meson:latest:3120191009081836:dc56099c-0.x86_64
 Problem 2: conflicting requests
  - nothing provides module(platform:f31) needed by module ninja:latest:3120190304180949:f636be4b-0.x86_64

Comment 7 trevor.schaub 2020-03-08 19:48:54 UTC
That appears to be an unrelated issue with f32. Other bugs for earlier releases seem to indicate it may require updates to the repo with new builds. In f32 your modules should be referencing platform:32 as the required base module where yours indicates f31. Also good to ensure that your /etc/os-release shows the proper version.

Prior issues similar to yours are bug 1636285, and bug 1767422. If you can't find one for f32 would be a good idea to report yours against f32 so it's corrected before release date. Someone else can decide if they're related as they deal with root cause.

Comment 8 David Wells 2020-03-10 12:31:56 UTC
I am seeing the same issue going from F30 to F31. I get the following during the upgrade process:

$ sudo dnf system-upgrade download --refresh --releasever=31
Before you continue ensure that your system is fully upgraded by running "dnf --refresh upgrade". Do you want to continue [y/N]: y
Fedora Modular 31 - x86_64                                                                        38 kB/s |  24 kB     00:00    
Fedora Modular 31 - x86_64 - Updates                                                              46 kB/s |  23 kB     00:00    
Fedora 31 - x86_64 - Updates                                                                      44 kB/s |  22 kB     00:00    
Fedora 31 - x86_64 - Updates                                                                     1.5 MB/s | 2.5 MB     00:01    
Fedora 31 - x86_64                                                                                34 kB/s |  25 kB     00:00    
google-chrome                                                                                     17 kB/s | 1.3 kB     00:00    
RPM Fusion for Fedora 31 - Free - Updates                                                         48 kB/s | 9.9 kB     00:00    
RPM Fusion for Fedora 31 - Free - Updates                                                        562 kB/s | 387 kB     00:00    
RPM Fusion for Fedora 31 - Free                                                                   23 kB/s |  10 kB     00:00    
RPM Fusion for Fedora 31 - Nonfree - Updates                                                      23 kB/s |  10 kB     00:00    
RPM Fusion for Fedora 31 - Nonfree - Updates                                                     144 kB/s |  67 kB     00:00    
RPM Fusion for Fedora 31 - Nonfree                                                                56 kB/s |  10 kB     00:00    
Fedora 31 - x86_64 - VirtualBox                                                                  1.1 kB/s | 181  B     00:00    
terminate called after throwing an instance of 'libdnf::ModulePackageContainer::EnableMultipleStreamsException'
  what():  Cannot enable multiple streams for module 'maven'
Aborted

If I check on modules I see:

[dave@black-sun4 ~]$ dnf module list --enabled
Fedora Modular 30 - x86_64                                                   1.2 MB/s | 2.7 MB     00:02    
Fedora Modular 30 - x86_64 - Updates                                         2.1 MB/s | 4.1 MB     00:01    
Fedora 30 - x86_64 - Updates                                                  12 MB/s |  24 MB     00:01    
Fedora 30 - x86_64                                                            11 MB/s |  70 MB     00:06    
google-chrome                                                                 21 kB/s | 3.5 kB     00:00    
RPM Fusion for Fedora 30 - Free - Updates                                    694 kB/s | 499 kB     00:00    
RPM Fusion for Fedora 30 - Free                                              315 kB/s | 735 kB     00:02    
RPM Fusion for Fedora 30 - Nonfree - Updates                                 200 kB/s |  87 kB     00:00    
RPM Fusion for Fedora 30 - Nonfree                                           425 kB/s | 227 kB     00:00    
Fedora 30 - x86_64 - VirtualBox                                              362  B/s | 181  B     00:00    
Fedora 30 - x86_64 - VirtualBox                                              1.6 kB/s | 1.7 kB     00:01    
Fedora 30 - x86_64 - VirtualBox                                              229 kB/s | 175 kB     00:00    
Fedora Modular 30 - x86_64
Name        Stream            Profiles          Summary                                                      
maven       3.5 [d][e]        default [d]       Java project management and project comprehension tool       
scala       2.10 [d][e]       default [d]       A hybrid functional/object-oriented language for the JVM     

Fedora Modular 30 - x86_64 - Updates
Name        Stream            Profiles          Summary                                                      
maven       3.5 [d][e]        default [d]       Java project management and project comprehension tool       

Hint: [d]efault, [e]nabled, [x]disabled, [i]nstalled

I will try disabling maven and then see if the update works.

Dave

Comment 9 David Wells 2020-03-10 12:36:27 UTC
Disabling maven allowed the upgrade to proceed. 

I got a message about maven and scala being reset but then the download commenced.

Will confirm that update works OK and then report back.

Dave

Comment 10 Patrick Tschackert 2020-03-11 15:15:01 UTC
I have also encountered this bug when trying to upgrade multiple fedora 30 installations to f31 (though not on every instance).
Specifically the maven module is the one causing this problem, although the gimp module was also the cause in one instance.
The workaround (dnf module disable maven, upgrading to f31 and then dnf module enable maven) works, but I would be interested in a real fix because the workaround is not feasible for large numbers of fedora instances.

Comment 11 Andy Tai 2020-03-18 04:15:23 UTC
based on prev comments, I tried this command on a F30 system:

sudo dnf module disable maven && sudo dnf system-upgrade download --releasever=31


still fails with

terminate called after throwing an instance of 'libdnf::ModulePackageContainer::EnableMultipleStreamsException'
  what():  Cannot enable multiple streams for module 'ninja'
Aborted

Comment 12 Hubert Figuiere 2020-03-18 04:27:53 UTC
In comment 2 I disable more that. disable `ninja` and try again. It's persistent so no need to disable maven again.

Comment 13 David Wells 2020-03-22 18:26:35 UTC
I am updating a different machine to the one referenced in my earlier comment. Still a ThinkPad T440p being upgraded from FC30 to FC31. I see the following:

$ sudo dnf system-upgrade download --refresh --releasever=31
Before you continue ensure that your system is fully upgraded by running "dnf --refresh upgrade". Do you want to continue [y/N]: y
Fedora Modular 31 - x86_64                                                                                                                           936 kB/s | 5.2 MB     00:05    
Fedora Modular 31 - x86_64 - Updates                                                                                                                 974 kB/s | 4.0 MB     00:04    
Fedora 31 - x86_64 - Updates                                                                                                                         1.3 MB/s |  22 MB     00:17    
Fedora 31 - x86_64                                                                                                                                   1.2 MB/s |  71 MB     01:00    
google-chrome                                                                                                                                         12 kB/s | 3.5 kB     00:00    
RPM Fusion for Fedora 31 - Free - Updates                                                                                                            295 kB/s | 401 kB     00:01    
RPM Fusion for Fedora 31 - Free                                                                                                                      468 kB/s | 663 kB     00:01    
RPM Fusion for Fedora 31 - Nonfree - Updates                                                                                                          70 kB/s |  67 kB     00:00    
RPM Fusion for Fedora 31 - Nonfree                                                                                                                   136 kB/s | 241 kB     00:01    
Fedora 31 - x86_64 - VirtualBox                                                                                                                      525  B/s | 181  B     00:00    
Fedora 31 - x86_64 - VirtualBox                                                                                                                      1.9 kB/s | 1.7 kB     00:00    
Importing GPG key 0x98AB5139:
 Userid     : "Oracle Corporation (VirtualBox archive signing key) <info@virtualbox.org>"
 Fingerprint: 7B0F AB3A 13B9 0743 5925 D9C9 5442 2A4B 98AB 5139
 From       : https://www.virtualbox.org/download/oracle_vbox.asc
Is this ok [y/N]: y
Fedora 31 - x86_64 - VirtualBox                                                                                                                      246 kB/s | 175 kB     00:00    
terminate called after throwing an instance of 'libdnf::ModulePackageContainer::EnableMultipleStreamsException'
  what():  Cannot enable multiple streams for module 'gimp'
Aborted

This is different to the first machine as it complained about module maven not gimp.

I then see:

$ dnf module list --enabled
Fedora Modular 30 - x86_64                                                                                                                           1.0 MB/s | 2.7 MB     00:02    
Fedora Modular 30 - x86_64 - Updates                                                                                                                 1.1 MB/s | 4.1 MB     00:03    
Fedora 30 - x86_64 - Updates                                                                                                                         1.3 MB/s |  24 MB     00:18    
Fedora 30 - x86_64                                                                                                                                   1.2 MB/s |  70 MB     01:00    
google-chrome                                                                                                                                         11 kB/s | 3.5 kB     00:00    
RPM Fusion for Fedora 30 - Free - Updates                                                                                                            214 kB/s | 499 kB     00:02    
RPM Fusion for Fedora 30 - Free                                                                                                                      530 kB/s | 735 kB     00:01    
RPM Fusion for Fedora 30 - Nonfree - Updates                                                                                                          95 kB/s |  87 kB     00:00    
RPM Fusion for Fedora 30 - Nonfree                                                                                                                   166 kB/s | 227 kB     00:01    
Fedora 30 - x86_64 - VirtualBox                                                                                                                      660  B/s | 181  B     00:00    
Fedora 30 - x86_64 - VirtualBox                                                                                                                      1.9 kB/s | 1.7 kB     00:00    
Importing GPG key 0x98AB5139:
 Userid     : "Oracle Corporation (VirtualBox archive signing key) <info@virtualbox.org>"
 Fingerprint: 7B0F AB3A 13B9 0743 5925 D9C9 5442 2A4B 98AB 5139
 From       : https://www.virtualbox.org/download/oracle_vbox.asc
Is this ok [y/N]: y
Fedora 30 - x86_64 - VirtualBox                                                                                                                      147 kB/s | 175 kB     00:01    
Fedora Modular 30 - x86_64
Name                        Stream                            Profiles                                 Summary                                                                       
gimp                        2.10 [d][e]                       default [d], devel                       GIMP                                                                          
maven                       3.5 [d][e]                        default [d]                              Java project management and project comprehension tool                        
scala                       2.10 [d][e]                       default [d]                              A hybrid functional/object-oriented language for the JVM                      

Fedora Modular 30 - x86_64 - Updates
Name                        Stream                            Profiles                                 Summary                                                                       
gimp                        2.10 [d][e]                       default [d], devel                       GIMP                                                                          
maven                       3.5 [d][e]                        default [d]                              Java project management and project comprehension tool                        

Hint: [d]efault, [e]nabled, [x]disabled, [i]nstalled

I will try disabling GIMP to see if that works, if not will then disable maven and try again.

Dave

Comment 14 David Wells 2020-03-22 18:34:58 UTC
So, trying to disable GIMP gave the following message:

$ sudo dnf module disable gimp
Last metadata expiration check: 0:00:54 ago on Sun 22 Mar 2020 18:32:06 GMT.
Dependencies resolved.
=====================================================================================================================================================================================
 Package                                    Architecture                              Version                                       Repository                                  Size
=====================================================================================================================================================================================
Disabling modules:
 gimp                                                                                                                                                                               

Transaction Summary
=====================================================================================================================================================================================

Is this ok [y/N]: y
Complete!

So, that worked. Will try upgrade again now. Seems OK, got to the prompt to start download.

Dave

Comment 15 Jaroslav Mracek 2020-03-30 14:41:33 UTC
*** Bug 1816430 has been marked as a duplicate of this bug. ***

Comment 16 Jeffrey Goh 2020-04-02 23:32:17 UTC
(In reply to trevor.schaub from comment #3)
> Hubert,
> I didn't proceed with the system-upgrade for 30-31 after disabling modules.
> Could you confirm that the you completed the upgrade and it still took care
> of modules and dependencies properly? It should and it's comment about
> resetting modules appears to indicate this should be the case, but useful to
> confirm.
> 
> My indication of high severity is partly due to the release of f32 very soon
> where f30 will become EOS. If a stable workaround is confirmed then it could
> be lowered since clean system-upgrade would still be possible, just needs
> information added to https://fedoraproject.org/wiki/Common_F31_bugs.

I was able to proceed with system-upgrade for 30-31 after disabling the offending module(s) maven in my case. 
Bug still needs to be fixed though - I don't care much for java either, so happy to remove maven, but I can imagine if gimp broke on my workstation I'd be upset.

# dnf module disable maven
Last metadata expiration check: 0:03:51 ago on Fri 03 Apr 2020 07:17:20 AM.
Dependencies resolved.
===============================================================================
 Package           Architecture     Version            Repository         Size
===============================================================================
Disabling modules:
 maven                                                                        

Transaction Summary
===============================================================================

Is this ok [y/N]: y
Complete!
# dnf system-upgrade download --refresh --releasever=31 --setopt=module_platform_id=platform:f31 --skip-broken --allowerasing
Before you continue ensure that your system is fully upgraded by running "dnf --refresh upgrade". Do you want to continue [y/N]: y
Fedora Modular 31 - x86_64                     5.9 kB/s | 6.4 kB     00:01    
Fedora Modular 31 - x86_64 - Updates           9.5 kB/s | 6.0 kB     00:00    
Fedora 31 - x86_64 - Updates                   4.6 kB/s | 3.7 kB     00:00    
Fedora 31 - x86_64                              10 kB/s | 6.5 kB     00:00    
Dependencies resolved.
===============================================================================
 Package                       Arch   Version                   Repo      Size
===============================================================================
Installing:
 kernel                        x86_64 5.5.13-200.fc31           updates   45 k
 kernel-core                   x86_64 5.5.13-200.fc31           updates   32 M
 kernel-modules                x86_64 5.5.13-200.fc31           updates   29 M
...
Fedora 31 - x86_64 - Updates                                                                                                                                                                                  1.6 MB/s | 1.6 kB     00:00    
Importing GPG key 0x3C3359C4:
 Userid     : "Fedora (31) <fedora-31-primary@fedoraproject.org>"
 Fingerprint: 7D22 D586 7F2A 4236 474B F7B8 50CB 390B 3C33 59C4
 From       : /etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-31-x86_64
Is this ok [y/N]: y
Key imported successfully
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Complete!
Download complete! Use 'dnf system-upgrade reboot' to start the upgrade.
To remove cached metadata and transaction use 'dnf system-upgrade clean'
The downloaded packages were saved in cache until the next successful transaction.
You can remove cached packages by executing 'dnf clean packages'.

Comment 17 Kjetil T. Homme 2020-04-08 23:18:18 UTC
this really needs an entry in https://fedoraproject.org/wiki/Common_F31_bugs

I've been happily using Fedora 29+ a long time without noticing that this modular system was added, so it is a mystery to me that packages were installed from modules rather than the main distro without any active action on my part.  I did *not* ask for a leading or bleeding edge gimp, git-pretty-prompt(!) or maven.

to resolve the issue, I removed all packages matching "module_", which allowed me to start the download.  a core dumping dnf requires desperate action :-p

Comment 18 Adam Williamson 2020-04-22 17:45:17 UTC
openQA f30 -> f31 FreeIPA server upgrade tests are now reliably hitting this:

https://openqa.fedoraproject.org/tests/583457

Comment 19 Adam Williamson 2020-04-22 21:38:26 UTC
It seems pretty easy to reproduce this at present with F30.

1. Do a network minimal install of F30
2. Log in as root
3. dnf -y groupinstall freeipa-server
3. dnf -y install dnf-plugin-system-upgrade
4. dnf -y --releasever=31 system-upgrade download

...boom. Fails every time. I'm currently working on getting a backtrace.

Comment 20 Adam Williamson 2020-04-22 21:47:42 UTC
Created attachment 1680994 [details]
backtrace of the crash

Comment 21 Adam Williamson 2020-04-22 22:40:41 UTC
So, this is crashing when we do:

self.sack.set_modules_enabled_by_pkgset(self._moduleContainer, new_pkgs)

at the end of resolve() in dnf base.py. I modified that to run on one entry from new_pkgs at a time, and log the name of each entry before it ran, so we know where it's failing, and got this:

apache-commons-cli-1.4-4.module_f29+6921+ca3ed728.noarch
terminate called after throwing an instance of 'libdnf::ModulePackageContainer::EnableMultipleStreamsException'
  what():  Cannot enable multiple streams for module 'maven'
Aborted (core dumped)

I also then hacked it up to ignore every package *except* apache-commons-cli in this loop, and it still fails - so just a single set_modules_enabled_by_pkgset() call for the single apache-commons-cli package seems enough to trigger the bug.

Oddly, though, 'dnf --releasever=31 distro-sync apache-commons-cli' doesn't seem to trigger the bug, it completes dependency resolution. It does seem to be the case that the default version of the package in F31 is behind the default version in F30, which may be part of the problem here: F30 has apache-commons-cli-1.4-4.module_f30+8611+513ae82a.noarch , on upgrade to F31 we're trying to downgrade it to apache-commons-cli-1.4-4.module_f29+6921+ca3ed728.noarch .

Comment 22 Axel Ulrich 2020-04-25 18:57:51 UTC
Just confirming same issue on two systems while going from F30 to F31.

First system with gimp, uninstalled gimp and was able to proceed, reinstalled gimp afterwards.

Second system with ant, but ant wasn't even installed, maven was, so removed maven to attempt to get around the error, to no avail, disabled ant module next, then it complained about maven, disabled maven module next and then it allowed me to proceed.

Comment 23 Yura 2020-04-26 23:01:41 UTC
Received the same error.

removed gimp maven and still I'm getting this

terminate called after throwing an instance of 'libdnf::ModulePackageContainer::EnableMultipleStreamsException'
  what():  Cannot enable multiple streams for module 'ant'
Aborted (core dumped)

Comment 24 markusN 2020-04-27 07:56:44 UTC
Following the suggestions in:

https://ask.fedoraproject.org/t/dnf-cores-when-updating-from-30-to-31/6133/3
https://www.spinics.net/linux/fedora/fedora-users/msg495705.html

you may try:

dnf module reset gimp
dnf module reset maven

(and the like for other modules)

For me that worked.

Comment 25 Yura 2020-04-27 12:43:22 UTC
(In reply to markusN from comment #24)
> Following the suggestions in:
> 
> https://ask.fedoraproject.org/t/dnf-cores-when-updating-from-30-to-31/6133/3
> https://www.spinics.net/linux/fedora/fedora-users/msg495705.html
> 
> you may try:
> 
> dnf module reset gimp
> dnf module reset maven
> 
> (and the like for other modules)
> 
> For me that worked.

oh those resets, I've made about 5 times for different modules one by one (ninja, meson...)

And finally I'm going to upgrade. 

thank you :)

Comment 26 Alex Scheel 2020-04-27 16:50:36 UTC
Any update from the DNF team here?

Comment 27 Ben Cotton 2020-04-30 20:10:47 UTC
This message is a reminder that Fedora 30 is nearing its end of life.
Fedora will stop maintaining and issuing updates for Fedora 30 on 2020-05-26.
It is Fedora's policy to close all bug reports from releases that are no longer
maintained. At that time this bug will be closed as EOL if it remains open with a
Fedora 'version' of '30'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version' 
to a later Fedora version.

Thank you for reporting this issue and we are sorry that we were not 
able to fix it before Fedora 30 is end of life. If you would still like 
to see this bug fixed and are able to reproduce it against a later version 
of Fedora, you are encouraged  change the 'version' to a later Fedora 
version prior this bug is closed as described in the policy above.

Although we aim to fix as many bugs as possible during every release's 
lifetime, sometimes those efforts are overtaken by events. Often a 
more recent Fedora release includes newer upstream software that fixes 
bugs or makes them obsolete.

Comment 28 Attila 2020-05-01 12:25:17 UTC
(In reply to markusN from comment #24)
> Following the suggestions in:
> 
> https://ask.fedoraproject.org/t/dnf-cores-when-updating-from-30-to-31/6133/3
> https://www.spinics.net/linux/fedora/fedora-users/msg495705.html
> 
> you may try:
> 
> dnf module reset gimp
> dnf module reset maven
> 
> (and the like for other modules)
> 
> For me that worked.

Hi,

I can confirm this bug: Cannot enable multiple streams for module 'gimp'
I did the following

dnf module reset gimp
dnf module reset maven

It worked for me.

Comment 29 Sami Farin 2020-05-03 21:36:05 UTC
Didn't #1767351 talk about resetting modules before system-upgrade? It still dumps core, using the latest versions on F30.

#0  0x00007ff82f75de35 in __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
#1  0x00007ff82f748895 in __GI_abort () at abort.c:79
#2  0x00007ff82165b756 in __gnu_cxx::__verbose_terminate_handler() [clone .cold] () at /usr/lib64/libstdc++.so.6
#3  0x00007ff8216676dc in __cxxabiv1::__terminate(void (*)()) () at /usr/lib64/libstdc++.so.6
#4  0x00007ff821667747 in  () at /usr/lib64/libstdc++.so.6
#5  0x00007ff8216679b9 in  () at /usr/lib64/libstdc++.so.6
#6  0x00007ff82131a392 in libdnf::ModulePackageContainer::Impl::ModulePersistor::changeStream(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)
    (this=0x55a94d297db0, name="gimp", stream="2.10") at /usr/src/debug/libdnf-0.43.1-5.fc30.x86_64/libdnf/module/ModulePackageContainer.cpp:1160
#7  0x00007ff8213980ed in libdnf::ModulePackageContainer::enable(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)
    (this=this@entry=0x55a94ce9e710, name="gimp", stream="2.10") at /usr/include/c++/9/bits/unique_ptr.h:352
#8  0x00007ff8213981ae in libdnf::ModulePackageContainer::enable(libdnf::ModulePackage const*) (this=0x55a94ce9e710, module=0x55a951739830)
    at /usr/src/debug/libdnf-0.43.1-5.fc30.x86_64/libdnf/module/ModulePackageContainer.cpp:504
#9  0x00007ff821398348 in libdnf::ModulePackageContainer::enableDependencyTree(std::vector<libdnf::ModulePackage*, std::allocator<libdnf::ModulePackage*> >&) (this=0x55a94ce9e710, modulePackages=...) at /usr/src/debug/libdnf-0.43.1-5.fc30.x86_64/libdnf/module/ModulePackageContainer.cpp:726
#10 0x00007ff81f1287e2 in set_modules_enabled_by_pkgset(_SackObject*, _object*, _object*) () at /usr/lib64/python3.7/site-packages/hawkey/_hawkey.so
#11 0x00007ff82f4e70b8 in _PyMethodDef_RawFastCallKeywords
    (method=<optimized out>, self=<Sack at remote 0x7ff81eeb9b40>, args=0x7ff81ebd6610, nargs=<optimized out>, kwnames=<optimized out>)
    at /usr/src/debug/python3-3.7.7-1.fc30.x86_64/Objects/call.c:694
#12 0x00007ff82f5192ad in _PyMethodDescr_FastCallKeywords
    (descrobj=<method_descriptor at remote 0x7ff81f174820>, args=0x7ff81ebd6608, nargs=3, kwnames=0x0)
    at /usr/src/debug/python3-3.7.7-1.fc30.x86_64/Objects/descrobject.c:288
#13 0x00007ff82f51943b in call_function (pp_stack=0x7ffeb33b8fb0, oparg=<optimized out>, kwnames=0x0)
    at /usr/src/debug/python3-3.7.7-1.fc30.x86_64/Python/ceval.c:4593
#14 0x00007ff82f54f40f in _PyEval_EvalFrameDefault (f=<optimized out>, throwflag=<optimized out>)
    at /usr/src/debug/python3-3.7.7-1.fc30.x86_64/Python/ceval.c:3110
#15 0x00007ff82f5067e0 in _PyEval_EvalCodeWithName
    (_co=<optimized out>, globals=<optimized out>, locals=<optimized out>, args=<optimized out>, argcount=<optimized out>, kwnames=0x0, kwargs=0x55a9525f29d8, kwcount=<optimized out>, kwstep=1, defs=0x7ff821963b68, defcount=1, kwdefs=0x0, closure=0x0, name='resolve', qualname='Base.resolve')
    at /usr/src/debug/python3-3.7.7-1.fc30.x86_64/Python/ceval.c:3930
#16 0x00007ff82f507822 in _PyFunction_FastCallKeywords (func=<optimized out>, stack=0x55a9525f29c8, nargs=2, kwnames=<optimized out>)
    at /usr/src/debug/python3-3.7.7-1.fc30.x86_64/Objects/call.c:433
#17 0x00007ff82f51935f in call_function (pp_stack=0x7ffeb33b9290, oparg=<optimized out>, kwnames=0x0)
    at /usr/src/debug/python3-3.7.7-1.fc30.x86_64/Python/ceval.c:4616
#18 0x00007ff82f54f40f in _PyEval_EvalFrameDefault (f=<optimized out>, throwflag=<optimized out>)
    at /usr/src/debug/python3-3.7.7-1.fc30.x86_64/Python/ceval.c:3110
#19 0x00007ff82f507682 in function_code_fastcall (globals=<optimized out>, nargs=2, args=<optimized out>, co=<optimized out>)
    at /usr/src/debug/python3-3.7.7-1.fc30.x86_64/Objects/call.c:408

Comment 30 Adam Pribyl 2020-05-04 07:02:31 UTC
The problem is the system-upgrade hard coded the reset of 3 modules, that were originaly reported, but this happens to more modules. At least this is what I see during system-upgrade.

Comment 31 Rick Richardson 2020-05-09 19:57:49 UTC
Been doing this since f16 or so.

Updating f30 to 31 today.  Got the same error!

terminate called after throwing an instance of 'libdnf::ModulePackageContainer::EnableMultipleStreamsException'
  what():  Cannot enable multiple streams for module 'maven'
/home/rick/bin/fedup-upgrade: line 106: 22573 Aborted   

Wow! Thought I was screwed at that point! Google the message... and it brought me here.     

Did a:

$ sudo dnf module reset maven
$ sudo dnf module reset gimp

and now it says:

...
Transaction Summary
================================================================================
Install     118 Packages
Upgrade    4566 Packages
Remove        7 Packages
Downgrade    75 Packages

Total download size: 5.7 G
DNF will only download packages, install gpg keys, and check the transaction.
Is this ok [y/N]: 

Knock in wood I am going forward with this...
If I don't come back you will know that something went wrong and I switched to another vendors Linux!

Comment 32 Rick Richardson 2020-05-09 21:43:14 UTC
OK. I'm back and updated to f31.

Comment 33 trevor.schaub 2020-05-10 18:05:10 UTC
Proceeding with one upgrade using the module reset workaround.

Still like to see some indication of root cause for the module issue and assume someone is going to fix the dnf core issue as well. This could still re-emerge in future system-upgrades to later versions.

Comment 34 trevor.schaub 2020-05-10 18:24:18 UTC
Forgot to add another clarification. Note that three modules actually reset as part of the system-upgrade, but only after I manually reset the maven and gimp modules. Is this an issue brought forward from other 

Of the three that reset as part of system-upgrade, only libgit2 package is installed, though dnf does not list the module as installed.

Enabling module streams:
 gimp                                   2.10                                   
 maven                                  3.5                                    
Resetting modules:
 ant                                                                           
 libgit2                                                                       
 scala

Comment 35 trevor.schaub 2020-05-10 23:09:33 UTC
Still not a clean upgrade with hundreds of dangling symlinks.

Also, why does the system-upgrade use old repo data? I wondered when I saw it listing downgrade of 600 packages, but then the issue is confirmed when I then had to patch 1500 packages after booting into f31.

Comment 36 Marco Nolden 2020-05-11 07:59:34 UTC
Nor sure if this helps, but upgrading from 31 to 32 I get this:

Modular dependency problem:

 Problem: conflicting requests
  - nothing provides module(platform:f31) needed by module php:remi-7.3:20200506061209:00000000-0.x86_64
terminate called after throwing an instance of 'libdnf::ModulePackageContainer::EnableMultipleStreamsException'
  what():  Cannot enable multiple streams for module 'php'
Aborted (core dumped)

Comment 37 Marco Nolden 2020-05-11 08:06:16 UTC
(In reply to Marco Nolden from comment #36)
> Nor sure if this helps, but upgrading from 31 to 32 I get this:
> 
> Modular dependency problem:
> 
>  Problem: conflicting requests
>   - nothing provides module(platform:f31) needed by module
> php:remi-7.3:20200506061209:00000000-0.x86_64
> terminate called after throwing an instance of
> 'libdnf::ModulePackageContainer::EnableMultipleStreamsException'
>   what():  Cannot enable multiple streams for module 'php'
> Aborted (core dumped)

This was fixable for me by deactivating the custom repos, but I think aborting is not the optimal behaviour.

Comment 38 Sami Farin 2020-05-11 08:29:52 UTC
For f30 to f31 system-upgrade I disabled fedora-*modular.repo .
I got only a minor problem:

Error: Transaction test error:
  file /usr/share/gocode/src/google.golang.org/grpc/glide.lock from install of golang-google-grpc-devel-1.21.1-3.fc31.noarch conflicts with file from package golang-github-grpc-grpc-go-devel-1.18.0-2.fc30.x86_64

in f31 the modular repos were still disabled. The next day I upgraded to f32.

Comment 39 Jaroslav Mracek 2020-05-11 12:15:36 UTC
*** Bug 1811457 has been marked as a duplicate of this bug. ***

Comment 40 Jaroslav Mracek 2020-05-11 12:18:39 UTC
The issue could be resolve by `dnf module reset '*' ` just before `dnf system upgrade download` command.

Comment 41 Fedora Update System 2020-05-25 09:17:06 UTC
FEDORA-2020-cf6fab802c has been submitted as an update to Fedora 32. https://bodhi.fedoraproject.org/updates/FEDORA-2020-cf6fab802c

Comment 42 Fedora Update System 2020-05-25 09:21:19 UTC
FEDORA-2020-ef67489659 has been submitted as an update to Fedora 31. https://bodhi.fedoraproject.org/updates/FEDORA-2020-ef67489659

Comment 43 Fedora Update System 2020-05-25 09:24:45 UTC
FEDORA-2020-955e800812 has been submitted as an update to Fedora 30. https://bodhi.fedoraproject.org/updates/FEDORA-2020-955e800812

Comment 44 Fedora Update System 2020-05-26 04:41:07 UTC
FEDORA-2020-cf6fab802c has been pushed to the Fedora 32 testing repository.
In short time you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --advisory=FEDORA-2020-cf6fab802c`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2020-cf6fab802c

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 45 Fedora Update System 2020-05-26 04:55:10 UTC
FEDORA-2020-955e800812 has been pushed to the Fedora 30 testing repository.
In short time you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --advisory=FEDORA-2020-955e800812`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2020-955e800812

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 46 Fedora Update System 2020-05-26 04:56:53 UTC
FEDORA-2020-ef67489659 has been pushed to the Fedora 31 testing repository.
In short time you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --advisory=FEDORA-2020-ef67489659`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2020-ef67489659

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 47 Ben Cotton 2020-05-26 14:24:56 UTC
Fedora 30 changed to end-of-life (EOL) status on 2020-05-26. Fedora 30 is
no longer maintained, which means that it will not receive any further
security or bug fix updates. As a result we are closing this bug.

If you can reproduce this bug against a currently maintained version of
Fedora please feel free to reopen this bug against that version. If you
are unable to reopen this bug, please file a new report against the
current release. If you experience problems, please add a comment to this
bug.

Thank you for reporting this bug and we are sorry it could not be fixed.


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