Open pp-gborodin opened 1 year ago
Hi @pp-gborodin , unfortunately we don't yet support streaming PUT without knowing the content size. This is a very reasonable feature request, thank you for bringing this to our attention. Could you please open a feature request ticket instead?
+1 for this feature
Same. My system processes some large data sets and it's a burden to first having to spool everything to a temporary file.
This is especially problematic in containerized deployments where pods have limited locally attached storage.
FWIW, I've created a feature request for this on the community site: https://community.snowflake.com/s/case/500VI00000IcDOVYA3/allow-put-to-upload-from-a-nonseekable-fifopipe
Not sure if that is accessible to other users though.
Snowflake Support came back, acknowledging the issue and raising it internally. We'll see what happens.
Hi Erik,
Thanks for your patience.
I have tested the code- and can indeed reproduce the issue on a later version of Python connector.
I have checked internally and can confirm that we don't currently support streaming PUT without knowing the content size- as such it cannot be used for streaming with pipes without using the seek method to know the actual file size currently. (We have a similar mechanism to stream data to Snowflake directly using Snowpipe Streaming - with Java SDK)
Having said that, I have gone ahead a raised a feature request to notify the Accounts team to have the supportability for file streaming in PUT Api.
Further, the community link and the JIRA that you have cited have been notified to your Accounts Team who can work with the Engineering team regarding the feature mentioned.
Your Accounts team may reach out to you if they need any further clarification so that they can help you with the next steps regarding the feature concerned.
If you have any follow up questions regarding this feature request, please reach out to your Account team, copied in this email, as they will be owning this request going forward. I have made them aware of our engagement and you can reference this case number 00869215 if needed.
pip freeze
)?I tried to upload data to snowflake with PUT command via unix pipe. I don't want to store a temporary file on my system, so I tried to stream the data from postgres to snowflake through a pipe. Here is a code sample:
I expected to see the data was uploaded
I see that snowflake connector uses
seek
method to calculate the file size. Is this mandatory? Can I upload the data without knowing the size? If so how can I do that?