-
Notifications
You must be signed in to change notification settings - Fork 0
Limitations and Known Issues
Kinan Bab edited this page Apr 27, 2023
·
2 revisions
K9db is a prototype proof-of-concept software validating that compliance-by-construction is practical and achievable.
Our prototype has several limitations, some of which are in the works:
- We use determinstic encryption for both keys and values. This has leakage. Keys must be encrypted in a consistent way to enable consistent lookups. However, values can be encrypted with randomized nonces. We are working on several improvements to our encryption schemes.
- We do not support SQL transactions.
- We do not support multi-column primary keys, multi-column foreign keys, and foreign keys targeting a non-primary key column.
- We do not enforce UNIQUE and NOT NULL constraints.
- We have limited support for DATETIME.
- We do not support altering the schema after creation, we also do not support dropping tables.
- We support the basic core of SQL. Using unsupported syntax or features will result in an unsupported error.
Furthermore, we are currently aware of two bugs of significance:
- Our planner creates incorrect plans for cached queries where the key is
projected out (e.g.
SELECT col2 FROM table WHERE col1 = ?
). -
OWNS
foreign keys forming chains of 2 or longer are sometimes mishandled during schema creation.