-
Notifications
You must be signed in to change notification settings - Fork 7
Open
Description
re-produce code:
package main
import (
"database/sql"
"sync"
_ "github.com/datafuselabs/databend-go"
)
func main() {
conn, err := sql.Open("databend", "http://databend:databend@localhost:8009/default?sslmode=disable")
if err != nil {
panic(err)
}
conn.SetMaxIdleConns(3)
conn.SetMaxOpenConns(3)
_, err = conn.Exec("set enable_query_result_cache = 1;")
if err != nil {
panic(err)
}
var wg sync.WaitGroup
for i := 0; i < 10; i++ {
wg.Add(1)
go func(i int) {
defer wg.Done()
rows, err := conn.Query("select value, default from system.settings where name = 'enable_query_result_cache'")
if err != nil {
panic(err)
}
for rows.Next() {
var value string
var defaultValue string
if err := rows.Scan(&value, &defaultValue); err != nil {
panic(err)
}
println("loop", i, " value -->", value, "default -->", defaultValue)
}
}(i)
}
wg.Wait()
}
In connection pool, the conn should use the same session state info.
Metadata
Metadata
Assignees
Labels
No labels