-
-
Notifications
You must be signed in to change notification settings - Fork 262
Shared metadata cache #8819
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
AlexPeshkoff
wants to merge
243
commits into
master
Choose a base branch
from
metacache
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
+19,875
−15,932
Open
Shared metadata cache #8819
Changes from all commits
Commits
Show all changes
243 commits
Select commit
Hold shift + click to select a range
b38046e
Encapsulation of metadata cache
AlexPeshkoff 2a397de
Merge branch 'master' into metacache
AlexPeshkoff 6234437
WIP - shared cache of sequences for replicator compiles fine
AlexPeshkoff a178212
Avoid too many builds for a while
AlexPeshkoff dd86eba
Shared cache of generators appears to be working
AlexPeshkoff c6383cb
Before adding conversion to non-safe PTRs
AlexPeshkoff 3420540
Successfully compiled met.epp with hazard pointers to cache objects
AlexPeshkoff 76ddfee
Compiled shared metacache
AlexPeshkoff 4053ea8
Merge branch 'master' into metacache
AlexPeshkoff 2917928
Make it compile after merge
AlexPeshkoff 13895b9
Use SharedReadVector in HazardArray
AlexPeshkoff 90a5d0e
Unify ctor
AlexPeshkoff 55eac37
Avoid unlimited recursion in hazard GC
AlexPeshkoff 5c82cfb
Merge branch 'master' into metacache
AlexPeshkoff cf85f59
Work in progress
AlexPeshkoff 25ff2f7
WIP
AlexPeshkoff f0a0d07
WIP
AlexPeshkoff 0164b8a
WIP
AlexPeshkoff 5b85f04
Successful CREATE DATABASE with shared cache (still has some limitati…
AlexPeshkoff a25c5c5
Misc
AlexPeshkoff 1ab5457
Successfully created security.fdb
AlexPeshkoff 9054816
Completed DEV_BUILD, including creation of employee.fdb
AlexPeshkoff 1ff3c46
Check for simple (trivially copyable) type in Array, some more or les…
AlexPeshkoff 92a909a
Some changes before merge
AlexPeshkoff dae83f6
Merge result
AlexPeshkoff 4215b9d
WIP
AlexPeshkoff 7736734
WIP - take into an account states of an object (needs load / normal /…
AlexPeshkoff 462d01b
WiP
AlexPeshkoff a16665e
met.epp compiles
AlexPeshkoff e1647ab
jrd dir compiled
AlexPeshkoff 1ac8131
ExprNodes compiled
AlexPeshkoff 626f50f
Shared between attachments statement is ready
AlexPeshkoff 540806b
Fixed some unresolved external refs
AlexPeshkoff 7b09922
WIP
AlexPeshkoff c2413fb
Use appropriate type CSetId/CollId/TTypeId instead plain SSHORT/USHORT
AlexPeshkoff 320c7a6
Added checkReload() support to startup barrier of versioned object
AlexPeshkoff abc7273
WIP - took minimum care about required locks
AlexPeshkoff 07ac45e
WIP - shared system requests cache
AlexPeshkoff 35c7428
WIP - attachDatabase() passed till sclInit()
AlexPeshkoff 7609c96
WIP - attachDatabase() completed, trivial SQL runs ok
AlexPeshkoff 2eb2e3a
Routine::flags cleanup
AlexPeshkoff 628255a
Misc
AlexPeshkoff 1423739
Make work DDL operators for domains. Fixed a lot of issues related wi…
AlexPeshkoff 99eb1c5
Avoid use of expensive std::function<>
AlexPeshkoff af683fc
DDL for collations & procedure cleanup
AlexPeshkoff c801683
WIP (saved before fbconf)
AlexPeshkoff 8216d90
WIP (i.e. a lot of noisy debugging), but collation created in one tra…
AlexPeshkoff 23fbb9e
Cleanup, first of all unneeded debug print
AlexPeshkoff cacea5d
CREATE/ALTER PROCEDURE support
AlexPeshkoff 38ffaf4
DROP PROCEDURE support, added plumb cleanup of erased objects from ca…
AlexPeshkoff bfe98c3
Functions support
AlexPeshkoff 494d7d7
Segfault when destroying UDF
AlexPeshkoff b933e6b
Refactoring indices DDL support - WiP
AlexPeshkoff f41b28c
WIP on indices
AlexPeshkoff 8102f32
CREATE INDEX is working except expression indices
AlexPeshkoff 9c87708
Warnings
AlexPeshkoff 0de7b5c
The simplest form of "CREATE TABLE" is working
AlexPeshkoff 1595e04
Make just-created table usable in current transaction
AlexPeshkoff 2a00a58
Increase index flags capacity. Store transaction number as plain int6…
dyemanov 428dd18
Revert back private members of irt_repeat
dyemanov 1f6fec1
CREATE DATABASE works
AlexPeshkoff 821a075
Create indices for constaints after table creation
AlexPeshkoff ce593a8
Successfully created all tables in employee.fdb
AlexPeshkoff 7defa17
alter index active/inactive, WIP
AlexPeshkoff ddb9471
Working ALTER INDEX (IN)ACTIVE
AlexPeshkoff 04163d7
DROP INDEX works
AlexPeshkoff 9661e1e
Expression index support & some related formatting
AlexPeshkoff 86a9e78
Fixed assertion in expunge
AlexPeshkoff 2bbfd52
Fix recovery of incompletely erased indices
AlexPeshkoff fda52dd
Fixed memory leak in expression index
AlexPeshkoff f61bdeb
Fixed change of transaction type
AlexPeshkoff aae6a8d
Fixed assertion in BTR_all
AlexPeshkoff aaaa7ba
Fixed index selection when compiling relation
AlexPeshkoff 28bdd0b
Reworked index root page related code, added some debugging
AlexPeshkoff fefe8c1
Fix alignment incompatibility between 32-bit and 64-bit builds. Parti…
dyemanov 2474952
Successfully completed linux build
AlexPeshkoff f664963
Merged changes from master into metacache
AlexPeshkoff 1f67cbb
Merged ods14-irt-repeat
AlexPeshkoff f916e6e
Make better template argument deduction in AutoSetRestoreFlag
AlexPeshkoff 478c839
Trivial NodePrinter for debugging
AlexPeshkoff 7538720
Better layering in the cache
AlexPeshkoff 8adf2b4
Cache request
AlexPeshkoff 5c2c0cc
Fixed reload of system relations into the cache during attach
AlexPeshkoff 2f2833c
Fixed usage of system relations in internal requests
AlexPeshkoff 4391eb0
Release internal cached statements when closing database
AlexPeshkoff e094d30
Removed wrong assert
AlexPeshkoff e4d31a3
Merge branch 'master' into ods14-irt-repeat
dyemanov 30e4c77
Misc
AlexPeshkoff d343188
Added check for relation visibility to current transaction
AlexPeshkoff 6519989
Fixed exclusive GC lock
AlexPeshkoff 78a5a56
Sync with the metacache branch
dyemanov b875bcf
Synced with ods14-irt-repeat branch
AlexPeshkoff 3cf1d36
Fixed DB shutdown when LINGER is in use
AlexPeshkoff a87b982
Delete just created table when transaction is rolled back
AlexPeshkoff 0b5754c
Reenabled a number of DFW services not related with metadata cache
AlexPeshkoff 1b85d6d
Added new access functions to cache. Fixed a case when object is drop…
AlexPeshkoff 3979990
DROP TABLE support
AlexPeshkoff 428e392
WIP - ALTER TABLE
AlexPeshkoff ae1935b
WIP
AlexPeshkoff 53836de
Support ALTER/DROP table
AlexPeshkoff e1e5c08
Fixed ALTER TABLE DROP field(s)
AlexPeshkoff 3e6be9a
Restored a number of cache-independent DFW calls that should run on c…
AlexPeshkoff fc4a265
Clean out dsql procedures cache
AlexPeshkoff af121e8
Take packages into an account & some cleanup
AlexPeshkoff 74436f2
Clean out dsql functions cache
AlexPeshkoff 6c67936
Fixed correct order of fields when doing "select * from ..."
AlexPeshkoff b1bb733
Misc fixes related with DROP INDEX
AlexPeshkoff fabfa28
Fixed a number of issues when deleting relations & indices
AlexPeshkoff 0ae9bb6
Added VIEWs support
AlexPeshkoff 1aa89fe
CREATE TRIGGER works
AlexPeshkoff b2b254c
Fixed detection of already modified objects
AlexPeshkoff cb71c85
Avoid use of data members when working with MDC
AlexPeshkoff 04a8861
Cleanup
AlexPeshkoff ecd21bc
Fixed req_timer create & destroy
AlexPeshkoff 7b45f27
Cleanup
AlexPeshkoff 4eeea4e
Fixed execution & creation of DB-wide triggers
AlexPeshkoff 0f8e19d
ALTER/DROP various TRIGGERs
AlexPeshkoff 48ea282
ODS14: header page refactoring (#8401)
dyemanov 193a5ff
Useful assert
AlexPeshkoff bd80457
Merged master branch, fixed bug in btr.cpp due to previous merge
AlexPeshkoff 66c1a3c
Cleanup
AlexPeshkoff 7d87af7
Fixed rollback of metacache changes after transaction rollback
AlexPeshkoff 3593d5d
Fixed create/alter procedure
AlexPeshkoff 5f3f0f2
Restore one more dfw lost during code refactoring
AlexPeshkoff 07143b7
Restore package-related DFWs removed during code refactoring
AlexPeshkoff 133387e
cleanup
AlexPeshkoff f19cd7d
misc
AlexPeshkoff 2e52675
Do not use attachment pool for database-lifetime objects
AlexPeshkoff 0cce1ba
FK-create
AlexPeshkoff afacac8
Moved relation ID generation and DPM pages creation to system trigger
AlexPeshkoff 419dfc9
Fixed creation of DB-wide triggers after create database
AlexPeshkoff e21b2d3
Fixed restore by gbak
AlexPeshkoff 32c9867
Fixed restore by gbak - part2
AlexPeshkoff b1a4e0a
Merge branch 'FK' into metacache
AlexPeshkoff fb979b8
FK-drop
AlexPeshkoff df78ac8
Small optimization when checking foreign keys
AlexPeshkoff 2f241dc
Use NOSCAN when loading old object version before modification
AlexPeshkoff 2768b76
misc
AlexPeshkoff d7e65f9
Make walk_database exception safe
AlexPeshkoff 1524032
Should make diags a little better
AlexPeshkoff 3d8a20e
Restore of real database with huge metadata runs successfully
AlexPeshkoff 74d9945
Fixed races with garbage collector
AlexPeshkoff fe54b27
Fixed assert when non-existing relation is tried using ID
AlexPeshkoff 6d2f5d7
Implemented rescan of cache elements in CS
AlexPeshkoff 7b5bbfa
Misc
AlexPeshkoff d449c98
Re-link VIEW resources to current csb
AlexPeshkoff 5fd6009
Fixed varchar field length in dsql
AlexPeshkoff 443208b
Fixed dsql_rel fields length
AlexPeshkoff d4c515d
Cleanup
AlexPeshkoff c51e476
Cleanup
AlexPeshkoff 222bb9b
Fixed removal of dropped elements from cache
AlexPeshkoff 21bfb50
Fixed DROP TABLE after CREATE FOREIGN KEY and ROLLBACK
AlexPeshkoff 02b608f
Make it work in classic mode
AlexPeshkoff ddcff4c
Code cleanup
AlexPeshkoff 404c319
Ensure SubRoutine to satisfy basic NestConst requirements
AlexPeshkoff d151710
Code cleanup
AlexPeshkoff 351277e
Avoid non-trivial types in array
AlexPeshkoff 548e58f
Protection from a case when >1 attachment tries to change statement v…
AlexPeshkoff 18e152c
Cleanup
AlexPeshkoff 42a4c2e
Add check for deleted relation with particular ID
AlexPeshkoff 702cd4c
User IDs cache should be located in DBB
AlexPeshkoff 72b4a04
Misc
AlexPeshkoff 125178f
Fixed ALTER PROCEDURE statement
AlexPeshkoff b9e09a3
Fixed CF_ISQL_26
AlexPeshkoff 8d04e8d
Fixed CF_ISQL_27
AlexPeshkoff 4f94183
small optimization
AlexPeshkoff 43b8d7c
Fixed CF_ISQL_11
AlexPeshkoff 533d318
WIP - take care about relation depends
AlexPeshkoff ca724b5
Better solution for gbak restore
AlexPeshkoff 28f15cc
Fixed order of fields in format
AlexPeshkoff 56ad646
Fixed nullable objects in DSQL
AlexPeshkoff 063c765
Fixed AV when releasing GTT's pages
AlexPeshkoff 304e58d
Cleanup
AlexPeshkoff 2eed52a
Partially picked Fix for ESQL execute procedure
AlexPeshkoff c763130
Fixed most of assertions in TCS
AlexPeshkoff eae42a0
More cleanup and fixes of assertions
AlexPeshkoff a703f47
Merged with namespaces
AlexPeshkoff 63a54a2
Almost compiles - except DdlNodes
AlexPeshkoff b0ba549
Engine compiles successfully
AlexPeshkoff 536ae36
Misc
AlexPeshkoff b13a33b
Merged with SCHEMAs code passed first basic tests - create/attach dat…
AlexPeshkoff cacc784
Use correct flags
AlexPeshkoff da0326e
Restore running system triggers after merge
AlexPeshkoff b9de235
Fixed index creation
AlexPeshkoff 811be9a
Fixed triggers
AlexPeshkoff 71bd02b
Fixed procedures
AlexPeshkoff 03c8776
Build complete
AlexPeshkoff 5549892
Fixed collation attributes init during CREATE DATABASE
AlexPeshkoff e52923d
Misc
AlexPeshkoff c3fb83c
Avoid global transaction when restoring schemas
AlexPeshkoff b068f9c
Added check for not opened external file
AlexPeshkoff 81c0195
Misc
AlexPeshkoff adf76fc
Fixed parse of various routines BLR
AlexPeshkoff a1c2378
Fix the release build
dyemanov 5fa61a0
Fix incorrect lock state check
dyemanov b856e2d
Fix incorrect method override
dyemanov 1ba1f1b
Sync lockprint with LCK_* changes
dyemanov a7400d4
Bump the LM shared memory version
dyemanov af3a3a2
Fixed a number of issues with DROP/DEACTIVATE INDEX
AlexPeshkoff fc03622
Fixed regression when drop table right after drop primary key constraint
AlexPeshkoff 550695f
Ensure statisitics is refreshed after ALTER INDEX ACTIVE
AlexPeshkoff 5629138
Move check for an attempt to drop index used by integrity constraint …
AlexPeshkoff edbbc56
Fixed drop of field, used as foreign key reference
AlexPeshkoff e56b498
Looks like attempt to reanimate index prepared for deletion (state ir…
AlexPeshkoff d13fd3e
Merged with master branch
AlexPeshkoff 54e921c
Fixed case-insensitive behavior in CONTAINING
AlexPeshkoff 6c85965
Fixed use of INTL data
AlexPeshkoff 3f2f549
Carefully watch for cache version
AlexPeshkoff 4d0e054
Fixed assert when removing statement from att_attachments
AlexPeshkoff baadab2
Fixed bugs/core_2042_test.py
AlexPeshkoff 032b41d
Fixed bugs/core_2032_test
AlexPeshkoff 4018f3f
Ensure safe MT access to relation's formats
AlexPeshkoff 80b932e
Fixed use of locks
AlexPeshkoff 9511c2c
Fixed use of shared read vector in formats list
AlexPeshkoff cbc096e
Fixed core_2766_test, DROP TABLE with indices caused problems
AlexPeshkoff 7d3c4b8
Added forgotten irt page release
AlexPeshkoff f9b82d5
DROP TABLE with indices, continued
AlexPeshkoff 02c5c8a
Fixed requests leak in EXECUTE PROCEDURE
AlexPeshkoff c8d0e0e
Fixed DROP TABLE with self-referencing foreign key
AlexPeshkoff 6205b57
Fixed DROP VIEW with calculated fields
AlexPeshkoff 91413ed
Fixed races between primary and secondary attachments
AlexPeshkoff f3ad315
Rollback metadata access transaction when unwind fresh attach
AlexPeshkoff 4fc1348
Fixed cleanup of per-transaction temp table's pages
AlexPeshkoff 6bf86ad
Removed wrong assertion - in a case of single attachment with -nodb s…
AlexPeshkoff 514922e
Fixed per-statement memory stats
AlexPeshkoff f4b6e63
Enhancement needed for working DSQL statements cache
AlexPeshkoff 2d25c50
Merge branch 'master' into metacache
AlexPeshkoff 4c6d657
This should fix clang build
AlexPeshkoff 36871e8
Fixed building tests
AlexPeshkoff b9591b4
Next attempt to make clang happy
AlexPeshkoff fdba886
Avoid clang warning re. use of uninitialized variable
AlexPeshkoff 840859f
Fixed races when taking rescan lock
AlexPeshkoff 4590dcc
Fixed operator - thanks to TreeHunter9
AlexPeshkoff 070b9fa
Fixed pool leak after loadResources() call
AlexPeshkoff eac5814
Fixed pool pointer in internally allocated block
AlexPeshkoff d07752f
Fixed one more pool leak
AlexPeshkoff d685fa3
Redirected block does not contain red zone - do not check it
AlexPeshkoff 6872d46
Clear versioned objects array before loading pointers to it
AlexPeshkoff 5fd6b3e
Access to RelationPages::dpMap should be protected
AlexPeshkoff f783a73
Fixed access to system tables when doing fix_plugins_schemas()
AlexPeshkoff 0bfd91e
SyncLockGuard is needed when accessing DBB internals even for debugging
AlexPeshkoff 9111147
Merge branch 'master' into metacache
AlexPeshkoff 977f2ca
Some changes suggested by Noremos after review
AlexPeshkoff File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or 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
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,6 +1,6 @@ | ||
| name: CI | ||
|
|
||
| on: [push, pull_request] | ||
| on: [pull_request] | ||
|
|
||
| jobs: | ||
|
|
||
|
|
||
This file contains hidden or 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 hidden or 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 hidden or 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 hidden or 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 hidden or 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 hidden or 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 hidden or 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 hidden or 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 hidden or 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 hidden or 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
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Unnecessary change