-
Notifications
You must be signed in to change notification settings - Fork 89
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
fix: support typetracer in to_packed
for IndexedOptionArray
#2912
Conversation
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files
|
4c875c8
to
b408feb
Compare
Checked in Connor's original reproducer - it is fixed with this patch and touching looks ok too. |
Ack, I take that latter statement back. I hit a placeholder array now when I try to compute the following, the original repro wasn't doing the compute. Glad I checked it: from coffea.nanoevents import NanoEventsFactory, PFNanoAODSchema
from distributed import Client
#import dask
import dask_awkward as dak
import awkward as ak
import pyinstrument
import time
if __name__ == "__main__":
client = Client()
PFNanoAODSchema.warn_missing_crossrefs = False
events = NanoEventsFactory.from_root(
{"./nano_mc2017_1.root": {"object_path": "Events", "steps": [[0,40],[40, 80]]}},
schemaclass=PFNanoAODSchema,
).events()
fatjet = events.FatJet
pf = ak.flatten(fatjet.constituents.pf, axis=2)
unflat_pf = ak.unflatten(pf, counts=ak.flatten(ak.num(fatjet.constituents.pf, axis=2)), axis=1)
print(dak.necessary_columns(unflat_pf.pt))
print(unflat_pf.pt.compute()) results in:
|
The |
Almost there, it presently overtouches, from the same reproducer:
should be only:
|
As discussed via DM - this one is fine to go in as is, the resulting overtouching will be dealt with separately. |
Fixes #2910 (@lgray)