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

Try and fix relationships with downstream #24232

Closed
StyXman opened this issue Apr 25, 2016 · 13 comments

Comments

@StyXman
Copy link

commented Apr 25, 2016

I'm a happy Debian and ownCloud user for a long time now. Today I saw the package being evicted from Debian's repo and I was sad. Digging a little bit around I arrive to things like #22691. In principle the PR is ok, bugs in software package by Debian should first be reported in Debian's BTS and the maintainer should decide whether is part of her patches or it should be forwarded upstream. At least that's how usually should work. Alas, this is not the first time upstream that has problems with bugs reported to things done downstream.

I also understand, from what I read, that in this case downstream didn't properly communicate with the ownCloud community, but I don't think that alienating downstream is the best solution. I think a better approach is to apply a variant of Postel's law: "Be open in what you receive, and strict in what you send". As the Debian maintainer said, 'we’re doing our best to offer it to our users'. One of the things that this implies, more or less, is that the maintainer will try to keep the upgrade path as smooth as possible. In general, Debian has a very good record on upgrade paths, and personally that's why I chose it.

Unluckily I can't see the patch because the package has been removed, so I can't help in that particular case. I wish this kind of problems could be solved any time soon, and this is my way to try to make that happen. I appreciate Jos's mail, because it goes in the same direction.

As an outsider to the particular problem but also as a developer of database based applications, wouldn't it be possible to apply each individual upgrade script from the original release all the way to the latest one?

@jospoortvliet

This comment has been minimized.

Copy link

commented Apr 25, 2016

@StyXman You could but each app has its own update scripts so that's a LOT of separate scripts to keep track off, esp with new apps popping up, renaming, moving, splitting... It'd be possible, but it is just a huge amount of work to develop and test on all the databases and stuff ownCloud supports. You're also not unlikely to end up with special bugs that won't show up until you upgrade some day in the future, and they'll be impossible to debug by then.

It is just very fragile. A proper solution would require a new updater technology that is more stand-alone and designed to do this - that was introduced in ownCloud 9.0 and might allow stuff like this later in the 9.x series, but bolting that on the older releases is a huge, complex task.

For 7.0 users the best solution would be to write an independent upgrade script that does it all on its own, supporting all apps and databases. That, too, is a huge task, but less likely to break everything.

I wouldn't oppose that last thing but who's going to do the work?

For now, I'm writing on a blog post to help ppl manually upgrade from the Debian package to our official 8.0 package, then 8.1, then 8.2 and then they can decide if they want 9.0 already or not. (there is no reason to stick to anything older than 8.2, at least not if you value your data and security).

Help testing that how-to would be super welcome... I was hoping to have a draft last week but stuff got in the way, will work on it today.

@StyXman

This comment has been minimized.

Copy link
Author

commented Apr 25, 2016

It is just very fragile

I see, and I think that what the maintainer tried to do was to solve it the best he could (his own words). Reacting like 'I'd even consider a warning about not using Debian packages on our download page fair enough' is not helping in the discussion. I just wish that for the sake of ownCloud's relationship with distributions you acknowledge it.

