Skip to content
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

Test web updater update for 8.2.11, 9.0.9, 9.1.5 #409

Closed
PVince81 opened this issue Apr 3, 2017 · 20 comments
Closed

Test web updater update for 8.2.11, 9.0.9, 9.1.5 #409

PVince81 opened this issue Apr 3, 2017 · 20 comments
Assignees

Comments

@PVince81
Copy link
Contributor

PVince81 commented Apr 3, 2017

@VicDeo please prepare a PR so @davitol can test.

Goal is to find potential updater issue so that when we enable final there will be no surprises.

@VicDeo
Copy link
Member

VicDeo commented Apr 3, 2017

@PVince81 should it be a single PR or one PR per migration?

@VicDeo
Copy link
Member

VicDeo commented Apr 3, 2017

@VicDeo
Copy link
Member

VicDeo commented Apr 3, 2017

Btw according to the description at https://owncloud.org/release-channels/ we should use beta channel for rc testing.
I suggest to submit all changes within one PR to the beta channel, merge it without testing (a short review only), deploy and test using beta channel

@PVince81 @davitol what do you think?

@davitol
Copy link
Contributor

davitol commented Apr 3, 2017

@PVince81 @VicDeo As you said, it is suppossed that RCs should go via beta channel, so I agree with the idea of testing using beta as channel

@PVince81
Copy link
Contributor Author

PVince81 commented Apr 3, 2017

@VicDeo sounds good, but then we need to deploy quickly (in the next days) because it doesn't make much sense to deploy RC to beta very close to the final release.

@VicDeo
Copy link
Member

VicDeo commented Apr 3, 2017

@davitol @PVince81 here you are (beta channel only) owncloud/administration#120

@davitol
Copy link
Contributor

davitol commented Apr 5, 2017

Test Results

Scenario:

  • Create a folder and a file
  • Create a user 'Alice'
  • Share this folder with Alice
  • Enable encryption in the server
  • Create another folder and file
  • Create another user 'Bob'
  • Share the folder with Alice and Bob
  • Login with Alice and share the 1st folder with Bob
  • Run the update via beta channel

webUI

Within the same "family"

  • 8.2.10 -> 8.2.11 RC1
  • 9.0.8 -> 9.0.9 RC1
  • 9.1.4 -> 9.1.5 RC1

Crossfamily

  • 8.1.12 -> 8.2.11 RC1
  • 8.2.11 RC1 -> 9.0.9 RC1
  • 9.0.9 RC1 -> 9.1.5 RC1

In a row
❌ 8.1.12 -> 8.2.11 RC1-> 9.0.9. RC1 -> 9.1.5 RC1

CLI

Within the same "family"

  • N/A 8.2.10 -> 8.2.11 RC1
  • 9.0.8 -> 9.0.9 RC1
  • 9.1.4 -> 9.1.5 RC1

Crossfamily

  • N/A 8.1.12 -> 8.2.11 RC1
  • N/A 8.2.11 RC1 -> 9.0.9 RC1
  • 9.0.9 RC1 -> 9.1.5 RC1

@davitol
Copy link
Contributor

davitol commented Apr 5, 2017

@VicDeo

owncloud/administration#121

Cannot update via webUI from 9.0.9. RC1 -> 9.1.5 RC1

screen shot 2017-04-05 at 18 09 22

@VicDeo
Copy link
Member

VicDeo commented Apr 10, 2017

@davitol I've just successfully upgraded provided 9.0.9 instance to 9.1.5rc1 with no effort.
Given that owncloud.log was empty I guess it's not exactly the same server you used for tests ;)

@davitol
Copy link
Contributor

davitol commented Apr 11, 2017

I think it was that server, but now "magically" I cannot make it fail in any container/environment. Last week I was failing every single time I did that update with several containers, but due to I cannot reproduce it now, I guess I'll "thumbup" it later. I want to give another try this afternoon. Thanks for checking @VicDeo

@davitol
Copy link
Contributor

davitol commented Apr 12, 2017

@VicDeo reproduce again. The key is encryption enabled in the server.

@VicDeo
Copy link
Member

VicDeo commented Apr 12, 2017

seems to be

[Wed Apr 12 10:15:25.737543 2017] [:error] [pid 1513] [client ::1:37856] PHP Fatal error:  Uncaught Exception: Session has been closed - no further changes to the session are allowed in /opt/owncloud/lib/private/Session/Internal.php:153
Stack trace:
#0 /opt/owncloud/lib/private/Session/Internal.php(63): OC\\Session\\Internal->validateSession()
#1 /opt/owncloud/lib/private/Session/CryptoSessionData.php(163): OC\\Session\\Internal->set('encrypted_sessi...', 'b1d49ce937c0001...')
#2 /opt/owncloud/lib/private/Session/CryptoSessionData.php(66): OC\\Session\\CryptoSessionData->close()
#3 [internal function]: OC\\Session\\CryptoSessionData->__destruct()
#4 {main}
  thrown in /opt/owncloud/lib/private/Session/Internal.php on line 153

@VicDeo
Copy link
Member

VicDeo commented Apr 12, 2017

@PVince81 looks like PHP7 session quirks?

@VicDeo
Copy link
Member

VicDeo commented Apr 12, 2017

there is nothing else suspicious in logs.
If I grok it correctly, when the session is already being closed, the destructor is called and it tries to close it one more time.

@PVince81
Copy link
Contributor Author

@VicDeo PHP 7's garbage collector seems to be different.
Reminds me of owncloud/core#22370 (comment)

Basically in some cases the destructor either was called in a later PHP request, which is really odd. Or it was called twice in the same.

If possible I suggest to just add a check to only close if not already closed.

@VicDeo
Copy link
Member

VicDeo commented Apr 12, 2017

@PVince81 thanks for the idea, will test this solution

@davitol
Copy link
Contributor

davitol commented Apr 12, 2017

@PVince81 @VicDeo I have also tested with PHP 5.5.9 and it fails too

@VicDeo
Copy link
Member

VicDeo commented Apr 12, 2017

@davitol it is enough to just enable encryption app or more steps are reqiured for reproduction?

@davitol
Copy link
Contributor

davitol commented Apr 12, 2017

@davitol it is enough to just enable encryption app or more steps are reqiured for reproduction?

@VicDeo Yes

@davitol
Copy link
Contributor

davitol commented Jun 5, 2017

Updater was deployed so let's close the ticket

@davitol davitol closed this as completed Jun 5, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants