You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@kylin.apache.org by "ZhouKang (Jira)" <ji...@apache.org> on 2020/03/03 08:29:00 UTC

[jira] [Commented] (KYLIN-4231) write conflict while add model by different query server parallelly

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

ZhouKang commented on KYLIN-4231:
---------------------------------

[~shaofengshi]

yes, you are right.  I think we should share the http session in all Kylin instances.

We use Nginx as load balance. By this rule, we found that the user login info cannot shared by different Kylin instance, which made the query request failed.

Maybe we could add a cache to spring framework.

[~xiacongling]  will add this feature later.

> write conflict while add model by different query server parallelly
> -------------------------------------------------------------------
>
>                 Key: KYLIN-4231
>                 URL: https://issues.apache.org/jira/browse/KYLIN-4231
>             Project: Kylin
>          Issue Type: New Feature
>            Reporter: ZhouKang
>            Priority: Major
>
> a kylin cluster have more than 1 query server, all of them are the backend server of nginx.
> when our user use RESTful API to create model in the *same* project parallelly, there will be a problem.
> the server returns:
> {code:java}
> // code placeholder
> Overwriting conflict /project/learn_kylin.json, expect old TS 1572596034269, but it is 1572596042929
> {code}
> BUT, the model '/model_desc/xxx.json' has already in metastore, so the next time our user want
> to retry (create model), he will get:
> {code:java}
> // code placeholder
> Overwriting conflict /model_desc/test_945.json, expect old TS 0, but it is 1572596193812
> {code}
> I think the problem is that:
> when server A receive PUT model, it will change the project info, but the cache update broadcast cannot be processed by server B before server B processing another model creation request.
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)