yah01
684110bc9a
Avoid to copy during converting C bytes to Go bytes ( #15551 )
...
* Avoid to copy during converting C bytes to Go bytes
Signed-off-by: yah01 <yah2er0ne@outlook.com>
* Add BytesConverter to achieve no-copy converting C bytes to Go bytes
Signed-off-by: yah01 <yah2er0ne@outlook.com>
2022-02-15 14:17:48 +08:00
congqixia
7daed4ee47
Return flush state true when segment in Flushing state ( #15530 )
...
Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2022-02-10 16:55:46 +08:00
Xiaofan
d499ffc421
Fix confusing logs in rootcoord ( #15431 )
...
Signed-off-by: xiaofan-luan <xiaofan.luan@zilliz.com>
2022-02-10 13:51:47 +08:00
Xiaofan
a18d6b46a4
Fix watch dml channel fail because of no collection meta ( #15436 )
...
Signed-off-by: xiaofan-luan <xiaofan.luan@zilliz.com>
2022-02-10 13:19:46 +08:00
Xiaofan
be42627ab2
Move Logutil to Util dir ( #15447 )
...
Signed-off-by: xiaofan-luan <xiaofan.luan@zilliz.com>
2022-02-09 18:55:46 +08:00
jaime
87dd4e8f92
Fix clean up data dir failed for TestEtcdRestartLoad ( #15506 )
...
Signed-off-by: yun.zhang <yun.zhang@zilliz.com>
2022-02-09 18:37:45 +08:00
jaime
cb9c63d039
Remove index dir ( #15467 )
...
Signed-off-by: yun.zhang <yun.zhang@zilliz.com>
2022-02-09 16:07:45 +08:00
Cai Yudong
8255b713ac
Move ProxySubName/QueryNodeSubName/DataNodeSubName to msgChannelConfig ( #15501 )
...
Signed-off-by: yudong.cai <yudong.cai@zilliz.com>
2022-02-09 14:41:45 +08:00
jaime
307a8ce535
Support compile and run on Mac ( #15491 )
...
Co-authored-by: jaime <yun.zhang@zilliz.com>
Co-authored-by: Cai Yudong <yudong.cai@zilliz.com>
Co-authored-by: Jenny Li <jing.li@zilliz.com>
Co-authored-by: Nemo <yuchen.gao@zilliz.com>
Signed-off-by: yun.zhang <yun.zhang@zilliz.com>
Co-authored-by: Cai Yudong <yudong.cai@zilliz.com>
Co-authored-by: Jenny Li <jing.li@zilliz.com>
Co-authored-by: Nemo <yuchen.gao@zilliz.com>
2022-02-09 14:27:46 +08:00
guoxiangzhou
f43d96b58d
[skip e2e] Modify code comments according to the naming conventions ( #15173 )
...
Signed-off-by: guoxiangzhou <xiangzhou.guo@zilliz.com>
2022-02-09 10:19:56 +08:00
guoxiangzhou
a157487f8c
[skip e2e] Modify code comments according to the naming conventions ( #15172 )
...
Signed-off-by: guoxiangzhou <xiangzhou.guo@zilliz.com>
2022-02-09 10:18:02 +08:00
guoxiangzhou
c7e93f95aa
[skip e2e] Modify code comments according to the naming conventions ( #15171 )
...
Signed-off-by: guoxiangzhou <xiangzhou.guo@zilliz.com>
2022-02-09 10:14:05 +08:00
congqixia
2263425cde
Fix EntriesNum is not passed in flush task ( #15482 )
...
Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2022-02-09 10:05:46 +08:00
xige-16
55cdc5aa35
Get indexInfo and segment size by queryCoord ( #14207 )
...
Signed-off-by: xige-16 <xi.ge@zilliz.com>
2022-02-08 21:57:46 +08:00
Cai Yudong
1f337891e1
Rename base_param to service_param, rename global_param to component_param ( #15463 )
...
Signed-off-by: yudong.cai <yudong.cai@zilliz.com>
2022-02-08 20:57:47 +08:00
XuanYang-cn
43b6c295a4
Put logs of compaction elapse in defer ( #15485 )
...
Before this PR, time elapse are logged after `compact()` finished
normally. No elapse will be logged with any errors.
This PR put elapse logs in defer once time-consuming steps are finished.
Signed-off-by: yangxuan <xuan.yang@zilliz.com>
2022-02-08 19:15:45 +08:00
XuanYang-cn
46dea0f006
Add elapse logs in compaction ( #15414 )
...
See also: #15413
Signed-off-by: yangxuan <xuan.yang@zilliz.com>
2022-02-08 14:11:45 +08:00
Ji Bin
d83f69bb21
Support windows compliation ( #15448 )
...
- remove dl dependency while compiling some lib under MSYS
- int types aligement in golang
- core/src/utils adaptation for compile under MSYS
issue: #7706
Signed-off-by: Ji Bin <matrixji@live.com>
2022-02-07 23:43:46 +08:00
JunSung Park
f6873d3dc1
Implement automatic item expiration on compaction ( #14418 )
...
* Implement automatic item expiration on compaction
Signed-off-by: JunSung Park <writtic@gmail.com>
* Change entityExpiration value comparison logic
Signed-off-by: JunSung Park <writtic@gmail.com>
* Add logging for the number of expired entity
Signed-off-by: JunSung Park <writtic@gmail.com>
* Set default value of CompactionEntityExpiration to off
Signed-off-by: JunSung Park <writtic@gmail.com>
* Fix errors for code checker
Signed-off-by: JunSung Park <writtic@gmail.com>
* Set default entityExpiration to max value
Signed-off-by: JunSung Park <writtic@gmail.com>
2022-02-07 22:45:46 +08:00
XuanYang-cn
5eef9886b3
Add more specific log when exiting BackGroundGC goroutine ( #15273 )
...
Signed-off-by: yangxuan <xuan.yang@zilliz.com>
2022-02-07 16:55:44 +08:00
congqixia
d830791e4f
Respect SegmentIDs in querynode.GetSegmentInfo ( #15455 )
...
Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2022-02-07 15:35:44 +08:00
Cai Yudong
f1ea9613ae
Add EtcdConfig and move PulsarConfig/RocksdbConfig/MinioConfig into BaseParamTable ( #15434 )
...
Signed-off-by: yudong.cai <yudong.cai@zilliz.com>
2022-02-07 10:09:45 +08:00
Cai Yudong
4bccc85534
Use MsgChannelConfig in GlobalParams for all components ( #15163 )
...
Signed-off-by: yudong.cai <yudong.cai@zilliz.com>
2022-02-02 00:35:43 +08:00
congqixia
b4bfe58fd9
[skip e2e] Fix component name for IndexCoordComponent comment ( #15138 )
...
Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2022-01-29 22:39:44 +08:00
XuanYang-cn
eef295465a
Fix timetick inconsistency in drop collection ( #15408 )
...
When rootcoord drops a collection, it'll produce a `drop-collection DDL` msg
and one last timetick into DML channels of this collection.
So that when DataNode receives this msg, DN can release the resources for the specific collection.
Before this PR, RootCoord produced these two msgs with an older timestamp, generated
before many time-consuming RPCs.
Once these RPCs spend more time than timetick producing interval, the timetick of these 2 msgs are
older to the channel current timestamp, causing in-consistency in time, thus
making msgstream fail to consume the last `drop-collection DDL` msg.
This PR generates a new timestamp for `drop-collection DDL` msg and timetick msg after those time-consuming
RPCs
Fixes : #15406
Signed-off-by: yangxuan <xuan.yang@zilliz.com>
2022-01-28 20:49:41 +08:00
Filipe Caixeta
dee1961b4d
Make SearchResults and QueryResults return collectionID ( #15377 )
...
* Make SearchResults and QueryResults return collectionID
Signed-off-by: Filipe Caixeta <filipecaixeta@gmail.com>
* add return collection name from QueryRequest and SearchRequest
Signed-off-by: Filipe Caixeta <filipecaixeta@gmail.com>
* remove comment
Signed-off-by: Filipe Caixeta <filipecaixeta@gmail.com>
2022-01-27 22:55:41 +08:00
Xiaofan
885ecaf222
Refine time sync logic log ( #15251 )
...
Signed-off-by: xiaofan-luan <xiaofan.luan@zilliz.com>
2022-01-27 11:25:41 +08:00
congqixia
273890a91e
Fix datanode flush manager injection unit test ( #15358 )
...
Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2022-01-27 10:23:40 +08:00
xige-16
b9d1396258
Delete ut's useless param for genCollectionSchema ( #15119 )
...
Signed-off-by: xige-16 <xi.ge@zilliz.com>
2022-01-26 14:21:40 +08:00
xige-16
6336e2326c
Set triggerCondition when queryCoord reload loadbalanceTask meta ( #15380 )
...
Signed-off-by: xige-16 <xi.ge@zilliz.com>
2022-01-25 17:26:13 +08:00
XuanYang-cn
8ab9d769de
Fix logs of compaction_executor ( #15365 )
...
- Remove not useful log in `stopExecutingtaskByVChannelName`
- Add planID info in `mergeFlushedSegments`
Signed-off-by: yangxuan <xuan.yang@zilliz.com>
2022-01-25 13:29:40 +08:00
zhenshan.cao
3f48a40ab0
Load index meta in every retry ( #15376 )
...
Signed-off-by: zhenshan.cao <zhenshan.cao@zilliz.com>
2022-01-25 13:28:05 +08:00
Bingyi Sun
515fe962d5
Fix subscription path ( #15373 )
...
Signed-off-by: sunby <bingyi.sun@zilliz.com>
Co-authored-by: sunby <bingyi.sun@zilliz.com>
2022-01-25 13:27:44 +08:00
xige-16
3a024307f4
Release collection first when drop collection ( #15370 )
...
Signed-off-by: xige-16 <xi.ge@zilliz.com>
2022-01-24 21:51:22 +08:00
zhenshan.cao
5bc6ec7250
Fixbug: QueryNode search exceptions will cause memory leak ( #15305 )
...
Signed-off-by: zhenshan.cao <zhenshan.cao@zilliz.com>
2022-01-24 21:19:39 +08:00
Bingyi Sun
3987574448
Unsubscribe topic in DataCoord ( #15353 )
...
Signed-off-by: sunby <bingyi.sun@zilliz.com>
Co-authored-by: sunby <bingyi.sun@zilliz.com>
2022-01-24 19:47:38 +08:00
zhenshan.cao
6bc2efe429
Fixbug: IndexNode should panic when save meta failed to MetaKV ( #15347 )
...
Signed-off-by: zhenshan.cao <zhenshan.cao@zilliz.com>
2022-01-24 17:18:46 +08:00
bigsheeper
390cdd2515
Remove tmporary debug log in core ( #15330 )
...
Signed-off-by: bigsheeper <yihao.dai@zilliz.com>
2022-01-24 10:03:41 +08:00
xige-16
1cd2363bd8
Delete usless params SkipQueryChannelRecovery ( #15289 )
...
Signed-off-by: xige-16 <xi.ge@zilliz.com>
2022-01-21 21:43:40 +08:00
xige-16
57383c9f76
Delete Useless timetick channel ( #15296 )
...
Signed-off-by: xige-16 <xi.ge@zilliz.com>
2022-01-21 14:31:39 +08:00
Bingyi Sun
c877f33084
Downgrade pulsar client ( #15325 )
...
Signed-off-by: sunby <bingyi.sun@zilliz.com>
Co-authored-by: sunby <bingyi.sun@zilliz.com>
2022-01-20 22:25:38 +08:00
xige-16
c132302129
Clean flowGraph if watchChannel failed ( #15303 )
...
Signed-off-by: xige-16 <xi.ge@zilliz.com>
2022-01-20 10:01:38 +08:00
congqixia
1e61112b5a
Add retry logic in pulsar consumer unsubscribe ( #15284 )
...
Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2022-01-20 01:23:37 +08:00
xige-16
bbb672cb00
Remove state service in querynode ( #15281 )
...
Signed-off-by: xige-16 <xi.ge@zilliz.com>
2022-01-18 18:43:37 +08:00
XuanYang-cn
87394e29b6
Fix compaction ut datarace ( #15267 )
...
Fixes : #15241
Signed-off-by: yangxuan <xuan.yang@zilliz.com>
2022-01-18 17:49:39 +08:00
Cai Yudong
356efee492
Rename timetickSync APIs and variables for better readability ( #15264 )
...
Signed-off-by: yudong.cai <yudong.cai@zilliz.com>
2022-01-18 14:47:36 +08:00
cai.zhang
f564ea7fc7
RootCoord set healthy state after registered service ( #15261 )
...
Signed-off-by: cai.zhang <cai.zhang@zilliz.com>
2022-01-18 12:09:37 +08:00
Cai Yudong
1b1d4e502b
Remove session from timetickSync ( #15255 )
...
Signed-off-by: yudong.cai <yudong.cai@zilliz.com>
2022-01-18 00:07:37 +08:00
bigsheeper
7f775096c5
Unsubscribe when close pulsar consumer ( #15221 )
...
Signed-off-by: bigsheeper <yihao.dai@zilliz.com>
2022-01-17 18:53:36 +08:00
xige-16
408a6e9e58
Fix collectResultLoop hang after search timeout ( #15250 )
...
Signed-off-by: xige-16 <xi.ge@zilliz.com>
2022-01-17 18:11:36 +08:00
xige-16
dfc6670f0f
Unsubscribe channel after query node down ( #15230 )
...
Signed-off-by: xige-16 <xi.ge@zilliz.com>
2022-01-17 17:37:37 +08:00
zhenshan.cao
871e093dc8
Call release memory in case error occured ( #15237 )
...
Signed-off-by: zhenshan.cao <zhenshan.cao@zilliz.com>
2022-01-17 14:43:38 +08:00
Jiquan Long
675e6d352b
QueryNodes send search/query results by rpc ( #15223 )
...
Signed-off-by: dragondriver <jiquan.long@zilliz.com>
2022-01-17 14:41:35 +08:00
yah01
fd8d452cfd
remove unused fieldIDs and fieldTypes ( #15229 )
...
Signed-off-by: yah01 <yah2er0ne@outlook.com>
2022-01-16 17:37:35 +08:00
Xiaofan
f36e02dfbb
Add more log when tt failed ( #15227 )
...
Signed-off-by: xiaofan-luan <xiaofan.luan@zilliz.com>
2022-01-15 18:53:34 +08:00
Xiaofan
f617c8887b
Time Tick Failed need log ( #15225 )
...
Signed-off-by: xiaofan-luan <xiaofan.luan@zilliz.com>
2022-01-14 23:55:34 +08:00
zhenshan.cao
1601a61b78
Move logic of checking available port to service ( #15222 )
...
Signed-off-by: zhenshan.cao <zhenshan.cao@zilliz.com>
2022-01-14 21:17:34 +08:00
zhenshan.cao
f14df1d2db
Initilize listener in service instead of ParamTable ( #15220 )
...
Signed-off-by: zhenshan.cao <zhenshan.cao@zilliz.com>
2022-01-14 18:29:34 +08:00
xige-16
cc5bee4684
Stop handoff if segment has been compacted ( #15181 )
...
Signed-off-by: xige-16 <xi.ge@zilliz.com>
2022-01-13 21:49:35 +08:00
Jiquan Long
2819f6cc6f
Release memory to OS after index is built ( #15196 )
...
Signed-off-by: dragondriver <jiquan.long@zilliz.com>
2022-01-13 20:27:34 +08:00
congqixia
2528b6850d
Refactor flush manager injection to reduce goroutine number ( #15180 )
...
Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2022-01-13 18:49:34 +08:00
xige-16
384d3169d3
Don't remove nodeInfo when querycoord panic at loadBalanceTask ( #15189 )
...
Signed-off-by: xige-16 <xi.ge@zilliz.com>
2022-01-13 17:59:34 +08:00
XuanYang-cn
008e08a996
Add flowgraph manager and event manager ( #15102 )
...
1. Add flowgraph manager to manager start and release of dataSyncService
2. Add event manager to manager etcd watchInfo event
- Make put event able to retry
- Make delete event able to terminate the retry loop
See also: #14604 , #14300
Signed-off-by: yangxuan <xuan.yang@zilliz.com>
2022-01-13 14:21:34 +08:00
xige-16
4e956ee10c
Panic when recover querynode failed ( #15161 )
...
Signed-off-by: xige-16 <xi.ge@zilliz.com>
2022-01-12 17:43:37 +08:00
bigsheeper
0c98f21d4d
Remove global sealed segments in historical ( #15177 )
...
Signed-off-by: bigsheeper <yihao.dai@zilliz.com>
2022-01-12 17:01:38 +08:00
cai.zhang
3254d36609
[skip e2e]Add comment for msgIndexCoordIsUnhealthy ( #15146 )
...
Signed-off-by: cai.zhang <cai.zhang@zilliz.com>
2022-01-12 11:15:36 +08:00
cai.zhang
745d5f5a8a
[skip e2e]Add comment for newGrpcClient ( #15144 )
...
Signed-off-by: cai.zhang <cai.zhang@zilliz.com>
2022-01-12 11:13:37 +08:00
cai.zhang
89c9073ab3
[skip e2e]Add comment for msgIndexNodeIsUnhealthy ( #15142 )
...
Signed-off-by: cai.zhang <cai.zhang@zilliz.com>
2022-01-12 11:11:36 +08:00
cai.zhang
4daf0fb6b5
[skip e2e]Add comment for errIndexNodeIsUnhealthy ( #15141 )
...
Signed-off-by: cai.zhang <cai.zhang@zilliz.com>
2022-01-12 11:09:36 +08:00
Jiquan Long
3bf34f6326
[skip e2e] Add comment for baseTaskQueue ( #15170 )
...
Signed-off-by: dragondriver <jiquan.long@zilliz.com>
2022-01-12 10:59:37 +08:00
Jiquan Long
5d91fb3c70
[skip e2e] Add comment for MetaCache ( #15169 )
...
Signed-off-by: dragondriver <jiquan.long@zilliz.com>
2022-01-12 10:57:41 +08:00
bigsheeper
ebed1a68ff
Add log for segcore search ( #15159 )
...
Signed-off-by: bigsheeper <yihao.dai@zilliz.com>
2022-01-11 18:07:34 +08:00
XuanYang-cn
6e847ff194
Make dn handleChannelInfo log more consist ( #14936 )
...
Signed-off-by: yangxuan <xuan.yang@zilliz.com>
2022-01-11 09:37:35 +08:00
Cai Yudong
951249c6c1
Use KnowhereConfig for indexnode and querynode ( #15112 )
...
Signed-off-by: yudong.cai <yudong.cai@zilliz.com>
2022-01-11 09:35:34 +08:00
zhenshan.cao
543e348730
[skip e2e]Update license ( #15131 )
...
Signed-off-by: zhenshan.cao <zhenshan.cao@zilliz.com>
2022-01-11 00:09:34 +08:00
zhenshan.cao
0f7a04fc8c
[skip e2e]Update license ( #15129 )
...
Signed-off-by: zhenshan.cao <zhenshan.cao@zilliz.com>
2022-01-11 00:03:38 +08:00
zhenshan.cao
6d36fc60cf
[skip e2e]Update license ( #15132 )
...
Signed-off-by: zhenshan.cao <zhenshan.cao@zilliz.com>
2022-01-11 00:01:36 +08:00
zhenshan.cao
e5e739ec26
[skip e2e]Update license ( #15127 )
...
Signed-off-by: zhenshan.cao <zhenshan.cao@zilliz.com>
2022-01-10 23:59:43 +08:00
zhenshan.cao
2962ceeb65
[skip e2e]Update license ( #15126 )
...
Signed-off-by: zhenshan.cao <zhenshan.cao@zilliz.com>
2022-01-10 23:57:40 +08:00
xige-16
99315ce00e
Optimize recentlyModified's lock ( #15120 )
...
Signed-off-by: xige-16 <xi.ge@zilliz.com>
2022-01-10 23:17:36 +08:00
jaime
828b9d399f
[skip e2e] Update license ( #15123 )
...
Signed-off-by: yun.zhang <yun.zhang@zilliz.com>
Co-authored-by: yun.zhang <yun.zhang@zilliz.com>
2022-01-10 22:45:37 +08:00
jaime
96dde53240
[skip e2e] Update license ( #15122 )
...
Signed-off-by: yun.zhang <yun.zhang@zilliz.com>
Co-authored-by: yun.zhang <yun.zhang@zilliz.com>
2022-01-10 22:43:41 +08:00
Jiquan Long
7e74db0d65
[skip e2e] Add comment for insertRepackFunc ( #15115 )
...
Signed-off-by: dragondriver <jiquan.long@zilliz.com>
2022-01-10 22:41:46 +08:00
Jiquan Long
5ab8d99ee9
[skip e2e] Add comment for lastTick ( #15114 )
...
Signed-off-by: dragondriver <jiquan.long@zilliz.com>
2022-01-10 22:39:54 +08:00
Jiquan Long
ff60bb8bfc
[skip e2e] Add comment for GetCollectionSchema ( #15113 )
...
Signed-off-by: dragondriver <jiquan.long@zilliz.com>
2022-01-10 22:37:58 +08:00
bigsheeper
018f32847f
[skip e2e] Add comment for createSearchPlan ( #15111 )
...
Signed-off-by: bigsheeper <yihao.dai@zilliz.com>
2022-01-10 22:36:06 +08:00
bigsheeper
4174daee80
[skip e2e] Add comment for newPartition ( #15110 )
...
Signed-off-by: bigsheeper <yihao.dai@zilliz.com>
2022-01-10 22:34:09 +08:00
bigsheeper
67e8c09df5
[skip e2e] Add comment for removeSegmentID ( #15109 )
...
Signed-off-by: bigsheeper <yihao.dai@zilliz.com>
2022-01-10 22:32:14 +08:00
jaime
fca29c6db0
[skip e2e] Update license ( #15121 )
...
Signed-off-by: yun.zhang <yun.zhang@zilliz.com>
Co-authored-by: yun.zhang <yun.zhang@zilliz.com>
2022-01-10 22:23:46 +08:00
zhenshan.cao
1aafb56694
Clarify the index building process ( #15044 )
...
Reduce peak memory usage
Signed-off-by: zhenshan.cao <zhenshan.cao@zilliz.com>
2022-01-10 20:51:34 +08:00
Cai Yudong
6323907566
Use CommonConfig in GlobalParams for all components ( #15106 )
...
Signed-off-by: yudong.cai <yudong.cai@zilliz.com>
2022-01-10 19:03:35 +08:00
congqixia
c21b40d693
[skip e2e] Fix IndexNodeComponent comment name ( #15091 )
...
Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2022-01-10 18:51:35 +08:00
jingkl
b2cb15798d
[skip e2e] Add comments to conf adapter ( #15097 )
...
Signed-off-by: jingkl <jingjing.jia@zilliz.com>
2022-01-10 18:37:37 +08:00
jingkl
d3c6d47537
[skip e2e] Add comments to conf adapter ( #15096 )
...
Signed-off-by: jingkl <jingjing.jia@zilliz.com>
2022-01-10 18:35:40 +08:00
shaoyue
2e8dd74c7e
[skip e2e] Add comment for proxy task ( #15089 )
...
Signed-off-by: shaoyue.chen <shaoyue.chen@zilliz.com>
2022-01-10 18:33:46 +08:00
shaoyue
cea5853cfb
[skip e2e] Add comment for datacoord client ( #15088 )
...
Signed-off-by: shaoyue.chen <shaoyue.chen@zilliz.com>
2022-01-10 18:31:51 +08:00
shaoyue
8893772b03
[skip e2e] Fix comment lint for datacoord handler ( #15087 )
...
Signed-off-by: shaoyue.chen <shaoyue.chen@zilliz.com>
2022-01-10 18:29:40 +08:00
Cai Yudong
b6a48817b0
Add MinioConfig in GlobalParams for all components ( #15099 )
...
Signed-off-by: yudong.cai <yudong.cai@zilliz.com>
2022-01-10 17:29:34 +08:00
congqixia
4369e08f2a
Fix storage memory leak caused by runtime.SetFinalizer ( #15100 )
...
Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2022-01-10 17:13:35 +08:00
jingkl
d719f1edb7
[skip e2e] Add comments to conf adapter ( #15095 )
...
Signed-off-by: jingkl <jingjing.jia@zilliz.com>
2022-01-10 16:49:34 +08:00