value too long
Closed this issue · 5 comments
I got on retrace.f.o:
[2020-09-22 21:47:09] CRITICAL:faf: Action failed unexpectedly: DataError: (psycopg2.DataError) value too long for type character varying(1024)
[SQL: INSERT INTO packagedependencies (package_id, type, name, flags, epoch, version, release) VALUES (%(package_id)s, %(type)s, %(name)s, %(flags)s, %(epoch)s, %(version)s, %(release)s) RETURNING packagedependencies.id]
[parameters: {'package_id': 324375, 'type': 'PROVIDES', 'name': 'kmod(msr.ko)kmod(cpuid.ko)kmod(glue_helper.ko)kmod(aesni-intel.ko)kmod(iosf_mbi.ko)kmod(watch_queue.ko)kmod(zswap.ko)kmod(zpool.ko)kmod(zbud.ko)kmod( ... (5027 characters truncated) ... es.ko)kmod(xt_tcpudp.ko)kmod(tcp_cubic.ko)kmod(xfrm_algo.ko)kmod(xfrm_user.ko)kmod(unix.ko)kmod(ipv6.ko)kmod(mip6.ko)kmod(af_packet.ko)kmod(fbdev.ko)', 'flags': 32768, 'epoch': None, 'version': None, 'release': None}]
(Background on this error at: http://sqlalche.me/e/9h9h)
With faf-2.2.0-1.el8.noarch
Possibly something wrong with parsing of PROVIDES from rpm?
Line 107 in 4c0acb2
[
"parameters":{
"package_id":324375,
"type":"PROVIDES",
"name":"kmod(msr.ko)kmod(cpuid.ko)kmod(glue_helper.ko)kmod(aesni-intel.ko)kmod(iosf_mbi.ko)kmod(watch_queue.ko)kmod(zswap.ko)kmod(zpool.ko)kmod(zbud.ko)kmod( ... (5027 characters truncated) ... es.ko)kmod(xt_tcpudp.ko)kmod(tcp_cubic.ko)kmod(xfrm_algo.ko)kmod(xfrm_user.ko)kmod(unix.ko)kmod(ipv6.ko)kmod(mip6.ko)kmod(af_packet.ko)kmod(fbdev.ko)",
"flags":32768,
"epoch":"None",
"version":"None",
"release":"None"
}
]
Yes. That is only place where this can happen. But I tried to run this code manually. On the very same package. And it provides the list. Not the joined string. :( Some magic is happening here.
Can not reproduce.
Hit this again on retrace-stg with kernel-core yesterday.
Perhaps we should just drop varchar
where it leads to problems, in line with general advice on Postgres wiki.
Edit: This might actually be a bug in rpm or the kernel package. Will need to discuss details.
For the record: The excessively long Provides of kernel-core has been reported to Bugzilla almost a year ago with no response from the maintainers yet.