Added NOW already and now debuging some stuff regarding filter and
parsing file of one struct when it should be another
Also moved query test into a seperated test file.
And some fix and changed in docs
Now I flush only when the file is full and I check the the currently
used file if it is big enough.
So I dont get stat of all files and flush everytime like before
It is working !
The basic GRAB [name, best_friend] work and do return the best friend
infos.
I added more test and some do not work yet, working on it now
This dosnt work yet but I implemented the reparsing of the files to
return relationship.
So GRAB User [name, friends] should return all infos of all friends and
not just the UUID of those friends like before
So then I can parse the file again, create a map of UUID sub json and
just iterate over the first json looking for UUID and update with new
data from map
Now SchemaEngine have an arena at the root of the file. So UUIDFileIndex
can be as big as we want. The idea is nice, maybe I will use it for the
FileEngine too.
Started to use fixed buffer at the root of each file. I like that
because that mean I can estimate the amount of memory that the app use.
The only thing that still use an non fixed allocator is the
UUIDFileIndex, but I dont like it. I think it should also use a fixed
lenght buffer. But then how can I be sure it is enough ? :/
I mean I get it, I need an allocator here. But if this is the only place
I use one, this a shame
Before I was checking after the filter.evaluate is true. So I can end up
with the limit reach, but the thread will continue parsing until it find
one that is true, add it and then check if the limit is reach.
Which mean I endup with more than what I want and the thread could stop
before, making things faster.