trailofbits / sienna-locomotive

A user-friendly fuzzing and crash triage tool for Windows
https://blog.trailofbits.com/user-friendly-fuzzing-with-sienna-locomotive
GNU Affero General Public License v3.0
131 stars 24 forks source link

Optimize Database Contents #310

Open ehennenfent opened 5 years ago

ehennenfent commented 5 years ago

We pickle a lot of JSON objects and write their full contents into the database. This is less-than-ideal, since we can't use those columns for queries, and it wastes space. We should break these items apart into columns and store those columns directly in the database whenever possible.

ehennenfent commented 5 years ago

Per pag's suggestion, we can instead switch the BLOB columns over to JSON columns, so we don't have to clutter up the database with a bunch of useless columns either. http://docs.sqlalchemy.org/en/latest/core/type_basics.html#sqlalchemy.types.JSON

ehennenfent commented 5 years ago

Ugh, SQLAlchemy has support for it, but only in the development version. We'll icebox this until it's released.