[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
sqlite memory allocation and async signal safety
From: |
Po Lu |
Subject: |
sqlite memory allocation and async signal safety |
Date: |
Thu, 24 Mar 2022 17:06:28 +0800 |
SQLite allocates various pieces of memory inside most of its functions.
This is done through the C library malloc, which immediately raises the
reentrancy question: shouldn't input be blocked around such functions?
Secondly, SQLite returns an error code upon running out of memory in an
irrecoverable fashion. Shouldn't the code that currently signals an
ordinary error in such situations call `memory_full' instead?
Alternatively, we could make SQLite call xmalloc instead of C library
malloc, but I suppose the SQLite library is better at coping with
allocation failures of large sizes than xmalloc is, so that's probably
not the best solution.
Ideas?
- sqlite memory allocation and async signal safety,
Po Lu <=