Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Metz
oceanbase
提交
32f5552b
O
oceanbase
项目概览
Metz
/
oceanbase
与 Fork 源项目一致
Fork自
oceanbase / oceanbase
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
O
oceanbase
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
32f5552b
编写于
4月 14, 2022
作者:
S
st0
提交者:
LINGuanRen
4月 14, 2022
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
fix time convert asan core
上级
49242ede
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
6 addition
and
6 deletion
+6
-6
deps/oblib/src/lib/timezone/ob_time_convert.cpp
deps/oblib/src/lib/timezone/ob_time_convert.cpp
+6
-6
未找到文件。
deps/oblib/src/lib/timezone/ob_time_convert.cpp
浏览文件 @
32f5552b
...
...
@@ -860,7 +860,7 @@ int ObTimeConverter::str_to_year(const ObString &str, uint8_t &value)
const
char
*
pos
=
str
.
ptr
();
const
char
*
end
=
pos
+
str
.
length
();
ObTimeDigits
digits
;
for
(;
!
isdigit
(
*
pos
)
&&
pos
<
end
;
++
pos
)
{}
for
(;
pos
<
end
&&
!
isdigit
(
*
pos
)
;
++
pos
)
{}
if
(
OB_FAIL
(
get_datetime_digits
(
pos
,
end
,
INT32_MAX
,
digits
)))
{
LOG_WARN
(
"failed to get digits from year string"
,
K
(
ret
));
}
else
{
...
...
@@ -1854,12 +1854,12 @@ int ObTimeConverter::str_to_digit_with_date(const ObString &str, ObTimeDigits *d
const
int32_t
*
expect_lens
=
NULL
;
ObTimeDelims
delims
[
DATETIME_PART_CNT
];
// find first digit and delimiter.
for
(;
isspace
(
*
pos
)
&&
pos
<
end
;
++
pos
)
{}
for
(;
pos
<
end
&&
isspace
(
*
pos
)
;
++
pos
)
{}
if
(
!
isdigit
(
*
pos
))
{
ret
=
OB_INVALID_DATE_FORMAT
;
}
else
{
const
char
*
first_digit
=
pos
;
for
(;
isdigit
(
*
pos
)
&&
pos
<
end
;
++
pos
)
{}
for
(;
pos
<
end
&&
isdigit
(
*
pos
)
;
++
pos
)
{}
const
char
*
first_delim
=
pos
;
// year is separated by delimiter, or 4 digits, or 2?
/*if (HAS_TYPE_ORACLE(ob_time.mode_)) {
...
...
@@ -2011,7 +2011,7 @@ int ObTimeConverter::str_to_ob_time_without_date(const ObString &str, ObTime &ob
const
char
*
pos
=
str
.
ptr
();
const
char
*
end
=
pos
+
str
.
length
();
// find first digit.
for
(;
isspace
(
*
pos
)
&&
pos
<
end
;
++
pos
)
{}
for
(;
pos
<
end
&&
isspace
(
*
pos
)
;
++
pos
)
{}
const
char
*
first_digit
=
pos
;
if
(
!
(
'-'
==
*
pos
||
isdigit
(
*
pos
)))
{
for
(
int
i
=
0
;
OB_SUCC
(
ret
)
&&
i
<
TOTAL_PART_CNT
;
++
i
)
{
...
...
@@ -2163,9 +2163,9 @@ int ObTimeConverter::str_to_ob_time_format(const ObString &str, const ObString &
*
scale
=
0
;
}
while
(
OB_SUCC
(
ret
)
&&
fmt_pos
<
fmt_end
)
{
for
(;
isspace
(
*
fmt_pos
)
&&
fmt_pos
<
fmt_end
;
++
fmt_pos
)
for
(;
fmt_pos
<
fmt_end
&&
isspace
(
*
fmt_pos
)
;
++
fmt_pos
)
;
for
(;
isspace
(
*
str_pos
)
&&
str_pos
<
str_end
;
++
str_pos
)
for
(;
str_pos
<
str_end
&&
isspace
(
*
str_pos
)
;
++
str_pos
)
;
if
(
fmt_pos
==
fmt_end
||
str_pos
==
str_end
)
{
break
;
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录