Skip to content

add llm AI EXTRACT extension feature - #818

Merged
adsharma merged 1 commit into
LadybugDB:mainfrom
ericyuanhui:main_AI
Aug 19, 2026
Merged

add llm AI EXTRACT extension feature#818
adsharma merged 1 commit into
LadybugDB:mainfrom
ericyuanhui:main_AI

Conversation

@ericyuanhui

@ericyuanhui ericyuanhui commented Aug 17, 2026

Copy link
Copy Markdown
Contributor

Refactor: add ClientContext overload of TaskScheduler::scheduleTaskAndWaitOrError

Summary

Adds a scheduleTaskAndWaitOrError overload that takes a main::ClientContext*
directly, so task scheduling no longer requires a processor::ExecutionContext.
The existing ExecutionContext overload now simply delegates to the new one.

Motivation / Context

Groundwork for the LLM "AI EXTRACT" extension: the extraction pipeline may need
to schedule and await tasks extending beyond the regular execution context. Callers
who only hold a ClientContext (no ExecutionContext in scope) can now use the
scheduler without building a fake context. This is the groundwork refactor; the
AI EXTRACT extension itself will land in a follow-up commit.

Comment thread src/extension/extension.cpp Outdated
Comment thread CMakeLists.txt Outdated
@ericyuanhui

Copy link
Copy Markdown
Contributor Author

Feel free to keep the discussion going. We are sure we can reach the most ideal state. The prior implementation draws inspiration from DuckDB. LadybugDB/extensions#60

@adsharma

Copy link
Copy Markdown
Contributor

Looks good. Merging. Please update the PR description. Suggested description in the comment below.

@adsharma

Copy link
Copy Markdown
Contributor

Refactor: add ClientContext overload of TaskScheduler::scheduleTaskAndWaitOrError

Summary

Adds a scheduleTaskAndWaitOrError overload that takes a main::ClientContext*
directly, so task scheduling no longer requires a processor::ExecutionContext.
The existing ExecutionContext overload now simply delegates to the new one.

Motivation / Context

Groundwork for the LLM "AI EXTRACT" extension: the extraction pipeline may need
to schedule and await tasks extending beyond the regular execution context. Callers
who only hold a ClientContext (no ExecutionContext in scope) can now use the
scheduler without building a fake context. This is the groundwork refactor; the
AI EXTRACT extension itself will land in a follow-up commit.

…aitOrError

Groundwork for the LLM AI EXTRACT extension: the extraction pipeline may
need to schedule and await tasks outside the processor execution context.
The new overload operates on a main::ClientContext directly, so callers
who hold only a client context can wait on scheduled tasks without
fabricating an ExecutionContext. The AI EXTRACT feature itself lands in a
follow-up commit.

Signed-off-by: ericyuanhui <285521263@qq.com>
@adsharma
adsharma merged commit d0ed7c3 into LadybugDB:main Aug 19, 2026
2 of 3 checks passed
@ericyuanhui

Copy link
Copy Markdown
Contributor Author

Refactor: add ClientContext overload of TaskScheduler::scheduleTaskAndWaitOrError

Summary

Adds a scheduleTaskAndWaitOrError overload that takes a main::ClientContext* directly, so task scheduling no longer requires a processor::ExecutionContext. The existing ExecutionContext overload now simply delegates to the new one.

Motivation / Context

Groundwork for the LLM "AI EXTRACT" extension: the extraction pipeline may need to schedule and await tasks extending beyond the regular execution context. Callers who only hold a ClientContext (no ExecutionContext in scope) can now use the scheduler without building a fake context. This is the groundwork refactor; the AI EXTRACT extension itself will land in a follow-up commit.

done. Please help to review the extension PR :LadybugDB/extensions#60 thx .

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.

2 participants