Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Conversation

@fnc12
Copy link
Owner

@fnc12 fnc12 commented Feb 18, 2022

No description provided.

trueqbit and others added 30 commits April 29, 2022 21:46
* calls             template<class... Tss, class... Cols>
            sync_schema_result schema_status(const storage_impl<index_t<Cols...>, Tss...>&, sqlite3*, bool) {
                return sync_schema_result::already_in_sync;
            }

* Initial enhancement to sync_schema() internals so as to not lose data

* adding changes to index.cpp

* Replaced table_info with table_xinfo all over the library and corrected the treatment of generated columns

* amalgamate sources and clang-formatted all

* Added table_data_loss to enum sync_schema_result, modified sync_schema_tests.cpp to use table_data_loss and all tests are passing

* support for table_data_loss in enum sync_schema_result and all files formatted with clang-format

* commit to push according to Klaus

* refactoring: moved all methods outside of storage_impl_base

* Added drop_create_with_loss() to handle sync_schema_result::table_data_loss: into a migration framed function

* Fixed all comments from my last PR

* corrected Migration API frame so that exceptions in rollback or commit do not leave FK OFF

* made foreign_keys(bool) noexcept to make exceptions from setting FK checking flag a program termination

* clang-format for FK setting as a noexcept function

* fixed foreign keys so they will be taken care when opening connection and not erasing FK setting with true in on_open_terminal

* Support for generated stored columns where the update method was not working

* Added final_action class and conditionally compiled out any FK checking OFF!!

* Perfecting conditional compilation support for NO FK checking OFF

* Removed comments that were valid when toggling FK enabled

* Removing FK toggling - step 1

* removing table_data_loss step 1

* removing table_data_loss - step 2

* Implemented case for new column with no default value and notnull and removed code for FK toggling according to my conversation with Eugene

* Removed new value for sync_schema_result and created a parameter for communication between schema_status() and sync_table() to avoid trying to preserve values when this is impossible: the new column with no defaults and not nullable case

* Removed #if 0 //jdh in pragma.h

* Ran amalgamation and clang-format

* Corrected all comments by Eugene for acceptance of PR

* Fixed similar rename_tables in storage_base.h so one delegates to the other...

* Fixing every comment made by Eugene except about transactions

* amalgamete and clang-format all files

* removed transactions inside library and all //jdh comments

* resolved all issues commented by Eugene - should be ready to merge

* moved implementation of calculate_remove_add_columns to storage_base.h
was getting multiple definitions from the linker
This change was necessary because of suspected possible ODR violation for msvc 14.0, which made unit tests crash or behave strangely. Only those in tests/operators/glob.cpp, tests/select_constraints_tests.cpp, tests/unique_cases/issue663.cpp were affected at this commit
@NickStrupat
Copy link

It looks like a couple of the CI checks hung?

@fnc12
Copy link
Owner Author

fnc12 commented Jun 27, 2022

@NickStrupat yeah. Let me restart it

@fnc12
Copy link
Owner Author

fnc12 commented Jun 27, 2022

@NickStrupat IDK how to run it explicitly. Actually it is not a problem cause I build check on AppVeyor is enough. R u waiting for 1.8?

@fnc12 fnc12 merged commit 4861e40 into master Dec 9, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants