-
Notifications
You must be signed in to change notification settings - Fork 14
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
DM-47980: Add an option to include dimension records into general query result #1135
Conversation
Codecov ReportAttention: Patch coverage is
✅ All tests successful. No failed tests found. Additional details and impacted files@@ Coverage Diff @@
## main #1135 +/- ##
==========================================
- Coverage 89.51% 89.50% -0.01%
==========================================
Files 366 366
Lines 48894 48998 +104
Branches 5916 5943 +27
==========================================
+ Hits 43766 43855 +89
- Misses 3719 3729 +10
- Partials 1409 1414 +5 ☔ View full report in Codecov by Sentry. |
825f7fe
to
4bbe699
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think you've made this more difficult and less memory-efficient than it needed to be by making the cached/skypix columns appear like regular result columns (a couple of line comments on that subject), but it's possible I just didn't see the motivation. Looks good aside from that question.
python/lsst/daf/butler/remote_butler/server/handlers/_query_serialization.py
Outdated
Show resolved
Hide resolved
82da72b
to
8be90c3
Compare
…(DM-47980) The `GeneralQueryResults.iter_tuples` method returned DataIds without dimension records. In some cases (e.g. for obscore export) it would be very useful to include records in the same result to avoid querying them separately. New method `with_dimension_records` is added to the class to trigger adding fields from all dimension records into returned page. This will produce many duplicates for some dimensions (e.g. `instrument`) but it keeps page structure simple. This adds one attribute to the `GeneralResultSpec` class, will need some care with Butler server compatibility.
GeneralResultPage now stores cached dimension records in a separate structure which avoids massive duplication of the records.
8796b6f
to
df7a350
Compare
The
GeneralQueryResults.iter_tuples
method returned DataIds without dimension records. In some cases (e.g. for obscore export) it would be very useful to include records in the same result to avoid querying them separately. New methodwith_dimension_records
is added to the class to trigger adding fields from all dimension records into returned page. This will produce many duplicates for some dimensions (e.g.instrument
) but it keeps page structure simple.This adds one attribute to the
GeneralResultSpec
class, will need some care with Butler server compatibility.Checklist
doc/changes
configs/old_dimensions