Re: [REPORT] Static analys warnings

Поиск
Список
Период
Сортировка
От Ranier Vilela
Тема Re: [REPORT] Static analys warnings
Дата
Msg-id CAEudQAokNwc_FB821yQDx4TmXgWEFXpbgh5fPWqBkt=yH3Zd=g@mail.gmail.com
обсуждение исходный текст
Ответ на Re: [REPORT] Static analys warnings  (Andres Freund <andres@anarazel.de>)
Список pgsql-hackers
Fix possible overflow when converting, possible negative number to uint16.

postingoff can be -1,when converts to uint16, overflow can raise.
Otherwise, truncation can be occurs, losing precision, from int (31 bits) to uint16 (15 bits)
There is a little confusion in the parameters of some functions in this file, postigoff is declared as int, other declared as uint16.

src/backend/access/nbtree/nbtinsert.c
static void _bt_insertonpg(Relation rel, BTScanInsert itup_key,
  Buffer buf,
  Buffer cbuf,
  BTStack stack,
  IndexTuple itup,
  Size itemsz,
  OffsetNumber newitemoff,
  int postingoff, // INT
  bool split_only_page);
static Buffer _bt_split(Relation rel, BTScanInsert itup_key, Buffer buf,
Buffer cbuf, OffsetNumber newitemoff, Size newitemsz,
IndexTuple newitem, IndexTuple orignewitem,
IndexTuple nposting, uint16 postingoff); // UINT16

regards,
Ranier Vilela
Вложения

В списке pgsql-hackers по дате отправления:

Предыдущее
От: Tom Lane
Дата:
Сообщение: Re: Poll: are people okay with function/operator table redesign?
Следующее
От: "Jonathan S. Katz"
Дата:
Сообщение: Re: Poll: are people okay with function/operator table redesign?