Skip to content

Commit

Permalink
cherry pick pingcap#37820 to release-5.3
Browse files Browse the repository at this point in the history
Signed-off-by: ti-srebot <ti-srebot@pingcap.com>
  • Loading branch information
Qiaolin-Yu authored and ti-srebot committed Sep 20, 2022
1 parent 0d2b3ec commit 2ea1c26
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 1 deletion.
10 changes: 9 additions & 1 deletion types/time.go
Original file line number Diff line number Diff line change
Expand Up @@ -556,9 +556,17 @@ func GetFsp(s string) int8 {

// GetFracIndex finds the last '.' for get fracStr, index = -1 means fracStr not found.
// but for format like '2019.01.01 00:00:00', the index should be -1.
// It will not be affected by the time zone suffix. For format like '2020-01-01 12:00:00.123456+05:00', the index should be 19.
func GetFracIndex(s string) (index int) {
tzIndex, _, _, _, _ := GetTimezone(s)
var end int
if tzIndex != -1 {
end = tzIndex - 1
} else {
end = len(s) - 1
}
index = -1
for i := len(s) - 1; i >= 0; i-- {
for i := end; i >= 0; i-- {
if unicode.IsPunct(rune(s[i])) {
if s[i] == '.' {
index = i
Expand Down
3 changes: 3 additions & 0 deletions types/time_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -111,6 +111,9 @@ func TestDateTime(t *testing.T) {
{"2020-05-28 23:59:59T T00:00:00", "2020-05-28 23:59:59"},
{"2020-10-22 10:31-10:12", "2020-10-22 10:31:10"},
{"2018.01.01 01:00:00", "2018-01-01 01:00:00"},

// For issue 35291
{"2020-01-01 12:00:00.123456+05:00", "2020-01-01 07:00:00.123456"},
}

for _, test := range table {
Expand Down

0 comments on commit 2ea1c26

Please sign in to comment.