Skip to content

Make configuration validation more strict #6216

Open

Description

@keith-turner

Is your feature request related to a problem? Please describe.

Started some Accumulo servers processes with that changes in #6207 that removed port search properties. The server processes still had port search properties in the site config. The properties were ignored and nothing complained about them. Site config called this code and I suspect it ignored the port search properties because they had something like a tserver. prefix.

Describe the solution you'd like

Warn on properties that will never be used. Some prefixes in the accumulo config are meant to be extended by user and others are not. Maybe an annotation could be added to prefixes to denote if they can be extended or not. For example the tserver. prefix could have an annotation that specifies it can not be extended and the table.iterator prefix could have an annotation that specifies it can be extended. Probably only need one of the annotations, can treat absence as the opposite.

With this change the code could know that only having the tserver. prefix does not make a property valid.

Activity

  1. added this to the 4.0.0 milestone on Mar 12, 2026
  2. added
    enhancementThis issue describes a new feature, improvement, or optimization.
    on Mar 12, 2026
  3. dlmarion commented on Mar 16, 2026

    @dlmarion
    Contributor

    I wonder if it's the case that most of the prefix properties (COMPACTOR_PREFIX, GC_PREFIX, GENERAL_PREFIX, INSTANCE_PREFIX, MANAGER_PREFIX, MONITOR_PREFIX, RPC_PREFIX, SSERV_PREFIX and TSERV_PREFIX) are just not necessary. We have some properties that allow for custom properties (GENERAL_ARBITRARY_PROP_PREFIX, TABLE_ARBITRARY_PROP_PREFIX) and we could create others if needed.

  4. keith-turner commented on Mar 16, 2026

    @keith-turner
    ContributorAuthor

    I wonder if it's the case that most of the prefix properties (COMPACTOR_PREFIX, GC_PREFIX, GENERAL_PREFIX, INSTANCE_PREFIX, MANAGER_PREFIX, MONITOR_PREFIX, RPC_PREFIX, SSERV_PREFIX and TSERV_PREFIX) are just not necessary.

    Looked at how a few of these are used and they are lightly used by validation code at least. Some are actually used to avoid hard coding the prefix, but most of the property definition code hard codes the prefix.

  5. keith-turner commented on Mar 16, 2026

    @keith-turner
    ContributorAuthor

    Maybe an annotation could be added to prefixes to denote if they can be extended or not.

    Instead of an annotation we could have a new property type, like PropertyType.CLOSED_PREFIX.

  6. ArbaazKhan1 commented on Sep 18, 2026

    @ArbaazKhan1
    Contributor

    I can take a look at this

  7. self-assigned this
    on Sep 23, 2026
  8. modified the milestones: 4.0.0-alpha-1, 4.0.0 on Sep 24, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

enhancementThis issue describes a new feature, improvement, or optimization.

Type

No type

Projects

No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions