predictionio-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Pat Ferrel <...@occamsmachete.com>
Subject Re: Error: "unable to undeploy"
Date Wed, 03 Jan 2018 19:44:25 GMT
The UR does not require more than one deploy (assuming the server runs forever). Retraining
the UR automatically re-deploys the new model. 

All other Engines afaik do require retrain-redeploy.

Users should be aware that PIO is a framework that provides no ML function whatsoever. It
supports a workflow but Engines are free to simplify or use it in different ways so always
preface a question with what Engine you are using or asking about.



On Jan 3, 2018, at 4:33 AM, Noelia Osés Fernández <noses@vicomtech.org> wrote:

Hi lokotochek,

You mentioned that it wasn't necessary to redeploy after retraining. However, today I have
come across a PIO wepage that I hadn't seen before that tells me to redeploy after retraining
(section 'Update Model with New Data'):

http://predictionio.incubator.apache.org/deploy/ <http://predictionio.incubator.apache.org/deploy/>

Particularly, this page suggests adding the following line to the crontab to retrain every
day:

0 0 * * *   $PIO_HOME/bin/pio train; $PIO_HOME/bin/pio deploy


Here it is clear that it is redeploying after retraining. So does it not actually hot-swap
the model? Or the UR does but this page is more general for other templates 
that might not do that?

Thank for your help!



On 14 December 2017 at 15:57, Александр Лактионов <lokotochek@gmail.com
<mailto:lokotochek@gmail.com>> wrote:
Hi Noelia,
you dont have to redeploy your app after train. It will be hot-swapped and the previous procces
(ran by pio deploy) will change recommendations automatically
> 14 дек. 2017 г., в 17:56, Noelia Osés Fernández <noses@vicomtech.org <mailto:noses@vicomtech.org>>
написал(а):
> 
> Hi,
> 
> The first time after reboot that I train and deploy my PIO app everything works well.
However, if I then retrain and deploy again, I get the following error: 
> 
> [INFO] [MasterActor] Undeploying any existing engine instance at http://0.0.0.0:8000
<http://0.0.0.0:8000/>
> [ERROR] [MasterActor] Another process might be occupying 0.0.0.0:8000 <http://0.0.0.0:8000/>.
Unable to undeploy.
> [ERROR] [TcpListener] Bind failed for TCP channel on endpoint [/0.0.0.0:8000 <http://0.0.0.0:8000/>]
> [WARN] [HttpListener] Bind to /0.0.0.0:8000 <http://0.0.0.0:8000/> failed
> [ERROR] [MasterActor] Bind failed. Retrying... (2 more trial(s))
> [WARN] [HttpListener] Bind to /0.0.0.0:8000 <http://0.0.0.0:8000/> failed
> [ERROR] [TcpListener] Bind failed for TCP channel on endpoint [/0.0.0.0:8000 <http://0.0.0.0:8000/>]
> [ERROR] [MasterActor] Bind failed. Retrying... (1 more trial(s))
> [ERROR] [TcpListener] Bind failed for TCP channel on endpoint [/0.0.0.0:8000 <http://0.0.0.0:8000/>]
> [WARN] [HttpListener] Bind to /0.0.0.0:8000 <http://0.0.0.0:8000/> failed
> [ERROR] [MasterActor] Bind failed. Retrying... (0 more trial(s))
> [ERROR] [TcpListener] Bind failed for TCP channel on endpoint [/0.0.0.0:8000 <http://0.0.0.0:8000/>]
> [WARN] [HttpListener] Bind to /0.0.0.0:8000 <http://0.0.0.0:8000/> failed
> [ERROR] [MasterActor] Bind failed. Shutting down.
> 
> I thought it was possible to retrain an app that was running and then deploy again.
> Is this not possible?
> 
> How can I kill the running instance?
> I've tried the trick in handmade's integration test but it doesn't work:
> 
> deploy_pid=`jps -lm | grep "onsole deploy" | cut -f 1 -d ' '`
> echo "Killing the deployed test PredictionServer"
> kill "$deploy_pid"
> 
> I still get the same error after doing this.
> 
> Any help is much appreciated.
> Best regards,
> Noelia
> 
> 
> 
> 
> 
> 
> 




Mime
View raw message