Opened 5 years ago
Closed 5 years ago
#49367 closed defect (bug) (fixed)
MariaDB Galera Cluster fails tests due to MyISAM being forced
Reported by: | xkon | Owned by: | SergeyBiryukov |
---|---|---|---|
Milestone: | 5.4 | Priority: | normal |
Severity: | normal | Version: | |
Component: | Build/Test Tools | Keywords: | dev-feedback has-patch |
Focuses: | Cc: |
Description
I'm opening this ticket after the weekly hosting-community meeting on Slack.
The original report can be found on the phpunit-test-runner Github issues at https://github.com/WordPress/phpunit-test-runner/issues/89 .
It seems that we're forcing the test setup here to use MyISAM , https://github.com/WordPress/wordpress-develop/blob/master/tests/phpunit/tests/dbdelta.php#L49 which isn't supported in some environments.
Specifically in this case the MariaDB Galera Cluster only supports InnoDB/XtraDB so the tests are failing.
As WordPress doesn't require MyISAM in general & if possible we should be adding a check here to see what engine is supported and change from MyISAM to InnoDB respectively to avoid issues like this.
Attachments (1)
Change History (8)
#1
@
5 years ago
- Milestone changed from Awaiting Review to 5.4
- Owner set to SergeyBiryukov
- Status changed from new to accepted
This ticket was mentioned in Slack in #hosting-community by amykamala. View the logs.
5 years ago
#4
follow-up:
↓ 5
@
5 years ago
@SergeyBiryukov after checking out the tests, in general, I see plenty of explicitly stated MyISAM i.e.
https://github.com/WordPress/wordpress-develop/blob/master/tests/phpunit/tests/dbdelta.php#L453
https://github.com/WordPress/wordpress-develop/blob/master/tests/phpunit/tests/dbdelta.php#L478
And the list goes on ( all instances are within the dbdelta.php though so it makes it kinda easier ), should those be updated also in a similar manner? I'm guessing that if MyISAM isn't supported the dbDelta() itself would fail there also, correct? Sorry, I missed this before I didn't think of making a full search 😅.
Not sure at all on this btw (trying to figure out a way to test this on my end) so I'm just asking :)
#5
in reply to:
↑ 4
@
5 years ago
- Resolution fixed deleted
- Status changed from closed to reopened
Replying to xkon:
after checking out the tests, in general, I see plenty of explicitly stated MyISAM
Indeed, thanks for catching that! Yes, those should be updated in a similar manner.
#6
@
5 years ago
- Keywords has-patch added; needs-patch removed
49367.diff creates a new static function to force the engine if needed and changes all MyISAM statements to dynamically be populated by the function.
I believe this should do the trick on all of them.
In 47193: