git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH] squash! reftable: reading/writing blocks

From
Han-Wen Nienhuys <hanwen@google.com>
Date
Oct 7, 2021, 16:34 UTC
Message-ID
<CAFQ2z_PoRTOZDmZyWObeL3CC4Y5SvJhaVAMfkV-nT4NnMdL6zQ@mail.gmail.com>
In-Reply-To
<20210930122352.26505-1-carenas@gmail.com>

On Thu, Sep 30, 2021 at 2:24 PM Carlo Marcelo Arenas Belón <carenas@gmail.com> wrote:

> Avoid a possible infinite loop in platforms where size_t > long
> by using instead the required type and checking for overflow
> before doubling.
Thanks for your attention to detail. Folded in.

I think the loop is rather hypothetical, though: the block size is limited to 2²⁴, so I think you can´t make blocks that large.

-- 
Han-Wen Nienhuys - Google Munich
I work 80%. Don't expect answers from me on Fridays.
--
Google Germany GmbH, Erika-Mann-Strasse 33, 80636 Munich
Registergericht und -nummer: Hamburg, HRB 86891
Sitz der Gesellschaft: Hamburg
Geschäftsführer: Paul Manicle, Halimah DeLaine Prado
Previous: Carlo Marcelo Arenas BelónNext: Han-Wen Nienhuys via GitGitGadget
Message 68 of 111 in “Adds reftable library code from https://github.com/hanwen/reftable.”
  1. 00/19 Adds reftable library code from https://github.com/hanwen/reftable.Han-Wen Nienhuys via GitGitGadget, Aug 30, 2021
  2. 01/19 hash.h: provide constants for the hash IDsHan-Wen Nienhuys via GitGitGadget, Aug 30, 2021
  3. 03/19 reftable: add error related functionalityHan-Wen Nienhuys via GitGitGadget, Aug 30, 2021
  4. 02/19 reftable: RFC: add LICENSEHan-Wen Nienhuys via GitGitGadget, Aug 30, 2021
  5. 04/19 reftable: utility functionsHan-Wen Nienhuys via GitGitGadget, Aug 30, 2021
  6. 05/19 reftable: add blocksource, an abstraction for random access readsHan-Wen Nienhuys via GitGitGadget, Aug 30, 2021
  7. 07/19 Provide zlib's uncompress2 from compat/zlib-compat.cHan-Wen Nienhuys via GitGitGadget, Aug 30, 2021
  8. fixup! Provide zlib's uncompress2 from compat/zlib-compat.cCarlo Marcelo Arenas Belón, Sep 2, 2021
  9. 06/19 reftable: (de)serialization for the polymorphic record type.Han-Wen Nienhuys via GitGitGadget, Aug 30, 2021
  10. 09/19 reftable: a generic binary tree implementationHan-Wen Nienhuys via GitGitGadget, Aug 30, 2021
  11. 08/19 reftable: reading/writing blocksHan-Wen Nienhuys via GitGitGadget, Aug 30, 2021
  12. 11/19 reftable: generic interface to tablesHan-Wen Nienhuys via GitGitGadget, Aug 30, 2021
  13. 14/19 reftable: add a heap-based priority queue for reftable recordsHan-Wen Nienhuys via GitGitGadget, Aug 30, 2021
  14. 10/19 reftable: write reftable filesHan-Wen Nienhuys via GitGitGadget, Aug 30, 2021
  15. 13/19 reftable: reftable file level testsHan-Wen Nienhuys via GitGitGadget, Aug 30, 2021
  16. 12/19 reftable: read reftable filesHan-Wen Nienhuys via GitGitGadget, Aug 30, 2021
  17. 15/19 reftable: add merged table viewHan-Wen Nienhuys via GitGitGadget, Aug 30, 2021
  18. 16/19 reftable: implement refname validationHan-Wen Nienhuys via GitGitGadget, Aug 30, 2021
  19. 18/19 reftable: add dump utilityHan-Wen Nienhuys via GitGitGadget, Aug 30, 2021
  20. 19/19 Add "test-tool dump-reftable" command.Han-Wen Nienhuys via GitGitGadget, Aug 30, 2021
  21. 17/19 reftable: implement stack, a mutable database of reftable files.Han-Wen Nienhuys via GitGitGadget, Aug 30, 2021
  22. Han-Wen NienhuysAug 30, 2021
  23. 0/4 fixup for hn/reftableCarlo Marcelo Arenas Belón, Sep 8, 2021
  24. 1/4 fixup! reftable: reading/writing blocksCarlo Marcelo Arenas Belón, Sep 8, 2021
  25. 2/4 fixup! reftable: utility functionsCarlo Marcelo Arenas Belón, Sep 8, 2021
  26. 3/4 fixup! Provide zlib's uncompress2 from compat/zlib-compat.cCarlo Marcelo Arenas Belón, Sep 8, 2021
  27. 4/4 fixup! reftable: utility functionsCarlo Marcelo Arenas Belón, Sep 8, 2021
  28. Junio C HamanoSep 8, 2021
  29. 00/19 Adds reftable library code from https://github.com/hanwen/reftable.Han-Wen Nienhuys via GitGitGadget, Sep 9, 2021
  30. 01/19 hash.h: provide constants for the hash IDsHan-Wen Nienhuys via GitGitGadget, Sep 9, 2021
  31. 02/19 reftable: RFC: add LICENSEHan-Wen Nienhuys via GitGitGadget, Sep 9, 2021
  32. 03/19 reftable: add error related functionalityHan-Wen Nienhuys via GitGitGadget, Sep 9, 2021
  33. 04/19 reftable: utility functionsHan-Wen Nienhuys via GitGitGadget, Sep 9, 2021
  34. 06/19 reftable: (de)serialization for the polymorphic record type.Han-Wen Nienhuys via GitGitGadget, Sep 9, 2021
  35. 07/19 Provide zlib's uncompress2 from compat/zlib-compat.cHan-Wen Nienhuys via GitGitGadget, Sep 9, 2021
  36. Carlo ArenasSep 15, 2021
  37. 05/19 reftable: add blocksource, an abstraction for random access readsHan-Wen Nienhuys via GitGitGadget, Sep 9, 2021
  38. 08/19 reftable: reading/writing blocksHan-Wen Nienhuys via GitGitGadget, Sep 9, 2021
  39. Ævar Arnfjörð BjarmasonSep 24, 2021
  40. 09/19 reftable: a generic binary tree implementationHan-Wen Nienhuys via GitGitGadget, Sep 9, 2021
  41. 10/19 reftable: write reftable filesHan-Wen Nienhuys via GitGitGadget, Sep 9, 2021
  42. 11/19 reftable: generic interface to tablesHan-Wen Nienhuys via GitGitGadget, Sep 9, 2021
  43. 12/19 reftable: read reftable filesHan-Wen Nienhuys via GitGitGadget, Sep 9, 2021
  44. 14/19 reftable: add a heap-based priority queue for reftable recordsHan-Wen Nienhuys via GitGitGadget, Sep 9, 2021
  45. 13/19 reftable: reftable file level testsHan-Wen Nienhuys via GitGitGadget, Sep 9, 2021
  46. 16/19 reftable: implement refname validationHan-Wen Nienhuys via GitGitGadget, Sep 9, 2021
  47. 15/19 reftable: add merged table viewHan-Wen Nienhuys via GitGitGadget, Sep 9, 2021
  48. 17/19 reftable: implement stack, a mutable database of reftable files.Han-Wen Nienhuys via GitGitGadget, Sep 9, 2021
  49. 18/19 reftable: add dump utilityHan-Wen Nienhuys via GitGitGadget, Sep 9, 2021
  50. 19/19 Add "test-tool dump-reftable" command.Han-Wen Nienhuys via GitGitGadget, Sep 9, 2021
  51. Junio C HamanoSep 9, 2021
  52. Junio C HamanoSep 9, 2021
  53. Han-Wen NienhuysSep 13, 2021
  54. Junio C HamanoSep 13, 2021
  55. Carlo ArenasSep 13, 2021
  56. Junio C HamanoSep 13, 2021
  57. 00/19 Adds reftable library code from https://github.com/hanwen/reftable.Han-Wen Nienhuys via GitGitGadget, Sep 28, 2021
  58. 02/19 reftable: RFC: add LICENSEHan-Wen Nienhuys via GitGitGadget, Sep 28, 2021
  59. 03/19 reftable: add error related functionalityHan-Wen Nienhuys via GitGitGadget, Sep 28, 2021
  60. 01/19 hash.h: provide constants for the hash IDsHan-Wen Nienhuys via GitGitGadget, Sep 28, 2021
  61. 04/19 reftable: utility functionsHan-Wen Nienhuys via GitGitGadget, Sep 28, 2021
  62. 05/19 reftable: add blocksource, an abstraction for random access readsHan-Wen Nienhuys via GitGitGadget, Sep 28, 2021
  63. 06/19 reftable: (de)serialization for the polymorphic record type.Han-Wen Nienhuys via GitGitGadget, Sep 28, 2021
  64. 07/19 Provide zlib's uncompress2 from compat/zlib-compat.cHan-Wen Nienhuys via GitGitGadget, Sep 28, 2021
  65. 09/19 reftable: a generic binary tree implementationHan-Wen Nienhuys via GitGitGadget, Sep 28, 2021
  66. 08/19 reftable: reading/writing blocksHan-Wen Nienhuys via GitGitGadget, Sep 28, 2021
  67. squash! reftable: reading/writing blocksCarlo Marcelo Arenas Belón, Sep 30, 2021
  68. Han-Wen NienhuysOct 7, 2021
  69. 10/19 reftable: write reftable filesHan-Wen Nienhuys via GitGitGadget, Sep 28, 2021
  70. 11/19 reftable: generic interface to tablesHan-Wen Nienhuys via GitGitGadget, Sep 28, 2021
  71. 12/19 reftable: read reftable filesHan-Wen Nienhuys via GitGitGadget, Sep 28, 2021
  72. 15/19 reftable: add merged table viewHan-Wen Nienhuys via GitGitGadget, Sep 28, 2021
  73. 13/19 reftable: reftable file level testsHan-Wen Nienhuys via GitGitGadget, Sep 28, 2021
  74. 14/19 reftable: add a heap-based priority queue for reftable recordsHan-Wen Nienhuys via GitGitGadget, Sep 28, 2021
  75. 16/19 reftable: implement refname validationHan-Wen Nienhuys via GitGitGadget, Sep 28, 2021
  76. 17/19 reftable: implement stack, a mutable database of reftable files.Han-Wen Nienhuys via GitGitGadget, Sep 28, 2021
  77. 18/19 reftable: add dump utilityHan-Wen Nienhuys via GitGitGadget, Sep 28, 2021
  78. 19/19 Add "test-tool dump-reftable" command.Han-Wen Nienhuys via GitGitGadget, Sep 28, 2021
  79. Junio C HamanoSep 28, 2021
  80. Ævar Arnfjörð BjarmasonOct 2, 2021
  81. hn/reftable "fixes"Carlo Marcelo Arenas Belón, Sep 30, 2021
  82. 1/4 fixup! reftable: add a heap-based priority queue for reftable recordsCarlo Marcelo Arenas Belón, Sep 30, 2021
  83. 2/4 fixup! reftable: implement stack, a mutable database of reftable files.Carlo Marcelo Arenas Belón, Sep 30, 2021
  84. C++(C99)-style comments in git.gitÆvar Arnfjörð Bjarmason, Oct 1, 2021
  85. 3/4 config.mak.uname: last release and snapshots of Minix still use zlib 1.2.3Carlo Marcelo Arenas Belón, Sep 30, 2021
  86. 4/4 reftable: avoid non portable compile time pointer to functionCarlo Marcelo Arenas Belón, Sep 30, 2021
  87. Junio C HamanoSep 30, 2021
  88. 00/19 Adds reftable library code from https://github.com/hanwen/reftable.Han-Wen Nienhuys via GitGitGadget, Oct 7, 2021
  89. 01/19 hash.h: provide constants for the hash IDsHan-Wen Nienhuys via GitGitGadget, Oct 7, 2021
  90. 02/19 reftable: add LICENSEHan-Wen Nienhuys via GitGitGadget, Oct 7, 2021
  91. 03/19 reftable: add error related functionalityHan-Wen Nienhuys via GitGitGadget, Oct 7, 2021
  92. 04/19 reftable: utility functionsHan-Wen Nienhuys via GitGitGadget, Oct 7, 2021
  93. 05/19 reftable: add blocksource, an abstraction for random access readsHan-Wen Nienhuys via GitGitGadget, Oct 7, 2021
  94. 09/19 reftable: a generic binary tree implementationHan-Wen Nienhuys via GitGitGadget, Oct 7, 2021
  95. 10/19 reftable: write reftable filesHan-Wen Nienhuys via GitGitGadget, Oct 7, 2021
  96. 11/19 reftable: generic interface to tablesHan-Wen Nienhuys via GitGitGadget, Oct 7, 2021
  97. 08/19 reftable: reading/writing blocksHan-Wen Nienhuys via GitGitGadget, Oct 7, 2021
  98. 12/19 reftable: read reftable filesHan-Wen Nienhuys via GitGitGadget, Oct 7, 2021
  99. 06/19 reftable: (de)serialization for the polymorphic record type.Han-Wen Nienhuys via GitGitGadget, Oct 7, 2021
  100. 07/19 Provide zlib's uncompress2 from compat/zlib-compat.cHan-Wen Nienhuys via GitGitGadget, Oct 7, 2021
  101. 13/19 reftable: reftable file level testsHan-Wen Nienhuys via GitGitGadget, Oct 7, 2021
  102. 14/19 reftable: add a heap-based priority queue for reftable recordsHan-Wen Nienhuys via GitGitGadget, Oct 7, 2021
  103. 15/19 reftable: add merged table viewHan-Wen Nienhuys via GitGitGadget, Oct 7, 2021
  104. reftable tests: use C syntax compatible with old xlcÆvar Arnfjörð Bjarmason, Jan 13, 2022
  105. Han-Wen NienhuysJan 13, 2022
  106. Ævar Arnfjörð BjarmasonJan 13, 2022
  107. Junio C HamanoJan 13, 2022
  108. 16/19 reftable: implement refname validationHan-Wen Nienhuys via GitGitGadget, Oct 7, 2021
  109. 18/19 reftable: add dump utilityHan-Wen Nienhuys via GitGitGadget, Oct 7, 2021
  110. 17/19 reftable: implement stack, a mutable database of reftable files.Han-Wen Nienhuys via GitGitGadget, Oct 7, 2021
  111. 19/19 Add "test-tool dump-reftable" command.Han-Wen Nienhuys via GitGitGadget, Oct 7, 2021

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.