dev/core#1360: Fix Programatic Installation Of Multiple Extensions on v5.19 #15724
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Overview
We have a drupal profile we use to install drupal sites with CiviCRM and some common extensions. When running the profile, CiviCRM is upgraded to v5.19. After that, the extensions are installed, however, the first extension installation causes a database exception to be thrown. It doesn't matter what extension is installed, every time, the installation of the first extension will fail.
Before
upgrade_5_19_alpha1()
creates a newfield on civicrm_status_pref
table. https://github.com/civicrm/civicrm-core/blob/master/CRM/Upgrade/Incremental/php/FiveNineteen.php#L69-L74civicrm_status_pref
table missing the newis_active
column.log_civicrm_status_pref
is missing theis_active
column and tries to create it again, causing the exception to be thrown.After
I've added a method that resets the columnStats cache when rebuilding the complete schema, in order to make sure we use the actual state of the schema when doing the sync.