Skip to content

Server crashes when executing several queries #33

@Gudwlin

Description

@Gudwlin

Describe the bug
Server crashes when executing the following psql commands. Error in "generateDataRow" function.

What data setup do we need to do?
BemiDB(main) with PostgreSQL (REL_17_STABLE).

What is the necessary configuration info needed?
My PostgreSQL configuration:

./configure

What is the commands that caused the error?
1

psql postgres://localhost:54321/bemidb -c "SELECT a, a, 1 FROM generate_series(1, 3000) a;"

2

psql postgres://localhost:54321/bemidb -c "SELECT '04:05:06.07+08'::time with time zone;"

3

psql postgres://localhost:54321/bemidb -c "SELECT '127.0.0.1'::inet + 257;"

4

psql postgres://localhost:54321/bemidb -c "SELECT '4 millenniums 5 centuries 4 decades 1 year 4 months 4 days 17 minutes 31 seconds'::interval;"

5

psql postgres://localhost:54321/bemidb -c "SELECT make_timestamptz(1973, 7, 15, 8, 15, 55.33);"

backtrace:
1

panic: Unsupported queried type: map[string]interface {}

goroutine 32 [running]:
main.(*QueryHandler).generateDataRow(0xc0003e4000?, 0xc0003e4000, {0xc000012090, 0x3, 0x2bdde60?})
	/app/query_handler.go:481 +0x1d25
main.(*QueryHandler).rowsToDataMessages(0xc0001607e0, 0xc0003e4000, {0xc0000461e0, 0x2e})
	/app/query_handler.go:356 +0x18f
main.(*QueryHandler).HandleQuery(0xc0001607e0, {0xc000046150, 0x2f})
	/app/query_handler.go:201 +0x3cf
main.(*Postgres).handleSimpleQuery(0xc000012048, 0xc0001607e0, 0xc000634b00)
	/app/postgres.go:95 +0xb6
main.(*Postgres).Run(0xc000012048, 0xc0001607e0)
	/app/postgres.go:73 +0xd7
main.start.func1()
	/app/main.go:63 +0x45
created by main.start in goroutine 1
	/app/main.go:62 +0x1c5

2

panic: Unsupported type: TIMETZ

goroutine 14 [running]:
main.(*QueryHandler).generateDataRow(0xc000687860?, 0xc000687860, {0xc00061e8d8, 0x1, 0x2bdde60?})
	/app/query_handler.go:551 +0x1cde
main.(*QueryHandler).rowsToDataMessages(0xc0000a5a80, 0xc000687860, {0xc0005300c0, 0x2c})
	/app/query_handler.go:356 +0x18f
main.(*QueryHandler).HandleQuery(0xc0000a5a80, {0xc000530000, 0x2d})
	/app/query_handler.go:201 +0x3cf
main.(*Postgres).handleSimpleQuery(0xc0000122e8, 0xc0000a5a80, 0xc0003b8ce0)
	/app/postgres.go:95 +0xb6
main.(*Postgres).Run(0xc0000122e8, 0xc0000a5a80)
	/app/postgres.go:73 +0xd7
main.start.func1()
	/app/main.go:63 +0x45
created by main.start in goroutine 1
	/app/main.go:62 +0x1c5

3

panic: Unsupported queried type: map[string]interface {}

goroutine 24 [running]:
main.(*QueryHandler).generateDataRow(0xc00064de00?, 0xc00064de00, {0xc00007ed48, 0x1, 0x2bdde60?})
	/app/query_handler.go:481 +0x1d25
main.(*QueryHandler).rowsToDataMessages(0xc0000a4200, 0xc00064de00, {0xc000504120, 0x1e})
	/app/query_handler.go:356 +0x18f
main.(*QueryHandler).HandleQuery(0xc0000a4200, {0xc000504340, 0x1f})
	/app/query_handler.go:201 +0x3cf
main.(*Postgres).handleSimpleQuery(0xc000635b00, 0xc0000a4200, 0xc0003bece0)
	/app/postgres.go:95 +0xb6
main.(*Postgres).Run(0xc000635b00, 0xc0000a4200)
	/app/postgres.go:73 +0xd7
main.start.func1()
	/app/main.go:63 +0x45
created by main.start in goroutine 1
	/app/main.go:62 +0x1c5

4

panic: Unsupported queried type: duckdb.Interval

goroutine 9 [running]:
main.(*QueryHandler).generateDataRow(0xc00064b860?, 0xc00064b860, {0xc0005e68d8, 0x1, 0x2bdde60?})
	/app/query_handler.go:481 +0x1d25
main.(*QueryHandler).rowsToDataMessages(0xc000161500, 0xc00064b860, {0xc00050a0e0, 0x63})
	/app/query_handler.go:356 +0x18f
main.(*QueryHandler).HandleQuery(0xc000161500, {0xc00050a070, 0x64})
	/app/query_handler.go:201 +0x3cf
main.(*Postgres).handleSimpleQuery(0xc000012120, 0xc000161500, 0xc0005b4b00)
	/app/postgres.go:95 +0xb6
main.(*Postgres).Run(0xc000012120, 0xc000161500)
	/app/postgres.go:73 +0xd7
main.start.func1()
	/app/main.go:63 +0x45
created by main.start in goroutine 1
	/app/main.go:62 +0x1c5

5

panic: Unsupported type: TIMESTAMPTZ

goroutine 16 [running]:
main.(*QueryHandler).generateDataRow(0xc00068d860?, 0xc00068d860, {0xc000624938, 0x1, 0x2bdde60?})
	/app/query_handler.go:551 +0x1cde
main.(*QueryHandler).rowsToDataMessages(0xc0000a5a80, 0xc00068d860, {0xc000120100, 0x32})
	/app/query_handler.go:356 +0x18f
main.(*QueryHandler).HandleQuery(0xc0000a5a80, {0xc000120080, 0x33})
	/app/query_handler.go:201 +0x3cf
main.(*Postgres).handleSimpleQuery(0xc0000122e8, 0xc0000a5a80, 0xc0003c0b00)
	/app/postgres.go:95 +0xb6
main.(*Postgres).Run(0xc0000122e8, 0xc0000a5a80)
	/app/postgres.go:73 +0xd7
main.start.func1()
	/app/main.go:63 +0x45
created by main.start in goroutine 1
	/app/main.go:62 +0x1c5

Expected behavior
Expected ERROR to be shown or sql query to be successfully executed

Best regards,
Artyom Zarubin
Postgres Professional: https://postgrespro.com/

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions