diff --git a/src/knot/server/zones.c b/src/knot/server/zones.c
index f360896361ca25e3c90e2134013c4704c1d12530..4e2761e76a9d79aac91befff13505aef6c1fa031 100644
--- a/src/knot/server/zones.c
+++ b/src/knot/server/zones.c
@@ -1002,11 +1002,6 @@ static int zones_journal_apply(knot_zone_t *zone)
 				                 zd->conf->name,
 				                 knot_strerror(apply_ret));
 				ret = KNOT_ERROR;
-
-				// Cleanup old and new contents
-				xfrin_rollback_update(zone->contents,
-				                      &contents,
-				                      chsets->changes);
 			} else {
 				/* Switch zone immediately. */
 				log_server_info("Zone '%s' serial %u -> %u.\n",
diff --git a/src/knot/zone/zone-dump.c b/src/knot/zone/zone-dump.c
index edda4dfc326f9ede4fd9fd494f340025a13acbd9..aa630efef57da7bbd31b35bbcbddb74e3be19ca4 100644
--- a/src/knot/zone/zone-dump.c
+++ b/src/knot/zone/zone-dump.c
@@ -134,7 +134,7 @@ int zone_dump_text(knot_zone_contents_t *zone, FILE *file)
 	params.buflen = DUMP_BUF_LEN;
 	params.rr_count = 0;
 	params.origin = knot_node_owner(knot_zone_contents_apex(zone));
-	params.style = &KNOT_DUMP_STYLE_DNSSEC;
+	params.style = &KNOT_DUMP_STYLE_DEFAULT;
 
 	// Dump standard zone records.
 	knot_zone_contents_tree_apply_inorder(zone, node_dump_text, &params);
diff --git a/src/libknot/rrset-dump.c b/src/libknot/rrset-dump.c
index f7fac8ba45d2c67720327cfe4c8841478bbe74b1..d350683d34bb82dcb9296314601e5e12a051cdfe 100644
--- a/src/libknot/rrset-dump.c
+++ b/src/libknot/rrset-dump.c
@@ -62,17 +62,6 @@ const knot_dump_style_t KNOT_DUMP_STYLE_DEFAULT = {
 	.human_tmstamp = true
 };
 
-const knot_dump_style_t KNOT_DUMP_STYLE_DNSSEC = {
-	.wrap = true,
-	.show_class = true,
-	.show_ttl = true,
-	.verbose = true,
-	.reduce = true,
-	.human_ttl = false,
-	.human_tmstamp = false
-};
-
-
 static void dump_string(rrset_dump_params_t *p, const char *str)
 {
 	size_t in_len = strlen(str);
diff --git a/src/libknot/rrset.c b/src/libknot/rrset.c
index 65ec5e90812f322c70a65edac5216e5db2e0da6a..cc3f3981cc86bde066728ada82752f8a19c0f4cb 100644
--- a/src/libknot/rrset.c
+++ b/src/libknot/rrset.c
@@ -156,11 +156,19 @@ int rrset_rdata_compare_one(const knot_rrset_t *rrset1,
 	int cmp = 0;
 	size_t offset = 0;
 
+	// TODO: this can be much simpler: Get data for memcmp and sizes in ifs
+	// compare only once
 	for (int i = 0; desc->block_types[i] != KNOT_RDATA_WF_END; i++) {
 		if (descriptor_item_is_dname(desc->block_types[i])) {
 			const knot_dname_t *dname1 = r1 + offset;
+			int size1 = knot_dname_size(dname1);
 			const knot_dname_t *dname2 = r2 + offset;
-			cmp = knot_dname_cmp(dname1, dname2);
+			int size2 = knot_dname_size(dname2);
+			cmp = memcmp(dname1, dname2,
+			             size1 <= size2 ? size1 : size2);
+			if (cmp == 0 && size1 == size2) {
+				cmp = size1 < size2 ? -1 : 1;
+			}
 			offset += knot_dname_size(dname1);
 		} else if (descriptor_item_is_fixed(desc->block_types[i])) {
 			cmp = memcmp(r1 + offset, r2 + offset,