• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

babelfish-for-postgresql / babelfish_extensions / 27682936804 / 1
77%
BABEL_6_X_DEV: 77%

Build:
Build:
LAST BUILD BRANCH: jira-babel-ssms-perf
DEFAULT BRANCH: BABEL_6_X_DEV
Ran 17 Jun 2026 11:06AM UTC
Files 127
Run time 5s
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

17 Jun 2026 10:36AM UTC coverage: 77.296% (+0.07%) from 77.227%
27682936804.1

push

github

web-flow
Adding the support of Multilinestring  (#4831)

Currently, Babelfish does not support the T-SQL `MULTILINESTRING` spatial type for `geometry` and `geography`. Any attempt to construct one — via `STMLineFromText`, `STMLineFromWKB`, varbinary round-trip, or text WKT input — fails with `MULTILINESTRING is not supported`. With this change, Babelfish now supports `MULTILINESTRING` end-to-end on both `geometry` and `geography`, including 2D, 3D (XYZ / XYM), and 4D (XYZM) variants, EMPTY MultiLineStrings, and round-trips through WKT and varbinary.

This change closes a long-standing T-SQL spatial-type compatibility gap that blocked Babelfish from being a drop-in for T-SQL workloads using the OGC `MULTILINESTRING` constructor and its varbinary CLR encoding.

The implementation:

- **Grammar** — adds `multilinestring_query` productions in `geo_parser.y` (2D / Z / M / ZM / EMPTY) and a `MLINESTRING_TOK` token in `geo_scan.l`.
- **WKT rewrite** — adds `rewrite_multilinestring_query` and `rewrite_dim_multilinestring_query` in `geo.c` to translate T-SQL WKT to PostGIS-flavored WKT before delegating to `LWGEOM_in`.
- **CLR ↔ PostGIS conversion** — adds full `MULTILINESTRING_TYPE` handling in `spatialtypes.c`: `handle_multilinestring_type_data` (PostGIS WKB → T-SQL CLR layout), `write_multilinestring_clr_metadata` (figure / shape arrays), `handle_multi_to_postgis` MLS branch (CLR → PostGIS WKB), latitude validation for geography MLS, and an empty-MLS path.
- **Front-end wiring** — adds `geometry_mlinestring_from_text`, `geography_mlinestring_from_text`, `geometry_mlinestring_from_wkb`, `geography_mlinestring_from_wkb` (`spatialtypes.c`), the SQL bindings in `geometry.sql` / `geography.sql`, the upgrade migration in `spatial_types--5.6.0--5.7.0.sql`, and the T-SQL parser tokens (`TSqlLexer.g4`, `TSqlParser.g4`).
- **Helper consolidation** — adds `get_multilinestring_count` so the SRID-conditional WKB offset and the count read live in exactly one place; the three call... (continued)

54732 of 70808 relevant lines covered (77.3%)

399824.01 hits per line

Source Files on job 27682936804.1
  • Tree
  • List 127
  • Changed 5
  • Source Changed 5
  • Coverage Changed 4
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Build 27682936804
  • 1e6f2a6e on github
  • Prev Job for on BABEL_5_X_DEV (#27327181874.1)
  • Next Job for on BABEL_5_X_DEV (#27756223186.1)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc