Hi all,

So yesterday I took the opportunity to update my private fork, where I do all 
the stuff that the community doesn’t want (Like updating from JavaX to Jakarta 
and other things).
More modern Java versions output this every time a new VM is started:
Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF-8

And I’m getting this before every test.

Spinning up a new VM for every test is very expensive. It also feels as if the 
entire build has become a lot slower over the last year (mostly related to 
test-execution time)
I know why this is the case:
Our usage of the Singleton pattern everywhere in the code-base makes it 
impossible to run multiple tests in parallel within the same Java VM.

Also does it seem the datanode module if getting fatter and fatter. Just 
noticed the OPC-UA and OPC-DA support (because I had to migrate OPC-UA to milo 
1.x in order to support Jakarta).

We really should stop simply adding stuff to that module that has always been a 
mono-repo within a multi-repo. Is this where the whole external-api thing is 
heading?

I still firmly believe that IoTDB would greatly benefit of:

  *
A major refactoring, getting rid of the singletons and hereby allowing 
concurrent test runs within the same VM
  *
Another major refactoring, pulling out everything that’s not directly datanode 
code into a plugin system

Just my thoughts after seeing what’s happened over the last 6 months or so.

Chris

Reply via email to