OpenCue icon indicating copy to clipboard operation
OpenCue copied to clipboard

RQD hosts do not register without sample data in DB

Open eric-with-a-c opened this issue 5 years ago • 2 comments

Describe the bug RQD hosts are not able to register with Cuebot if the sample data has not been added to the database. I was not able to find any documentation that this is a requirement and there wasn't anything written into the logs to indicate that this is a requirement. But I spent the better part of a day trying to figure out why RQD hosts were not registering. After ruling out firewall, DB connectivity issues, typos, etc. I added the sample data as a last ditch effort and everything just worked after that.

Also, creating a show with cueadmin fails without the sample data.

To Reproduce Steps to reproduce the behavior:

  1. Setup a fresh DB on a VM host separate from where the Cuebot deployment will be
  2. Do not add the sample data to the DB
  3. Deploy Cuebot manually from the published release
  4. Deploy an RQD host manually using the published release

Expected behavior The Cuebot service should output this message once: - Unable to find host IP_ADDRESS_OF_RQD_HOST,org.springframework.dao.EmptyResultDataAccessException: Failed to find host IP_ADDRESS_OF_RQD_HOS , creating host.

The new host should now be registered and should show up in the DB and therefore CueCommander and when using cueadmin -lh.

Actual behavior The Cuebot service repeatedly outputs this message as long as the RQD host is running: - Unable to find host IP_ADDRESS_OF_RQD_HOST,org.springframework.dao.EmptyResultDataAccessException: Failed to find host IP_ADDRESS_OF_RQD_HOS , creating host.

The host is never registered. It doesn't show up in the DB.

Version Number 0.4.55

eric-with-a-c avatar Nov 12 '20 20:11 eric-with-a-c

@eric-with-a-c Thank you for reporting! Sorry this took so long to figure out.

Which Cuebot package were you using to deploy from? I.e. was it the .jar, the .rpm, Docker image?

It's true that in order to add a host some other pieces of data must be populated first -- probably a facility, but I'd have to look into it more.

There was a discussion around this a while back as to whether this initial data should be included as part of the database schema we release. In the end we decided that having actual data in a schema is a bad practice and should be avoided.

I see a few things needing a fix here:

  1. Make that error message more informative so users know why the host isn't being registered.
  2. Update docs to make it clear that you need to populate that demo data to end up with a working deployment.
  3. As we improve our packaging methods, have each package's install process populate the needed data to avoid this issue. This is why I'm asking about which package you were using.

bcipriano avatar Nov 13 '20 18:11 bcipriano

@bcipriano Thanks for the quick reply!

I was using the .jar. Had I paid better attention to the releases page I might have gone with the .rpm. 🤦 Oh well.

Yeah, I agree that including the initial data as part of the schema should be avoided. The second item on your list, updating the docs, would probably be sufficient.

Honestly, the lack of documentation is probably the largest barrier to entry with OpenCue at the moment.

eric-with-a-c avatar Nov 13 '20 20:11 eric-with-a-c