Maybe some of you think distros are not important ('Don't worry guys, owncloud is going to be removed from Debian anyway and is also planned for Fedora. So this problem is going to resolve itself pretty soon.'), but as a user of both (apps and distros) I assure you most people just use that. Dou you happen to have any historic statistics about how users are installing their ownCloud setups?

In the particular problem, I see you also have upgrade problems. What Iḿ trying to say is that the maintainer is trying his best for the time being, just like you and anybody else.

@LukasReschke

This comment has been minimized.

Copy link
Member

commented Apr 25, 2016

('Don't worry guys, owncloud is going to be removed from Debian anyway and is also planned for Fedora. So this problem is going to resolve itself pretty soon.'),

That's outrightly wrong. See https://fedoramagazine.org/owncloud-updates-coming-soon-fedora/ on how Fedora did handle this. The Fedora packagers did actually get in touch with us in advance unlike some other distribution packagers 😉

@StyXman

This comment has been minimized.

Copy link
Author

commented Apr 25, 2016

@LukasReschke: I was just quoting. Bravo for Fedora.

Also, keeping that attitude doesn't help a little bit. Yes, I agree that there was some kind of miscommunication, but reacting that way does not put you in a good light either. So what I think both sides should do is to get together and work on it. I hope the invitation for the meeting in September is taken, but it's my opinion that should think of other ways to better communicate with downstream.

@StyXman

This comment has been minimized.

Copy link
Author

commented Apr 25, 2016

Hmm, I just noticed the comment I was quoting was probably not from someone from the ownCloud community:

#22691 (comment)

If that's the case, my mistake. In any case, what he says after that goes in line to what I want to say here.

@jospoortvliet

This comment has been minimized.

Copy link

commented Apr 25, 2016

I see, and I think that what the maintainer tried to do was to solve it the best he could (his own words). Reacting like 'I'd even consider a warning about not using Debian packages on our download page fair enough' is not helping in the discussion. I just wish that for the sake of ownCloud's relationship with distributions you acknowledge it.

I know he wanted to solve it the best way he could. But that doesn't make it a good idea. Doing open hart surgery on yourself might be done with great intentions but it's not smart either way.

We expressed worries as we ourselves would not feel confident in our own ability to do this and we certainly didn't and don't expect a packager who doesn't even talk to us to do a decent job protecting the data of our users in his free time. Add to that the thought of having to deal with the bug reports and many broken installations and damage to our reputation this would cause and you can imagine why we responded with a "please don't do this".

That was our 'official' response, not

I'd even consider a warning about not using Debian packages on our download page fair enough

You can't blame us for discussing this internally and people then giving their opinion. That isn't our communication and really, don't expect me to tell people to stop giving their opinion on our own mailing lists, bug tracker and other communication channels.

Honestly, I don't think we did anything particularly wrong here. We asked downstream not to risk the data of our users. They got upset and dropped ownCloud packaging. Their right, not our fault.

As I said, I'll write a blog to help users migrate from Debian packages to our packages. Feedback and help with that would be welcome. I see no point in doing anything else as the current ownCloud packagers at Debian have made it very clear they don't want to continue working on packages. If somebody else steps up, they'll get the same support anybody else (like Fedora) gets when they ask.

We're of course critical of the distribution rules that make packaging ownCloud harder than it needs to be, but that's an entirely different issue and other distributions are starting to move to fix that (eg snappy, Project Atomic, XDG-Apps etc) so in time, Debian will probably become a good place for ownCloud again.

With regards to upgrade problems on the ownCloud side: sure. ownCloud is very flexible and it is nearly impossible to test all combinations of technologies we support without more help. Our packages aren't perfect either and we're not terribly happy with the deployment options we can give to users. Help with the packages is of course welcome, you can find sources here.

If you don't mind I'll close this issue. I'll share steps on upgrading Debian packages here when I've got some, would love to hear if they work and what feedback you have.

@StyXman

This comment has been minimized.

Copy link
Author

commented Apr 25, 2016

You can't blame us for discussing this internally and people then giving their opinion. That isn't our communication and really, don't expect me to tell people to stop giving their opinion on our own mailing lists, bug tracker and other communication channels.

Ok, sorry for the confusion, but from a user perspective, I think I just fell into a similar error that would be to report a bug here about the Debian packaging. I think you should try to use a less public method for your internal discussions; the issue being public doesn't help distinguish form an internal discussion.

We asked downstream not to risk the data of our users.

Well, that package version was aimed to experimental, which by default you have to jump over several hoops just to get one package form it. People who use it know things might break, but it's a Debian mechanism to pretest packages. I agree it's not a complete solution and probably a sloppy one.

With regards to upgrade problems on the ownCloud side

My aim with that paragraph was to highlight that in both sides, like everywhere else, software is always WIP and that you will most always find flaws. Trying to say "don't point fingers" I ended pointing a finger, how ironic... :(

@jospoortvliet

This comment has been minimized.

Copy link

commented Apr 26, 2016

@StyXman don't worry about pointing fingers. Yes, there are issues on all sides, certainly. Sorry if I got overly defensive.

About our internal discussions being public - that is a property of open source communities. At least, we like it that way. Our Debian friends made some stingy comments about us on their mailing list too - you won't see me come in and complain about them, I respect that that is the place where they have their discussions and they are free to say what they like. I'd be upset if it ended up in an announcement or if they send it to OUR mailing lists, that's different. What I mean is: I see our and their mailing lists and infrastructure as our and their living rooms. With open doors and windows ;-) You can say what you like and if people overhear a conversation and get upset, well, perhaps they shouldn't have gone to that living room. But if you go to somebody else's' living room and yell at them, now THAT is impolite.

I know about Experimental but it did show a scary direction development was taking (and even there could lead to data loss issues). Now, as said earlier, I won't say it is impossible to get this right, but we were (and are) very skeptical and then somebody doing it alone... I know, engineers are often like "how hard could it be" but the answer usually is "harder than you thought". Certainly in this case.

@jospoortvliet

This comment has been minimized.

Copy link

commented Apr 26, 2016

Meanwhile, I'm trying to figure out how to upgrade from the Debian packages to ours.

I'm currently guessing the process would be something like this:

  • make a backup of the database (and, if possible, the data folder)
  • backup the config file and move the data folder in a temporary, safe place
  • uninstall the current ownCloud packages
  • install upstream ownCloud 8 packages and put in the data folder and config files
  • run the updater via the command line

Any feedback on that, perhaps? I'd really appreciate help here ;-)

Next up would be to upgrade to 8.1, 8.2 and 9 (if the user wants).

For the apps, it is probably a good idea to export calendars and contacts at the start and import them at the end, esp if going to ownCloud 9. That is just more likely to succeed ;-)

Apps will need installation and upgrading manually. This will take a while...

@ghost

This comment has been minimized.

Copy link

commented Apr 26, 2016

@jospoortvliet Some pointers where given by @jcharaoui in owncloud/documentation#2361 (comment)

If possible the datadir should be kept at the old location based on owncloud/documentation#2303 to avoid issues with hardcoded datadir stuff

@jospoortvliet

This comment has been minimized.

Copy link

commented Apr 26, 2016

thanks for that!

@jospoortvliet

This comment has been minimized.

Copy link

commented Apr 26, 2016

@lock

This comment has been minimized.

Copy link

commented Aug 4, 2019

This thread has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.

@lock lock bot locked as resolved and limited conversation to collaborators Aug 4, 2019
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
4 participants
You can’t perform that action at this time.