sdk-go icon indicating copy to clipboard operation
sdk-go copied to clipboard

Panic if LIKE pattern is not a quoted string

Open Maslino opened this issue 1 year ago • 3 comments

When parsing the following cesql

x LIKE 123

the cesql parser panics

panic: runtime error: invalid memory address or nil pointer dereference [recovered]
	panic: runtime error: invalid memory address or nil pointer dereference
[signal 0xc0000005 code=0x0 addr=0x58 pc=0x638552]

goroutine 62 [running]:
testing.tRunner.func1.2({0x680c20, 0xa16cc0})
	D:/programs/go1.17.6/src/testing/testing.go:1209 +0x24e
testing.tRunner.func1()
	D:/programs/go1.17.6/src/testing/testing.go:1212 +0x218
panic({0x680c20, 0xa16cc0})
	D:/programs/go1.17.6/src/runtime/panic.go:1038 +0x215
github.com/cloudevents/sdk-go/sql/v2/parser.(*expressionVisitor).VisitLikeExpression(0xc00068f4a0, 0xc000416350)
	D:/projects/github/sdk-go/sql/v2/parser/expression_visitor.go:179 +0xf2
github.com/cloudevents/sdk-go/sql/v2/parser.(*expressionVisitor).Visit(0xc00068f4b8, {0x775820, 0xc000416350})
	D:/projects/github/sdk-go/sql/v2/parser/expression_visitor.go:75 +0x4a5
github.com/cloudevents/sdk-go/sql/v2/parser.(*expressionVisitor).VisitChildren(0x6d1120, {0x776cc0, 0xc00068f4b8})
	D:/projects/github/sdk-go/sql/v2/parser/expression_visitor.go:83 +0x57
github.com/cloudevents/sdk-go/sql/v2/parser.(*expressionVisitor).VisitCesql(0x608fe0, 0x76fcb8)
	D:/projects/github/sdk-go/sql/v2/parser/expression_visitor.go:296 +0x25
github.com/cloudevents/sdk-go/sql/v2/gen.(*CesqlContext).Accept(0xc000416328, {0x76fcb8, 0xc00068f4a0})
	D:/projects/github/sdk-go/sql/v2/gen/cesqlparser_parser.go:256 +0x87
github.com/cloudevents/sdk-go/sql/v2/parser.(*Parser).Parse(0xc0002ff980, {0xc0002ff980, 0xe})
	D:/projects/github/sdk-go/sql/v2/parser/parser.go:39 +0x2f4
github.com/cloudevents/sdk-go/sql/v2/parser.Parse(...)
	D:/projects/github/sdk-go/sql/v2/parser/parser.go:73

Maslino avatar Aug 08 '23 11:08 Maslino

Thx for flagging this! Looks like you wrote a test here, are you keen to file a PR?

embano1 avatar Aug 08 '23 15:08 embano1

Hey @duglin @embano1 could one of you assign this to me? I would be interested in fixing it

Cali0707 avatar Apr 29 '24 14:04 Cali0707

done - thanks!

duglin avatar Apr 29 '24 14:04 duglin