Commit c229c67
correct the annotation positioning caveat for the six array columns
The comment in `generated/build.gradle.kts` and the section in `README.md`
claimed the annotation positions are correct because the generated code uses
no arrays. Six generated columns are arrays.
Java applies a `TYPE_USE` annotation written before an array type to the
element type, and NullAway drops array-dimension annotations in JSpecify mode.
So `@Nullable String[] getNspacl()` reads as a non-null array of nullable
strings, while the column is a nullable array of non-null strings. The six
accessors are `getNspacl`, `getDatacl`, `getRelacl`, `getReloptions`,
`getSetconfig` and `getDefaclacl`. No operator code calls them today, because
the operator uses the table field constants and `Routines.aclexplode` instead.
The README also claimed NullAway reads the real nullness of every generated
method. The generator annotates column accessors only. `Routines.java` and the
classes in the `routines` package carry no annotation, so a routine such as
`shobj_description` still counts as non-null.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>1 parent 419b733 commit c229c67
2 files changed
Lines changed: 20 additions & 5 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
286 | 286 | | |
287 | 287 | | |
288 | 288 | | |
289 | | - | |
290 | | - | |
| 289 | + | |
| 290 | + | |
| 291 | + | |
291 | 292 | | |
292 | 293 | | |
293 | | - | |
| 294 | + | |
294 | 295 | | |
295 | 296 | | |
| 297 | + | |
| 298 | + | |
| 299 | + | |
| 300 | + | |
| 301 | + | |
| 302 | + | |
296 | 303 | | |
297 | 304 | | |
298 | 305 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
54 | 54 | | |
55 | 55 | | |
56 | 56 | | |
57 | | - | |
58 | | - | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
59 | 67 | | |
60 | 68 | | |
61 | 69 | | |
| |||
0 commit comments