QuestDB has a custom JIT: Java serialized SQL filters into Intermediate Representation and the IR is picked up by C backend, which generates native code: Scalar or AVX-2.
I prototyped a pure Java backend: It consumes the same IR, but generates Java classes with Vector API 🧵