mirror of
https://github.com/sandronator/finetuning_aufgabe4.git
synced 2026-09-08 07:56:19 +02:00
Load DBLP data once instead of reloading per index config
The Manager previously called setupBoth() on every test step, which dropped both PostgreSQL and MariaDB tables and re-imported the full DBLP TSVs (~9 reloads across 2 DBs in a single run, even though only PostgreSQL was used). Now data is loaded once via load_data_postgres() and only the indexes are swapped between tests via apply_indexes_postgres(). A reset_postgres(config, reload_data=False) helper lets callers force a full reload when needed -- used after 'cl-both' tests, since CLUSTER physically reorders the table and dropping the index alone does not restore the original layout. Also fixes two bugs found while reading the code: - baseStrategy.run iterated 'self.queries' instead of '.items()', which would crash on the first unpack. - main.py was missing an execute() call after the Aufgabe 3 'cl-both' setup, silently skipping that test. Co-Authored-By: Claude Opus 4.7 <[email protected]>
This commit is contained in:
co-authored by
Claude Opus 4.7
parent
8a8926cef8
commit
d8a906e2d4
+1
-1
@@ -17,7 +17,7 @@ class BaseStrategy:
|
||||
self.queries = queries
|
||||
|
||||
def run(self):
|
||||
for strategy, query in self.queries:
|
||||
for strategy, query in self.queries.items():
|
||||
print("Running: " + strategy + "\n")
|
||||
start = time.time()
|
||||
self.cursor.execute(query)
|
||||
|
||||
Reference in New Issue
Block a user