anoopj commented on code in PR #18585:
URL: https://github.com/apache/iceberg/pull/18585#discussion_r4318573591


##########
format/spec.md:
##########
@@ -1011,12 +1012,26 @@ For example, stats for an optional `geometry` field 
named `location` with field-
   10_804: optional long value_count;
   10_805: optional long null_value_count;
   10_807: optional long total_bytes;
-  // tight_bounds and nan_value_count are omitted for geo types
+  // nan_value_count is omitted for geo types
 }
 ```
 
 For `variant`, both bounds are unshredded `variant` that store variant field 
bounds by normalized JSON paths as field names. See [Bounds for 
Variant](#bounds-for-variant) for details on producing these bounds.
 
+<a id="stats-tightness"></a>
+###### Stats Tightness
+
+Statistics are *tight* when they are exact for the live rows of a file: bounds 
are the minimum and maximum of the live values and the counts (`value_count`, 
`null_value_count`, and `nan_value_count`) are exact. When `tight_stats` is 
absent, readers must assume stats are not tight.
+
+When `tight_stats` is true:
+
+* Counts are exact for all fields.
+* Bounds are exact for fixed-width primitives and for `variant`.

Review Comment:
   Good callout. I think variant is a bit different in the sense that some of 
the fields may not have stats, but any field level stats present has the same 
tightness guarantees. I will try to incorporate this. 



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to