You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Vladimir Ozerov (JIRA)" <ji...@apache.org> on 2017/09/18 20:03:00 UTC
[jira] [Commented] (IGNITE-6415) ALTER TABLE: investigate why
descriptor is not updated from GridQueryProcessor#onLocalOperationFinished
[ https://issues.apache.org/jira/browse/IGNITE-6415?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16170590#comment-16170590 ]
Vladimir Ozerov commented on IGNITE-6415:
-----------------------------------------
[~al.psc], I tried to rework {{GridQueryProcessor}} to follow common code path, but {{ALTER TABLE}} tests started to fail. They check some internal state, so it is hard to tell whether tests are wrong or there is a bug in logic (which could affect {{CREATE INDEX}} command). Need to investigate it further.
> ALTER TABLE: investigate why descriptor is not updated from GridQueryProcessor#onLocalOperationFinished
> -------------------------------------------------------------------------------------------------------
>
> Key: IGNITE-6415
> URL: https://issues.apache.org/jira/browse/IGNITE-6415
> Project: Ignite
> Issue Type: Task
> Components: sql
> Affects Versions: 2.3
> Reporter: Vladimir Ozerov
> Assignee: Alexander Paschenko
> Fix For: 2.3
>
>
> For {{CREATE INDEX}} and {{DROP INDEX}} our DDL engine works as follows:
> 1) Update H2 structures from DDL worker thread
> 2) Then update type descriptor from {{GridQueryProcessor#onLocalOperationFinished}}
> For some reason {{ALTER TABLE}} handled differently, and we first update descriptor, then update H2. See {{GridQueryProcessor#processSchemaOperationLocal}}.
> Two questions:
> 1) Why descriptor is updated before H2? In this case we may endup in inconsistent state if H2 failed for some reason
> 2) Why we decided not to follow {{CREATE/DROP INDEX}} approach?
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)