Hi Chris,
you mean that we should `table`, `tree` and `common` packages in the root of 
datanode? I think it's better to keep the current package structure of 
datanode. For example, I think we can sub-packages in each module like what we 
do in queryengine package.

We have 
`iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational`
 for query planner codes for table model.

Because I think queryengine should be a complete module, we can distinguish 
table and tree in its sub-module like query planner, query execution and so on.


Best regards,
--------------------
Yuan Tian

On 2024/09/26 12:57:33 Christofer Dutz wrote:
> Hi all,
> 
> while working on implementing some features in the tree and table models 
> recently. I noticed that it seems the structure of the tree model differs 
> quite a bit from that of the table model and that the new table model sort of 
> was merged into the package structure of the existing tree model.
> 
> Now we also have several commands that are specific to the tree model and 
> some that are specific to the table model, but also a number of commands that 
> are shared among the models.
> 
> I would therefore propose to refactor this code so it is somewhat more along 
> this structure:
> 
> 
>   *   Table
>   *   Tree
>   *   Common
> 
> The antlr parsers should ideally remain separate, but the visitor should 
> produce tasks and share as much as possible. Also would it be good to 
> separate the antlr-parser related code from the task code.
> 
> What do you think?
> 
> 
> Chris
> 

Reply via email to