Details
-
Bug
-
Status: Closed (View Workflow)
-
Major
-
Resolution: Fixed
-
5.5.41, 10.0.17, 5.5(EOL), 10.0(EOL), 10.1(EOL)
-
None
-
Debian Squeeze x64
-
5.5.47-1
Description
INSERT INTO ... |
SELECT ... |
GREATEST( COALESCE(`inspection`.`ts`, 0), COALESCE(`inspection_details`.`ts`, 0), COALESCE(`open_time_reason`.`ts`, 0) |
) AS `changed_at` |
ON DUPLICATE KEY UPDATE ... |
`changed_at` = VALUES(`changed_at`) |
In MySQL the changed_at will be the expected value from the greatest function, but in MariaDB it will be '0000-00-00 00:00:00'
Attachments
Activity
Field | Original Value | New Value |
---|---|---|
Description |
INSERT INTO ... SELECT ... GREATEST( COALESCE(`inspection`.`ts`, 0), COALESCE(`inspection_details`.`ts`, 0), COALESCE(`open_time_reason`.`ts`, 0) ) AS `changed_at` ON DUPLICATE KEY UPDATE ... `changed_at` = VALUES(`changed_at`) In MySQL the changed_at will be the expected value from the greatest function, but in MariaDB it will be '0000-00-00 00:00:00' |
{code:sql} INSERT INTO ... SELECT ... GREATEST( COALESCE(`inspection`.`ts`, 0), COALESCE(`inspection_details`.`ts`, 0), COALESCE(`open_time_reason`.`ts`, 0) ) AS `changed_at` ON DUPLICATE KEY UPDATE ... `changed_at` = VALUES(`changed_at`) {code} In MySQL the changed_at will be the expected value from the greatest function, but in MariaDB it will be '0000-00-00 00:00:00' |
Fix Version/s | 10.0 [ 16000 ] | |
Fix Version/s | 5.5 [ 15800 ] |
Priority | Minor [ 4 ] | Major [ 3 ] |
Fix Version/s | 10.0 [ 16000 ] | |
Fix Version/s | 5.5 [ 15800 ] |
Labels | need_feedback |
Attachment | test.sql.gz [ 39206 ] |
Attachment | test.variables.txt [ 39207 ] |
Attachment | test.query.sql [ 39208 ] |
Labels | need_feedback |
Fix Version/s | 10.1 [ 16100 ] | |
Fix Version/s | 10.0 [ 16000 ] | |
Fix Version/s | 5.5 [ 15800 ] | |
Affects Version/s | 10.1 [ 16100 ] | |
Affects Version/s | 10.0 [ 16000 ] | |
Affects Version/s | 5.5 [ 15800 ] | |
Assignee | Alexander Barkov [ bar ] |
Status | Open [ 1 ] | Confirmed [ 10101 ] |
Rank | Ranked higher |
Sprint | 5.5.47-1 [ 22 ] |
Component/s | Character Sets [ 10801 ] | |
Fix Version/s | 5.5.47 [ 20300 ] | |
Fix Version/s | 5.5 [ 15800 ] | |
Fix Version/s | 10.0 [ 16000 ] | |
Fix Version/s | 10.1 [ 16100 ] | |
Resolution | Fixed [ 1 ] | |
Status | Confirmed [ 10101 ] | Closed [ 6 ] |
Workflow | MariaDB v3 [ 71055 ] | MariaDB v4 [ 149481 ] |
The workaround for me is to add a CONVERT:
CONVERT(
GREATEST( COALESCE(`inspection`.`ts`, 0), COALESCE(`inspection_details`.`ts`, 0), COALESCE(`open_time_reason`.`ts`, 0)
), datetime
) AS `changed_at`