Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

2.05.70 does not work with -platform minimal #2033

Open
Flurkmark opened this issue Nov 4, 2019 · 13 comments

Comments

@Flurkmark
Copy link

@Flurkmark Flurkmark commented Nov 4, 2019

It does not work headless. I built from repo yesterday and did not get it to work. Works with X forwarding, which I can only temporary use. Thought it was something wrong with my build environment. Downloaded .deb today, same thing. Locks and needs to be killed, when looking with strace just sitting waiting on a futex.

Debugging info gave little, locks output at different places.

Copying old libde_rest_plugin.so gets it working again.

Raspberry 3, raspbian buster. Conbee I.

@manup

This comment has been minimized.

Copy link
Member

@manup manup commented Nov 4, 2019

Just tried it, on my Raspberry Pi 4 with Raspbian Buster headless works.

Can you please check the output of:

deCONZ -platform minimal --http-port=8080 --dbg-error=1 --dbg-info=1
@lbouriez

This comment has been minimized.

Copy link

@lbouriez lbouriez commented Nov 4, 2019

Hello, there is no release informations regarding this version, will it come soon :) ?

@Flurkmark

This comment has been minimized.

Copy link
Author

@Flurkmark Flurkmark commented Nov 4, 2019

Interesting.

pi@raspberrypi:~ $ deCONZ -platform minimal --http-port=8080 --dbg-error=1 --dbg-info=1 

I cut and pasted your line.
Actually it started the gui version, since I had X forwarding on. From another terminal same client:

qt.qpa.screen: QXcbConnection: Could not connect to display 
Could not connect to any X display.

This is exceptionally wierd because if I open a terminal from another raspberry running KDE, I don't even get that error message and deconz needs to be killed. From my workstation I get clean shutdown after error message. Very odd. Must be som env at play. Attaching output:
out.txt

Edit: Again, replacing the plugin with .69 solves it.

@manup

This comment has been minimized.

Copy link
Member

@manup manup commented Nov 4, 2019

Hello, there is no release informations regarding this version, will it come soon :) ?

Yes :)

@manup

This comment has been minimized.

Copy link
Member

@manup manup commented Nov 4, 2019

I cut and pasted your line.
Actually it started the gui version, since I had X forwarding on. From another terminal same client:

That's really strange, the -platform minimal shouldn't start a gui.

Is this vanilla version or self compiled plugin?

@manup

This comment has been minimized.

Copy link
Member

@manup manup commented Nov 4, 2019

Is the service disabled?

systemctl status deconz
systemctl status deconz-gui
@Flurkmark

This comment has been minimized.

Copy link
Author

@Flurkmark Flurkmark commented Nov 4, 2019

This is the vanilla version from your .deb
Service stopped and verified.

I used to be a developer some decade ago, so I’m a bit rusty. Can some qt version screw it up?

How do I check out the .69 version with git?
Would be interesting to see if the plugin still is okay if I build it myself.

By “replacing the plugin” I mean that I copy the .so file from the .69 deb to plugins/ , starts right up.

@Flurkmark

This comment has been minimized.

Copy link
Author

@Flurkmark Flurkmark commented Nov 5, 2019

Did some more testing. If I compile .69, still works.

If I don’t use -platform minimal, it gives up straight away as expected.
If I do it get’s to ‘ZCL attribute report’ and shuts down rest api, as in earlier log file. So, not build environment then...

@Flurkmark

This comment has been minimized.

Copy link
Author

@Flurkmark Flurkmark commented Nov 6, 2019

@manup The bug is introduced in 59b7a04

@manup

This comment has been minimized.

Copy link
Member

@manup manup commented Nov 6, 2019

Interesting, thanks for digging into this, from a quick look I can't spot why the commit is causing the problem. A colleague had a problem with touchlink today which didn't occur in .69, might be related.

@Flurkmark

This comment has been minimized.

Copy link
Author

@Flurkmark Flurkmark commented Nov 7, 2019

@manup It's difficult to say for me, since I don't know the code and don't have the source for the launcher, can't run it in a debugger.

Something happens when it tries to reconnect. It starts looking for ttyS0 and so on. When finally connecting to ttyUSB0 it triggers. I am wildly guessing that maybe the Qapp restarts and the option -platform which is not a standard longopts gets tossed.

Is there a option for device? --device= does not work..

Anyway, if I rename ttyUSB0 to ttyS0 so it connects straight away, the bug is not triggered.
Now running .70 without X for a hour, with renamed /dev without issues.

Edit: Ah, see that you already figured it out in #2020

@manup

This comment has been minimized.

Copy link
Member

@manup manup commented Nov 7, 2019

I am wildly guessing that maybe the Qapp restarts and the option -platform which is not a standard longopts gets tossed.

Yes I think that's the case too, will do some tests tomorrow and hopefully find a fix.

manup added a commit that referenced this issue Nov 9, 2019
Issues: #2046 #2033

The deCONZ core was further fixed to preserve the original argc and argv on each restart. QApplication would otherwise strip parameters like "-platform minimal" and
start the GUI albeit headless mode was specified.
@manup

This comment has been minimized.

Copy link
Member

@manup manup commented Nov 17, 2019

2.05.71 is building now and should be online by tomorrow, hope this fixes the issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
3 participants
You can’t perform that action at this time.