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/08 14:12:02 UTC

[jira] [Created] (IGNITE-6318) SQL: Make sure that QueryTypeDescriptorImpl is used in thread-safe manner

Vladimir Ozerov created IGNITE-6318:
---------------------------------------

             Summary: SQL: Make sure that QueryTypeDescriptorImpl is used in thread-safe manner
                 Key: IGNITE-6318
                 URL: https://issues.apache.org/jira/browse/IGNITE-6318
             Project: Ignite
          Issue Type: Task
          Components: sql
    Affects Versions: 2.3
            Reporter: Vladimir Ozerov
            Assignee: Alexander Paschenko
             Fix For: 2.3


{{QueryTypeDescriptorImpl}} is mostly immutable structure. But as we add more and more DDL features, it becomes mutable. We need to make sure that it is still thread-safe.

Specifically, when {{CREATE INDEX}} command was implemented, I guarded index collection with mutex. Now we added {{ALTER TABLE}} command, and it seems that thread-safety for columns was lost. 

I propose to re-use index mutex (rename it to {{stateMux}}) and make sure that column collections are also thread-safe. I would also propose to consider copy-on-write approach, as these collections are returned by some methods as is.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)