-
Notifications
You must be signed in to change notification settings - Fork 184
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
Broken tests in drop zone in reva master #5074
Comments
@micbar can someone please look into it? |
Note: issue #5094 - some time we are thinking to move the API test code into the ocis repo. That will make it a bit easier to maintain ocis-specific small differences in behavior. In this case here, the behavior in reva master is becoming quite different to what is expected in ocis. The test scenario currently fails in ocis and the expected-failures file links to issue #1267 which has a link to the discussion in cs3org/reva#2480 The test scenario also currently fails in reva master - see https://github.com/cs3org/reva/blob/master/tests/acceptance/expected-failures-on-OCIS-storage.md and search for From memory, I thought that some implementations were now making names starting with Regardless of the
And if there are going to be long-term behavior differences between reva master and reva edge, then how will we ever get them merged into a single "base product"? I suppose that, in this example, the duplicate-file-name-resolution behavior would need to be able to be specified in config somewhere. |
@phil-davis thanks Phil for the explanation, so this means that this functionality is just broken, this is a serious security issue, we're disabling the tests for now to include this PR merged. |
The related test scenarios are already in expected-failures. So I don't understand how this effects day-to-day CI. The test scenarios will fail in a different way. But there should not be anything to actually do - we know that the test fails, there are lots of tests in expected-failures that we know are failing, and gradually things get fixed and the entries in expected-failures reduce. I don't know what you mean by "disabling the tests for now" - maybe you can can add a test tag to the tags to be ignored. But I don't understand what benefit that would be. |
Why is the difference between (1) or (2) a serious security issue? |
Note: the current implementation in ocis (and I presume in reva master and edge) does not do any renaming at all. There is no Issue #1267 is still open and needs to be addressed some day. |
Exactly, today overwrite happens both on master and edge. We have a fix for master, that can be easily ported to edge but the tests are failing, that's why we need to disable them unless this fix makes sense for both of branches and the tests will be adapted. |
If it is implemented by adding a uuid at the end of a file name, is that OK for oCIS? Or does oCIS/ownCloud want a different algorithm for generating the extra filename(s)? If so, then I can sort out the test expectations. Otherwise we all need to discuss what solution or range of solutions are to be implemented, and then I can make the tests expect different things depending on the implementation. |
yes. I agree. I retested that on ocis master. Seems that this is just not implemented. Needs qualification if this is a GA Blocker. |
@tbsbdr FYI |
I made a comment on the code here: https://github.com/cs3org/reva/pull/3469/files#r1030330906 |
Maybe use some "tinyURL"-style string. Some use base62 (characters 0-9, A-Z and a-z. But we don't want to get into the issues with mixed-case file names that happen to be seen as a conflict when synced to some clients ("aB4xZ" and "AB4xz" would be different base62 strings but look like very much the same file name). base36 is another option 0-9 and A-Z (or a-z - pick which is preferred for rendering). if people care about it being readable accurately for humans, then there is the issue with zero Or could drop down to base26 and use just the 26 letters of the alphabet. 6 characters gives 308,915,776 combinations. If multiple people drop the same filename The other decision is the separatore - use underscore |
Is this a duplicate of owncloud/web#7643 ? |
@phil-davis Maybe having only the 26 letters is enough. Only, even if the code checks before uploading that the file already exists, this does not guarantee to not have collisions. I propose instead to enforce the if_not_exist flag in the |
This issue has been automatically marked as stale because it has not had recent activity. It will be closed in 10 days if no further activity occurs. Thank you for your contributions. |
The naming scheme for this still needs to be decided, then implemented. |
This issue has been automatically marked as stale because it has not had recent activity. It will be closed in 10 days if no further activity occurs. Thank you for your contributions. |
fixed via #8340 |
in cs3org/reva#3469, to not override files having the same names in a drop zone, we are appending an uuid at the end of a file name.
This is unfortunately breaking some acceptance tests, like for example this scenario (from https://drone.cernbox.cern.ch/cs3org/reva/9673/10/6):
Now, this test is supposed to check for a file containing a number (2), that didn't override the original file. But even testing in https://ocis.owncloud.com this does not happen, and the original file is overwritten.
So which is the expected behavior in OCIS?
We would like than to modify the test for reva master to pass the PR
@phil-davis
The text was updated successfully, but these errors were encountered: