Exposes thread_row_ranges for testing. Test-only; no library code calls it.
Public for the same reason parquet_debug_set_string_min_bytes is, and with more at stake:
the byte-alignment rule this returns is the one property of the threading layer whose failure
is a silent wrong answer (two threads sharing a validity byte lose one another's writes,
and the column still validates). It has no consumer inside the module until S5, so without
this it would ship untested — which is precisely how a rule everyone agrees with comes to be
implemented wrongly.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| integer(kind=int64), | intent(in) | :: | n |
total rows. |
||
| integer, | intent(in) | :: | nt |
number of ranges. |
||
| integer(kind=int64), | intent(out), | allocatable | :: | lo(:) |
first row of each range. |
|
| integer(kind=int64), | intent(out), | allocatable | :: | hi(:) |
last row of each range. |
subroutine parquet_debug_string_row_ranges(n, nt, lo, hi) integer(int64), intent(in) :: n !! total rows. integer, intent(in) :: nt !! number of ranges. integer(int64), allocatable, intent(out) :: lo(:) !! first row of each range. integer(int64), allocatable, intent(out) :: hi(:) !! last row of each range. call thread_row_ranges(n, nt, lo, hi) end subroutine parquet_debug_string_row_ranges