• Tom Lane's avatar
    Remove redundant function calls in timestamp[tz]_part(). · 26ae3aa8
    Tom Lane authored
    The DTK_DOW/DTK_ISODOW and DTK_DOY switch cases in timestamp_part() and
    timestamptz_part() contained calls of timestamp2tm() that were fully
    redundant with the ones done just above the switch.  This evidently crept
    in during commit 258ee1b6, which relocated that code from another place
    where the calls were indeed needed.  Just delete the redundant calls.
    
    I (tgl) noted that our test coverage of these functions left quite a
    bit to be desired, so extend timestamp.sql and timestamptz.sql to
    cover all the branches.
    
    Back-patch to all supported branches, as the previous commit was.
    There's no real issue here other than some wasted cycles in some
    not-too-heavily-used code paths, but the test coverage seems valuable.
    
    Report and patch by Li Japin; test case adjustments by me.
    
    Discussion: https://postgr.es/m/SG2PR06MB37762CAE45DB0F6CA7001EA9B6550@SG2PR06MB3776.apcprd06.prod.outlook.com
    26ae3aa8
timestamp.sql 10 KB