-
Notifications
You must be signed in to change notification settings - Fork 2.9k
Core: rename WRITE_NEW_DATA_LOCATION to WRITE_FOLDER_STORAGE_LOCATION #2965
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
Conversation
kbendick
left a comment
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.
So I agree that the name is somewhat confusing, but now that we have added some consistency in the naming, does the multiple fallback resolution strategy (object storage path -> folder storage path -> default location) still make sense?
I believe that it does, to be somewhat consistent for users (as once a user has specified a path, they probably intend to keep it), but I’d be open to being swayed if somebody presented a strong argument.
With time, we should potentially consider deprecating allowing both to be set and keep them distinct (folder storage or object storage). But that’s definitely a discussion for the dev list and another day (if ever).
Overall the PR looks clean to me though 👍
I’m interested in other people’s thoughts, but in the absence of feedback this looks good to me.
| /** | ||
| * @deprecated will be removed in 0.14.0, use {@link #WRITE_FOLDER_STORAGE_LOCATION} instead | ||
| */ | ||
| @Deprecated |
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.
+1 to the deprecation.
When the deprecation comes around, we should consider providing an action to migrate tables off of deprecated properties. In general, I think that would allow us to make smarter decisions about table property names as new needs surface. Something similar to the v2 table migration action. But that’s a long ways off.
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.
I think migration is unnecessary. The actual value stored is always write.folder-storage.path, we are just changing the Java variable name. And as I noted, we will deprecate after 2 releases, so that people can have time to change their variable name.
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.
Why will be removed in 0.14.0? Is there a convention to follow?
| public void testDefaultLocationProviderWithCustomDataLocation() { | ||
| this.table.updateProperties() | ||
| .set(TableProperties.WRITE_NEW_DATA_LOCATION, "new_location") | ||
| .set(TableProperties.WRITE_FOLDER_STORAGE_LOCATION, "new_location") |
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.
Does it make sense to leave a test for the deprecated config value?
I’d love to even log something if a user sets it, but that can be considered later (if at all).
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.
It is the same value, just using a different name to avoid confusion.
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.
Yeah I see now. This won't affect any external folks unless they have some custom stuff that touches this config.
|
close to force restart CI |
|
The PR looks good to me.
An open question: can we consolidate both |
|
@flyrain great point around this, I am fully for a consolidation, this PR is really to prepare for that. My thought is the following:
For 3, my thinking is to avoid the need to introduce yet another config key, although I understand the name |
RussellSpitzer
left a comment
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 +1
Not sure about the deprecation message since i'm not sure we'll have the right version there when we actually release but otherwise seems good.
Nice plan! I like the name Also let us know if you don't have time for step 3, we are glad to help. Thanks @jackye1995! |
|
Thanks, @jackye1995! |
|
Thanks for approving! @flyrain great, let's bring this up in the next community meeting then. Meanwhile I still need to catch up with your discussion on dev list 😝 |
|
+1 for deprecating write.folder-storage.path, but I'm not sure we'll be able to actually remove it, since that would break forward-compatibility when older writers write to a table. We should definitely update docs to use write.data.path, though. |
|
Cool. Let's deprecate both |
|
+1 to deprecating and using the new name.
Kyle Bendickson
… On Sep 8, 2021, at 5:53 PM, Yufei Gu ***@***.***> wrote:
Cool. Let's deprecate both write.folder-storage.path and write.object-storage.path, and use a new name write.data.path instead.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub <#2965 (comment)>, or unsubscribe <https://github.com/notifications/unsubscribe-auth/ACLAXERB4SR3SGRX2E4TKADUBAAPRANCNFSM5CCY5L2A>.
Triage notifications on the go with GitHub Mobile for iOS <https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675> or Android <https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub>.
|
closes #2964
@cobookman, @kbendick and @openinx brought up the issue during #2845 that the variable name
WRITE_NEW_DATA_LOCATIONis inconsistent with the actual valuewrite.folder-storage.path. This PR deprecates the old variable name to use a name that is consistent with the actual value.I looked into the original PR that introduced this which is #6, I think @rdblue suggested using the value
write.folder-storage.path, but the author @mccheah did not update the variable name.Please let me know if there is any concern about this deprecation.