On Mar 27, 4:20 pm, Ronoaldo José de Lana Pereira
> version of my app, on a specific queue (I'm using this patch against r53<
https://groups.google.com/d/msg/app-engine-pipeline-api/i84L-Bu0RLI/f...>).
> If i switch to the new version, what is going to happen? Does my old
> pipelines will continue running in the old version? Or they will get
> abandoned? Or I may experience some exceptions (ClassCastExceptions,
> SerializationException, etc.)? What is the safest way to upgrade?
The change is indeed incompatible (as noted in the commit message).
I'd expect that pipelines started in the old version that are still
running will fail with various errors when you switch to the new
version, but I haven't tested this.
The safest way to upgrade is to wait for all your pipelines to finish
before upgrading.
Another option (untested) would be to patch in just the addition of
onBackend but not the job id or entity kind changes, change your code
to send all jobs to a new backend, and deploy this code both to that
backend and your frontend. All jobs created from now on should be
handled by the backend, but jobs created previously that are still in
flight might still point to the frontend. Wait until all jobs that
still point to your frontend are finished. Now all jobs should be
running against the backend only. Finally, upgrade your frontend to
the new code and remove the onBackend setting for all new jobs; all
new jobs will run against your frontend again and use the new entity
kinds and job ids, and old jobs will complete against the backend.
Once they are done, delete the backend.