Commit Graph

934 Commits

Author SHA1 Message Date
quicksilver
3db653f2d0
Update cpp thirdparty source URL (#5295)
Signed-off-by: quicksilver <zhifeng.zhang@zilliz.com>

Resolves: #5293
2021-05-19 09:39:29 +00:00
congqixia
d5ab8ac345
Restore flush and stats stream pos (#5284)
Restore segment flush stream & statistic stream to last success pos

Signed-off-by: Congqi Xia <congqi.xia@zilliz.com>
2021-05-19 06:13:53 +00:00
XuanYang-cn
fc630bc1c8
Correct auto-flush behaviour (#5282)
Before this PR, DataNode considered auto-flush a valid flush
complete. It's wrong. So I open this PR to correct this behaviour
in DataNode.

Now binlog paths from auto-flush will be buffered in replica,
waiting until the manul flush to save into etcd all together.

See also: #5220, #5268
A follow up job of #5271 

Signed-off-by: yangxuan <xuan.yang@zilliz.com>
2021-05-18 11:45:00 +00:00
godchen
ccc0130bb4
Add exclusive parameter (#5278)
Add exclusive parameter.
Issue #5174 

Signed-off-by: godchen <qingxiang.chen@zilliz.com>
2021-05-18 11:07:27 +00:00
neza2017
d68ee3fbc2
query base on timeline (#5279)
query base on timeline, add timestamp on these queries:
- ShowCollections
- HasCollection
- DescribeCollection

Resolves: #5219

Signed-off-by: yefu.chen <yefu.chen@zilliz.com>
2021-05-18 09:12:17 +00:00
XuanYang-cn
c3ac1375d8
Add buffer function for auto flush (#5271)
Auto-flush of a segment is not considered flush-completed.
So we need to buffer binlog paths generated by auto-flush.

See also: #5268 #5220 

Signed-off-by: yangxuan <xuan.yang@zilliz.com>
2021-05-18 08:33:05 +00:00
neza2017
49f6542b1d
query master service's with timestamp (#5275)
let meta support snapshot
so collection could query meta with timestamp

Resolves: #5219

Signed-off-by: yefu.chen <yefu.chen@zilliz.com>
2021-05-18 06:18:02 +00:00
godchen
cca75583a6
Add session util (#5269)
Add session util.
Issue #5174 

Signed-off-by: godchen <qingxiang.chen@zilliz.com>
2021-05-18 03:39:21 +00:00
Cai Yudong
e8ceb37f81
Add ShardsNum when create collection (#5245)
Updata PhysicalChannelNames and VirtualChannelNames based
on ShardsNum when create collection, and update collVChan2Chan
map.

Resolves: #5240 

Signed-off-by: yudong.cai <yudong.cai@zilliz.com>
2021-05-17 11:15:01 +00:00
Cai Yudong
001795ee70
Optimize CreateIndex routine in master service (#5238)
Remove CreateIndexTask struct and indexTaskQueue

Resolves: #5228 

Signed-off-by: yudong.cai <yudong.cai@zilliz.com>
2021-05-15 10:08:08 +00:00
Cai Yudong
08bb1b2ec3
Resend unsuccessful ddMsg when master start (#5214)
Resend unsuccessful ddMsg when master start

Signed-off-by: yudong.cai <yudong.cai@zilliz.com>
2021-05-14 21:26:06 +08:00
XuanYang-cn
9151e13480
Remove not using dependence and proto (#5226)
- FlushMsg proto message is no longer in use

- We don't depend on "github.com/prometheus/common/log"

Signed-off-by: yangxuan xuan.yang@zilliz.com
2021-05-14 08:50:55 +00:00
yukun
4e6e502df1
Add data sorter in storage (#5200)
GetEntityByID needs the flushed segment to be sorted by RowID field, 
then do binary search to get the target id and entities.

See also: #5177 

Signed-off-by: fishpenguin kun.yu@zilliz.com
2021-05-14 02:59:49 +00:00
godchen
b74afd7a0e
Add service registration (#5189)
Add service registration.
Part of Issue #5174.

Signed-off-by: godchen <qingxiang.chen@zilliz.com>
2021-05-14 02:05:18 +00:00
Cai Yudong
7b83b11e95
Save ddmsg info and type into ETCD (#5173)
Save ddmsg info and type into ETCD to support re-send ddmsg 
when system restart or recover from failure (#5172)

Signed-off-by: yudong.cai <yudong.cai@zilliz.com>
2021-05-12 07:33:53 +00:00
dragondriver
64ab4d740b
Add row_count to partition statistics (#5162)
Signed-off-by: dragondriver <jiquan.long@zilliz.com>
2021-05-10 09:39:08 +00:00
sunby
a00422bac2
Remove unused interfaces in dataservice (#5157)
Remove unused interfaces in dataservice

Signed-off-by: sunby <bingyi.sun@zilliz.com>
2021-05-10 09:03:24 +00:00
Cai Yudong
6f3a460b4e
Add pulsar seek example in pulsar_client_test.go (#5154)
Signed-off-by: yudong.cai <yudong.cai@zilliz.com>
2021-05-10 02:32:10 +00:00
dragondriver
df71f4c77c
Migrate softTimeTickBarrier from proxyservice to timesync (#5146)
Signed-off-by: dragondriver <jiquan.long@zilliz.com>
2021-05-10 01:28:59 +00:00
XuanYang-cn
eb557b289b
Add docs in package datanode (#5117)
Signed-off-by: yangxuan <xuan.yang@zilliz.com>
2021-05-08 07:24:12 +00:00
Cai Yudong
5f0006d0f9
Improve code coverage for distributed/datanode (#5133)
Signed-off-by: yudong.cai <yudong.cai@zilliz.com>
2021-05-08 06:07:04 +00:00
yukun
ecaef24fea
Change should_not to must_not in dsl (#5131)
Signed-off-by: fishpenguin <kun.yu@zilliz.com>
2021-05-07 11:52:24 +00:00
FluorineDog
b1974aede2
Merge knowhere unittests (#5139)
Re-enable knowhere unittests and merge them all together. 
Signed-off-by: fluorinedog <fluorinedog@gmail.com>
2021-05-07 11:50:13 +00:00
dragondriver
b7977698a8
Change the codec style of expr plan from text to binary (#5129)
Signed-off-by: dragondriver <jiquan.long@zilliz.com>
2021-05-07 11:27:17 +00:00
Cai Yudong
d66a5acca3
improve code coverage for distributed/dataservice (#5123)
Signed-off-by: yudong.cai <yudong.cai@zilliz.com>
improve code coverage for distributed/dataservice
2021-05-07 07:43:52 +00:00
dragondriver
e5d4963ba0
Distinguish the dsl and expr in proxy and query node (#5118)
Pass a parameter `IsExpr` from proxy to query node, so query 
node can create search plan according to the variable `IsExpr`.
It makes `segcore` unnecessary to distinguish `dsl` or `expr`
using dynamic exception. When `IsExpr` is set to true, query
node will call `CreatePlanByExpr` according to the passed
information about expression. Otherwise query node will keep
still to use `CreatePlan` according to the `dsl` information. At
the same time, this pr adds some unittests to `CreatePlanByExpr`,
these unittests translate already exist case with `dsl` to case with
`expr`.

Signed-off-by: dragondriver <jiquan.long@zilliz.com>
2021-05-07 07:20:47 +00:00
xige-16
1e7205fa03
fix querynode's port not set correctly when conflict with other node (#5066)
Signed-off-by: xige-16 <xi.ge@zilliz.com>
2021-05-07 12:03:53 +08:00
FluorineDog
396b3f33e9
Support TermExpr, NotExpr, LogicalExpr (#5096)
1. Support Term, like `A in [1, 2, 3]`
2. Support Not, like `! A < 3`
3. Support logical combination, like `A < 3 && B > 5 or C == 0`

Type: Feature

Signed-off-by: fluorinedog <fluorinedog@gmail.com>
2021-04-30 07:19:52 +00:00
shengjun.li
b46ae44087
Zero size allocation in StackDeviceMemory (#5100)
When the remaining space is empty, the zero size allocation will
get the pointer `end_`. However, `cudafree` the pointer `end_` will
cause to crash.

Fix: #5078 #4770 #4412 #4340 #3646

Signed-off-by: shengjun.li <shengjun.li@zilliz.com>
2021-04-30 04:21:02 +00:00
FluorineDog
88f5642603
Add plan proto and support basic boolean expr parser (#5088)
**What type of PR is this?**
- [x] Feature

**What this PR does / why we need it:**
This PR supports boolean expression as DSL.
1. The goal of this PR is to support predicates
    like `A > 3 && not B < 5 or C in [1, 2, 3]`. 
2. Defines `plan.proto`, as Intermediate Representation (IR) 
    used between go and cpp. 
3. Support expr parser, convert predicate expr to IR
    in proxynode, while doing static check there
4. Support IR to AST in cpp, enable the execution
2021-04-29 08:48:06 +00:00
bigsheeper
88e1d651cb
Remove partition and segment ids properly in query node (#5090)
Signed-off-by: bigsheeper <yihao.dai@zilliz.com>

**What type of PR is this?**

- [ ] API-change
- [x] BUG
- [ ] Improvement
- [ ] Documentation
- [ ] Feature
- [ ] Test and CI
- [ ] Code Refactoring

**Which issue(s) this PR fixes:**

Fixes #

**What this PR does / why we need it:**

Not Available
2021-04-29 07:59:08 +00:00
XuanYang-cn
cebdfb34f7
Enable multiple datanode (#5068)
Now it's able to start multiple datanode, however, they will process the same insert data.
Further changes are needed to truly enable multiple datanode:

While registering, dataservice need to return different insert channels for different datanode.

Signed-off-by: yangxuan <xuan.yang@zilliz.com>
2021-04-28 18:43:48 +08:00
godchen
004598f796
Remove field in desc index interface. (#5080)
* remove field in desc index interface

Signed-off-by: godchen <qingxiang.chen@zilliz.com>

* trigger GitHub actions

Signed-off-by: godchen <qingxiang.chen@zilliz.com>
2021-04-28 09:48:38 +00:00
godchen
94f0966225
Add get index build progress interface implementation (#5067)
Add get index build progress interface implementation.

Signed-off-by: godchen <qingxiang.chen@zilliz.com>
2021-04-28 03:15:28 +00:00
godchen
060f7ca0d2
Add get index build progress proto (#5049)
Add get index build progress proto.

Signed-off-by: godchen <qingxiang.chen@zilliz.com>
2021-04-27 07:46:45 +00:00
shengjun.li
a3e4339027
improve rhnsw (#5059)
Signed-off-by: shengjun.li <shengjun.li@zilliz.com>
2021-04-27 06:17:52 +00:00
neza2017
262c484cec
the return struct of "DescribeIndex" should contain "filed_name" (#5055)
Signed-off-by: yefu.chen <yefu.chen@zilliz.com>
2021-04-27 02:30:55 +00:00
neza2017
d7c0a72611
index name is unique in collection scope (#5046)
Signed-off-by: yefu.chen <yefu.chen@zilliz.com>
2021-04-26 15:53:47 +08:00
Cai Yudong
74f457bd14
add more testcase to improve code coverage for data service (#5041)
* fix TestChannel run error

Signed-off-by: yudong.cai <yudong.cai@zilliz.com>

* comment validateAllocRequest

Signed-off-by: yudong.cai <yudong.cai@zilliz.com>

* add test APIs

Signed-off-by: yudong.cai <yudong.cai@zilliz.com>

* fix static-check

Signed-off-by: yudong.cai <yudong.cai@zilliz.com>
2021-04-26 01:45:54 +00:00
bigsheeper
4197b094bf
Use internal dsl and placeholder group (#5033)
Signed-off-by: bigsheeper <yihao.dai@zilliz.com>
2021-04-25 06:08:28 +00:00
sunby
4d03da9c4f
Remove SetSegmentState and seal segment in segment allocator (#4994)
Segment should be sealed once it exceeds the limited size. This operation
should be done in segment allocator. Watcher only check the status to
decide whether the segment will be flushed.

Signed-off-by: sunby <bingyi.sun@zilliz.com>
2021-04-25 01:51:57 +00:00
neza2017
ada58b5bde
add unit test for master's grpc server, the coverage of package "internal/distributed/masterservice" increase from 46.6% to 82.9% (#5019)
Signed-off-by: yefu.chen <yefu.chen@zilliz.com>
2021-04-24 09:23:35 +00:00
bigsheeper
c4b379be8b
Set search graceful time from config (#5014)
Signed-off-by: bigsheeper <yihao.dai@zilliz.com>
2021-04-24 07:53:37 +00:00
sunby
b855c283cb
Remove meaningless log test (#5025)
Signed-off-by: sunby <bingyi.sun@zilliz.com>
2021-04-24 05:07:58 +00:00
Cai Yudong
5a75e23795
improve data service code coverage (#5020)
* optimize TestAssignSegmentID

Signed-off-by: yudong.cai <yudong.cai@zilliz.com>

* update mockMasterService to improve code coverage

Signed-off-by: yudong.cai <yudong.cai@zilliz.com>

* rename client to kvClient in Server

Signed-off-by: yudong.cai <yudong.cai@zilliz.com>

* update server.go

Signed-off-by: yudong.cai <yudong.cai@zilliz.com>

* add TestChannel

Signed-off-by: yudong.cai <yudong.cai@zilliz.com>

* update TestChannel

Signed-off-by: yudong.cai <yudong.cai@zilliz.com>

* update TestChannel

Signed-off-by: yudong.cai <yudong.cai@zilliz.com>

* fix format

Signed-off-by: yudong.cai <yudong.cai@zilliz.com>

* update TestChannel

Signed-off-by: yudong.cai <yudong.cai@zilliz.com>
2021-04-24 03:29:15 +00:00
bigsheeper
2b5bedf736
Use multiple search channels (#5018)
Signed-off-by: bigsheeper <yihao.dai@zilliz.com>
2021-04-24 02:44:28 +00:00
bigsheeper
00bb1014cd
Add search channels to query node (#5012)
Signed-off-by: bigsheeper <yihao.dai@zilliz.com>
2021-04-23 10:11:26 +00:00
shengjun.li
a2875f9d95
Update knowhere (#5006)
Import performance of ivf::train and hnsw, and fix bugs
Signed-off-by: shengjun.li <shengjun.li@zilliz.com>
2021-04-23 18:03:49 +08:00
Cai Yudong
111376ba40
improve code coverage for data service (#4998)
* rename mock.go to mock_test.go

Signed-off-by: yudong.cai <yudong.cai@zilliz.com>

* add allocator_test.go to improve code coverage

Signed-off-by: yudong.cai <yudong.cai@zilliz.com>

* update meta_test.go

Signed-off-by: yudong.cai <yudong.cai@zilliz.com>

* update watcher_test.go

Signed-off-by: yudong.cai <yudong.cai@zilliz.com>

* fix race

Signed-off-by: yudong.cai <yudong.cai@zilliz.com>
2021-04-23 02:15:30 +00:00
godchen
4f7e393bfd
Remove useless config (#4997)
Signed-off-by: godchen <qingxiang.chen@zilliz.com>
2021-04-23 10:10:46 +08:00