Skip to content
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

Refactoring to make cardinality estimation provider-specific #3866

Closed
wants to merge 1 commit into from

Conversation

alephonea
Copy link
Collaborator

Changelog entry

...

Changelog category

  • New feature
  • Experimental feature
  • Improvement
  • Performance improvement
  • Bugfix
  • Backward incompatible change
  • Documentation (changelog entry is not required)
  • Not for changelog (changelog entry is not required)

Additional information

...

Copy link

github-actions bot commented Apr 18, 2024

2024-04-18 14:39:27 UTC Pre-commit check for f0fc9b9 has started.
2024-04-18 14:39:29 UTC Build linux-x86_64-release-clang14 is running...
🔴 2024-04-18 14:45:16 UTC Build failed. see the build logs.

Copy link

github-actions bot commented Apr 18, 2024

2024-04-18 14:47:21 UTC Pre-commit check for f0fc9b9 has started.
2024-04-18 14:47:23 UTC Build linux-x86_64-relwithdebinfo is running...
🔴 2024-04-18 14:52:04 UTC Build failed. see the build logs.
🔴 2024-04-18 14:53:30 UTC Tests run skipped.

Copy link

github-actions bot commented Apr 18, 2024

2024-04-18 15:33:45 UTC Pre-commit check for f0fc9b9 has started.
2024-04-18 15:33:48 UTC Build linux-x86_64-release-asan is running...
🔴 2024-04-18 15:39:05 UTC Build failed. see the build logs.
🔴 2024-04-18 15:40:41 UTC Tests run skipped.

Copy link

github-actions bot commented Apr 18, 2024

2024-04-18 16:37:19 UTC Pre-commit check for d7a843e has started.
2024-04-18 16:37:21 UTC Build linux-x86_64-release-clang14 is running...
🔴 2024-04-18 16:52:18 UTC Build failed. see the build logs.

Copy link

github-actions bot commented Apr 18, 2024

2024-04-18 16:39:58 UTC Pre-commit check for d7a843e has started.
2024-04-18 16:40:01 UTC Build linux-x86_64-relwithdebinfo is running...
🔴 2024-04-18 16:55:37 UTC Build failed. see the build logs.
🔴 2024-04-18 16:57:10 UTC Tests run skipped.

Copy link

github-actions bot commented Apr 18, 2024

2024-04-18 16:44:20 UTC Pre-commit check for d7a843e has started.
2024-04-18 16:44:22 UTC Build linux-x86_64-release-asan is running...
🔴 2024-04-18 17:03:17 UTC Build failed. see the build logs.
🔴 2024-04-18 17:04:55 UTC Tests run skipped.

@@ -28,6 +34,7 @@ struct TOptimizerStatistics {
double Cost = 0;
double Selectivity = 1.0;
const TVector<TString>& KeyColumns;
const IProviderStatistics* Specific = nullptr;
Copy link
Collaborator

Choose a reason for hiding this comment

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

This will work okay only if you own all Specific objects outside the optimizer and release the memory outside.
But this means you can't use Specific for intermediate optimizer nodes, only for base relations

Copy link

github-actions bot commented Apr 19, 2024

2024-04-19 12:22:59 UTC Pre-commit check for 005c0f1 has started.
2024-04-19 12:23:00 UTC Build linux-x86_64-release-clang14 is running...
🔴 2024-04-19 12:36:22 UTC Build failed. see the build logs.

Copy link

github-actions bot commented Apr 19, 2024

2024-04-19 12:43:34 UTC Pre-commit check for 005c0f1 has started.
2024-04-19 12:43:37 UTC Build linux-x86_64-relwithdebinfo is running...
🔴 2024-04-19 12:56:54 UTC Build failed. see the build logs.
🔴 2024-04-19 12:58:29 UTC Tests run skipped.

Copy link

github-actions bot commented Apr 19, 2024

2024-04-19 13:05:24 UTC Pre-commit check for 005c0f1 has started.
2024-04-19 13:05:26 UTC Build linux-x86_64-release-asan is running...
🔴 2024-04-19 13:19:14 UTC Build failed. see the build logs.
🔴 2024-04-19 13:20:50 UTC Tests run skipped.

Copy link

github-actions bot commented Apr 19, 2024

2024-04-19 13:27:21 UTC Pre-commit check for c9e17d9 has started.
2024-04-19 13:27:23 UTC Build linux-x86_64-release-asan is running...
🔴 2024-04-19 13:45:58 UTC Build failed. see the build logs.
🔴 2024-04-19 13:47:38 UTC Tests run skipped.

Copy link

github-actions bot commented Apr 19, 2024

2024-04-19 13:27:39 UTC Pre-commit check for c9e17d9 has started.
2024-04-19 13:27:40 UTC Build linux-x86_64-relwithdebinfo is running...
🔴 2024-04-19 13:45:32 UTC Build failed. see the build logs.
🔴 2024-04-19 13:47:17 UTC Tests run skipped.

Copy link

github-actions bot commented Apr 19, 2024

2024-04-19 13:29:19 UTC Pre-commit check for c9e17d9 has started.
2024-04-19 13:29:22 UTC Build linux-x86_64-release-clang14 is running...
🔴 2024-04-19 13:44:39 UTC Build failed. see the build logs.

Copy link
Collaborator

@pavelvelikhov pavelvelikhov left a comment

Choose a reason for hiding this comment

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

We also need to fix our KqpProviderContext to subclass from TDummyProviderContext (renamed to something less insulting)

return true;
}

