34 Commits

Author SHA1 Message Date
a712fe3e83 Save schema file when using new 2025-01-07 17:15:09 +01:00
b075f8b89a Moved config to libs 2025-01-02 12:19:05 +00:00
a535ce5283 Basic benchmark command 2024-12-30 14:09:59 +01:00
12ae7f9a62 Added db state command and fixed printError
I was using the same buffer at 2 place :/
2024-11-26 22:59:36 +01:00
23e8ed8709 Changed a bit how the memory work
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.
2024-11-22 11:03:39 +01:00
3f5c929a11 Big memory improvement
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
2024-11-20 23:52:36 +01:00
ca5de646d6 Populate the UUIDFileIndex
Now each SchemaStruct have a UUIDFileIndex that allow to find the file
index of where an entity is based on it's UUID
2024-11-17 16:40:12 +01:00
5c8d2b6dc7 Create ThreadEngine
Now the DBEngine have a ThreadEngine that have a pool. Like that it is
always the same pool and I dont create one everytime I run a parseing
methods of the FileEngine
2024-11-17 15:25:54 +01:00
ef84200b34 Parsing filter can now parse sub filter, waiting to be use with the parsing to find relationship 2024-11-14 20:39:04 +01:00
6e7d1d150c Pass test with added stuffs for relationship 2024-11-13 22:44:27 +01:00
91b1f61e66 Working new SchemaEngine 2024-11-10 17:10:42 +01:00
e1c957b3b6 Started cleaning by creating a SchemaEngine 2024-11-10 11:38:37 +01:00
b12116c005 Removed uuid_file_index 2024-11-04 22:52:19 +01:00
bead52df5a Fix 2024-11-01 20:40:18 +01:00
aff8fac0af FileEngine struct_array no longer an ArrayList
Started to use toOwnedSlice to replace members that are arrayList
2024-11-01 12:31:46 +01:00
fd21d9bd65 Fix and now schema are saved with name schema and not schema.zipponschema 2024-10-27 14:46:19 +01:00
24c204f435 Added an option to reset or not the logs and some typo 2024-10-27 13:18:26 +01:00
debc646738 Moved the custom types to a library 2024-10-27 12:59:28 +01:00
4df151ea85 Moved help message to config 2024-10-27 11:20:02 +01:00
e5f2f7c5e5 Changed some print to log 2024-10-26 18:52:10 +02:00
c5f931cf04 Better logs
Now log are managed by the std log, did a custom log to print either
into a file or into the default io strout.

The plan is to create a scope in each file and log depending of stuff,
can also use it in library I think, if should still base by the custom
function.

Next step is logging a lot of stuff a bit everywhere.
2024-10-26 17:30:58 +02:00
9d39d47c3b Removed some test and fixed some synthax 2024-10-26 13:47:52 +02:00
2b9ad08abf Cleaned ZiQlParser
Removed 4 members to be variable, includding; state, struct_name, action
and additional_data.

Also make it so it only return ZipponEError
2024-10-22 00:03:38 +02:00
62e4f53477 Automatically create all folder if env var provided
If ZIPPONDB_PATH is found, it will try to create and ur the directory.

If ZIPPONDB_SCHEMA is found, it will try to init the schema using it.
2024-10-20 21:19:25 +02:00
34688a0180 Changed a bit how log work 2024-10-20 09:50:44 +02:00
a6a3c092cc Added logging, all Token use the same Loc 2024-10-20 01:35:12 +02:00
ebb3eec4f4 Switched to csv 2024-10-19 23:24:55 +02:00
6bcb369cbc Date, clean and errors
Added the datatype date, time and datetime

Moved all custom erros to a single file

Cleaned code to be more readable and created some small utils

Other stuffs that I dont recall. Basically preparing for the
relationship implementation
2024-10-19 14:42:13 +02:00
783697d4df Created config.zig and BUFFERSIZE 2024-10-17 19:38:08 +02:00
4069c7d85b Back to CLI in a loop 2024-10-17 01:49:54 +02:00
2b1deca452 Cleaning session
Removed the loop for the CLI, now just take some argument using the
binary. May come back to while loop if I need to keep like the file
engine between session. To run query in parallel.

Moved printError and send to utils and removed duplicate of them.

Organized FileEngine better.

Put the function that convert string to value in a seperate file.

Fix some synthax and make it smaller. Removed unused functions too
2024-10-16 22:36:21 +02:00
b5669e9c2d Some progress, have a good part of the schema and engine building working. Now starting to do the query parser part 2024-09-08 18:11:39 +02:00
be84a8e481 Simple cli and ziql tokenizer 2024-09-02 20:22:46 +02:00
e3f0ff1d84 first commit 2024-09-02 11:02:33 +02:00