summaryrefslogtreecommitdiff
path: root/vendor
diff options
context:
space:
mode:
Diffstat (limited to 'vendor')
-rw-r--r--vendor/modernc.org/sqlite/sqlite.go26
-rw-r--r--vendor/modules.txt2
2 files changed, 27 insertions, 1 deletions
diff --git a/vendor/modernc.org/sqlite/sqlite.go b/vendor/modernc.org/sqlite/sqlite.go
index 4dd876f80..6968da820 100644
--- a/vendor/modernc.org/sqlite/sqlite.go
+++ b/vendor/modernc.org/sqlite/sqlite.go
@@ -2066,3 +2066,29 @@ func finalTrampoline(tls *libc.TLS, ctx uintptr) {
delete(xAggregateContext.m, id)
xAggregateContext.ids.reclaim(id)
}
+
+// int sqlite3_limit(sqlite3*, int id, int newVal);
+func (c *conn) limit(id int, newVal int) int {
+ return int(sqlite3.Xsqlite3_limit(c.tls, c.db, int32(id), int32(newVal)))
+}
+
+// Limit calls sqlite3_limit, see the docs at
+// https://www.sqlite.org/c3ref/limit.html for details.
+//
+// To get a sql.Conn from a *sql.DB, use (*sql.DB).Conn(). Limits are bound to
+// the particular instance of 'c', so getting a new connection only to pass it
+// to Limit is possibly not useful above querying what are the various
+// configured default values.
+func Limit(c *sql.Conn, id int, newVal int) (r int, err error) {
+ err = c.Raw(func(driverConn any) error {
+ switch dc := driverConn.(type) {
+ case *conn:
+ r = dc.limit(id, newVal)
+ return nil
+ default:
+ return fmt.Errorf("unexpected driverConn type: %T", driverConn)
+ }
+ })
+ return r, err
+
+}
diff --git a/vendor/modules.txt b/vendor/modules.txt
index b8d6066f4..8f2df6059 100644
--- a/vendor/modules.txt
+++ b/vendor/modules.txt
@@ -1097,7 +1097,7 @@ modernc.org/memory
# modernc.org/opt v0.1.3
## explicit; go 1.13
modernc.org/opt
-# modernc.org/sqlite v1.23.0
+# modernc.org/sqlite v1.23.1
## explicit; go 1.18
modernc.org/sqlite
modernc.org/sqlite/lib