mozIStorageStatementParams doesn't let you bind an array
Categories
(Core :: SQLite and Embedded Database Bindings, defect, P3)
Tracking
()
| Tracking | Status | |
|---|---|---|
| firefox134 | --- | fixed |
People
(Reporter: sdwilsh, Assigned: mak)
References
(Blocks 3 open bugs, )
Details
Attachments
(2 files, 2 obsolete files)
| Reporter | ||
Comment 2•16 years ago
|
||
| Assignee | ||
Updated•9 years ago
|
| Assignee | ||
Comment 3•9 years ago
|
||
Updated•3 years ago
|
Updated•1 year ago
|
| Assignee | ||
Comment 4•1 year ago
|
||
| Assignee | ||
Comment 5•1 year ago
|
||
Depends on D221264
| Assignee | ||
Updated•1 year ago
|
| Assignee | ||
Comment 6•1 year ago
|
||
| Assignee | ||
Comment 7•1 year ago
|
||
Use carray`` extension to bind array of numerics and strings, so we can avoid large and slow IN clauses, and cache prepared statements having a variable number of parameters. The extension is statically loaded and available in every connection. Consumers are encouraged to use the explicit bindArrayXXXmethods, as the genericbindByIndexandbindByNamemethods are too lenient, especially from Javascript. Notecarray`` only supports UTF8 encoded strings, the API will convert
the encoding when UTF16 is passed in.
These new variants are not exposed to Rust yet, as the existing comment
suggests they were intended for primitive types. It could be done in the
future, if necessary.
Updated•1 year ago
|
Updated•1 year ago
|
Backed out for causing multiple failures.
-
Push with failures -GTest failures
-
Failure Log
———————————————————————————————————— -
Push with failures - build bustages
-
Failure Log
———————————————————————————————————— -
Push with failures - another gtest failure
-
Failure Log
———————————————————————————————————— -
Push with failures - valgrind bustages
| Assignee | ||
Comment 10•1 year ago
|
||
The gtest failure is funny, it is actually caused by a previous test that is calling sqlite3_shutdown() and then it tries to reinitialize the library, but it doesn't use the same options that were originally used to initialize it.
So the solution is to expose an Init() method from AutoSQLiteLifetime and use that to reinitialize.
Comment 11•1 year ago
|
||
Comment 12•1 year ago
|
||
| bugherder | ||
https://hg.mozilla.org/mozilla-central/rev/8c03fc306baf
https://hg.mozilla.org/mozilla-central/rev/7884cf6b09a9
Description
•