Skip to content

Implementation of concurrent creation algorithm for secondary indexes#45

Open
Serge-sudo wants to merge 95 commits intoorioledb:patches17from
Serge-sudo:sec-index-concurrent-build
Open

Implementation of concurrent creation algorithm for secondary indexes#45
Serge-sudo wants to merge 95 commits intoorioledb:patches17from
Serge-sudo:sec-index-concurrent-build

Conversation

@Serge-sudo
Copy link
Contributor

Added some hooks for controlling validation logic from an extension.

downlink to orioledb -> orioledb/orioledb#730

akorotkov and others added 30 commits September 4, 2025 13:23
Discussion: https://postgr.es/m/CAPpHfdua-YFw3XTprfutzGp28xXLigFtzNbuFY8yPhqeq6X5kg%40mail.gmail.com
Reviewed-by: Aleksander Alekseev, Pavel Borisov, Vignesh C, Mason Sharp
Reviewed-by: Andres Freund, Chris Travers
Snapshot have two pairing heap nodes: for data and system undos.
 * Added SearchCatCacheInternal_hook, SearchCatCacheList_hook
 * Added SysCacheGetAttr_hook
IsFatalError()
have_backup_in_progress()
SnapBuildNextPhaseAt()
DoLocalLockExist()
Outline-atomics is a gcc compilation flag that enables runtime detection
of CPU support for atomic instructions.
Performance on CPUs that do support atomic instructions is improved,
while compatibility and performance on CPUs without atomic instructions
is not hurt.

Discussion: https://postgr.es/m/flat/099F69EE-51D3-4214-934A-1F28C0A1A7A7%40amazon.com
Author: Tsahi Zidenberg
They are allowed to stay during shutdown checkpointing and help checkpointer
do its work.
To use curl during shared_preload_libraries initialization.
- added option --extension for pg_rewind
- extracted SimpleXLogRead from extractPageMap for generic wal iteration in pg_rewind
akorotkov and others added 28 commits October 6, 2025 01:49
 * RunningTransactionsExtension structure as a part of xl_running_xacts and
   RunningTransactionsData to be filled by extensions.
 * getRunningTransactionsExtension hook to fill RunningTransactionsExtension.
 * Add nextXid field to CSNSnapshotData.
 * SnapBuildGetCSNSnaphot() function to modify CSNSnapshotData in the
   SnapBuild.
 * waitSnapshotHook hook to wait for transactions inside the snapshot
   builder.
 * Use patchset number is there is an exact match to the tag
 * Use commit hash otherwise
Transactions need to be marked as RBTXN_DISTR_SKIP_CLEANUP to be skipped in
ReorderBufferAbortOld().
pg_column_toast_chunk_id() is tied to PG TOAST pointer format and can't work with
OrioledDB TOAST pointer. So make it safely return NULL in this case.

PG17+ only

Fixes orioledb/orioledb#690
Also remove some changes for pg_regress and regress tests
Added some hooks for controlling validation logic from an extension.
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.

9 participants