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)

Reply via email to