This causes an error in syncdaemon, which is logged but not propagated to the control panel UI.
The right fix is to avoid the error, although there's also a problem that the control panel doesn't seem to be receiving or handling the error callback.
Here's the syncdaemon log from trying this:
2012-10-05 09:37:03,661 - ubuntuone.SyncDaemon.InteractionInterfaces - DEBUG - change_public_access: args (<ubuntuone.syncdaemon.interaction_interfaces.SyncdaemonPublicFiles object at 0x104804490>, u'fe76df32-6a95-4a6d-ab74-e4512c50b8e9', u'434f2d47-6a52-4b98-961b-2c28f8e6c3ce', True), kwargs {}.
2012-10-05 09:37:03,661 - ubuntuone.SyncDaemon.ActionQueue - DEBUG - ChangePublicAccess share:UUID('fe76df32-6a95-4a6d-ab74-e4512c50b8e9') node:UUID('434f2d47-6a52-4b98-961b-2c28f8e6c3ce') ChangePublicAccess(running='False') queueing
2012-10-05 09:37:03,661 - ubuntuone.SyncDaemon.EQ - DEBUG - push_event: SYS_QUEUE_ADDED, kwargs: {'command': <ubuntuone.syncdaemon.action_queue.ChangePublicAccess object at 0x105e983b0>}
2012-10-05 09:37:03,661 - ubuntuone.SyncDaemon.Pb - DEBUG - emitting 'on_metaqueue_changed' to all (1) connected clients.
2012-10-05 09:37:03,662 - ubuntuone.SyncDaemon.Pb - DEBUG - emitting 'on_request_queue_added' to all (0) connected clients.
2012-10-05 09:37:03,662 - ubuntuone.SyncDaemon.ActionQueue - DEBUG - ChangePublicAccess share:UUID('fe76df32-6a95-4a6d-ab74-e4512c50b8e9') node:UUID('434f2d47-6a52-4b98-961b-2c28f8e6c3ce') ChangePublicAccess(running='False') starting
2012-10-05 09:37:03,663 - ubuntuone.SyncDaemon.ActionQueue - DEBUG - ChangePublicAccess share:UUID('fe76df32-6a95-4a6d-ab74-e4512c50b8e9') node:UUID('434f2d47-6a52-4b98-961b-2c28f8e6c3ce') ChangePublicAccess(running='False') started
2012-10-05 09:37:03,663 - ubuntuone.SyncDaemon.ActionQueue - DEBUG - ChangePublicAccess share:UUID('fe76df32-6a95-4a6d-ab74-e4512c50b8e9') node:UUID('434f2d47-6a52-4b98-961b-2c28f8e6c3ce') ChangePublicAccess(running='False') running
2012-10-05 09:37:03,666 - ubuntuone.SyncDaemon.InteractionInterfaces - DEBUG - change_public_access: result None.
2012-10-05 09:37:03,919 - ubuntuone.SyncDaemon.EQ - DEBUG - push_event: AQ_DOWNLOAD_FILE_PROGRESS, kwargs: {'deflated_size': 36632583L, 'node_id': 'a0c94db7-be64-4eac-b2b8-30d8e615168f', 'share_id': '', 'n_bytes_read': 4352496}
2012-10-05 09:37:03,919 - ubuntuone.SyncDaemon.Pb - DEBUG - emitting 'on_download_file_progress' to all (1) connected clients.
2012-10-05 09:37:04,513 - ubuntuone.SyncDaemon.EQ - DEBUG - push_event: AQ_DOWNLOAD_FILE_PROGRESS, kwargs: {'deflated_size': 36632583L, 'node_id': 'a0c94db7-be64-4eac-b2b8-30d8e615168f', 'share_id': '', 'n_bytes_read': 4425286}
2012-10-05 09:37:04,514 - ubuntuone.SyncDaemon.Pb - DEBUG - emitting 'on_download_file_progress' to all (1) connected clients.
2012-10-05 09:37:04,603 - ubuntuone.SyncDaemon.ActionQueue - ERROR - ChangePublicAccess share:UUID('fe76df32-6a95-4a6d-ab74-e4512c50b8e9') node:UUID('434f2d47-6a52-4b98-961b-2c28f8e6c3ce') ChangePublicAccess(running='False') failure: ('FORBIDDEN', "Can't make shared files public.") (traceback follows)
Traceback (most recent call last):
File "ubuntuone/syncdaemon/action_queue.pyc", line 1522, in run
File "twisted/internet/defer.pyc", line 1037, in _inlineCallbacks
File "twisted/python/failure.pyc", line 382, in throwExceptionIntoGenerator
File "ubuntuone/syncdaemon/action_queue.pyc", line 2252, in _change_public_access_http
File "twisted/internet/defer.pyc", line 1037, in _inlineCallbacks
File "twisted/python/failure.pyc", line 382, in throwExceptionIntoGenerator
File "ubuntuone/syncdaemon/action_queue.pyc", line 930, in webcall
File "twisted/internet/defer.pyc", line 1039, in _inlineCallbacks
File "ubuntu_sso/utils/webclient/txweb.pyc", line 161, in request
WebClientError: ('FORBIDDEN', "Can't make shared files public.")
2012-10-05 09:37:04,603 - ubuntuone.SyncDaemon.EQ - DEBUG - push_event: AQ_CHANGE_PUBLIC_ACCESS_ERROR, kwargs: {'share_id': UUID('fe76df32-6a95-4a6d-ab74-e4512c50b8e9'), 'node_id': UUID('434f2d47-6a52-4b98-961b-2c28f8e6c3ce'), 'error': "Can't make shared files public."}
2012-10-05 09:37:04,603 - ubuntuone.SyncDaemon.InteractionInterfaces - DEBUG - handle_AQ_CHANGE_PUBLIC_ACCESS_ERROR: args (<ubuntuone.syncdaemon.interaction_interfaces.SyncdaemonEventListener object at 0x105efadd0>,), kwargs {'share_id': UUID('fe76df32-6a95-4a6d-ab74-e4512c50b8e9'), 'node_id': UUID('434f2d47-6a52-4b98-961b-2c28f8e6c3ce'), 'error': "Can't make shared files public."}.
2012-10-05 09:37:04,604 - ubuntuone.SyncDaemon.Pb - DEBUG - emitting 'on_public_access_change_error' to all (1) connected clients.
2012-10-05 09:37:04,604 - ubuntuone.SyncDaemon.InteractionInterfaces - DEBUG - handle_AQ_CHANGE_PUBLIC_ACCESS_ERROR: result None.
2012-10-05 09:37:04,604 - ubuntuone.SyncDaemon.EQ - DEBUG - push_event: SYS_QUEUE_REMOVED, kwargs: {'command': <ubuntuone.syncdaemon.action_queue.ChangePublicAccess object at 0x105e983b0>}
This causes an error in syncdaemon, which is logged but not propagated to the control panel UI.
The right fix is to avoid the error, although there's also a problem that the control panel doesn't seem to be receiving or handling the error callback.
Here's the syncdaemon log from trying this:
2012-10-05 09:37:03,661 - ubuntuone. SyncDaemon. InteractionInte rfaces - DEBUG - change_ public_ access: args (<ubuntuone. syncdaemon. interaction_ interfaces. SyncdaemonPubli cFiles object at 0x104804490>, u'fe76df32- 6a95-4a6d- ab74-e4512c50b8 e9', u'434f2d47- 6a52-4b98- 961b-2c28f8e6c3 ce', True), kwargs {}. SyncDaemon. ActionQueue - DEBUG - ChangePublicAccess share:UUID( 'fe76df32- 6a95-4a6d- ab74-e4512c50b8 e9') node:UUID( '434f2d47- 6a52-4b98- 961b-2c28f8e6c3 ce') ChangePublicAcc ess(running= 'False' ) queueing SyncDaemon. EQ - DEBUG - push_event: SYS_QUEUE_ADDED, kwargs: {'command': <ubuntuone. syncdaemon. action_ queue.ChangePub licAccess object at 0x105e983b0>} SyncDaemon. Pb - DEBUG - emitting 'on_metaqueue_ changed' to all (1) connected clients. SyncDaemon. Pb - DEBUG - emitting 'on_request_ queue_added' to all (0) connected clients. SyncDaemon. ActionQueue - DEBUG - ChangePublicAccess share:UUID( 'fe76df32- 6a95-4a6d- ab74-e4512c50b8 e9') node:UUID( '434f2d47- 6a52-4b98- 961b-2c28f8e6c3 ce') ChangePublicAcc ess(running= 'False' ) starting SyncDaemon. ActionQueue - DEBUG - ChangePublicAccess share:UUID( 'fe76df32- 6a95-4a6d- ab74-e4512c50b8 e9') node:UUID( '434f2d47- 6a52-4b98- 961b-2c28f8e6c3 ce') ChangePublicAcc ess(running= 'False' ) started SyncDaemon. ActionQueue - DEBUG - ChangePublicAccess share:UUID( 'fe76df32- 6a95-4a6d- ab74-e4512c50b8 e9') node:UUID( '434f2d47- 6a52-4b98- 961b-2c28f8e6c3 ce') ChangePublicAcc ess(running= 'False' ) running SyncDaemon. InteractionInte rfaces - DEBUG - change_ public_ access: result None. SyncDaemon. EQ - DEBUG - push_event: AQ_DOWNLOAD_ FILE_PROGRESS, kwargs: {'deflated_size': 36632583L, 'node_id': 'a0c94db7- be64-4eac- b2b8-30d8e61516 8f', 'share_id': '', 'n_bytes_read': 4352496} SyncDaemon. Pb - DEBUG - emitting 'on_download_ file_progress' to all (1) connected clients. SyncDaemon. EQ - DEBUG - push_event: AQ_DOWNLOAD_ FILE_PROGRESS, kwargs: {'deflated_size': 36632583L, 'node_id': 'a0c94db7- be64-4eac- b2b8-30d8e61516 8f', 'share_id': '', 'n_bytes_read': 4425286} SyncDaemon. Pb - DEBUG - emitting 'on_download_ file_progress' to all (1) connected clients. SyncDaemon. ActionQueue - ERROR - ChangePublicAccess share:UUID( 'fe76df32- 6a95-4a6d- ab74-e4512c50b8 e9') node:UUID( '434f2d47- 6a52-4b98- 961b-2c28f8e6c3 ce') ChangePublicAcc ess(running= 'False' ) failure: ('FORBIDDEN', "Can't make shared files public.") (traceback follows) syncdaemon/ action_ queue.pyc" , line 1522, in run internet/ defer.pyc" , line 1037, in _inlineCallbacks python/ failure. pyc", line 382, in throwExceptionI ntoGenerator syncdaemon/ action_ queue.pyc" , line 2252, in _change_ public_ access_ http internet/ defer.pyc" , line 1037, in _inlineCallbacks python/ failure. pyc", line 382, in throwExceptionI ntoGenerator syncdaemon/ action_ queue.pyc" , line 930, in webcall internet/ defer.pyc" , line 1039, in _inlineCallbacks sso/utils/ webclient/ txweb.pyc" , line 161, in request SyncDaemon. EQ - DEBUG - push_event: AQ_CHANGE_ PUBLIC_ ACCESS_ ERROR, kwargs: {'share_id': UUID('fe76df32- 6a95-4a6d- ab74-e4512c50b8 e9'), 'node_id': UUID('434f2d47- 6a52-4b98- 961b-2c28f8e6c3 ce'), 'error': "Can't make shared files public."} SyncDaemon. InteractionInte rfaces - DEBUG - handle_ AQ_CHANGE_ PUBLIC_ ACCESS_ ERROR: args (<ubuntuone. syncdaemon. interaction_ interfaces. SyncdaemonEvent Listener object at 0x105efadd0>,), kwargs {'share_id': UUID('fe76df32- 6a95-4a6d- ab74-e4512c50b8 e9'), 'node_id': UUID('434f2d47- 6a52-4b98- 961b-2c28f8e6c3 ce'), 'error': "Can't make shared files public."}. SyncDaemon. Pb - DEBUG - emitting 'on_public_ access_ change_ error' to all (1) connected clients. SyncDaemon. InteractionInte rfaces - DEBUG - handle_ AQ_CHANGE_ PUBLIC_ ACCESS_ ERROR: result None. SyncDaemon. EQ - DEBUG - push_event: SYS_QUEUE_REMOVED, kwargs: {'command': <ubuntuone. syncdaemon. action_ queue.ChangePub licAccess object at 0x105e983b0>}
2012-10-05 09:37:03,661 - ubuntuone.
2012-10-05 09:37:03,661 - ubuntuone.
2012-10-05 09:37:03,661 - ubuntuone.
2012-10-05 09:37:03,662 - ubuntuone.
2012-10-05 09:37:03,662 - ubuntuone.
2012-10-05 09:37:03,663 - ubuntuone.
2012-10-05 09:37:03,663 - ubuntuone.
2012-10-05 09:37:03,666 - ubuntuone.
2012-10-05 09:37:03,919 - ubuntuone.
2012-10-05 09:37:03,919 - ubuntuone.
2012-10-05 09:37:04,513 - ubuntuone.
2012-10-05 09:37:04,514 - ubuntuone.
2012-10-05 09:37:04,603 - ubuntuone.
Traceback (most recent call last):
File "ubuntuone/
File "twisted/
File "twisted/
File "ubuntuone/
File "twisted/
File "twisted/
File "ubuntuone/
File "twisted/
File "ubuntu_
WebClientError: ('FORBIDDEN', "Can't make shared files public.")
2012-10-05 09:37:04,603 - ubuntuone.
2012-10-05 09:37:04,603 - ubuntuone.
2012-10-05 09:37:04,604 - ubuntuone.
2012-10-05 09:37:04,604 - ubuntuone.
2012-10-05 09:37:04,604 - ubuntuone.