ignite-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Dmitriy Setrakyan (JIRA)" <j...@apache.org>
Subject [jira] [Comment Edited] (IGNITE-6069) Service versioning
Date Wed, 04 Apr 2018 19:17:00 GMT

    [ https://issues.apache.org/jira/browse/IGNITE-6069?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16426036#comment-16426036
] 

Dmitriy Setrakyan edited comment on IGNITE-6069 at 4/4/18 7:16 PM:
-------------------------------------------------------------------

I do not think it makes sense to have multiple versions of service co-exist in the same cluster.
The right approach is to send all new requests to the new instance and undeploy the old service
instance when it finished serving all existing requests.

This will create a small temporary window when the new and the old service instances are both
active, but I think it is a correct approach from the user standpoint.

Also, it seems that services will have to be deployed within their own class-loader, to avoid
class conflicts. We use a similar approach for the compute tasks.


was (Author: dsetrakyan):
I do not think it makes sense to have multiple versions of service operate at the same time.
The right approach is to send all new requests to the new instance and undeploy the old service
instance when it finished serving all existing requests.

This will create a small temporary window when the new and the old versions are both active,
but I think it is a correct approach from the user standpoint.

Also, it seems that services will have to be deployed within their own class-loader, to avoid
class conflicts. We use a similar approach for the compute tasks.

> Service versioning
> ------------------
>
>                 Key: IGNITE-6069
>                 URL: https://issues.apache.org/jira/browse/IGNITE-6069
>             Project: Ignite
>          Issue Type: New Feature
>          Components: general
>    Affects Versions: 2.1
>            Reporter: Ilya Lantukh
>            Assignee: Ilya Lantukh
>            Priority: Major
>
> Make services upgradable -again-. 
> Main points:
> - compute binary type ID by (classname + version)
> - use serialVersionUuid as version ( ?)
> - all service instances with the same name must have the same version
> - make ServiceProxy aware of versions and upgrade process, pause requests while service
is being upgraded
> - extend Service interface (UpgradableService?) - add ability to collect state of previous
version before start.
> Once the feature is implemented, it has to be documented extensively. The ticket must
not be closed until this happens.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Mime
View raw message