diff options
| author | Robert Godfrey <rgodfrey@apache.org> | 2011-12-28 13:02:41 +0000 |
|---|---|---|
| committer | Robert Godfrey <rgodfrey@apache.org> | 2011-12-28 13:02:41 +0000 |
| commit | 55ccbf149980b06c7b7effa36871ffbdf50550fa (patch) | |
| tree | f5fc6181438968f82af0528c751af32ea8fef64e /qpid/java/common/src/test | |
| parent | f085f3b0ce89af428e75bf2ae3b8c65ecdd16ad6 (diff) | |
| download | qpid-python-55ccbf149980b06c7b7effa36871ffbdf50550fa.tar.gz | |
QPID-3714 : [Java] Performance Improvements
Persistence:
Store message in same transaction as enqueue if possible
Memory:
Remove unnecessary (un)boxing
Reduce unnecessary copying of message data
Cache short strings
Cache queues for a given routing key on an Exchange
(0-9) Use a fixed size buffer for preparing frames to write out
Other:
Reduce calls to System.currentTimeMillis
(0-10) Special case immutable RangeSets, in particular RangeSets of a single range/point
(0-10) Special case delivery properties and message properties in headers
(0-9) send commit-ok as soon as data committed to store
Cache publishing access control queries
(0-9) Optimised long and int typed values for FieldTables
(0-9) Retain FieldTable encoded form
(0-9) Cache queue and topic destinations
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1225178 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/java/common/src/test')
| -rw-r--r-- | qpid/java/common/src/test/java/org/apache/qpid/framing/PropertyFieldTableTest.java | 40 | ||||
| -rw-r--r-- | qpid/java/common/src/test/java/org/apache/qpid/transport/RangeSetTest.java | 40 |
2 files changed, 25 insertions, 55 deletions
diff --git a/qpid/java/common/src/test/java/org/apache/qpid/framing/PropertyFieldTableTest.java b/qpid/java/common/src/test/java/org/apache/qpid/framing/PropertyFieldTableTest.java index bd189feb1c..cb9a9468bb 100644 --- a/qpid/java/common/src/test/java/org/apache/qpid/framing/PropertyFieldTableTest.java +++ b/qpid/java/common/src/test/java/org/apache/qpid/framing/PropertyFieldTableTest.java @@ -581,10 +581,10 @@ public class PropertyFieldTableTest extends TestCase table.setBytes("bytes", bytes); table.setChar("char", 'c'); - table.setDouble("double", Double.MAX_VALUE); - table.setFloat("float", Float.MAX_VALUE); table.setInteger("int", Integer.MAX_VALUE); table.setLong("long", Long.MAX_VALUE); + table.setDouble("double", Double.MAX_VALUE); + table.setFloat("float", Float.MAX_VALUE); table.setShort("short", Short.MAX_VALUE); table.setString("string", "hello"); table.setString("null-string", null); @@ -823,9 +823,7 @@ public class PropertyFieldTableTest extends TestCase */ public void testCheckPropertyNamehasMaxLength() { - String oldVal = System.getProperty("STRICT_AMQP"); - System.setProperty("STRICT_AMQP", "true"); - FieldTable table = new FieldTable(); + FieldTable table = new FieldTable(true); StringBuffer longPropertyName = new StringBuffer(129); @@ -845,14 +843,6 @@ public class PropertyFieldTableTest extends TestCase } // so length should be zero Assert.assertEquals(0, table.getEncodedSize()); - if (oldVal != null) - { - System.setProperty("STRICT_AMQP", oldVal); - } - else - { - System.clearProperty("STRICT_AMQP"); - } } /** @@ -860,9 +850,7 @@ public class PropertyFieldTableTest extends TestCase */ public void testCheckPropertyNameStartCharacterIsLetter() { - String oldVal = System.getProperty("STRICT_AMQP"); - System.setProperty("STRICT_AMQP", "true"); - FieldTable table = new FieldTable(); + FieldTable table = new FieldTable(true); // Try a name that starts with a number try @@ -876,14 +864,6 @@ public class PropertyFieldTableTest extends TestCase } // so length should be zero Assert.assertEquals(0, table.getEncodedSize()); - if (oldVal != null) - { - System.setProperty("STRICT_AMQP", oldVal); - } - else - { - System.clearProperty("STRICT_AMQP"); - } } /** @@ -891,9 +871,7 @@ public class PropertyFieldTableTest extends TestCase */ public void testCheckPropertyNameStartCharacterIsHashorDollar() { - String oldVal = System.getProperty("STRICT_AMQP"); - System.setProperty("STRICT_AMQP", "true"); - FieldTable table = new FieldTable(); + FieldTable table = new FieldTable(true); // Try a name that starts with a number try @@ -906,14 +884,6 @@ public class PropertyFieldTableTest extends TestCase fail("property name are allowed to start with # and $s"); } - if (oldVal != null) - { - System.setProperty("STRICT_AMQP", oldVal); - } - else - { - System.clearProperty("STRICT_AMQP"); - } } /** diff --git a/qpid/java/common/src/test/java/org/apache/qpid/transport/RangeSetTest.java b/qpid/java/common/src/test/java/org/apache/qpid/transport/RangeSetTest.java index ad45d00e46..889250e004 100644 --- a/qpid/java/common/src/test/java/org/apache/qpid/transport/RangeSetTest.java +++ b/qpid/java/common/src/test/java/org/apache/qpid/transport/RangeSetTest.java @@ -60,7 +60,7 @@ public class RangeSetTest extends TestCase public void test1() { - RangeSet ranges = new RangeSet(); + RangeSet ranges = RangeSetFactory.createRangeSet(); ranges.add(5, 10); check(ranges); ranges.add(15, 20); @@ -77,7 +77,7 @@ public class RangeSetTest extends TestCase public void test2() { - RangeSet rs = new RangeSet(); + RangeSet rs = RangeSetFactory.createRangeSet(); check(rs); rs.add(1); @@ -128,7 +128,7 @@ public class RangeSetTest extends TestCase public void testAddSelf() { - RangeSet a = new RangeSet(); + RangeSet a = RangeSetFactory.createRangeSet(); a.add(0, 8); check(a); a.add(0, 8); @@ -141,8 +141,8 @@ public class RangeSetTest extends TestCase public void testIntersect1() { - Range a = new Range(0, 10); - Range b = new Range(9, 20); + Range a = Range.newInstance(0, 10); + Range b = Range.newInstance(9, 20); Range i1 = a.intersect(b); Range i2 = b.intersect(a); assertEquals(i1.getUpper(), 10); @@ -153,16 +153,16 @@ public class RangeSetTest extends TestCase public void testIntersect2() { - Range a = new Range(0, 10); - Range b = new Range(11, 20); + Range a = Range.newInstance(0, 10); + Range b = Range.newInstance(11, 20); assertNull(a.intersect(b)); assertNull(b.intersect(a)); } public void testIntersect3() { - Range a = new Range(0, 10); - Range b = new Range(3, 5); + Range a = Range.newInstance(0, 10); + Range b = Range.newInstance(3, 5); Range i1 = a.intersect(b); Range i2 = b.intersect(a); assertEquals(i1.getUpper(), 5); @@ -173,14 +173,14 @@ public class RangeSetTest extends TestCase public void testSubtract1() { - Range a = new Range(0, 10); + Range a = Range.newInstance(0, 10); assertTrue(a.subtract(a).isEmpty()); } public void testSubtract2() { - Range a = new Range(0, 10); - Range b = new Range(20, 30); + Range a = Range.newInstance(0, 10); + Range b = Range.newInstance(20, 30); List<Range> ranges = a.subtract(b); assertEquals(ranges.size(), 1); Range d = ranges.get(0); @@ -190,8 +190,8 @@ public class RangeSetTest extends TestCase public void testSubtract3() { - Range a = new Range(20, 30); - Range b = new Range(0, 10); + Range a = Range.newInstance(20, 30); + Range b = Range.newInstance(0, 10); List<Range> ranges = a.subtract(b); assertEquals(ranges.size(), 1); Range d = ranges.get(0); @@ -201,8 +201,8 @@ public class RangeSetTest extends TestCase public void testSubtract4() { - Range a = new Range(0, 10); - Range b = new Range(3, 5); + Range a = Range.newInstance(0, 10); + Range b = Range.newInstance(3, 5); List<Range> ranges = a.subtract(b); assertEquals(ranges.size(), 2); Range low = ranges.get(0); @@ -215,8 +215,8 @@ public class RangeSetTest extends TestCase public void testSubtract5() { - Range a = new Range(0, 10); - Range b = new Range(3, 20); + Range a = Range.newInstance(0, 10); + Range b = Range.newInstance(3, 20); List<Range> ranges = a.subtract(b); assertEquals(ranges.size(), 1); Range d = ranges.get(0); @@ -226,8 +226,8 @@ public class RangeSetTest extends TestCase public void testSubtract6() { - Range a = new Range(0, 10); - Range b = new Range(-10, 5); + Range a = Range.newInstance(0, 10); + Range b = Range.newInstance(-10, 5); List<Range> ranges = a.subtract(b); assertEquals(ranges.size(), 1); Range d = ranges.get(0); |
