GPaste icon indicating copy to clipboard operation
GPaste copied to clipboard

Losing whole history from time to time

Open BlackYoup opened this issue 3 years ago • 15 comments

Hello,

From time to time, I notice that I loose all my history. I do not think that I have a custom shortcut to do that. Today it happened.

I'm using GPaste 3.40.1.

Here are some logs:

Apr 30 12:03:54 exherswag gpaste-daemon[5109]: g_paste_history_private_check_memory_usage: assertion 'biggest' failed
Apr 30 12:03:54 exherswag gpaste-daemon[5109]: g_paste_history_private_check_memory_usage: assertion 'biggest' failed
Apr 30 12:04:15 exherswag gpaste-daemon[5109]: g_paste_history_private_check_memory_usage: assertion 'biggest' failed
Apr 30 12:04:20 exherswag gpaste-daemon[5109]: g_paste_history_private_check_memory_usage: assertion 'biggest' failed
Apr 30 12:04:30 exherswag dbus-daemon[5097]: [session uid=1000 pid=5097] Activating via systemd: service name='org.gnome.GPaste.Ui' unit='org.gnome.GPaste.Ui.service' requested by ':1.1070' (uid=1000 pid=1709114 comm="gpaste-client ui " label="kernel")
Apr 30 12:04:30 exherswag systemd[4993]: Starting GPaste user interface...
Apr 30 12:04:30 exherswag dbus-daemon[5097]: [session uid=1000 pid=5097] Successfully activated service 'org.gnome.GPaste.Ui'
Apr 30 12:04:30 exherswag systemd[4993]: Started GPaste user interface.
Apr 30 12:04:31 exherswag gpaste-daemon[5109]: g_paste_history_private_check_memory_usage: assertion 'biggest' failed
Apr 30 12:04:31 exherswag systemd[4993]: org.gnome.GPaste.Ui.service: Deactivated successfully.
Apr 30 12:04:35 exherswag gpaste-daemon[5109]: g_paste_history_private_check_memory_usage: assertion 'biggest' failed
Apr 30 12:44:05 exherswag dbus-daemon[5097]: [session uid=1000 pid=5097] Activating via systemd: service name='org.gnome.GPaste.Ui' unit='org.gnome.GPaste.Ui.service' requested by ':1.1072' (uid=1000 pid=1745001 comm="gpaste-client ui " label="kernel")
Apr 30 12:44:05 exherswag systemd[4993]: Starting GPaste user interface...
Apr 30 12:44:05 exherswag dbus-daemon[5097]: [session uid=1000 pid=5097] Successfully activated service 'org.gnome.GPaste.Ui'
Apr 30 12:44:05 exherswag systemd[4993]: Started GPaste user interface.
Apr 30 12:44:11 exherswag systemd[4993]: org.gnome.GPaste.Ui.service: Deactivated successfully.
Apr 30 12:44:25 exherswag dbus-daemon[5097]: [session uid=1000 pid=5097] Activating via systemd: service name='org.gnome.GPaste.Ui' unit='org.gnome.GPaste.Ui.service' requested by ':1.1074' (uid=1000 pid=1745362 comm="gpaste-client ui " label="kernel")
Apr 30 12:44:25 exherswag systemd[4993]: Starting GPaste user interface...
Apr 30 12:44:25 exherswag dbus-daemon[5097]: [session uid=1000 pid=5097] Successfully activated service 'org.gnome.GPaste.Ui'
Apr 30 12:44:25 exherswag systemd[4993]: Started GPaste user interface.
Apr 30 12:44:26 exherswag systemd[4993]: org.gnome.GPaste.Ui.service: Deactivated successfully.
Apr 30 12:44:49 exherswag dbus-daemon[5097]: [session uid=1000 pid=5097] Activating via systemd: service name='org.gnome.GPaste.Ui' unit='org.gnome.GPaste.Ui.service' requested by ':1.1076' (uid=1000 pid=1745651 comm="gpaste-client ui " label="kernel")
Apr 30 12:44:49 exherswag systemd[4993]: Starting GPaste user interface...
Apr 30 12:44:49 exherswag dbus-daemon[5097]: [session uid=1000 pid=5097] Successfully activated service 'org.gnome.GPaste.Ui'
Apr 30 12:44:49 exherswag systemd[4993]: Started GPaste user interface.
Apr 30 12:45:12 exherswag systemd[4993]: org.gnome.GPaste.Ui.service: Deactivated successfully.
Apr 30 12:45:12 exherswag systemd[4993]: org.gnome.GPaste.Ui.service: Consumed 1.804s CPU time.

