wecisecode 3 недель назад
Родитель
Сommit
faf0c5e39c
2 измененных файлов с 8 добавлено и 3 удалено
  1. 1 1
      odbctest/mql/basic/mdb/0300valid.mql
  2. 7 2
      odbctest/odbcmql/mql_run_file.go

+ 1 - 1
odbctest/mql/basic/mdb/0300valid.mql

@@ -74,7 +74,7 @@ output()
 -- xrdb 数据 与 id 为多对一关系
 -- 支持 bucket 链式表达式
 -- 支持 assert(AEXP)
-select id,xvarchar,xrdb.find(整数>1).groupby("文本").count() from /mdb/dba2 where xrdb.avg("浮点").groupby("字符串").assert(avg>0)
+-- select id,xvarchar,xrdb.find(整数>1).groupby("文本").count() from /mdb/dba2 where xrdb.avg("浮点").groupby("字符串").assert(avg>0)
 /**
 output()
 **/

+ 7 - 2
odbctest/odbcmql/mql_run_file.go

@@ -24,19 +24,24 @@ func (mt *MQLTest) RunFile(t *testing.T, ctx context.Context,
 	basedir, filename string) bool {
 	// 读取文件内容
 	ffpath := filepath.Join(basedir, filename)
-	bs, err := os.ReadFile(ffpath)
+	f, err := os.Open(ffpath)
 	if !assert.Nil(t, err, err) {
 		return false
 	}
 	// mql语句切分
 	mqgr := NewMQLGroupRequest()
 	var multilines *MQLRequest
-	mqs := spliter.NewMQLSpliter(bufio.NewReader(strings.NewReader(string(bs))))
+	mqs := spliter.NewMQLSpliter(bufio.NewReader(f))
+	rtinfo := time.Now().Add(5 * time.Second)
 	for {
 		mql, fromline, toline, fromchar, tochar, hasnext, _ := mqs.NextMQL()
 		if !hasnext {
 			break
 		}
+		if time.Now().After(rtinfo) {
+			logger.Info("reading bigfile ", toline, " lines")
+			rtinfo = time.Now().Add(5 * time.Second)
+		}
 		// 去掉注释
 		clean_mql := strings.Join(spliter.MQLSplitClean(mql), ";")
 		if multilines != nil {