Calling the method FreeColumnsmultiple times results in a SIGABRT.
One way to invoke this behaviour is by first calling fetchAlland then getColumnMetadataSync as shown in the example below:
const conn = new Database()
await conn.open(connectionString)
const stmt = await conn.prepare(`SELECT * from "users" WHERE "username" = 'jan' FETCH NEXT 1 ROWS ONLY FOR UPDATE`)
stmt.execute([], async (err, result, outparams) => {
await result.fetchAll();
await result.getColumnMetadataSync();
})
I've proposed a fix, where we provide FreeColumns with a reference to the column pointer instead. This way, FreeColumns can set the pointer to NULL once it's deleted.
Calling the method
FreeColumns
multiple times results in a SIGABRT.One way to invoke this behaviour is by first calling
fetchAll
and thengetColumnMetadataSync
as shown in the example below:I've proposed a fix, where we provide
FreeColumns
with a reference to the column pointer instead. This way,FreeColumns
can set the pointer toNULL
once it's deleted.