-
Notifications
You must be signed in to change notification settings - Fork 26
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
IndexError occurred when executing python run.py --run Balsa_JOBRandSplit --local #1
Comments
Overall, we recommend using the tested Postgres version to get Balsa running first.
Please first try Balsa out on our recommended and tested version, v12.5. One reason is the PG version may also have some interaction with the pg_hint_plan extension. On the Bitmap Heap/Index error, it's because
Can you use the above conf file and see if the problem goes away?
As the paper stated, Balsa does not learn from (train on) those experience nodes. This is done in code here and with Those nodes are included in the buffer only for implementation convenience, such as logging the expert's performance (here), gathering query filters and selectivities (here), extracting all possible join/scan types and relation names (here -> here), etc. It should be possible to change the code to make it an empty list -- albeit involved -- after finding alternative ways to specify the above.
You can set |
Hi, I am also interested in your code and got the same error running I have checked my PostgreSQL version is 12.5,
and that my config file used is and that I wonder if this problem has been resolved or how it was resolved in the end. I would be very grateful for any assistance or replies. Thanks and regards! |
I tried to run this project and found some problems. Following the instructions in README.md, I installed requirements and used this line of command to run.
The only difference is I'm using PostgreSQL 13.5, and I modified default connection settings in
pg_executor/pg_executor/pg_executor.py
to fit it into my environment.An error occurred when I tried to run it the first time, with following traceback:
I used
print()
to showcurr
, and found the experience loaded a Bitmap Heap Scan node.I skipped the issue by directly consider the Bitmap Heap Scan node as a leaf node, but I found another error when I restarted
run.py
.I found the error is caused by scan methods not included in the parameter
search_space_scan_ops
. In methodBalsaAgent._MakeWorkload()
inrun.py
, JOB queries are loaded and PostgreSQL plans are obtained throughexplain (costs, format json)
. Loadedtrain_nodes
are then used to initialize experience set (run.py, line 826).Besides, I'm also confused about the procedure. As is introduced in the paper, Balsa bootstraps from a simulator and never uses an expert optimizer. So is it OK to just replace
train_nodes
with an empty list? And if I'm going to use a different split of train/test dataset, how can I train the model with the simulator to get a checkpoint?The text was updated successfully, but these errors were encountered: