-
Notifications
You must be signed in to change notification settings - Fork 57
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
SNOW-1483230 Parameter support & disable blob encryption for new table format #801
Conversation
src/main/java/net/snowflake/ingest/streaming/internal/BlobBuilder.java
Outdated
Show resolved
Hide resolved
src/main/java/net/snowflake/ingest/streaming/internal/BlobBuilder.java
Outdated
Show resolved
Hide resolved
src/main/java/net/snowflake/ingest/utils/ParameterProvider.java
Outdated
Show resolved
Hide resolved
src/main/java/net/snowflake/ingest/utils/ParameterProvider.java
Outdated
Show resolved
Hide resolved
src/main/java/net/snowflake/ingest/utils/ParameterProvider.java
Outdated
Show resolved
Hide resolved
src/test/java/net/snowflake/ingest/streaming/internal/SnowflakeStreamingIngestClientTest.java
Outdated
Show resolved
Hide resolved
src/test/java/net/snowflake/ingest/streaming/internal/ParameterProviderTest.java
Outdated
Show resolved
Hide resolved
src/test/java/net/snowflake/ingest/streaming/internal/InsertRowsBenchmarkTest.java
Outdated
Show resolved
Hide resolved
src/test/java/net/snowflake/ingest/streaming/internal/OAuthBasicTest.java
Show resolved
Hide resolved
src/test/java/net/snowflake/ingest/streaming/internal/BlobBuilderTest.java
Outdated
Show resolved
Hide resolved
@@ -31,8 +37,9 @@ public class ParameterProvider { | |||
public static final String MAX_CHUNK_SIZE_IN_BYTES = "MAX_CHUNK_SIZE_IN_BYTES".toLowerCase(); | |||
public static final String MAX_ALLOWED_ROW_SIZE_IN_BYTES = | |||
"MAX_ALLOWED_ROW_SIZE_IN_BYTES".toLowerCase(); | |||
public static final String MAX_CHUNKS_IN_BLOB_AND_REGISTRATION_REQUEST = | |||
"MAX_CHUNKS_IN_BLOB_AND_REGISTRATION_REQUEST".toLowerCase(); | |||
public static final String MAX_CHUNKS_IN_BLOB = "MAX_CHUNKS_IN_BLOB".toLowerCase(); |
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.
How do we know no customer was overriding the old setting ? Any changes to these settings is by default a back compat breaking change that needs to be handled with extra care.
Note that these settings are also public, see here: https://javadoc.io/doc/net.snowflake/snowflake-ingest-sdk/latest/net/snowflake/ingest/utils/ParameterProvider.html
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.
We don't know, I don't think they need to be back compat (at least for this one) since we're not documenting them, and I'm not aware of anyone who is overriding this.
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.
Ok. Lets remove the public access modifier from settings that we do not want customers to be exposed to?
Alec could you please run this by Xin before committing it in?
Do we have telemetry to figure out if any client in the past 6 months has had non-default values set for these parameters?
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.
Lets remove the public access modifier from settings that we do not want customers to be exposed to?
I think we still want to keep it as publicly accessible, I believe it was added for some incident mitigation, but these overrides are never meant to be used long term. + @sfc-gh-lsembera to confirm
Do we have telemetry to figure out if any client in the past 6 months has had non-default values set for these parameters?
I don't think we collect this at server side unfortunately.
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 parameter was introduced to fix timeouts when customers ingest into thousands of tables concurrently.
We cannot know if anybody changed the parameter locally, but I am not aware of recommending to change this parameter to any customer.
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.
ok, then I think it's fine to not support backward compatible as these are not publicly documented parameters, customer should not use parameters without our recommendation.
src/main/java/net/snowflake/ingest/utils/ParameterProvider.java
Outdated
Show resolved
Hide resolved
src/main/java/net/snowflake/ingest/streaming/SnowflakeStreamingIngestClientFactory.java
Outdated
Show resolved
Hide resolved
@@ -31,8 +37,9 @@ public class ParameterProvider { | |||
public static final String MAX_CHUNK_SIZE_IN_BYTES = "MAX_CHUNK_SIZE_IN_BYTES".toLowerCase(); | |||
public static final String MAX_ALLOWED_ROW_SIZE_IN_BYTES = | |||
"MAX_ALLOWED_ROW_SIZE_IN_BYTES".toLowerCase(); | |||
public static final String MAX_CHUNKS_IN_BLOB_AND_REGISTRATION_REQUEST = | |||
"MAX_CHUNKS_IN_BLOB_AND_REGISTRATION_REQUEST".toLowerCase(); | |||
public static final String MAX_CHUNKS_IN_BLOB = "MAX_CHUNKS_IN_BLOB".toLowerCase(); |
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.
ok, then I think it's fine to not support backward compatible as these are not publicly documented parameters, customer should not use parameters without our recommendation.
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.
LGTM, thanks!
Split parameter
maxChunksInBlobAndRegistrationRequest
intomaxChunksInBlobs
andmaxChunksInRegistrationRequest
Merging change of #763 and #773 into main branch.