[BUG] Segmentation fault with callProcedure
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 25/100
- Tipo di issue
- Bug
- Chiarezza
- Da chiarire
- Stato di attività
- Ferma
- Stack tecnologico
- javascript, node.js
- Ambito
- databases
Direzione di ricerca
Inizia con lo snippet callProcedure fornito e confronta il suo comportamento con il percorso delle istruzioni preparate, che secondo quanto riportato ha esito positivo. Riproduci il problema con unixODBC e DB2 su IBM i 7.4 usando Node.js 22, inclusi i casi con parametri INOUT e OUT; il lavoro è completato quando callProcedure termina senza segmentation fault.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Describe your system
odbcPackage Version: 2.4.8- ODBC Driver: unixODBC
- Database Name: DB2 on ibmi 7.4
- Database Version:
- Database OS:
- Node.js Version: 22
- Node.js OS: linux ubuntu
Describe the bug
calling function callProcedure on an open connection ends with a Segmentation fault. We've also tried with a prepared statement and the call to the same procedure works. Our procedure take only a varchar as a INOUT parameter. We've try with a char(500) as an IN parameter and a second OUT parameter, but the segmentation fault still appears. The input parameter is JSON string and we're expecting to retrieve a JSON object as string from the INOUT parameter.
the connection used is obtained from a pool
Expected behavior
no segmentation fault occurs when using the callProcedure function
To Reproduce
Steps to reproduce the behavior:
- Connect to database with options '...'
- Create database table '...'
- Run query '...'
Code
we used the following code to reproduce the issue
import odbc from 'odbc';
(async () => {
const dsn = "<connection string>"
let conn;
try {
conn = await odbc.connect(dsn);
console.log("conn", conn.odbcConnection)
console.log("connected", conn.connected)
const data = {action: 'CR', data:{numcli: 103, price: 10}};
console.log("data", data);
const res = await conn.callProcedure(null, 'SCHEMA', 'TEST_PROC', [JSON.stringify(data)])
console.log(res2)
} catch (err) {
console.error('oups something wrong happens!');
console.error(err);
} finally {
if (conn) {
await conn.close()
}
}
})();
Additional context
the application runs into a docker container with node-22-slim as base image
- Lingua principale
- JavaScript
- Stelle
- 159
- Fork
- 92
- Merge medio
- 5h 59m
- PR unite (30g)
- 3
Preparare l'ambiente
Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di IBM/node-odbc
-
doc: how to run the testsAperta
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 85/100
-
security
Difficoltà 3/5 1-2 giorni Idoneità per principianti 45/100
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 48/100
-
[Bug] Sybase ASE: Encoding issue (works in msnodesqlv8, fails in node-odbc with \x1A artifacts)Aperta
Difficoltà 4/5 3-5 giorni Idoneità per principianti 35/100
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 38/100
Tutte le issue di IBM/node-odbc
Issue simili
-
`yarn vitest:update` (documented) throws locally; local Cypress scripts target an unserved portAperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
rescript-lang/rescript-lang.org#1415 ·
I maintainer di solito rispondono entro 2 giorni
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 85/100
Deepak3699/Ai_Mentor#244 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
antithesishq/bombadil#361 ·
I maintainer di solito rispondono entro 1 giorno
-
ungroomed
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
dequelabs/axe-core#5455 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 88/100
DietrichGebert/ponytail#1072 ·
I maintainer di solito rispondono entro 3 giorni