wyndia opened a new issue #4894:
URL: https://github.com/apache/incubator-doris/issues/4894


   ## 问题描述
   
   
Doris版本:[DORIS-0.13.9-release](https://github.com/baidu-doris/incubator-doris/releases/tag/DORIS-0.13.9-release)
   
   集群信息:15台节点(16核,32线程,64GRAM),其中一台BE与FE混部。
   
   问题:使用Colocate Join关联表格后,在FE 
Web端查看query日志时发现Instance的可用内存(MemoryLimit)与`exec_mem_limit`参数设置的不一致。
   
   ## 复现方式
   
   1. 建立一张带有`colocate_with`属性的表格并插入任意数据:
   
      ```sql
      CREATE TABLE `test` (
        `k1` int(11)
      )
      DUPLICATE KEY(`k1`)
      DISTRIBUTED BY HASH(`k1`) BUCKETS 256
      PROPERTIES (
      "colocate_with" = "test"
      );
      
      insert into test select floor(rand()*10000);
      insert into test select floor(rand()*10000);
      ……
      ```
   
   2. 设置相关参数:
   
      ```sql
      set parallel_fragment_exec_instance_num = 4;
      set exec_mem_limit = 8589934592;
      ```
   
   3. Join自身:
   
      ```sql 
      select count(*) from test a join test b on a.k1 = b.k1;
      
      +----------+
      | count(*) |
      +----------+
      | 5        |
      +----------+
      1 row in set
      Time: 0.040s
      ```
   
   4. 进入FE Web页面并打开query日志,将页面下拉到`Fragment 
1`的位置,可以看到其Instance所分配的内存与`exec_mem_limit`的值(8G)不一致。
   
      
![image-20201111215400828](https://raw.githubusercontent.com/reisuberom/pictures/master/20201111215400.png)
   
   ## 补充
   经@imay同学提醒,在fe.conf设置`query_colocate_join_memory_limit_penalty_factor = 
1`可以解决此问题。


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
[email protected]



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to