Data Widgets randomly fail - "No Data" / "Product element has empty data"

Data Widgets randomly fail - “No Data” / “Product element has empty data”

Hi,

I am having issues with Data Widgets in Xibo Docker.

Both Menu Board and DataSet widgets behave inconsistently:

  • Sometimes they work in the Layout Designer

  • Sometimes the Designer shows:

Product element has empty data

  • On the Windows Player they often do not render at all.

In the player logs I repeatedly see:

Widget: 129, [5001] No Data, ttl: 60

I can also see Widget Sync successfully processing and caching the widgets:

getData: finished getting data. There are 2 records returned
saveToCache: cached /widget/dataset/...
notifyDataUpdate: Process displayId: 2

So the CMS appears to retrieve the data correctly, but the player still reports “No Data”.

Extra notes:

  • Using Windows Player

  • Docker install

  • Latest Xibo CMS image

  • Memcached disabled (same issue with and without it)

  • Docker compose taken from the official documentation

This is my docker compose:

services:
    xibo-db:
        image: mysql:8.0
        volumes:
            - "./shared/db:/var/lib/mysql:Z"
        environment:
            - MYSQL_DATABASE=cms
            - MYSQL_USER=cms
            - MYSQL_RANDOM_ROOT_PASSWORD=yes
        mem_limit: 1g
        env_file: config.env
        restart: always

    xibo-xmr:
        image: ghcr.io/xibosignage/xibo-xmr:1.0
        ports:
            - "9505:9505"
        restart: always
        mem_limit: 256m
        env_file: config.env

    xibo-web:
        image: ghcr.io/xibosignage/xibo-cms:latest
        container_name: xibo-web
        volumes:
            - "./shared/cms/custom:/var/www/cms/custom:Z"
            - "./shared/backup:/var/www/backup:Z"
            - "./shared/cms/web/theme/custom:/var/www/cms/web/theme/custom:Z"
            - "./shared/cms/library:/var/www/cms/library:Z"
            - "./shared/cms/web/userscripts:/var/www/cms/web/userscripts:Z"
            - "./shared/cms/ca-certs:/var/www/cms/ca-certs:Z"
        restart: always
        environment:
            - MYSQL_HOST=xibo-db
            - XMR_HOST=xibo-xmr
            - CMS_USE_MEMCACHED=false
            - MEMCACHED_HOST=xibo-memcached
        env_file: config.env
        ports:
          - '8282:80'
        mem_limit: 1g

    xibo-memcached:
        image: memcached:alpine
        command: memcached -m 15
        restart: always
        mem_limit: 100M

    xibo-quickchart:
      image: ianw/quickchart
      restart: always

Has anyone seen this before?
How can i solve this?

Which one exactly did you use?

Version 4.4.2 can be found here and has significant differences:
https://github.com/xibosignage/xibo-cms/releases/download/4.4.2/xibo-docker.zip

That’s exactly the compose I used and also copied into my post.

Not exactly the same …
https://raw.githubusercontent.com/xibosignage/xibo-docker/refs/heads/master/docker-compose.yml

version: "2.1"

services:
    cms-db:
        image: mysql:8.4
        volumes:
            - "./shared/db:/var/lib/mysql:Z"
        environment:
            - MYSQL_DATABASE=cms
            - MYSQL_USER=cms
            - MYSQL_RANDOM_ROOT_PASSWORD=yes
        mem_limit: 1g
        env_file: config.env
        restart: always
    cms-xmr:
        image: ghcr.io/xibosignage/xibo-xmr:1.3
        ports:
            - "9505:9505"
        restart: always
        mem_limit: 256m
        env_file: config.env
    cms-web:
        image: ghcr.io/xibosignage/xibo-cms:release-4.4.2
        volumes:
            - "./shared/cms/custom:/var/www/cms/custom:Z"
            - "./shared/backup:/var/www/backup:Z"
            - "./shared/cms/web/theme/custom:/var/www/cms/web/theme/custom:Z"
            - "./shared/cms/library:/var/www/cms/library:Z"
            - "./shared/cms/web/userscripts:/var/www/cms/web/userscripts:Z"
            - "./shared/cms/ca-certs:/var/www/cms/ca-certs:Z"
        restart: always
        environment:
            - MYSQL_HOST=cms-db
            - XMR_HOST=cms-xmr
            - CMS_USE_MEMCACHED=true
            - MEMCACHED_HOST=cms-memcached
        env_file: config.env
        ports:
            - "80:80"
        mem_limit: 1g
    cms-memcached:
        image: memcached:alpine
        command: memcached -m 15
        restart: always
        mem_limit: 100M
    cms-quickchart:
      image: ianw/quickchart
      restart: always

Correct, not exactly the same, but that is related to my infrastructure environment. It has nothing to do with the issue I’m experiencing.

Regarding the mem cache, I already mentioned that I have tested this with it both enabled and disabled.

Maybe you could test with another, unofficial player:

Thanks for your suggestion, but trying an unofficial player won’t help me solve the problem I’m running into.