Commit d2c0360
committed
docs: add write caveat for hidden attributes (insert/update1/raw-SQL)
Expand §3.4 with a write caveat covering the three observed behaviors:
1. update1 raises "Attribute '_name' not found" — heading.names is filtered
(heading.py:232).
2. insert raises "Field '_name' not in table heading" — Heading.__iter__
walks the filtered view (heading.py:367).
3. insert(..., ignore_extra_fields=True) silently *drops* the hidden key
without writing it. Less obvious than the loud error and easy to miss.
Also note that platform-managed hidden columns (_job_start_time, etc.)
are populated by DataJoint internals via raw SQL during populate()
(autopopulate.py:786), not via insert/update1. There is no public-API
path to write to a hidden column today; users with a declared hidden
column must reach for connection.query() or compute the value inside
an auto_populate step.
Tracks the write side of the gap that #1441 leaves open.1 parent 4a07530 commit d2c0360
1 file changed
Lines changed: 5 additions & 2 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
197 | 197 | | |
198 | 198 | | |
199 | 199 | | |
200 | | - | |
201 | | - | |
| 200 | + | |
| 201 | + | |
| 202 | + | |
202 | 203 | | |
203 | 204 | | |
| 205 | + | |
| 206 | + | |
204 | 207 | | |
205 | 208 | | |
206 | 209 | | |
| |||
0 commit comments