Bug #72725 Error during visual explain for a query with subquery.
Submitted: 22 May 2014 20:52 Modified: 20 Jun 2014 23:50
Reporter: Sergey Petrunya Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Workbench Severity:S3 (Non-critical)
Version:6.1.6.11834 OS:Any
Assigned to: CPU Architecture:Any
Tags: EXPLAIN FORMAT=JSON

[22 May 2014 20:52] Sergey Petrunya
Description:
Trying to use Visual Explain feature, I get a message box saying

Error during "Visual Explain"
error calling Python module function SQLIDEQueryAnalysis.visualExplain

tabular EXPLAIN works ok. 

How to repeat:
Take DBT-3 dataset, scale=1. 

Try to get visual EXPLAIN for this query:

select *, c_custkey in (select o_custkey from orders where o_orderdate between '1995-01-01' and '1995-09-09') from customer where c_acctbal>0

The query plan should be like (this one was made with MySQL 5.6.17):

*************************** 1. row ***************************
EXPLAIN: {
  "query_block": {
    "select_id": 1,
    "table": {
      "table_name": "customer",
      "access_type": "ALL",
      "possible_keys": [
        "c_acctbal",
        "i_c_acctbal_nationkey"
      ],
      "rows": 149859,
      "filtered": 50,
      "attached_condition": "(`dbt3sf1`.`customer`.`c_acctbal` > 0)"
    },
    "select_list_subqueries": [
      {
        "table": {
          "table_name": "<materialized_subquery>",
          "access_type": "eq_ref",
          "key": "<auto_key>",
          "key_length": "5",
          "rows": 1,
          "materialized_from_subquery": {
            "using_temporary_table": true,
            "dependent": true,
            "cacheable": false,
            "query_block": {
              "select_id": 2,
              "table": {
                "table_name": "orders",
                "access_type": "ALL",
                "possible_keys": [
                  "i_o_orderdate",
                  "i_o_custkey"
                ],
                "rows": 1496673,
                "filtered": 19.226,
                "attached_condition": "(`dbt3sf1`.`orders`.`o_orderDATE` between '1995-01-01' and '1995-09-09')"
              }
            }
          }
        }
      }
    ]
  }
}
[16 Jun 2014 23:05] Alfredo Kojima
Thank you for the bug report, verified with the JSON data supplied.
[20 Jun 2014 23:50] Philip Olson
Fixed as of the upcoming MySQL Workbench 6.1.7 release, and here's the changelog entry:

Under certain conditions, Visual Explain would fail with the error "error
calling Python module function SQLIDEQueryAnalysis.visualExplain", even
when the tabular EXPLAIN was properly generated.

Thank you for the bug report.