|
171 | 171 | " List.of(match(filter))\n", |
172 | 172 | ").explain(ExplainVerbosity.EXECUTION_STATS);\n", |
173 | 173 | "\n", |
| 174 | + "var winningPlan = explainResult\n", |
| 175 | + " .get(\"queryPlanner\", Document.class)\n", |
| 176 | + " .get(\"winningPlan\", Document.class);\n", |
| 177 | + "\n", |
| 178 | + "var inputStage = winningPlan.get(\"inputStage\", Document.class);\n", |
| 179 | + "var usesIndex = winningPlan.toJson().contains(\"IXSCAN\");\n", |
| 180 | + "\n", |
174 | 181 | "System.out.println(\"Execution time (ms): \" +\n", |
175 | 182 | " explainResult.get(\"executionStats\", Document.class).get(\"executionTimeMillis\"));\n", |
176 | 183 | "\n", |
177 | | - "System.out.println(\"Index usage: \" +\n", |
178 | | - " explainResult.get(\"queryPlanner\", Document.class)\n", |
179 | | - " .get(\"winningPlan\", Document.class)\n", |
180 | | - " .toJson()\n", |
181 | | - " .contains(\"IXSCAN\"));" |
| 184 | + "System.out.println(\"Index usage: \" + usesIndex);\n", |
| 185 | + "\n", |
| 186 | + "if (inputStage != null && inputStage.getString(\"indexName\") != null) {\n", |
| 187 | + " System.out.println(\"Index name: \" + inputStage.getString(\"indexName\"));\n", |
| 188 | + "}" |
182 | 189 | ] |
183 | 190 | }, |
184 | 191 | { |
|
0 commit comments