bool TDummyProviderContext::IsJoinApplicable(const std::shared_ptr<IBaseOptimizerNode>& left,
Copy link
Collaborator

Choose a reason for hiding this comment

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

Lets rename TDummyProviderContext to something like TBaseProviderContext or TDefaultProviderContext.

Its not that dummy anymore if we're including the standard cardinality estimation in there

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Done.

Copy link

github-actions bot commented Apr 19, 2024

2024-04-19 16:09:58 UTC Pre-commit check for e8a492a has started.
2024-04-19 16:10:01 UTC Build linux-x86_64-relwithdebinfo is running...
🔴 2024-04-19 16:13:40 UTC Build failed. see the build logs.
🔴 2024-04-19 16:15:14 UTC Tests run skipped.

Copy link

github-actions bot commented Apr 19, 2024

2024-04-19 16:10:01 UTC Pre-commit check for e8a492a has started.
2024-04-19 16:10:03 UTC Build linux-x86_64-release-clang14 is running...
🔴 2024-04-19 16:13:48 UTC Build failed. see the build logs.

Copy link

github-actions bot commented Apr 19, 2024

2024-04-19 16:10:04 UTC Pre-commit check for e8a492a has started.
2024-04-19 16:10:07 UTC Build linux-x86_64-release-asan is running...
🔴 2024-04-19 16:13:37 UTC Build failed. see the build logs.
🔴 2024-04-19 16:15:15 UTC Tests run skipped.

Copy link

github-actions bot commented Apr 19, 2024

2024-04-19 16:36:11 UTC Pre-commit check for ce64e4c has started.
2024-04-19 16:36:13 UTC Build linux-x86_64-release-asan is running...
🔴 2024-04-19 16:39:35 UTC Build failed. see the build logs.
🔴 2024-04-19 16:41:10 UTC Tests run skipped.

Copy link

github-actions bot commented Apr 19, 2024

2024-04-19 16:36:15 UTC Pre-commit check for ce64e4c has started.
2024-04-19 16:36:18 UTC Build linux-x86_64-release-clang14 is running...
🔴 2024-04-19 16:40:06 UTC Build failed. see the build logs.

Copy link

github-actions bot commented Apr 19, 2024

2024-04-19 16:36:20 UTC Pre-commit check for ce64e4c has started.
2024-04-19 16:36:23 UTC Build linux-x86_64-relwithdebinfo is running...
🔴 2024-04-19 16:40:02 UTC Build failed. see the build logs.
🔴 2024-04-19 16:41:36 UTC Tests run skipped.

Copy link

github-actions bot commented Apr 22, 2024

2024-04-22 17:00:23 UTC Pre-commit check for a9abcd7 has started.
2024-04-22 17:00:25 UTC Build linux-x86_64-release-asan is running...
🔴 2024-04-22 17:17:49 UTC Build failed. see the build logs.
🔴 2024-04-22 17:19:15 UTC Tests run skipped.

Copy link

github-actions bot commented Apr 22, 2024

2024-04-22 17:01:20 UTC Pre-commit check for a9abcd7 has started.
2024-04-22 17:01:23 UTC Build linux-x86_64-relwithdebinfo is running...
🔴 2024-04-22 17:18:01 UTC Build failed. see the build logs.
🔴 2024-04-22 17:19:40 UTC Tests run skipped.

Copy link

github-actions bot commented Apr 22, 2024

2024-04-22 17:01:27 UTC Pre-commit check for a9abcd7 has started.
2024-04-22 17:01:30 UTC Build linux-x86_64-release-clang14 is running...
🔴 2024-04-22 17:15:59 UTC Build failed. see the build logs.

@alephonea
Copy link
Collaborator Author

We also need to fix our KqpProviderContext to subclass from TDummyProviderContext (renamed to something less insulting)

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

Successfully merging this pull request may close these issues.

2 participants