NodePit Runner

Workflows Around The Clock!

Frequently Asked Questions

This page contains answers to our most frequently asked questions. If you cannot find what you are looking for, please get in touch with us.

In which way are you affiliated with the KNIME AG?

We are not affiliated with the KNIME AG. We deliberately are not a “KNIME Partner”, but an independent company. We strongly believe that only this way we can provide you with the best and most innovative solutions and services and avoid any conflicts of interest which would stem from a coupling with the KNIME AG.

My runs fail with workflows containing visualization nodes. What shall I do?

If you are using KNIME nodes from the KNIME Views or KNIME JavaScript Views extensions such as the Line Plot or Line Plot (JavaScript) nodes in your workflow, runs may fail with one of the following errors:

  • ERROR:elf_dynamic_array_reader.h(64) tag not found
  • Execute failed: No more handles [gtk_init_check() failed]

This is caused by a bug in the underlying Chromium browser embedded in the KNIME Views and KNIME JavaScript Views extensions and can be solved as follows:

  1. Open the “Environment” menu and select the environment you'd like to use to run your workflow.

  2. Use the “Extension Search” to add the extension KNIME Bundled Chromium Browser (legacy).

  3. Under “Preference Entries”, manually add the following preferences:

    • /instance/org.knime.js.core/js.core.headlessBrowser=org.knime.ext.seleniumdrivers.multios.ChromiumImageGenerator
    • /instance/org.knime.js.core/js.core.viewBrowser=org.knime.ext.seleniumdrivers.multios.ChromiumWizardNodeView
  4. Save your environment and re-run your schedule successfully.

My runs fail because of insufficient Java heap space. How can I increase it?

KNIME runs with a fairly low heap space limit by default. If you're getting java.lang.OutOfMemoryError: Java heap space errors during runs, you need to increase the Java heap space in your environment. This can easily be done as follows:

  1. Open the “Environment” menu and select the environment for which you'd like to increase the heap space.

  2. Go to section “Additional vmargs” and add a new parameter -Xmx4g (e.g. here you set the available heap space to 4 GB). Make sure that the value corresponds to the available memory on your host machine.

  3. Save your environment and re-run your schedule successfully.

How do I add R to my environment?

If you need the R programming language in your environment, for example because your KNIME workflow contains nodes from KNIME Interactive R Statistics Integration, you can easily install R as follows:

  1. Open the “Environment” menu and select the environment for which you'd like to install R for.

  2. Go to section “Additional Dockerfile Instructions” and add the below snippet. This will install r-base and Rserve into your environment. R is then available via /usr/lib/R and should be automatically discovered by the KNIME Interactive R Statistics nodes.

    RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -yq r-base && rm -rf /var/lib/apt/lists/* && R -e "install.packages('Rserve',,'',type='source')"
  3. Save your environment and run your schedule.

How do I run the Selenium Nodes?

To run Selenium Nodes workflows for web scraping, task automation, or testing with the NodePit Runner, the following steps are needed:

  1. Make sure to select “Chrome for Testing (bundled)” in your workflow’s Start WebDriver or WebDriver Factory node.

  2. Open the “Environment” menu and create a new environment or chose an existing one to edit.

  3. Use the “Extension Search” to add the extensions Selenium Nodes for KNIME and Selenium Nodes for KNIME: Chrome for Testing.

  4. Under “Preference Entries”, manually add a preference entry /instance/com.nodepit.licensing.plugin/ws.palladian.nodes.selenium.plugin= with your license code as value. You’ll need to manually edit the license key before pasting it so that it is on one single line: Replace line breaks with \n and prepend = characters with a \, i.e. \=

  5. Under “Additional vmargs” add the following:

    -Dseleniumnodes.chromium.args='--headless=new --no-sandbox --disable-dev-shm-usage'
  6. Under “Additional Dockerfile Instructions” add the below snippet with additional dependencies required to run a Chrome browser.

    RUN apt-get update && apt-get install -yq xvfb openjfx libnss3-dev libgdk-pixbuf2.0-dev libgtk-3-dev libxss-dev && rm -rf /var/lib/apt/lists/*
  7. Save your environment and run your schedule.

In case of questions, please reach out to — we’re happy to help!

Where do I find the REST API?

NodePit Runner can be fully controlled via its REST API. When running NodePit Runner locally, the OpenAPI specification can be found via http://localhost:8080/api/docs/json, a Swagger UI is accessible via http://localhost:8080/api/docs/.

For authorization, please request the POST /users/login operation to receive a valid JWT token which can be used to access all other operations. You can then provide the JWT token as header Authorization: Bearer <token> in your requests.

We also provide the NodePit Runner Nodes to control NodePit Runner from within the KNIME Analytics Platform. An example workflow including authentication and data collection can be found here.