Skip to content

Conversation

@chrisvittal
Copy link
Collaborator

Use the patch in place function of store_ref_block_max_length to compute ref_block_max_length rather than computing it on a zip join pipeline, causing that zip join pipeline to be executed twice.

Use the patch in place function of `store_ref_block_max_length` to
compute `ref_block_max_length` rather than computing it on a zip join
pipeline, causing that zip join pipeline to be executed twice.
)

vds.write(self._output_path)
hl.vds.store_ref_block_max_length(self._output_path)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I agree we shouldn't do this pass twice if not necessary, but is it not possible to compute this as we go so that we can just store this information in the globals? This feels like a hack that is pointing at some limitation of the Hail model.

Copy link
Collaborator Author

@chrisvittal chrisvittal Jan 22, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It depends on the precise behavior of _localize=False in aggregate_entries if that causes one pass, then we're good, otherwise this is better as computing this from a full vds is better than redoing the join twice.

@chrisvittal chrisvittal dismissed danking’s stale review January 29, 2024 16:40

See my comment.

Copy link
Contributor

@danking danking left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

OK, let's do the not terrible thing but I think this reveals a deficiency in the Hail Query language. Following up in Zulip: https://hail.zulipchat.com/#narrow/stream/123011-Hail-Query-Dev/topic/write.20.2B.20aggregate

@danking danking merged commit f56f579 into hail-is:main Jan 29, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants