[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#873729: marked as done (UDD: size column in UDD is too small)



Your message dated Thu, 31 Aug 2017 22:36:37 +0200
with message-id <20170831203637.ppv34d266cmwwjfr@xanadu.blop.info>
and subject line Re: Bug#873729: UDD: size column in UDD is too small
has caused the Debian Bug report #873729,
regarding UDD: size column in UDD is too small
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact owner@bugs.debian.org
immediately.)


-- 
873729: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=873729
Debian Bug Tracking System
Contact owner@bugs.debian.org with problems
--- Begin Message ---
Package: qa.debian.org
Severity: normal
User: qa.debian.org@packages.debian.org
Usertags: udd

The UDD column to represent the size of the binary package is an 'int' which
is a signed, 32 bit integer. Packages keep getting bigger and now there are
dbgsym packages that are bigger than that 2GiB limit.

The attached patch enlarges the column to be bigints (64 bit signed integers)
which should see us through for the time being...

(UDD does not currently import dbgsym packages; it probably should)

cheers
Stuart


$ xzcat .../debian-debug/dists/sid-debug/main/*/Packages.xz | grep-dctrl -F Size --ge 2147483648 -s Package,Source,Size,Architecture
Package: clang-5.0-dbgsym
Source: llvm-toolchain-5.0
Size: 2169432936
Architecture: amd64

Package: clang-6.0-dbgsym
Source: llvm-toolchain-snapshot
Size: 2221263616
Architecture: amd64

Package: clang-5.0-dbgsym
Source: llvm-toolchain-5.0
Size: 2161246344
Architecture: arm64

Package: clang-5.0-dbgsym
Source: llvm-toolchain-5.0
Size: 2175035264
Architecture: armel

Package: clang-5.0-dbgsym
Source: llvm-toolchain-5.0
Size: 2323314752
Architecture: s390x
>From d82ccb3759fbf0c81a789a2e3fc77b5e19cb832f Mon Sep 17 00:00:00 2001
From: Stuart Prescott <stuart@debian.org>
Date: Thu, 31 Aug 2017 00:32:48 +1000
Subject: [PATCH] Switch 'size' column to use bigint

Some binary packages are now greater than 2GiB in size (particularly dbgsym
packages) so to fit the size into the table, the a wider integer format must
be used.
---
 sql/setup.sql   | 8 ++++----
 sql/upgrade.sql | 7 +++++++
 2 files changed, 11 insertions(+), 4 deletions(-)

diff --git a/sql/setup.sql b/sql/setup.sql
index 48a9101..08a67fc 100644
--- a/sql/setup.sql
+++ b/sql/setup.sql
@@ -62,7 +62,7 @@ CREATE TABLE packages
   (package text, version debversion, architecture text, maintainer text, maintainer_name text, maintainer_email text, description
     text, description_md5 text, source text, source_version debversion, essential text, depends text,
     recommends text, suggests text, enhances text, pre_depends text, breaks text,
-    installed_size int, homepage text, size int,
+    installed_size int, homepage text, size bigint,
     build_essential text, origin text, sha1 text, replaces text, section text,
     md5sum text, bugs text, priority text, tag text, task text, python_version text,
     ruby_versions text, 
@@ -118,7 +118,7 @@ CREATE TABLE ubuntu_packages
   (package text, version debversion, architecture text, maintainer text, maintainer_name text, maintainer_email text, description
     text, description_md5 text, source text, source_version debversion, essential text, depends text,
     recommends text, suggests text, enhances text, pre_depends text, breaks text,
-    installed_size int, homepage text, size int,
+    installed_size int, homepage text, size bigint,
     build_essential text, origin text, sha1 text, replaces text, section text,
     md5sum text, bugs text, priority text, tag text, task text, python_version text,
     ruby_versions text, 
@@ -174,7 +174,7 @@ CREATE TABLE derivatives_packages
   (package text, version debversion, architecture text, maintainer text, maintainer_name text, maintainer_email text, description
     text, description_md5 text, source text, source_version debversion, essential text, depends text,
     recommends text, suggests text, enhances text, pre_depends text, breaks text,
-    installed_size int, homepage text, size int,
+    installed_size int, homepage text, size bigint,
     build_essential text, origin text, sha1 text, replaces text, section text,
     md5sum text, bugs text, priority text, tag text, task text, python_version text,
     ruby_versions text, 
@@ -231,7 +231,7 @@ CREATE TABLE archived_packages
   (package text, version debversion, architecture text, maintainer text, maintainer_name text, maintainer_email text, description
     text, description_md5 text, source text, source_version debversion, essential text, depends text,
     recommends text, suggests text, enhances text, pre_depends text, breaks text,
-    installed_size int, homepage text, size int,
+    installed_size int, homepage text, size bigint,
     build_essential text, origin text, sha1 text, replaces text, section text,
     md5sum text, bugs text, priority text, tag text, task text, python_version text,
     ruby_versions text, 
diff --git a/sql/upgrade.sql b/sql/upgrade.sql
index 3257f45..63f31a1 100644
--- a/sql/upgrade.sql
+++ b/sql/upgrade.sql
@@ -483,3 +483,10 @@ INSERT INTO bts_tags (tag,tag_type) VALUES ('bullseye-ignore','');
 UPDATE releases SET releaseversion='8' WHERE release='jessie';
 UPDATE releases SET releaseversion='8' WHERE release='jessie-security';
 UPDATE releases SET releaseversion='8' WHERE release='jessie-proposed-updates';
+
+
+-- 2017-08-30 change package's size column to be bigint for packages > 2GB
+ALTER TABLE packages ALTER COLUMN size TYPE bigint;
+ALTER TABLE ubuntu_packages ALTER COLUMN size TYPE bigint;
+ALTER TABLE derivatives_packages ALTER COLUMN size TYPE bigint;
+ALTER TABLE archived_packages ALTER COLUMN size TYPE bigint;
-- 
2.11.0


--- End Message ---
--- Begin Message ---
Hi,

On 31/08/17 at 00:41 +1000, Stuart Prescott wrote:
> Package: qa.debian.org
> Severity: normal
> User: qa.debian.org@packages.debian.org
> Usertags: udd
> 
> The UDD column to represent the size of the binary package is an 'int' which
> is a signed, 32 bit integer. Packages keep getting bigger and now there are
> dbgsym packages that are bigger than that 2GiB limit.
> 
> The attached patch enlarges the column to be bigints (64 bit signed integers)
> which should see us through for the time being...

Thanks a lot for looking into that!
I've applied the change on the live DB. Regarding setup.sql and
upgrade.sql, I've kind-of given up maintaining them. Instead, I've
committed a snapshot of the schema dump.

> (UDD does not currently import dbgsym packages; it probably should)

could you open another bug about that, ideally with a pointer to how
dbgsym are described? I must admit that I'm a bit clueless about them.

Lucas

--- End Message ---

Reply to: