-
Notifications
You must be signed in to change notification settings - Fork 73
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
COPY .. TO functionality #32
Conversation
is there a way we can add tests to this? it would need creds, which is tricky. |
For our own tests we use Minio to host a server locally (in the CI) we can connect to |
context.transaction.Commit(); | ||
|
||
if (strlen(quack_secret) != 0) { | ||
std::vector<std::string> quackSecret = quack::tokenizeString(quack_secret, '#'); |
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.
are we in control of this string?
I noticed the length is never checked or asserted, but we blindly access [1], [2], [3] (0 is ignored?)
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.
This PR is still in progress but i leave comment that will apply in future. Yes we control this variable, once the user sets this with SET quack.cloud_secret to '...'
function quack_cloud_secret_check_hooks
is responsible for initial checking. So if this is successful we know that there are all required parameters
* Now we are intercepting utility that will handle COPY utility. COPY through DuckDB will only be executed if COPY destination starts with 's3://' i.e. to S3 bucket. User first needs to setup valid `quack.cloud_secret`. Both COPY from table or specified query works.
quack.cloud_secret
. Both COPY from table or specified query works.