Bug #105295 Type of COALESCE(1, FALSE) was INT, but MySQL8.0.27 is decimal(1,0).
Submitted: 22 Oct 2021 12:24 Modified: 22 Oct 2021 15:46
Reporter: Yuichiro Yamashita Email Updates:
Status: Verified Impact on me:
None 
Category:MySQL Server: DDL Severity:S3 (Non-critical)
Version:8.0.27 OS:Any
Assigned to: CPU Architecture:x86

[22 Oct 2021 12:24] Yuichiro Yamashita
Description:
Until MySQL 8.0.25,
Type of COALESCE(NULL, FALSE) was int.
But in MySQL8.0.27, it was changed to decimal(1,0).

I'm using Hibernate ORM with Spring Boot.
But now I can not start the application due to this change.

I couldn't find this change from the release note.
So I thought this is regression and I reported it out.

How to repeat:
Run this query on both MySQL8.0.25 and MySQL8.0.27.

```
DROP TEMPORARY TABLE temp;
CREATE TEMPORARY TABLE temp SELECT COALESCE(1, FALSE);
show columns from  `temp`;
```

Suggested fix:
I'm not sure for now.
Maybe should roll back to the original one?
[22 Oct 2021 14:05] MySQL Verification Team
Thank you for the bug report.
[22 Oct 2021 15:42] Yuichiro Yamashita
Fix typo.
[22 Oct 2021 15:46] Yuichiro Yamashita
Still `COALESCE(NULL, FALSE)` is remaining but `COALESCE(1, FALSE)` is what I would like to type.