Skip to content

Disk bbq license enforcement#139087

Merged
elasticsearchmachine merged 17 commits intoelastic:mainfrom
benwtrent:disk-bbq-license-enforcement
Dec 8, 2025
Merged

Disk bbq license enforcement#139087
elasticsearchmachine merged 17 commits intoelastic:mainfrom
benwtrent:disk-bbq-license-enforcement

Conversation

@benwtrent
Copy link
Member

This enforces enterprise license for bbq_disk (DiskBBQ) indices.

  • 9.2 indices are able to continue to use bbq_disk
  • In indices created in 9.3+ writes are licensed, reads are not.
  • License check is only applied on format write instantiation. Not on field & index creation.
@benwtrent benwtrent requested a review from jimczi December 4, 2025 19:36
@elasticsearchmachine elasticsearchmachine added Team:Search Relevance Meta label for the Search Relevance team in Elasticsearch v9.3.0 labels Dec 4, 2025
@elasticsearchmachine
Copy link
Collaborator

Pinging @elastic/es-search-relevance (Team:Search Relevance)

@elasticsearchmachine
Copy link
Collaborator

Hi @benwtrent, I've created a changelog YAML for you.

elasticsearchmachine and others added 3 commits December 4, 2025 19:47
Copy link
Contributor

@jimczi jimczi left a comment

Choose a reason for hiding this comment

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

LGTM

}

public void testCreateDiskBBQIndexRestricted() {
disableLicensing(randomInvalidLicenseType());
Copy link
Contributor

@mayya-sharipova mayya-sharipova Dec 4, 2025

Choose a reason for hiding this comment

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

What does it mean disabling invalid license?
If the license type is already invalid, doesn't support DiskBBQ anyway, so why also mark it as inactive?

Copy link
Member Author

Choose a reason for hiding this comment

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

good callout, let me adjust these tests. we should test with NO license and with a random invalid license.

client().prepareSearch("diskbbq-index")
.setKnnSearch(List.of(new KnnSearchBuilder("vector", new float[] { 0.1f, 0.2f, 0.3f, 0.4f }, 10, 10, null, null, null)))
.get();
// disable license and read, it should not throw on read
Copy link
Contributor

Choose a reason for hiding this comment

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

Should there be license change here?

Copy link
Member Author

Choose a reason for hiding this comment

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

yeah, I missed it, good call

Copy link
Contributor

@mayya-sharipova mayya-sharipova left a comment

Choose a reason for hiding this comment

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

Thanks Ben, LGTM!

Copy link
Contributor

@john-wagster john-wagster left a comment

Choose a reason for hiding this comment

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

lgtm; this touched less than I thought it would. nice!

Copy link
Contributor

@tteofili tteofili left a comment

Choose a reason for hiding this comment

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

lgtm

@benwtrent benwtrent added the auto-merge-without-approval Automatically merge pull request when CI checks pass (NB doesn't wait for reviews!) label Dec 8, 2025
@elasticsearchmachine elasticsearchmachine merged commit 65d8b48 into elastic:main Dec 8, 2025
34 checks passed
@benwtrent benwtrent deleted the disk-bbq-license-enforcement branch December 8, 2025 16:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

auto-merge-without-approval Automatically merge pull request when CI checks pass (NB doesn't wait for reviews!) >bug :Search Relevance/Vectors Vector search Team:Search Relevance Meta label for the Search Relevance team in Elasticsearch v9.3.0

6 participants