From 8b23dcaef922a9c343bfdb7595d618da4efc9a2d Mon Sep 17 00:00:00 2001 From: Jonathan Ellis Date: Mon, 26 Mar 2012 09:41:26 -0500 Subject: [PATCH] update AbstractSerializationsTester to generate 1.0 messages, which omit wasted space after the message body. CUR_VER is left at 0.7 to ensure compatibility. --- .../1.0/db.RangeSliceCommand.bin | Bin 0 -> 777 bytes test/data/serialization/1.0/db.Row.bin | Bin 0 -> 495 bytes .../data/serialization/1.0/db.RowMutation.bin | Bin 0 -> 3266 bytes .../1.0/db.SliceByNamesReadCommand.bin | Bin 0 -> 367 bytes .../1.0/db.SliceFromReadCommand.bin | Bin 0 -> 361 bytes test/data/serialization/1.0/db.Truncation.bin | Bin 0 -> 257 bytes .../serialization/1.0/db.WriteResponse.bin | Bin 0 -> 38 bytes .../1.0/db.migration.Keyspace1.bin | 1 + .../1.0/db.migration.Keyspace2.bin | 1 + .../1.0/db.migration.Keyspace3.bin | 1 + .../1.0/db.migration.Keyspace4.bin | 1 + .../1.0/db.migration.Keyspace5.bin | 1 + .../serialization/1.0/gms.EndpointState.bin | Bin 0 -> 73 bytes test/data/serialization/1.0/gms.Gossip.bin | Bin 0 -> 110 bytes .../serialization/1.0/service.TreeRequest.bin | Bin 0 -> 121 bytes .../1.0/service.TreeResponse.bin | Bin 0 -> 930 bytes .../1.0/streaming.PendingFile.bin | Bin 0 -> 3436 bytes .../1.0/streaming.StreamHeader.bin | Bin 0 -> 174421 bytes .../1.0/streaming.StreamReply.bin | Bin 0 -> 73 bytes .../1.0/streaming.StreamRequestMessage.bin | Bin 0 -> 7087 bytes .../serialization/1.0/utils.BloomFilter.bin | Bin 0 -> 2500016 bytes .../1.0/utils.EstimatedHistogram.bin | Bin 0 -> 97500 bytes .../1.0/utils.LegacyBloomFilter.bin | Bin 0 -> 5000170 bytes .../AbstractSerializationsTester.java | 12 +++++++----- .../cassandra/net/MessageSerializer.java | 1 - 25 files changed, 12 insertions(+), 6 deletions(-) create mode 100644 test/data/serialization/1.0/db.RangeSliceCommand.bin create mode 100644 test/data/serialization/1.0/db.Row.bin create mode 100644 test/data/serialization/1.0/db.RowMutation.bin create mode 100644 test/data/serialization/1.0/db.SliceByNamesReadCommand.bin create mode 100644 test/data/serialization/1.0/db.SliceFromReadCommand.bin create mode 100644 test/data/serialization/1.0/db.Truncation.bin create mode 100644 test/data/serialization/1.0/db.WriteResponse.bin create mode 100644 test/data/serialization/1.0/db.migration.Keyspace1.bin create mode 100644 test/data/serialization/1.0/db.migration.Keyspace2.bin create mode 100644 test/data/serialization/1.0/db.migration.Keyspace3.bin create mode 100644 test/data/serialization/1.0/db.migration.Keyspace4.bin create mode 100644 test/data/serialization/1.0/db.migration.Keyspace5.bin create mode 100644 test/data/serialization/1.0/gms.EndpointState.bin create mode 100644 test/data/serialization/1.0/gms.Gossip.bin create mode 100644 test/data/serialization/1.0/service.TreeRequest.bin create mode 100644 test/data/serialization/1.0/service.TreeResponse.bin create mode 100644 test/data/serialization/1.0/streaming.PendingFile.bin create mode 100644 test/data/serialization/1.0/streaming.StreamHeader.bin create mode 100644 test/data/serialization/1.0/streaming.StreamReply.bin create mode 100644 test/data/serialization/1.0/streaming.StreamRequestMessage.bin create mode 100644 test/data/serialization/1.0/utils.BloomFilter.bin create mode 100644 test/data/serialization/1.0/utils.EstimatedHistogram.bin create mode 100644 test/data/serialization/1.0/utils.LegacyBloomFilter.bin diff --git a/test/data/serialization/1.0/db.RangeSliceCommand.bin b/test/data/serialization/1.0/db.RangeSliceCommand.bin new file mode 100644 index 0000000000000000000000000000000000000000..ae2491563e6c9c3fa399213c348a19051b993a30 GIT binary patch literal 777 zcmZRnXJBAtU|`?`Vi3q-;Pg(dEG|e)PBmoU3@%B`OGzwBF@#7m$ni5Uas%1SAnfSq z2%?;voIsSbvonwa1A&VhvQOQg{&jvy;fGlYD~g^0MFsq3t$Ofa^YMF|$_tNX&*Ccu zilwlSW;qW76F1ng4BQM%Ae)$g4&h*60T~72f&tlbvg1A->8P(jH5w2BA-N3FZ^ literal 0 HcmV?d00001 diff --git a/test/data/serialization/1.0/db.Row.bin b/test/data/serialization/1.0/db.Row.bin new file mode 100644 index 0000000000000000000000000000000000000000..1850f415cbe79be40f4f5390d7d8e62c29f441d3 GIT binary patch literal 495 zcmdsyF$w}P6htR(FyNj=P)l2TEj&SXjTS1{C~TK2cr*1BYh~jBoQVl|1|JMbX66$< z>^^i815|wkAY~k^C*}D)Z9{&oT1GRz_`^BCwj`%j&r2<%E$N2vCy`PMm^W-7#eOmy z$tW{hGEjeYy3W%m+)X6~rL-fd1h_{o-BnUhO5Ag*JztTDlrb2t7fXK(k%pA{!~JLY E0E81=egFUf literal 0 HcmV?d00001 diff --git a/test/data/serialization/1.0/db.RowMutation.bin b/test/data/serialization/1.0/db.RowMutation.bin new file mode 100644 index 0000000000000000000000000000000000000000..0992cb543d6ee943aaa7df6c35903566ac34f961 GIT binary patch literal 3266 zcmeHJF>b;z6#Xft5io*!3#78LG9uBTCkVkXKqVvu5)-)sH*0$em{>Zs47_LT$XN6O zI8Sn7zyB=DFW>%=#!zop%PiMDsiXVa6T)NF94x3rq;@cm0wXqyR8$7I;q|S?fKRnZ zjJum`vDTt;z(#8abXp{G7o7lDi7-)x)qg~3z|lv> z0Y)T}ep}HOMGRO`uyy*uU7yUOz=+Kvk>~fpDErU_2sVqywWQ1u+7Veg-0Z!|hub^D z94nI)1r7n5#e0!DEsqek=2vHi=-WTQ56^+cqC`vqcW`` asW^cdN#|cPA}&FpNxyeZs%laMf2S88LSt3{ literal 0 HcmV?d00001 diff --git a/test/data/serialization/1.0/db.SliceByNamesReadCommand.bin b/test/data/serialization/1.0/db.SliceByNamesReadCommand.bin new file mode 100644 index 0000000000000000000000000000000000000000..aa892d5af21a80c795a94380ddd2a0940cab3122 GIT binary patch literal 367 zcmZQ%VBqvltt>7`OindqUi3sOA_-^5{ps{86bd}f!Wc~k%8IC$%%p4+1Z&9 zn=ZEC(t^|?Lk6~BXTQYURIpB>G}6vGmU;#Tpj#Q3q5d$#>TrVgqZ?z1)fi&@4*(Ya BMHT=6 literal 0 HcmV?d00001 diff --git a/test/data/serialization/1.0/db.SliceFromReadCommand.bin b/test/data/serialization/1.0/db.SliceFromReadCommand.bin new file mode 100644 index 0000000000000000000000000000000000000000..7160d246957aad9aa68ba442386f5d416a3d7b20 GIT binary patch literal 361 zcmZQ#VBqvltt>7`OindqUi3sOA_-^5{ps{89;y)$So>iUYY?^GIW@=<+nr2~S SY@U*0Vq%eGYG?se$^-zNS`5Dc literal 0 HcmV?d00001 diff --git a/test/data/serialization/1.0/gms.Gossip.bin b/test/data/serialization/1.0/gms.Gossip.bin new file mode 100644 index 0000000000000000000000000000000000000000..20b27a8a2a619fb75106058303a353970a0882a3 GIT binary patch literal 110 zcmZQzU|?VbVkVY)2qP89ISIrJAOR*I4Hp2iiBTo)mtUfgs8E!en4^%KQ(9b-TBMMd Jmq%i8KZV9;h-evZH~4p#f$UBtp@QW-KGy=+PJk Jrf70w7ywcg_Tm5l literal 0 HcmV?d00001 diff --git a/test/data/serialization/1.0/streaming.PendingFile.bin b/test/data/serialization/1.0/streaming.PendingFile.bin new file mode 100644 index 0000000000000000000000000000000000000000..ada0844ddd7328dfe3999c98648be3ca81a2f330 GIT binary patch literal 3436 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 K3JAAK^x;3S1i`xi literal 0 HcmV?d00001 diff --git a/test/data/serialization/1.0/streaming.StreamReply.bin b/test/data/serialization/1.0/streaming.StreamReply.bin new file mode 100644 index 0000000000000000000000000000000000000000..4b740581f78d9ca19b2e9d96758f8ea4ff2cad8c GIT binary patch literal 73 scmZQz0E21dR7lIrNd<|r)H5(J0%>-z5(WktD2-Jy0Gt2|qyPW_ literal 0 HcmV?d00001 diff --git a/test/data/serialization/1.0/streaming.StreamRequestMessage.bin b/test/data/serialization/1.0/streaming.StreamRequestMessage.bin new file mode 100644 index 0000000000000000000000000000000000000000..7d19ad996d4d153a4a33314c9eaab906d2a82dd6 GIT binary patch literal 7087 zcmeI0J5Uo*6ozj?AcXh({U(5-AmO3nGeA%yNFWI+isHgDqlJi&26e`9h6XDswPS|H z($bO{8cIt_XDFnkw3FQPT?%>~i@VL2@1E@4yZ>f$W>+b_z4g6U%A-_ZY;kRM*;!Z& z9S>(pO?i5bKX?W(Zz!$a(24hI?>+H8?R_WSuf2ajmB&XD$yj`JEtjpIY;&CrYcUe!^EaRSL>LqvtFU4QrWw<$hIsTn`1%7~63cVahRpDXki z*HGWaYw>-&PMBfxug9a*8}N0!5#Pa^gg#Vp-o7CQTBw`-Tk$>WL1Csjej7eRy&d1i zJMbg?j4&&VpT#%vPW%8rC-e{E=W&yN7k)^+TbLceFW_5vk1&9$5biM0i|^un!W`DA z`f+o7?&h4|eE*^_*Tpa4Kk&=KyfDsr<$c4i2=jyZRs1u4O;}*^zm9KEzacF2;WzOQ zcvxt5S6ufZQy-RkvDtqFH}gltOUwkLxLMyV@lvz?+qgNuJK|+wp^D-rpS$AaF7+|o zt2w|u7d41@ZQ%3Jk|$$wV?fM1*DrWjm9O!geMdgY8V*7`8L%APP3f!*(VeMCC4d z*v_Pb_$!@>r?!))jgMshA3V;TT3Xf@mS(%C4#IX(9fR$n+!nTr>L6?v<@aEp?{pCV uot03E|bRM=K4t!Sk0s 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%0DP+UYy5ypEmB^eVdT1PBlyK!5-N0t8kF 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 VX^b*dL4W`O0t9*%un^SS{{zCXdDQ>_ literal 0 HcmV?d00001 diff --git a/test/data/serialization/1.0/utils.EstimatedHistogram.bin b/test/data/serialization/1.0/utils.EstimatedHistogram.bin new file mode 100644 index 0000000000000000000000000000000000000000..bedd39bce681c7fb9e617c5b015ab92f38c418bc GIT binary patch literal 97500 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 D0TN~m literal 0 HcmV?d00001 diff --git a/test/unit/org/apache/cassandra/AbstractSerializationsTester.java b/test/unit/org/apache/cassandra/AbstractSerializationsTester.java index dbc14507b7..4ff063a331 100644 --- a/test/unit/org/apache/cassandra/AbstractSerializationsTester.java +++ b/test/unit/org/apache/cassandra/AbstractSerializationsTester.java @@ -33,13 +33,15 @@ import java.util.Map; public class AbstractSerializationsTester extends CleanupHelper { protected static final String CUR_VER = System.getProperty("cassandra.version", "0.7"); - protected static final Map VERSION_MAP = new HashMap () + protected static final Map VERSION_MAP = new HashMap () {{ - put("0.7", 1); + put("0.7", 1); + put("1.0", 3); }}; - - protected static final boolean EXECUTE_WRITES = new Boolean(System.getProperty("cassandra.test-serialization-writes", "False")).booleanValue(); - + + // TODO ant doesn't pass this -D up to the test, so it's kind of useless + protected static final boolean EXECUTE_WRITES = Boolean.getBoolean("cassandra.test-serialization-writes"); + protected final int getVersion() { return VERSION_MAP.get(CUR_VER); diff --git a/test/unit/org/apache/cassandra/net/MessageSerializer.java b/test/unit/org/apache/cassandra/net/MessageSerializer.java index f14200ae9e..9cc4387306 100644 --- a/test/unit/org/apache/cassandra/net/MessageSerializer.java +++ b/test/unit/org/apache/cassandra/net/MessageSerializer.java @@ -29,7 +29,6 @@ public class MessageSerializer implements IVersionedSerializer { public void serialize(Message t, DataOutput dos, int version) throws IOException { - assert t.getVersion() == version : "internode protocol version mismatch"; // indicates programmer error. Header.serializer().serialize( t.header_, dos, version); byte[] bytes = t.getMessageBody(); dos.writeInt(bytes.length);