-
Notifications
You must be signed in to change notification settings - Fork 4.8k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
hotfix(migrations) fix broken upstream migrations
There exists two problems with the behavior of upstream object migrations introduced in the 0.12.0 release: - First, the DDL migrations to add both healthcheck and hashing column definitions were required before executing function-level migrations to fill in default object data. This is a result of the current DAO implementation that requires that all Lua-schema definitions exist as column definitions in the underlying data store, even if the DAO update call does not reference the column in question. - Second, the functional definitions load each row directly by a directly underlying DB call (as opposed to a DAO find_all()); this resulted in "table" schema types being represented as literal JSON strings, isntead of Lua table types, by the C* driver. The Postgres implementation does not suffer this as the underlying reprentation of table data in Postgres-backed schemas is Postgres' JSON type; this is automagically deserialized to a Lua table upon retrieval. As the C* implementation offers no such behind-the-scenes transformation, a direct load of rows containing "table" schemas results in an incompatable data type when iterating over the returned rows. The fix in the commit is to use the abstract DAO to load upstream rows when leveraging C*. Fixes #3156.
- Loading branch information
Showing
2 changed files
with
59 additions
and
61 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters