Update failed - Need to reinstall

Apache 2.4
Lucee 5.2.9.31

Hello.
Today I tried to update Lucee from the Server Adminstrator.
For whatever reason, the update failed and now Lucee no longer works.
Lucee is installed in /opt/Lucee

I then tried to reinstall, but that also failed.

My question is…
Can I simply delete the entire Lucee folder and then reinstall?

Thanks

Any errors in Tomcat’s catalina.out log file around the time you updated?

I’m skeptical on whether this could work since you said you tried a reinstall, but if your previous file structure of the Lucee install remains, you could try downloading the version of the Lucee JAR you want (I would just get the latest stable release), place it in /opt/lucee/lib (<- I think that’s right), and try to start Lucee again.

I tried a reinstall without deleting the contents of the Lucee directory first.

I’m wondering if I wipe it clean first if the re-install will work after that.

In theory, if you wipe /opt/lucee/ and run a fresh install, it should work. Off the top of my head, I cannot think of anything that would get in the way otherwise. Just make sure you back up any resources you may have placed there or updated to meet your needs if you haven’t already… config files like setenv.sh etc.

1 Like

Thank Tony.

Here’s the actual error I’m getting now when I try to start Lucee
It’s German to me. I can’t see the error or problem other than it timed out.

09-Apr-2019 15:34:21.135 SEVERE [http-nio-8888-exec-2] org.apache.catalina.core.StandardWrapperValve.invoke Allocate exception for servlet [CFMLServlet]
 java.net.ConnectException: Connection timed out (Connection timed out)
	at java.net.PlainSocketImpl.socketConnect(Native Method)
	at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
	at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
	at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
	at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
	at java.net.Socket.connect(Socket.java:589)
	at java.net.Socket.connect(Socket.java:538)
	at sun.net.NetworkClient.doConnect(NetworkClient.java:180)
	at sun.net.www.http.HttpClient.openServer(HttpClient.java:463)
	at sun.net.www.http.HttpClient.openServer(HttpClient.java:558)
	at sun.net.www.http.HttpClient.<init>(HttpClient.java:242)
	at sun.net.www.http.HttpClient.New(HttpClient.java:339)
	at sun.net.www.http.HttpClient.New(HttpClient.java:357)
	at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:1220)
	at sun.net.www.protocol.http.HttpURLConnection.plainConnect0(HttpURLConnection.java:1156)
	at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:1050)
	at sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:984)
	at sun.net.www.protocol.http.HttpURLConnection.followRedirect0(HttpURLConnection.java:2719)
	at sun.net.www.protocol.http.HttpURLConnection.followRedirect(HttpURLConnection.java:2641)
	at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1824)
	at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1492)
	at java.net.HttpURLConnection.getResponseCode(HttpURLConnection.java:480)
	at lucee.loader.engine.CFMLEngineFactory.downloadBundle(CFMLEngineFactory.java:779)
	at lucee.loader.osgi.BundleLoader.loadBundles(BundleLoader.java:152)
	at lucee.loader.engine.CFMLEngineFactory.initEngine(CFMLEngineFactory.java:388)
	at lucee.loader.engine.CFMLEngineFactory.initEngineIfNecessary(CFMLEngineFactory.java:278)
	at lucee.loader.engine.CFMLEngineFactory.getInstance(CFMLEngineFactory.java:174)
	at lucee.loader.engine.CFMLEngineFactory.getInstance(CFMLEngineFactory.java:212)
	at lucee.loader.servlet.CFMLServlet.init(CFMLServlet.java:42)
	at org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1144)
	at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1091)
	at org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:773)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:133)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:493)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:81)
	at mod_cfml.core.invoke(core.java:152)
	at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:650)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342)
	at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:800)
	at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
	at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:806)
	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1498)
	at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
	at java.lang.Thread.run(Thread.java:748)


For the benefit of anyone who has this issue later…

After all was said and done, I found the easiest solution was to delete the existing lucee directory and just re install lucee. That got lucee running again. Don’t forget you will need to go back into the new server.xml file and copy the new sharedkey then paste this new key into the sharedkey in modcfml.conf usually in /etc/apache2/mods-available.

Not ideal…but I don’t know the details of lucee and java enough to fight through diagnosis. So for me this was the quickest way to get back up and running. Now I just have to re-copy all my files back into all my Contexts and make any necessary final adjustments.

One lesson I’ve learned is to set up at least a once a month automated cronjob total backup of the entire Lucee directory the same as I make backups of SQL databases. That way, the next time an attempt to update lucee totally breaks my lucee server, I can restore everything to at least a working state. Maybe I’ll do a weekly backup of lucee.

And if you run into problems running the lucee installer as I did…
Make sure you have the .run file on the Desktop (or wherever you want to run it from and make sure the EXECutable bit is set…then cd into the folder containing the Installer (,run) file then enter this…

sudo ./nameofInstallerFile.run

You have to use a ./ before the file name to get it to run