| buildOutputColumns(LanceTableMetadata, String, String) |   | 55% |   | 60% | 4 | 6 | 7 | 23 | 0 | 1 |
| findLanceExternalTable(TableName) |   | 34% |   | 50% | 3 | 4 | 5 | 14 | 0 | 1 |
| prepareCommon(Map, String, String, String, boolean) |   | 60% |   | 62% | 3 | 5 | 5 | 15 | 0 | 1 |
| normalizeProperties(Map, Set, String) |   | 48% |   | 66% | 2 | 4 | 2 | 9 | 0 | 1 |
| requireLanceFieldId(LanceTableMetadata, Field, String) |   | 36% |   | 50% | 1 | 2 | 2 | 5 | 0 | 1 |
| required(Map, String, String) |   | 43% |   | 50% | 2 | 3 | 1 | 4 | 0 | 1 |
| parseTableName(String) |   | 66% |   | 50% | 2 | 3 | 4 | 10 | 0 | 1 |
| parseLong(String, String, long, long) |   | 67% |   | 75% | 1 | 3 | 2 | 6 | 0 | 1 |
| validateAndEncodeSqlFilter(String) |   | 58% |   | 50% | 3 | 4 | 2 | 5 | 0 | 1 |
| getSearchRequest() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getSourceTable() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getMetadata() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| LanceExternalSearchTableValuedFunction(LanceExternalSearchTableValuedFunction.PreparedSearch) |  | 100% | | n/a | 0 | 1 | 0 | 12 | 0 | 1 |
| prepareSearch(LanceExternalSearchTableValuedFunction.CommonSearch, int, TExternalSearchRequest, String, String) |  | 100% |  | 100% | 0 | 2 | 0 | 7 | 0 | 1 |
| getTableName() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| getScanNode(PlanNodeId, TupleDescriptor, SessionVariable) |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| getTopK() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| getOffset() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| getTableColumns() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |