Skip to content

"Create adapter" button stays disabled when creating a data adapter #27714

Open

Description

@ahmadbbi

Expected Behavior

Once all required fields are filled in, the "Create adapter" button should become clickable so I can create the data adapter.

Current Behavior

The "Create adapter" button stays disabled even after all required fields are filled in. Whenever I change a field value, the button flickers on and off for a moment, then goes back to disabled. I've seen this with several adapter types, not just one.

Possible Solution

Note: The following was generated with AI assistance after looking at the code. It's only meant as a starting point and hasn't been verified, so please treat it as a suggestion. The actual fix is up to whoever picks this up.

Possible root cause:

  • The form validates against POST /api/system/lookup/adapters/validate on every change. If that call returns an error for a field the form doesn't show, the button stays disabled and the user never sees why. For example, with the GeoIP adapter on Cloud, the File path field is hidden but the default path (/etc/graylog/server/GeoLite2-City.mmdb) fails validation with "The file does not exist."
  • The flicker looks like Formik clearing errors on each change (the form has no validate function), followed by the async backend validation setting them again.

Possible ideas:

  • Show validation errors returned by the backend even when they belong to a field that isn't rendered (e.g. as a general form error).
  • Run the backend validation through Formik's validate prop instead of a useEffect + setErrors, so the errors don't get cleared and set again on every change.
  • For GeoIP on Cloud, start with a valid IPinfo database type and its matching path instead of the MaxMind defaults.

Steps to Reproduce (for bugs)

  1. Go to System → Lookup Tables → Data Adapters
  2. Click "Create data adapter"
  3. Select a data adapter type (e.g. "Geo IP - MaxMind™ or IPinfo Databases")
  4. Fill in all required fields (Title, Name, ...)
  5. Notice that "Create adapter" stays disabled and flickers whenever a field changes

Context

I can't create new data adapters through the UI, so I can't set up the lookup tables I need.

Your Environment

  • Graylog Version: Graylog Cloud 7.1.9 (1018)
  • Java Version: n/a (Cloud)
  • OpenSearch Version: 2.19.3
  • MongoDB Version: 8.0.29
  • Operating System: macOS
  • Browser version: Firefox

Checklist

[] This issue fix need to be backported.
[] Does this issue have security implications?

Activity

  1. boosty commented on Oct 9, 2026

    @boosty
    Contributor

    For example, with the GeoIP adapter on Cloud, the File path field is hidden but the default path (/etc/graylog/server/GeoLite2-City.mmdb) fails validation with "The file does not exist."

    Good catch. For comparison, on-prem the invalid field is shown:

    Image
  2. ahmadbbi commented on Oct 9, 2026

    @ahmadbbi
    Author

    In cloud only IPInfo databases are valid. We can drop/hid the rest.

    valid: IPInfos
    Image
    Image

    Invalid: MAXMIND_CITY
    Image

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

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions