prestodb/presto · error · UncheckedIOException

Failed to read configuration file:

Error message

Failed to read configuration file: 

What it means

EventListenerManager.createEventListener failed while reading or parsing an event listener configuration file; the file path and underlying IOException details are appended. The properties file could not be loaded into the factory.

Source

Thrown at presto-main-base/src/main/java/com/facebook/presto/eventlistener/EventListenerManager.java:101

            configFiles = ImmutableList.of(EVENT_LISTENER_CONFIGURATION.toFile());
        }
        configFiles.forEach(this::createEventListener);
    }

    private void createEventListener(File configFile)
    {
        log.info("-- Loading event listener configuration file %s --", configFile);
        if (configFile.exists()) {
            configFile = configFile.getAbsoluteFile();
            log.info("-- Loading event listener configuration file : %s --", configFile);
            try {
                Map<String, String> properties = new HashMap<>(loadProperties(configFile));
                loadConfiguredEventListener(properties);
                log.info("-- Loaded event listener configuration file %s --", configFile);
            }
            catch (IOException e) {
                log.error(e, "IOException while loading configuration file: " + configFile);
                throw new UncheckedIOException("Failed to read configuration file: " + configFile, e);
            }
        }
        else {
            log.info("Unable to locate configuration file %s --", configFile);
        }
    }

    private void setConfiguredEventListener(String name, Map<String, String> properties)
    {
        requireNonNull(name, "name is null");
        requireNonNull(properties, "properties is null");

        log.info("-- Loading event listener --");

        EventListenerFactory eventListenerFactory = eventListenerFactories.get(name);
        checkState(eventListenerFactory != null, "Event listener %s is not registered", name);

        try (ThreadContextClassLoader ignored = new ThreadContextClassLoader(eventListenerFactory.getClass().getClassLoader())) {

View on GitHub (pinned to 55bb57d202)

Solutions

  1. Check the event listener properties file exists and is readable
  2. Fix syntax errors or IO issues reported in the appended message
Defensive patterns

Strategy: try-catch

When it happens

Trigger: Thrown at presto-main-base/src/main/java/com/facebook/presto/eventlistener/EventListenerManager.java:101 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of prestodb/presto@55bb57d202 (2026-09-04). Data as JSON: /api/errors/a2b4325e5a28a437. Report an issue: GitHub.