I know for sure that at 12:04:30 (or around) I copied some stuff. There is some assertion failures here and there. And around 12:30, I copied and pasted a link, so I had at least two items in my history.

But then, at 12:50 I wanted to paste my second item and when opening the UI to select it, it was gone with all of my history. Only the last link I copied stayed.

And now it seems like I can only have the last item I copied into my history.

Let me know if you need more logs, that's the only logs I could find but I start the GPaste daemon in a very naive way, so I may loose some.

BlackYoup avatar Apr 30 '21 11:04 BlackYoup

I have the same issue, and when this happen these is no way to fix it until I restart the whole OS

alaarihan avatar Jul 04 '21 10:07 alaarihan

I have the same issue, and when this happen these is no way to fix it until I restart the whole OS

Did you try restarting GPaste daemon? It usually works for me to fix this: gpaste-client daemon-reexec

BlackYoup avatar Jul 05 '21 10:07 BlackYoup

I tried that with stop and start like this:

gpaste-client stop
gpaste-client start

But had no effect, I didn't know about this daemon-reexec command, I will try it when this problem happen again.

alaarihan avatar Jul 05 '21 11:07 alaarihan

Happens to me quite often, restarting daemon helps but history is still lost :(

eyenalxai avatar Jul 08 '21 14:07 eyenalxai

For me I can also found only last "copy" that I made; every time a copy some text replace the last one but history doesn't grown until I empty the history and app start working correctly again.

kamyweb avatar Jul 14 '21 14:07 kamyweb

This is happening to me as well. I'm using 3.38.5 that ships with Ubuntu 21.04. I'm also using Wayland. Only the most recent thing I copy shows.

I'm able to restart without logging off and it works normally afterwards.

Restart procedure that I use:

  1. Turn off gpaste extension in "Extensions" app
  2. pkill gpaste-ui
  3. pkill gpaste-daemon
  4. Turn on extension in "Extensions" app

jagibson avatar Jul 20 '21 18:07 jagibson

This is happening to me as well quite often on Fedora 35 / Gnome 41 / Wayland / GPaste 3.42.0.

psidlo avatar Oct 04 '21 18:10 psidlo

I don't know if this helps, but this issue has happened way less often recently for me. The only thing I can think of that's different is that I've stopped using tomboy-ng, time++, and pomodoro.

jagibson avatar Oct 07 '21 21:10 jagibson

This is due to the wrong directory getting created and/or used (though I do not know the cause) - sometimes it is:

~/.local/share/GPaste

while others is

~/.local/share/gpaste

Obviously, when the change occurs the history.xml file is empty and everything resets. You can merge the files manually and restart the client.

lucabotti avatar Feb 07 '22 10:02 lucabotti

@lucabotti good find. A case change like that should be easy enough to grep out of the source code. Edit: nevermind it is not easy to find :(

jagibson avatar Feb 07 '22 18:02 jagibson

Seeing the same, can't pinpoint the trigger for the problem though. An easy "fix" is restarting the service: systemctl --user restart org.gnome.GPaste.service

This doesn't restore the previous history though, I suspect @lucabotti is on to something. I'll dig in the code.

eyalzek avatar Feb 17 '22 16:02 eyalzek

Here's an strace for when this happens and I do a new copy.

[pid  3151] recvmsg(7, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="V\0\266\n\1\0\300\0\20\0\200\0\243\1\0\0#\327V\0#\327V\0\0\0\0\0\0\0\0\0"..., iov_len=4096}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 64
[pid  3151] recvmsg(7, {msg_namelen=0}, 0) = -1 EAGAIN (Resource temporarily unavailable)
[pid  3151] poll([{fd=7, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=7, revents=POLLOUT}])
[pid  3151] writev(7, [{iov_base="\22\0\7\0\2\0\300\0\326\1\0\0\326\1\0\0\10\0\0\0\1\0\0\0a\0\3\0", iov_len=28}, {iov_base=NULL, iov_len=0}, {iov_base="", iov_len=0}], 3) = 28
[pid  3151] poll([{fd=7, events=POLLIN}], 1, -1) = 1 ([{fd=7, revents=POLLIN}])
[pid  3151] recvmsg(7, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="\34\0\267\n\2\0\300\0\326\1\0\0$\327V\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", iov_len=4096}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 32
[pid  3151] recvmsg(7, {msg_namelen=0}, 0) = -1 EAGAIN (Resource temporarily unavailable)
[pid  3151] poll([{fd=7, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=7, revents=POLLOUT}])
[pid  3151] writev(7, [{iov_base="\27\0\2\0\243\1\0\0", iov_len=8}, {iov_base=NULL, iov_len=0}, {iov_base="", iov_len=0}], 3) = 8
[pid  3151] poll([{fd=7, events=POLLIN}], 1, -1) = 1 ([{fd=7, revents=POLLIN}])
[pid  3151] recvmsg(7, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="\1\0\270\n\0\0\0\0\20\0\200\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", iov_len=4096}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 32
[pid  3151] poll([{fd=4, events=POLLIN}, {fd=7, events=POLLIN}, {fd=9, events=POLLIN}], 3, 0) = 0 (Timeout)
[pid  3151] uname({sysname="Linux", nodename="xxx.xxxxxxxxx.domain", ...}) = 0
[pid  3151] access("/.flatpak-info", F_OK) = -1 ENOENT (No such file or directory)
[pid  3151] getpid()                    = 3151
[pid  3151] poll([{fd=7, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=7, revents=POLLOUT}])
[pid  3151] writev(7, [{iov_base="\30\0\6\0\2\0\300\0\243\1\0\0l\1\0\0(\1\0\0$\327V\0\1\0\n\0\252\0\300\0"..., iov_len=664}, {iov_base=NULL, iov_len=0}, {iov_base="", iov_len=0}], 3) = 664
[pid  3151] poll([{fd=7, events=POLLIN}], 1, -1) = 1 ([{fd=7, revents=POLLIN}])
[pid  3151] recvmsg(7, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="\34\0\273\n\252\0\300\0\v\1\0\0%\327V\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., iov_len=4096}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 384
[pid  3151] recvmsg(7, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="\34\0\314\n\2\0\300\0(\1\0\0%\327V\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., iov_len=4096}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 64
[pid  3151] recvmsg(7, {msg_namelen=0}, 0) = -1 EAGAIN (Resource temporarily unavailable)
[pid  3151] poll([{fd=7, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=7, revents=POLLOUT}])
[pid  3151] writev(7, [{iov_base="\27\0\2\0\243\1\0\0", iov_len=8}, {iov_base=NULL, iov_len=0}, {iov_base="", iov_len=0}], 3) = 8
[pid  3151] poll([{fd=7, events=POLLIN}], 1, -1) = 1 ([{fd=7, revents=POLLIN}])
[pid  3151] recvmsg(7, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="\1\0\315\n\0\0\0\0\20\0\200\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", iov_len=4096}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 32
[pid  3151] poll([{fd=4, events=POLLIN}, {fd=7, events=POLLIN}, {fd=9, events=POLLIN}], 3, 0) = 0 (Timeout)
[pid  3151] poll([{fd=4, events=POLLIN}, {fd=7, events=POLLIN}, {fd=9, events=POLLIN}], 3, 0) = 0 (Timeout)
[pid  3151] poll([{fd=7, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=7, revents=POLLOUT}])
[pid  3151] writev(7, [{iov_base="\30\0\6\0\252\0\300\0\243\1\0\0l\1\0\0(\1\0\0%\327V\0\24\0\6\0\2\0\300\0"..., iov_len=48}, {iov_base=NULL, iov_len=0}, {iov_base="", iov_len=0}], 3) = 48
[pid  3151] poll([{fd=7, events=POLLIN}], 1, -1) = 1 ([{fd=7, revents=POLLIN}])
[pid  3151] recvmsg(7, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="\1 \317\n\t\0\0\0\4\0\0\0\0\0\0\0\t\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., iov_len=4096}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 68
[pid  3151] poll([{fd=7, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=7, revents=POLLIN|POLLOUT}])
[pid  3151] recvmsg(7, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="\34\0\317\n\252\0\300\0(\1\0\0&\327V\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., iov_len=4096}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 64
[pid  3151] writev(7, [{iov_base="\27\0\2\0\243\1\0\0", iov_len=8}, {iov_base=NULL, iov_len=0}, {iov_base="", iov_len=0}], 3) = 8
[pid  3151] poll([{fd=7, events=POLLIN}], 1, -1) = 1 ([{fd=7, revents=POLLIN}])
[pid  3151] recvmsg(7, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="\1\0\320\n\0\0\0\0\20\0\200\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", iov_len=4096}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 32
[pid  3151] poll([{fd=4, events=POLLIN}, {fd=7, events=POLLIN}, {fd=9, events=POLLIN}], 3, 0) = 0 (Timeout)
[pid  3151] poll([{fd=7, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=7, revents=POLLOUT}])
[pid  3151] writev(7, [{iov_base="\30\0\6\0\2\0\300\0\243\1\0\0\334\1\0\0(\1\0\0%\327V\0\23\0\3\0\2\0\300\0"..., iov_len=60}, {iov_base=NULL, iov_len=0}, {iov_base="", iov_len=0}], 3) = 60
[pid  3151] poll([{fd=7, events=POLLIN}], 1, -1) = 1 ([{fd=7, revents=POLLIN}])
[pid  3151] recvmsg(7, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="\34\0\322\n\2\0\300\0(\1\0\0&\327V\0\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., iov_len=4096}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 100
[pid  3151] uname({sysname="Linux", nodename="xxx.xxxxxxxxx.domain", ...}) = 0
[pid  3151] access("/.flatpak-info", F_OK) = -1 ENOENT (No such file or directory)
[pid  3151] getpid()                    = 3151
[pid  3151] poll([{fd=7, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=7, revents=POLLOUT}])
[pid  3151] writev(7, [{iov_base="\1\0\n\0\255\0\300\0\271\2\0\0\234\377\234\377\n\0\n\0\0\0\2\0h\2\0\0\0\n\0\0"..., iov_len=620}, {iov_base=NULL, iov_len=0}, {iov_base="", iov_len=0}], 3) = 620
[pid  3151] poll([{fd=7, events=POLLIN}], 1, -1) = 1 ([{fd=7, revents=POLLIN}])
[pid  3151] recvmsg(7, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="\34\0\325\n\255\0\300\0\v\1\0\0&\327V\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., iov_len=4096}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 352
[pid  3151] poll([{fd=7, events=POLLIN}], 1, -1) = 1 ([{fd=7, revents=POLLIN}])
[pid  3151] recvmsg(7, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="\1\0\346\n\0\0\0\0\20\0\200\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", iov_len=4096}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 32
[pid  3151] poll([{fd=4, events=POLLIN}, {fd=7, events=POLLIN}, {fd=9, events=POLLIN}], 3, 0) = 0 (Timeout)
[pid  3151] poll([{fd=4, events=POLLIN}, {fd=7, events=POLLIN}, {fd=9, events=POLLIN}], 3, 0) = 0 (Timeout)
[pid  3151] poll([{fd=7, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=7, revents=POLLOUT}])
[pid  3151] writev(7, [{iov_base="\30\0\6\0\255\0\300\0\243\1\0\0\334\1\0\0(\1\0\0%\327V\0\206\6\2\0\253\0\300\0"..., iov_len=48}, {iov_base=NULL, iov_len=0}, {iov_base="", iov_len=0}], 3) = 48
[pid  3151] recvmsg(7, {msg_namelen=0}, 0) = -1 EAGAIN (Resource temporarily unavailable)
[pid  3151] recvmsg(7, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="\21\0\352\n\252\0\300\0\252\0\300\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., iov_len=4096}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 352
[pid  3151] recvmsg(7, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="\34\0\352\n\252\0\300\0'\0\0\0'\327V\0\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., iov_len=4096}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 64
[pid  3151] recvmsg(7, {msg_namelen=0}, 0) = -1 EAGAIN (Resource temporarily unavailable)
[pid  3151] recvmsg(7, {msg_namelen=0}, 0) = -1 EAGAIN (Resource temporarily unavailable)
[pid  3151] recvmsg(7, {msg_namelen=0}, 0) = -1 EAGAIN (Resource temporarily unavailable)
[pid  3151] poll([{fd=4, events=POLLIN}, {fd=7, events=POLLIN}, {fd=9, events=POLLIN}], 3, 998) = 1 ([{fd=7, revents=POLLIN}])
[pid  3151] recvmsg(7, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="\34\0\352\n\2\0\300\0(\1\0\0)\327V\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., iov_len=4096}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 128
[pid  3151] recvmsg(7, {msg_namelen=0}, 0) = -1 EAGAIN (Resource temporarily unavailable)
[pid  3151] poll([{fd=4, events=POLLIN}, {fd=7, events=POLLIN}, {fd=9, events=POLLIN}], 3, 0) = 0 (Timeout)
[pid  3151] poll([{fd=7, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=7, revents=POLLOUT}])
[pid  3151] writev(7, [{iov_base="\24\0\6\0\2\0\300\0(\1\0\0\0\0\0\0\0\0\0\0\377\377\377\37", iov_len=24}, {iov_base=NULL, iov_len=0}, {iov_base="", iov_len=0}], 3) = 24
[pid  3151] poll([{fd=7, events=POLLIN}], 1, -1) = 1 ([{fd=7, revents=POLLIN}])
[pid  3151] recvmsg(7, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="\1\10\353\n\1\0\0\0\334\1\0\0\0\0\0\0\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., iov_len=4096}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 36
[pid  3151] poll([{fd=4, events=POLLIN}, {fd=7, events=POLLIN}, {fd=9, events=POLLIN}], 3, 0) = 0 (Timeout)
[pid  3151] poll([{fd=7, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=7, revents=POLLOUT}])
[pid  3151] writev(7, [{iov_base="\23\0\3\0\2\0\300\0(\1\0\0\24\0\6\0\255\0\300\0(\1\0\0\0\0\0\0\0\0\0\0"..., iov_len=36}, {iov_base=NULL, iov_len=0}, {iov_base="", iov_len=0}], 3) = 36
[pid  3151] poll([{fd=7, events=POLLIN}], 1, -1) = 1 ([{fd=7, revents=POLLIN}])
[pid  3151] recvmsg(7, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="\34\0\354\n\2\0\300\0(\1\0\0*\327V\0\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., iov_len=4096}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 68
[pid  3151] poll([{fd=4, events=POLLIN}, {fd=7, events=POLLIN}, {fd=9, events=POLLIN}], 3, 0) = 0 (Timeout)
[pid  3151] poll([{fd=7, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=7, revents=POLLOUT}])
[pid  3151] writev(7, [{iov_base="\206\6\2\0\256\0\300\0\206\6\2\0\257\0\300\0\4\0\2\0\255\0\300\0", iov_len=24}, {iov_base=NULL, iov_len=0}, {iov_base="", iov_len=0}], 3) = 24
[pid  3151] recvmsg(7, {msg_namelen=0}, 0) = -1 EAGAIN (Resource temporarily unavailable)
[pid  3151] recvmsg(7, {msg_namelen=0}, 0) = -1 EAGAIN (Resource temporarily unavailable)
[pid  3151] poll([{fd=4, events=POLLIN}, {fd=7, events=POLLIN}, {fd=9, events=POLLIN}], 3, 995) = 1 ([{fd=7, revents=POLLIN}])
[pid  3151] recvmsg(7, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="\21\0\360\n\255\0\300\0\255\0\300\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., iov_len=4096}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 416
[pid  3151] recvmsg(7, {msg_namelen=0}, 0) = -1 EAGAIN (Resource temporarily unavailable)
[pid  3151] recvmsg(7, {msg_namelen=0}, 0) = -1 EAGAIN (Resource temporarily unavailable)
[pid  3151] recvmsg(7, {msg_namelen=0}, 0) = -1 EAGAIN (Resource temporarily unavailable)
[pid  3151] poll([{fd=4, events=POLLIN}, {fd=7, events=POLLIN}, {fd=9, events=POLLIN}], 3, 995) = 0 (Timeout)
[pid  3151] recvmsg(7, {msg_namelen=0}, 0) = -1 EAGAIN (Resource temporarily unavailable)
[pid  3151] poll([{fd=4, events=POLLIN}, {fd=7, events=POLLIN}, {fd=9, events=POLLIN}], 3, -1

Edit:

From what I can see it looks to happen about here:

[pid  3151] writev(7, [{iov_base="\24\0\6\0\2\0\300\0(\1\0\0\0\0\0\0\0\0\0\0\377\377\377\37", iov_len=24}, {iov_base=NULL, iov_len=0}, {iov_base="", iov_len=0}], 3) = 24
[pid  3151] poll([{fd=7, events=POLLIN}], 1, -1) = 1 ([{fd=7, revents=POLLIN}])
[pid  3151] recvmsg(7, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="\1\10\353\n\1\0\0\0\334\1\0\0\0\0\0\0\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., iov_len=4096}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 36
[pid  3151] poll([{fd=4, events=POLLIN}, {fd=7, events=POLLIN}, {fd=9, events=POLLIN}], 3, 0) = 0 (Timeout)

Conversely, when it's working properly I see this at about the same point

[pid 16234] writev(7, [{iov_base="\24\0\6\0\2\0\300\0(\1\0\0\0\0\0\0\0\0\0\0\377\377\377\37", iov_len=24}, {iov_base=NULL, iov_len=0}, {iov_base="", iov_len=0}], 3) = 24
[pid 16234] poll([{fd=7, events=POLLIN}], 1, -1) = 1 ([{fd=7, revents=POLLIN}])
[pid 16234] recvmsg(7, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="\1\10\220\2\5\0\0\0\334\1\0\0\0\0\0\0\21\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., iov_len=4096}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 52
[pid 16234] statx(AT_FDCWD, "/home/me/.local/share/gpaste", AT_STATX_SYNC_AS_STAT|AT_SYMLINK_NOFOLLOW|AT_NO_AUTOMOUNT, STATX_ALL, {stx_mask=STATX_ALL|STATX_MNT_ID, stx_attributes=0, stx_mode=S_IFDIR|0755, stx_size=4096, ...}) = 0
[pid 16234] openat(AT_FDCWD, "/home/me/.local/share/gpaste/history.xml", O_WRONLY|O_CREAT|O_EXCL|O_CLOEXEC, 0666) = -1 EEXIST (File exists)
[pid 16234] openat(AT_FDCWD, "/home/me/.local/share/gpaste/history.xml", O_WRONLY|O_CREAT|O_NOFOLLOW, 0666) = 12
[pid 16234] statx(12, "", AT_STATX_SYNC_AS_STAT|AT_EMPTY_PATH, STATX_TYPE|STATX_MODE|STATX_NLINK|STATX_UID|STATX_GID|STATX_MTIME, {stx_mask=STATX_BASIC_STATS|STATX_MNT_ID, stx_attributes=0, stx_mode=S_IFREG|0664, stx_size=1385, ...}) = 0
[pid 16234] openat(AT_FDCWD, "/home/me/.local/share/gpaste/.goutputstream-C80AJ1", O_WRONLY|O_CREAT|O_EXCL, 0666) = 13
[pid 16234] close(12)                   = 0
[pid 16234] write(13, "<?xml version=\"1.0\" encoding=\"UT"..., 39) = 39
[pid 16234] write(13, "<history version=\"2.0\">\n", 24) = 24
[pid 16234] write(13, "  <item kind=\"", 14) = 14
[pid 16234] write(13, "Text", 4)        = 4
[pid 16234] write(13, "\" uuid=\"", 8)  = 8
[pid 16234] write(13, "91260f7d-7754-41ff-b8e6-4bd0f009"..., 36) = 36
[pid 16234] write(13, "\">\n    <value><![CDATA[", 23) = 23
[pid 16234] write(13, "install_directory", 17) = 17
[pid 16234] write(13, "]]></value>\n", 12) = 12
[pid 16234] write(13, "  </item>\n", 10) = 10
[pid 16234] write(13, "  <item kind=\"", 14) = 14
[pid 16234] write(13, "Text", 4)        = 4
[pid 16234] write(13, "\" uuid=\"", 8)  = 8
[pid 16234] write(13, "3b90b314-60b4-405b-b2f5-7b8ef914"..., 36) = 36
[pid 16234] write(13, "\">\n    <value><![CDATA[", 23) = 23
[pid 16234] write(13, "443", 3)         = 3
[pid 16234] write(13, "]]></value>\n", 12) = 12
[pid 16234] write(13, "  </item>\n", 10) = 10
[pid 16234] write(13, "  <item kind=\"", 14) = 14
[pid 16234] write(13, "Text", 4)        = 4
[pid 16234] write(13, "\" uuid=\"", 8)  = 8
[pid 16234] write(13, "12408e1f-2aa3-481b-9c63-04bd091e"..., 36) = 36
[pid 16234] write(13, "\">\n    <value><![CDATA[", 23) = 23
[pid 16234] write(13, "follow", 6)      = 6
[pid 16234] write(13, "]]></value>\n", 12) = 12
[pid 16234] write(13, "    <value mime=\"", 17) = 17
[pid 16234] write(13, "text-html", 9)   = 9
[pid 16234] write(13, "\"><![CDATA[", 11) = 11
[pid 16234] write(13, "PHNwYW4gc3R5bGU9ImNvbG9yOiByZ2Io"..., 912) = 912
[pid 16234] write(13, "]]></value>\n", 12) = 12
[pid 16234] write(13, "  </item>\n", 10) = 10
[pid 16234] write(13, "  <item kind=\"", 14) = 14
[pid 16234] write(13, "Text", 4)        = 4
[pid 16234] write(13, "\" uuid=\"", 8)  = 8
[pid 16234] write(13, "5344e046-a453-41c2-be00-3cad91f0"..., 36) = 36
[pid 16234] write(13, "\">\n    <value><![CDATA[", 23) = 23
[pid 16234] write(13, "xxx.xxxxxxxxx.domain", 20) = 20
[pid 16234] write(13, "]]></value>\n", 12) = 12
[pid 16234] write(13, "  </item>\n", 10) = 10
[pid 16234] write(13, "</history>\n", 11) = 11
[pid 16234] fsync(13)                   = 0
[pid 16234] rename("/home/me/.local/share/gpaste/.goutputstream-C80AJ1", "/home/me/.local/share/gpaste/history.xml") = 0
[pid 16234] statx(13, "", AT_STATX_SYNC_AS_STAT|AT_EMPTY_PATH, STATX_MTIME, {stx_mask=STATX_BASIC_STATS|STATX_MNT_ID, stx_attributes=0, stx_mode=S_IFREG|0664, stx_size=1509, ...}) = 0
[pid 16234] close(13)

jagibson avatar Mar 16 '22 17:03 jagibson

FWIW it does seem to happen more often when I have more extensions loaded. recently loaded for me:

  • Arrange Windows
  • Burn My Windows
  • Todo.txt
  • Shortcuts

jagibson avatar Mar 25 '22 22:03 jagibson

The renaming of the folder was an unfortunate regression in the meson switch and has been fixed (with compatibility added to the daemon. This could indeed have caused a single history list, but not repeated ones. I believe I have fixed a root cause of most problems but apparently there are still some occurring. Will give a look at the trace later, thanks!

Keruspe avatar Mar 26 '22 09:03 Keruspe

Hi, this still happens to me in Fedora 36, GNOME 42.2, GPaste 42 (DIstro packaged version 42.1-1.fc36)

Any hints?

lucabotti avatar Jul 12 '22 12:07 lucabotti

Lot of good info here. After try to restart service I found the file ~/.local/share/gpaste/history.xml is out of sync.

After create some new entries with gpaste UI finally history and shortcuts start to work again.

Will collect more info on next desync, to see how to deal with this, probably

albfan avatar Mar 02 '23 13:03 albfan

I recommend closing this issue as a duplicate of https://github.com/Keruspe/GPaste/issues/365 It looks like it was fixed in https://github.com/Keruspe/GPaste/commit/18d28711fdbe4e22124c0519004b47ff6d853afc

esplinr avatar Mar 28 '23 14:03 esplinr

Indeed thanks

Keruspe avatar Mar 28 '23 15:03 Keruspe