Project

General

Profile

action #108125

openqa-worker-cacheservice(-minion) can trigger "UNIQUE constraint failed: mojo_migrations.name at OpenQA/CacheService/Model/Cache.pm line 77."

Added by okurz 4 months ago. Updated 3 months ago.

Status:
Resolved
Priority:
Normal
Assignee:
Category:
Concrete Bugs
Target version:
Start date:
2022-03-09
Due date:
% Done:

0%

Estimated time:
Difficulty:

Description

Observation

openqa-worker-cacheservice-minion says:

Mar 10 11:53:38 openqaworker11 openqa-worker-cacheservice-minion[2119]: DBD::SQLite::st execute failed: UNIQUE constraint failed: mojo_migration
s.name at /usr/share/openqa/script/../lib/OpenQA/CacheService/Model/Cache.pm line 77.

More context from journal:

Mar 10 11:53:34 openqaworker11 systemd[1]: Started OpenQA Worker Cache Service Minion.
Mar 10 11:53:38 openqaworker11 openqa-worker-cacheservice-minion[2119]: [2119] [i] Creating cache directory tree for "/v>
Mar 10 11:53:38 openqaworker11 openqa-worker-cacheservice-minion[2119]: DBD::SQLite::st execute failed: UNIQUE constrain>
Mar 10 11:53:38 openqaworker11 openqa-worker-cacheservice-minion[2119]:  at /usr/share/openqa/script/../lib/OpenQA/Cache>
Mar 10 11:53:38 openqaworker11 systemd[1]: openqa-worker-cacheservice-minion.service: Main process exited, code=exited, >
Mar 10 11:53:38 openqaworker11 systemd[1]: openqa-worker-cacheservice-minion.service: Unit entered failed state.
Mar 10 11:53:38 openqaworker11 systemd[1]: openqa-worker-cacheservice-minion.service: Failed with result 'exit-code'.
Mar 10 11:53:38 openqaworker11 systemd[1]: openqa-worker-cacheservice-minion.service: Service RestartSec=100ms expired, >
Mar 10 11:53:38 openqaworker11 systemd[1]: Stopped OpenQA Worker Cache Service Minion.
Mar 10 11:53:38 openqaworker11 systemd[1]: Started OpenQA Worker Cache Service Minion.

Related issues

Copied from openQA Project - action #108091: Most systemd units should not Want= or Require= network.target (bsc#1196359) size:MResolved2022-03-09

History

#1 Updated by okurz 4 months ago

  • Copied from action #108091: Most systemd units should not Want= or Require= network.target (bsc#1196359) size:M added

#2 Updated by okurz 4 months ago

Mob-programming on openqaworker11 in a tmate session. Our test:

echo "# full-exclusive read access of db version just to make sure" && for i in {1..10000}; do echo "## Run $i" && systemctl stop openqa-worker-cacheservice-minion.service openqa-worker-cacheservice.service && rm -f /var/lib/openqa/cache/cache.sqlite* && systemctl start openqa-worker-cacheservice-minion.service openqa-worker-cacheservice.service && for j in {1..30}; do echo "waiting for sqlite" && test -f /var/lib/openqa/cache/cache.sqlite && break || sleep 1; done && journalctl --since=today _SYSTEMD_UNIT=openqa-worker-cacheservice.service + _SYSTEMD_UNIT=openqa-worker-cacheservice-minion.service | grep -c 'UNIQUE'; done   

to reproduce the problem.

#4 Updated by okurz 4 months ago

  • Due date set to 2022-03-24
  • Status changed from In Progress to Feedback

Provided an alternative https://github.com/Grinnz/Mojo-SQLite/pull/25 which was merged already meanwhile. Forgot one part and tinita was again very diligent to catch this :) So created https://github.com/Grinnz/Mojo-SQLite/pull/26 . Also suggested to use github actions instead of obsolete Travis CI: https://github.com/Grinnz/Mojo-SQLite/pull/27

#5 Updated by okurz 3 months ago

All three PRs have been accepted. I asked in https://github.com/Grinnz/Mojo-SQLite/pull/26#issuecomment-1067822492 if a new fixed release can be created for the package.

#6 Updated by cdywan 3 months ago

okurz wrote:

All three PRs have been accepted. I asked in https://github.com/Grinnz/Mojo-SQLite/pull/26#issuecomment-1067822492 if a new fixed release can be created for the package.

I see no response there. Should we ask specific persons?

#7 Updated by okurz 3 months ago

  • Due date changed from 2022-03-24 to 2022-04-29

I already did so in https://github.com/Grinnz/Mojo-SQLite/pull/26#issuecomment-1067822492 and asked kraih in chat now . I suggest to wait up to 4 weeks and ask again. If there is still no release by then we can provide a patch in the openSUSE downstream package instead.

#9 Updated by okurz 3 months ago

  • Due date deleted (2022-04-29)
  • Status changed from Feedback to Resolved

https://build.opensuse.org/request/show/964986 is the according accepted factory submission. https://build.opensuse.org/package/show/devel:openQA:Leap:15.3/perl-Mojo-SQLite has it already as well. So OSD workers should also have it (haven't actually checked the last step though).

Also available in: Atom PDF