code: function runQuery(query, connection) {
    let incomplete = false;
    const rows = [];
  
    const drillConfig = {
      host: connection.host,
      port: connection.port,
      user: connection.username,
      password: connection.password,
      defaultSchema: connection.drillDefaultSchema,
      ssl: connection.ssl || false
    };
    const client = new drill.Client(drillConfig);
  
    return client.query(drillConfig, query).then(result => {
      if (!result) {
        throw new Error('No result returned');
      } else if (result.errorMessage && result.errorMessage.length > 0) {
        console.log('Error with query: ' + query);
        console.log(result.errorMessage);
        throw new Error(result.errorMessage.split('\n')[0]);
      }
      if (result.length > connection.maxRows) {
        incomplete = true;
        result['rows'] = result['rows'].slice(0, connection.maxRows);
      }
      for (let r = 0; r < result['rows'].length; r++) {
        const row = {};
        for (let c = 0; c < result['columns'].length; c++) {
          row[result['columns'][c]] = result['rows'][r][result['columns'][c]];
        }
        rows.push(row);
      }
      return { rows, incomplete };
    });
  }
docs: Run query for connection
  Should return { rows, incomplete }
  @param {string} query
  @param {object} connection