Skip to content

Spill for Window and OrderBy operators#228

Merged
sopel39 merged 16 commits intotrinodb:masterfrom
starburstdata:epic/spill/1
Feb 21, 2019
Merged

Spill for Window and OrderBy operators#228
sopel39 merged 16 commits intotrinodb:masterfrom
starburstdata:epic/spill/1

Conversation

@sopel39
Copy link
Member

@sopel39 sopel39 commented Feb 13, 2019

No description provided.

@sopel39 sopel39 requested a review from findepi February 13, 2019 16:54
@cla-bot
Copy link

cla-bot bot commented Feb 13, 2019

Thank you for your pull request and welcome to our community. We could not parse the GitHub identity of the following contributors: Atri Sharma.
This is most likely caused by a git client misconfiguration; please make sure to:

  1. check if your git client is configured with an email to sign commits git config --list | grep email
  2. If not, set it up using git config --global user.email email@example.com
  3. Make sure that the git commit email is configured in your GitHub account settings, see https://github.com/settings/emails

@sopel39
Copy link
Member Author

sopel39 commented Feb 13, 2019

@findepi new commits that require review:
Extract order by queries tests to separate class: 3dd2a44
Extract window queries tests to separate class: e0359db
Convert revocable memory to user memory on fully buffered group: 292a534
Use OrderingCompiler in WindowOperator spilling: ec46507
Convert revocable memory to user memory on OrderBy finish: ed8cc10
Use OrderingCompiler in OrderBy spilling: eb20fd9

New spill are enabled by default (when spilling is enabled).

@cla-bot
Copy link

cla-bot bot commented Feb 14, 2019

Thank you for your pull request and welcome to our community. We could not parse the GitHub identity of the following contributors: Atri Sharma.
This is most likely caused by a git client misconfiguration; please make sure to:

  1. check if your git client is configured with an email to sign commits git config --list | grep email
  2. If not, set it up using git config --global user.email email@example.com
  3. Make sure that the git commit email is configured in your GitHub account settings, see https://github.com/settings/emails

Copy link
Member

@findepi findepi left a comment

Choose a reason for hiding this comment

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

"Convert revocable memory to user memory on fully buffered group"

Copy link
Member

Choose a reason for hiding this comment

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

remove revocablePagesIndex parameter from updateMemoryUsage

Copy link
Member Author

Choose a reason for hiding this comment

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

How would we know if pages index is revocable then?

Copy link
Member

@findepi findepi left a comment

Choose a reason for hiding this comment

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

"Use OrderingCompiler in WindowOperator spilling"

Copy link
Member

Choose a reason for hiding this comment

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

i'd add this param after int preSortedChannelPrefix,, or after PagesIndex.Factory pagesIndexFactory,

Copy link
Member

@findepi findepi left a comment

Choose a reason for hiding this comment

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

"Convert revocable memory to user memory on OrderBy finish"

Copy link
Member

@findepi findepi left a comment

Choose a reason for hiding this comment

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

"Use OrderingCompiler in OrderBy spilling"

Copy link
Member

Choose a reason for hiding this comment

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

move this param after List<SortOrder> sortOrder,

Copy link
Member

Choose a reason for hiding this comment

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

move this field after private final List<SortOrder> sortOrder;

(and move private boolean closed; to be last, separated by a blank line)

Copy link
Member Author

Choose a reason for hiding this comment

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

I think that orderingCompiler is tightly coupled with spillerFactory, so they can as well be paired as parameters (similar in window operator)

Moved closed

Copy link
Member

Choose a reason for hiding this comment

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

just ref-ing here 8284734#r257741196

@findepi
Copy link
Member

findepi commented Feb 18, 2019

@sopel39 i reviewed the new commits listed in #228 (comment)
Please apply changes as fixups (in order, no need to put the fixups at the end)

Also, please update Add Spill To Disk for ORDER BY commit message -- it says "This PR ..."

@cla-bot
Copy link

cla-bot bot commented Feb 20, 2019

Thank you for your pull request and welcome to our community. We could not parse the GitHub identity of the following contributors: Atri Sharma.
This is most likely caused by a git client misconfiguration; please make sure to:

  1. check if your git client is configured with an email to sign commits git config --list | grep email
  2. If not, set it up using git config --global user.email email@example.com
  3. Make sure that the git commit email is configured in your GitHub account settings, see https://github.com/settings/emails

Copy link
Member Author

@sopel39 sopel39 left a comment

Choose a reason for hiding this comment

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

AC

Copy link
Member Author

Choose a reason for hiding this comment

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

How would we know if pages index is revocable then?

Copy link
Member

@findepi findepi left a comment

Choose a reason for hiding this comment

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

fixups LGTM

Copy link
Member

Choose a reason for hiding this comment

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

Fix error message commit

Please squash this with the first commit which broadens the use of OrderingCompiler. Otherwise you lose the context of the "fix".

Copy link
Member

@findepi findepi left a comment

Choose a reason for hiding this comment

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

@sopel39 please

  • squash commits, including Fix error message commit
  • update Add Spill To Disk for ORDER BY commit message -- it says "This PR ..."

havi-odin and others added 4 commits February 21, 2019 11:46
ORDER BY currently will error out if the data being processed exceeds
query memory limit. This commit introduces paging from disk and ensures
that ORDER BY is limited only by the amount of disk present.
@cla-bot
Copy link

cla-bot bot commented Feb 21, 2019

Thank you for your pull request and welcome to our community. We could not parse the GitHub identity of the following contributors: Atri Sharma.
This is most likely caused by a git client misconfiguration; please make sure to:

  1. check if your git client is configured with an email to sign commits git config --list | grep email
  2. If not, set it up using git config --global user.email email@example.com
  3. Make sure that the git commit email is configured in your GitHub account settings, see https://github.com/settings/emails

@cla-bot
Copy link

cla-bot bot commented Feb 21, 2019

Thank you for your pull request and welcome to our community. We could not parse the GitHub identity of the following contributors: Atri Sharma.
This is most likely caused by a git client misconfiguration; please make sure to:

  1. check if your git client is configured with an email to sign commits git config --list | grep email
  2. If not, set it up using git config --global user.email email@example.com
  3. Make sure that the git commit email is configured in your GitHub account settings, see https://github.com/settings/emails

@sopel39 sopel39 merged commit fcc18ff into trinodb:master Feb 21, 2019
@sopel39 sopel39 deleted the epic/spill/1 branch February 21, 2019 11:06
@sopel39
Copy link
Member Author

sopel39 commented Feb 26, 2019

During the process of rebasing and preparing this PR to merge into master, some commits were squashed. We'd like to acknowledge that Atri Sharma (@atris) helped co-author these commits: 24868b3, d398d1c

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

4 participants