clearlinux / swupd-client

Software update client
Other
115 stars 61 forks source link

Segfaults on update due to missing package. #1606

Open GabeAl opened 1 year ago

GabeAl commented 1 year ago

Please see: https://community.clearlinux.org/t/segfault-on-update-due-to-missing-package/8308

Complete showstopper. Total breakage. Security holes. Everything bad because of a fundamental failure in package management and use of worthless "delta" packages that save no space but waste time and introduce many more "intermediate" files to break, like in this case.

How can I update my system? This is a critical system. It is falling behind on security updates.

https://community.clearlinux.org/t/segfault-on-update-due-to-missing-package/8308

GabeAl commented 1 year ago

Seems to fail at odd packages.

2023-01-09 15:06:20 (src/swupd_lib/curl_async.c:297)Debug: Curl - Complete ASYNC download: https://cdn.download.clearlinux.org/update/37930/pack-bootloader-from-37610.tar -> /var/lib/swupd/pack-bootloader-from-37610-to-37930.tar, status=2
2023-01-09 15:06:20 (src/swupd_lib/progress.c:127) [  9%]
2023-01-09 15:06:20 (src/swupd_lib/curl_async.c:508)Debug: Curl - Start ASYNC download: https://cdn.download.clearlinux.org/update/38010/pack-c-basic-from-37680.tar -> /var/lib/swupd/pack-c-basic-from-37680-to-38010.tar
2023-01-09 15:06:21 (src/swupd_lib/curl.c:436)    Debug: Curl - process_curl_error_codes: curl_ret = 22, response = 404
2023-01-09 15:06:21 (src/swupd_lib/curl.c:449)    Debug: Curl - Download failed - file not found (404) - 'https://cdn.download.clearlinux.org/update/38010/pack-c-basic-from-37680.tar'
2023-01-09 15:06:21 (src/swupd_lib/curl_async.c:297)Debug: Curl - Complete ASYNC download: https://cdn.download.clearlinux.org/update/38010/pack-c-basic-from-37680.tar -> /var/lib/swupd/pack-c-basic-from-37680-to-38010.tar, status=2
2023-01-09 15:06:21 (src/swupd_lib/curl_async.c:508)Debug: Curl - Start ASYNC download: https://cdn.download.clearlinux.org/update/38010/pack-cheese-from-37410.tar -> /var/lib/swupd/pack-cheese-from-37410-to-38010.tar
2023-01-09 15:06:22 (src/swupd_lib/curl.c:436)    Debug: Curl - process_curl_error_codes: curl_ret = 22, response = 404
2023-01-09 15:06:22 (src/swupd_lib/curl.c:449)    Debug: Curl - Download failed - file not found (404) - 'https://cdn.download.clearlinux.org/update/38010/pack-cheese-from-37410.tar'
2023-01-09 15:06:22 (src/swupd_lib/curl_async.c:297)Debug: Curl - Complete ASYNC download: https://cdn.download.clearlinux.org/update/38010/pack-cheese-from-37410.tar -> /var/lib/swupd/pack-cheese-from-37410-to-38010.tar, status=2
2023-01-09 15:06:22 (src/swupd_lib/curl_async.c:508)Debug: Curl - Start ASYNC download: https://cdn.download.clearlinux.org/update/37810/pack-cloc-from-37290.tar -> /var/lib/swupd/pack-cloc-from-37290-to-37810.tar
2023-01-09 15:06:22 (src/swupd_lib/curl.c:436)    Debug: Curl - process_curl_error_codes: curl_ret = 0, response = 200
2023-01-09 15:06:22 (src/swupd_lib/curl_async.c:297)Debug: Curl - Complete ASYNC download: https://cdn.download.clearlinux.org/update/37810/pack-cloc-from-37290.tar -> /var/lib/swupd/pack-cloc-from-37290-to-37810.tar, status=0
2023-01-09 15:06:22 (src/swupd_lib/progress.c:127) [ 10%]
2023-01-09 15:06:22 (src/swupd_lib/packs.c:64)    
2023-01-09 15:06:22 (src/swupd_lib/packs.c:64)    Debug: Extracting cloc pack for version 37810
2023-01-09 15:06:22 (src/swupd_lib/curl_async.c:508)Debug: Curl - Start ASYNC download: https://cdn.download.clearlinux.org/update/38010/pack-cloud-api-from-37680.tar -> /var/lib/swupd/pack-cloud-api-from-37680-to-38010.tar
Segmentation fault
GabeAl commented 1 year ago

Trying sudo swupd update --verbose --debug -V 38000

