Spreed: Sharing content from a groupfolder in talk damages file app

Created on 7 Feb 2019  路  17Comments  路  Source: nextcloud/spreed

It seems that sharing content from a groupfolder within the talk app space can damage the file manager. "Error: Call to a member function getCache() on null". Files can't be reached with the file manager from that point on. Only searching a file helps to get it. After deleting the entries that are shared in the talk app in table "oc_share" the file manager works again.
Reference: https://github.com/nextcloud/server/issues/13719

bug needs info

All 17 comments

I can not reproduce the problem.

  • I created a Groupfolder for group g1
  • I shared a file that is inside this Groupfolder to a chat with a user that is not part of g1
  • I shared the Groupfolder to a chat with a user that is not part of g1
  • I shared a file that is inside this Groupfolder to a chat with a user that is part of g1
  • I shared the Groupfolder to a chat with a user that is part of g1

And all of the chats still work and all users can still use teh files app just fine.

Hi

Thank for your tests!
It happens not on all shares in talk... Sometimes, sometimes not. I know that makes it not easy. But it only happens on shares with talk. Since user does not use sharing files with talk anymore, nextcloud and the file manager are working fine.

What about sharing a file from a group folder with a talk group? And vice versa: What about sharing a file from a talk group to group folder ? -
Also it is possible that it seems all is fine, but if you start a occ file scan on the terminal you see the "Call to a member function getCache() on null" error and the file scan stops.
I can try to provoke it and find a pattern when it happens - but not on working hours - maybe tonight or tomorrow.

I can try to provoke it and find a pattern when it happens

That would be very awesome :)

Hi
I think I got it:
Take a groufolder in the file manager and share the folder with an existing talk group
Than scan files on the terminal: occ files:scan --all .. _Wham!_ ...

Starting scan for user 1 out of 32 (....)
An unhandled exception has been thrown:
Error: Call to a member function getCache() on null in .... files_sharing/lib/SharedStorage.php:113

Maybe it only happens with a PostgreSQL database. Another user that also had this issue, has also Postgre in the back.

Hi
Is this enough information? Do you need more? Logfiles or something else?

@McAviti (was nextcloud/server#13719)
Hey Klemens could you please proof if this scenario also crashes your NC:
"Take a groufolder in the file manager and share the folder with an existing talk _group_"
Than scan files on the terminal: occ files:scan --all
Thanks a lot!

@ntinti I tried that use-case, with a newly created groupfolder and one exisiting for quite a few versions now. Unfortuntely I could not reproduce the issue now, the files:scan finishes without error messages. I tried sharing in the files view of nextcloud, as well as "+" button in the talk app.

Could it be that that not the sharing itself causes the trouble, but concrete access to the shares? I am not sure about it, but I think when we had the problem it did not occur immedeately after the sharing task but a day later or so.

My version is 15.0.4, btw.

Tried it again and also all working fine here, including a files:scan call.

I also could not find any related problem in the Code that is mentioned in your error message.

@McAviti Thanks so much ! Do you share the group folder to an existing talk group ?- sharing to a single talk user seems to work.

So after some more testing, I noticed, that when you files:scan a user with a groupfolder, it breaks the permissions of those files.
I would suggest you report the issue to the groupfolder app instead. Once file scan is fully working with groupfolders, we can have a look if sharing a group folder via talk is causing problems now.

@ntinti Tried both, a sole user, a group with one member and a group with three members.

@nickvergessen Could you please tell what you mean with "breaks the permissions of those files"? What happens? Does it just "forget" permissions or is then a inconsistency in the database? Thanks!

permissions in oc_filecache table are set to 17 while they have been 31 before.
Also I can not upload/delete any files afterwards anymore.

I'm confused. After upgrading from 15.02 to 15.04 I can't reproduce it nether. Strange...
Also permissions in table filecache are not set to 17. I have no entries with "17". Very rare with "11", a few with "23", a and about one half with "27", the other half with "31". A file that I shared with a talk group has "27" now.

Btw. What do the numbers for the permissions mean ?

Comments in https://github.com/nextcloud/server/issues/13719 suggest that problem persist :-\

See https://github.com/nextcloud/spreed/issues/1521#issuecomment-462338198

I would suggest you report the issue to the groupfolder app instead. Once file scan is fully working with groupfolders, we can have a look if sharing a group folder via talk is causing problems now.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

georgehrke picture georgehrke  路  3Comments

MarcoZehe picture MarcoZehe  路  4Comments

q-wertz picture q-wertz  路  3Comments

FramboisePi picture FramboisePi  路  3Comments

llamallama picture llamallama  路  4Comments