googleapis / googleapis/google-cloud-go

spanner/spansql: spansql.ParseDDL is fialing on a valid query syntax

Open
#9,622 2 comments 0 reactions 1 assignee Claimed by @rahul2393 View on GitHub
api: spanner priority: p3
Dominant language
Go
Stars
4.5k
Forks
1.6k
Avg merge
1d 13h
Merged PRs (30d)
109

Description

**Client**
Spanner

**Go Environment**
go version go1.20.4 darwin/arm64
**Code**

```
schema.sql file
CREATE VIEW ListDeployments
SQL SECURITY INVOKER AS
SELECT
user_id,
ARRAY_AGG(STRUCT(first_name, last_name)) AS user_details
FROM Users;

func main() {
filename := "schema.sql"
bs, err := os.ReadFile(filename)
if err != nil {
log.Println("error reading schema file: %w", err)
}

ddl, err := spansql.ParseDDL(filename, string(bs))
if err != nil {
log.Printf("error parsing schema file: %v\n", err)
}

if ddl != nil {
log.Println(ddl.List)
}
}
```

**Expected behavior**
Should be able to parse the DDL

**Actual behavior**
`2024/03/20 17:41:27 error parsing schema file: schema.sql:5: unexpected token "STRING"`

**Additional context**
spanner client lib version: `cloud.google.com/go/spanner v1.59.0`

If I create the view with Spanner Studio no issue

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.