2023-01-09 15:13:31 (src/swupd_lib/curl.c:436)    Debug: Curl - process_curl_error_codes: curl_ret = 0, response = 200
2023-01-09 15:13:31 (src/swupd_lib/curl_async.c:297)Debug: Curl - Complete ASYNC download: https://cdn.download.clearlinux.org/update/37810/pack-cloc-from-37290.tar -> /var/lib/swupd/pack-cloc-from-37290-to-37810.tar, status=0
2023-01-09 15:13:31 (src/swupd_lib/packs.c:64)    
2023-01-09 15:13:31 (src/swupd_lib/packs.c:64)    Debug: Extracting cloc pack for version 37810
2023-01-09 15:13:31 (src/swupd_lib/curl_async.c:508)Debug: Curl - Start ASYNC download: https://cdn.download.clearlinux.org/update/38000/pack-cloud-api-from-37680.tar -> /var/lib/swupd/pack-cloud-api-from-37680-to-38000.tar
Segmentation fault

Seems to crash at a different place for each version.

fenrus75 commented 1 year ago

can you please tr also without the -V 38000 .... pretty sure we never released 38000

On Mon, Jan 9, 2023 at 12:20 PM Gabriel Al-Ghalith @.***> wrote:

Trying sudo swupd update --verbose --debug -V 38000

2023-01-09 15:13:31 (src/swupd_lib/curl.c:436) Debug: Curl - process_curl_error_codes: curl_ret = 0, response = 200 2023-01-09 15:13:31 (src/swupd_lib/curl_async.c:297)Debug: Curl - Complete ASYNC download: https://cdn.download.clearlinux.org/update/37810/pack-cloc-from-37290.tar -> /var/lib/swupd/pack-cloc-from-37290-to-37810.tar, status=0 2023-01-09 15:13:31 (src/swupd_lib/packs.c:64) 2023-01-09 15:13:31 (src/swupd_lib/packs.c:64) Debug: Extracting cloc pack for version 37810 2023-01-09 15:13:31 (src/swupd_lib/curl_async.c:508)Debug: Curl - Start ASYNC download: https://cdn.download.clearlinux.org/update/38000/pack-cloud-api-from-37680.tar -> /var/lib/swupd/pack-cloud-api-from-37680-to-38000.tar Segmentation fault

Seems to crash at a different place for each version.

— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you are subscribed to this thread.Message ID: @.***>

GabeAl commented 1 year ago

Yes -- that's in the first post. No 38000. I posted again to show what happens if I try to pre-specify a version.

GabeAl commented 1 year ago

Also tried with -V 37990 and one by one everything before that. They all fail.

GabeAl commented 1 year ago

Running a script now.

VF=37700; while true; do echo "------> trying to update to V $VF" >> /home/clear/updates.log; swupd update -V $VF --debug &>> /home/clear/updates.log; VF=$((VF+10)); done

They're all failing.

fenrus75 commented 1 year ago

ok so "it fails" great. any chance to run the thing inside gdb to get a backtrace? (just upgrade to latest, the rest doesn't matter)

On Mon, Jan 9, 2023 at 1:56 PM Gabriel Al-Ghalith @.***> wrote:

Running a script now.

VF=37700; while true; do echo "------> trying to update to V $VF" >> /home/clear/updates.log; swupd update -V $VF --debug &>> /home/clear/updates.log; VF=$((VF+10)); done

They're all failing.

— Reply to this email directly, view it on GitHub https://github.com/clearlinux/swupd-client/issues/1606#issuecomment-1376381628, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAJ54FPTOM5JVUUULFVO4WLWRSCQ3ANCNFSM6AAAAAATV2RA7Y . You are receiving this because you commented.Message ID: @.***>

fenrus75 commented 1 year ago

(also what kind of system is this... cpu type etc)

On Mon, Jan 9, 2023 at 3:02 PM Arjan van de Ven @.***> wrote:

ok so "it fails" great. any chance to run the thing inside gdb to get a backtrace? (just upgrade to latest, the rest doesn't matter)

On Mon, Jan 9, 2023 at 1:56 PM Gabriel Al-Ghalith < @.***> wrote:

Running a script now.

VF=37700; while true; do echo "------> trying to update to V $VF" >> /home/clear/updates.log; swupd update -V $VF --debug &>> /home/clear/updates.log; VF=$((VF+10)); done

They're all failing.

— Reply to this email directly, view it on GitHub https://github.com/clearlinux/swupd-client/issues/1606#issuecomment-1376381628, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAJ54FPTOM5JVUUULFVO4WLWRSCQ3ANCNFSM6AAAAAATV2RA7Y . You are receiving this because you commented.Message ID: @.***>

GabeAl commented 1 year ago

Threadripper pro 5995wx 128-thread with 1TB RAM. Workstation

GabeAl commented 1 year ago
Inspected 699993 files
  43 files were missing
    43 of 43 missing files were replaced
    0 of 43 missing files were not replaced
  2664 files did not match
    2664 of 2664 files were repaired
    0 of 2664 files were not repaired

Calling post-update helper scripts
External command: none

Repair successful

Then:

Inspected 699993 files
  43 files were missing
  2664 files did not match

Use "swupd repair" to correct the problems in the system

Diagnose successful

Nope. Not successful.