Hello community,
here is the log from the commit of package zmd
checked in at Thu Oct 12 15:54:24 CEST 2006.
--------
--- zmd/zmd.changes 2006-10-05 10:38:05.000000000 +0200
+++ /mounts/work_src_done/STABLE/zmd/zmd.changes 2006-10-11 19:43:34.000000000 +0200
@@ -1,0 +2,9 @@
+Mon Oct 9 21:00:31 CEST 2006 - maw@suse.de
+
+- New source drop (r35239) which:
+- Doesn't spin forever if the client returns no data, fixing an
+ infamous 99% cpu bug (#176367)
+- Fixes db inconsistencies between libzypp and zmd (#207150)
+- Removes the patch aj added, as it is now upstream.
+
+-------------------------------------------------------------------
Old:
----
zmd.diff
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ zmd.spec ++++++
--- /var/tmp/diff_new_pack.3K7ZV1/_old 2006-10-12 15:53:53.000000000 +0200
+++ /var/tmp/diff_new_pack.3K7ZV1/_new 2006-10-12 15:53:53.000000000 +0200
@@ -14,7 +14,7 @@
BuildRequires: dbus-1-mono libzypp-zmd-backend log4net mono-basic mono-data-sqlite mono-devel perl-XML-Parser rpm-devel sqlite-devel
URL: http://www.novell.com
Version: 7.1.100.0
-Release: 8
+Release: 10
License: LGPL
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Source0: %{name}-%{version}.tar.bz2
@@ -29,7 +29,6 @@
Patch7: zmd-init.patch
Patch8: logrotate.patch
Patch9: zmd-inventory-disable.patch
-Patch42: zmd.diff
Summary: Novell ZENworks Linux Management daemon
Group: System/Daemons
Autoreqprov: on
@@ -82,7 +81,6 @@
%patch7
%patch8
%patch9
-%patch42
%build
libtoolize -f
@@ -186,6 +184,12 @@
%{_libdir}/pkgconfig/rpm-sharp.pc
%changelog -n zmd
+* Mon Oct 09 2006 - maw@suse.de
+- New source drop (r35239) which:
+- Doesn't spin forever if the client returns no data, fixing an
+ infamous 99%% cpu bug (#176367)
+- Fixes db inconsistencies between libzypp and zmd (#207150)
+- Removes the patch aj added, as it is now upstream.
* Thu Oct 05 2006 - aj@suse.de
- Apply fix from Tambet Ingo for interaction with libzypp.
* Tue Sep 26 2006 - maw@suse.de
++++++ zmd-7.1.100.0.tar.bz2 ++++++
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/zmd-7.1.100.0/modules/ChangeLog new/zmd-7.1.100.0/modules/ChangeLog
--- old/zmd-7.1.100.0/modules/ChangeLog 2006-09-26 18:41:10.000000000 +0200
+++ new/zmd-7.1.100.0/modules/ChangeLog 2006-10-09 19:02:59.000000000 +0200
@@ -1,3 +1,19 @@
+2006-10-09 Tambet Ingo
+
+ * linux/Database.cs: Add triggers to automatically remove rows from
+ delta_packages, patch_packages, and patch_packages_baseversions tables.
+ Update DBVERSION to 4.
+
+2006-10-05 Tambet Ingo
+
+ * linux/Database.cs: Update catalog.timestamp along with checksum.
+
+ * linux/SqliteBackend.cs: Update catalog checksum and timestamp only
+ if the checksum is not null. Add a huge comment on why it's necessary.
+
+ * linux/ZyppService.cs: Pass null as a checksum to ParseMetadata
+ instead of an empty string, all new catalogs have that checksum.
+
2006-09-14 Chris Rivera
* linux/ResolvableQuery.cs: Add static QueryAllowsDowngrade(). Some
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/zmd-7.1.100.0/modules/linux/Database.cs new/zmd-7.1.100.0/modules/linux/Database.cs
--- old/zmd-7.1.100.0/modules/linux/Database.cs 2006-09-26 18:41:10.000000000 +0200
+++ new/zmd-7.1.100.0/modules/linux/Database.cs 2006-10-09 19:02:59.000000000 +0200
@@ -19,7 +19,7 @@
public sealed class Database {
- public readonly static int DBVERSION = 3;
+ public readonly static int DBVERSION = 4;
protected static readonly ILog log = LogManager.GetLogger (typeof (Database));
@@ -176,7 +176,7 @@
id.Value = Database.SqlString (catalog.Id);
- string checksum = null;
+ string checksum = String.Empty;
GetLock (false);
@@ -194,15 +194,18 @@
public static void UpdateCatalogChecksum (Catalog catalog, string checksum) {
IDbCommand command = (SqliteCommand) Connection.CreateCommand ();
- command.CommandText = "UPDATE catalogs SET checksum = ? WHERE id = ?";
+ command.CommandText = "UPDATE catalogs SET checksum = ?, timestamp = ? WHERE id = ?";
IDataParameter sum = new SqliteParameter ("checksum", DbType.String);
+ IDataParameter timestamp = new SqliteParameter ("timestamp", DbType.Int64);
IDataParameter id = new SqliteParameter ("id", DbType.String);
command.Parameters.Add (sum);
+ command.Parameters.Add (timestamp);
command.Parameters.Add (id);
command.Prepare ();
sum.Value = Database.SqlString (checksum);
+ timestamp.Value = NativeConvert.FromDateTime (DateTime.Now);
id.Value = Database.SqlString (catalog.Id);
GetLock (false);
@@ -404,9 +407,19 @@
" DELETE FROM script_details WHERE resolvable_id = old.id;" +
" DELETE FROM dependencies WHERE resolvable_id = old.id;" +
" DELETE FROM files WHERE resolvable_id = old.id;" +
+ " DELETE FROM delta_packages WHERE package_id = old.id;" +
+ " DELETE FROM patch_packages WHERE package_id = old.id;" +
" END;";
ExecNonQuery (sql);
+ sql =
+ "CREATE TRIGGER remove_patch_packages_baseversions AFTER DELETE ON patch_packages" +
+ " BEGIN" +
+ " DELETE FROM patch_packages_baseversions WHERE patch_package_id = old.id;" +
+ " END;";
+ ExecNonQuery (sql);
+
+
sql = "CREATE TABLE db_info (version INTEGER)";
ExecNonQuery (sql);
sql = String.Format ("INSERT INTO db_info (version) VALUES ({0})", DBVERSION);
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/zmd-7.1.100.0/modules/linux/SqliteBackend.cs new/zmd-7.1.100.0/modules/linux/SqliteBackend.cs
--- old/zmd-7.1.100.0/modules/linux/SqliteBackend.cs 2006-09-08 18:40:50.000000000 +0200
+++ new/zmd-7.1.100.0/modules/linux/SqliteBackend.cs 2006-10-09 19:02:59.000000000 +0200
@@ -73,6 +73,10 @@
public override void ParseMetadata (string type, Type resolvableType, string uri,
string path, ResolvableCatalog catalog, string checksum) {
+ // For broken services (eg zypp), we have zero information about checksums. These services
+ // send checksum == null in here and we always call parse-metadata on them. It's up to parse-metadata
+ // to do whatever it thinks is the right thing to do.
+
string currentChecksum = Database.GetCatalogChecksum (catalog);
if (currentChecksum != checksum) {
@@ -105,7 +109,8 @@
Database.ReleaseLock (false);
}
- Database.UpdateCatalogChecksum (catalog, checksum);
+ if (checksum != null)
+ Database.UpdateCatalogChecksum (catalog, checksum);
}
catalog.Sync (new SqlitePackageProvider (catalog, resolvableType));
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/zmd-7.1.100.0/modules/linux/ZyppService.cs new/zmd-7.1.100.0/modules/linux/ZyppService.cs
--- old/zmd-7.1.100.0/modules/linux/ZyppService.cs 2006-09-08 18:40:49.000000000 +0200
+++ new/zmd-7.1.100.0/modules/linux/ZyppService.cs 2006-10-09 19:02:59.000000000 +0200
@@ -128,7 +128,7 @@
private void DoRefresh () {
try {
- Backend.Current.ParseMetadata ("zypp", typeof (ZyppPackage), uri, uri, catalog, String.Empty);
+ Backend.Current.ParseMetadata ("zypp", typeof (ZyppPackage), uri, uri, catalog, null);
Backend.Current.UpdateResolvablesStatus ();
lock (this) {
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/zmd-7.1.100.0/po/zmd.pot new/zmd-7.1.100.0/po/zmd.pot
--- old/zmd-7.1.100.0/po/zmd.pot 2006-09-26 18:50:35.000000000 +0200
+++ new/zmd-7.1.100.0/po/zmd.pot 2006-10-09 21:05:04.000000000 +0200
@@ -9,7 +9,7 @@
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2006-09-26 11:50-0500\n"
+"POT-Creation-Date: 2006-10-09 14:05-0500\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME \n"
"Language-Team: LANGUAGE \n"
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/zmd-7.1.100.0/src/ChangeLog new/zmd-7.1.100.0/src/ChangeLog
--- old/zmd-7.1.100.0/src/ChangeLog 2006-09-08 18:40:44.000000000 +0200
+++ new/zmd-7.1.100.0/src/ChangeLog 2006-10-09 19:02:58.000000000 +0200
@@ -1,3 +1,8 @@
+2006-09-28 James Willcox
+
+ * CrippledHttpHandler.cs: don't spin forever if the client returns
+ no data. Fixes the infamous 99% cpu bug.
+
2006-08-22 Chris Rivera
* BundleCapability.cs: Fix an NPE with the effectiveBundle hash.
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/zmd-7.1.100.0/src/CrippledHttpHandler.cs new/zmd-7.1.100.0/src/CrippledHttpHandler.cs
--- old/zmd-7.1.100.0/src/CrippledHttpHandler.cs 2006-09-08 18:40:44.000000000 +0200
+++ new/zmd-7.1.100.0/src/CrippledHttpHandler.cs 2006-10-09 19:02:58.000000000 +0200
@@ -73,6 +73,9 @@
int total_bytes_read = 0;
while (true) {
int bytes_read = stream.Read (body, 0, 4096);
+ if (bytes_read == 0)
+ break;
+
this.request_body.Write (body, 0, bytes_read);
total_bytes_read += bytes_read;
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
---------------------------------------------------------------------
To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org
For additional commands, e-mail: opensuse-commit+help@opensuse.org