this.configTablesForGUID(pm);
pm.setSqlProperties(this.getConfigTablesForGUID());
   protected void doTransactionCommit(boolean xa, boolean idIsGuid, boolean storeXid) throws Exception   {      if (ServerManagement.isRemote()) return;            JDBCPersistenceManager pm = new JDBCPersistenceManager();      if (idIsGuid)      {         this.configTablesForGUID(pm);      }      pm.setTxIdGuid(idIsGuid);      pm.setStoringXid(storeXid);      MessageStore ms = new PersistentMessageStore("persistentMessageStore0", pm);      Channel channel = new SimpleChannel("channel0", ms);            TransactionRepository txRep = new TransactionRepository(pm);      pm.start();            Message[] messages = createMessages();                 Message m1 = messages[0];      Message m2 = messages[1];      Message m3 = messages[2];            Message m4 = messages[3];      Message m5 = messages[4];      Transaction tx = null;      if (xa)      {                  tx = txRep.createTransaction(new MockXid());      }      else      {         tx = txRep.createTransaction();      }            MessageReference ref1 = ms.reference(m1);      MessageReference ref2 = ms.reference(m2);        MessageReference ref3 = ms.reference(m3);             MessageReference ref4 = ms.reference(m4);      MessageReference ref5 = ms.reference(m5);        //Add first two refs non transactionally      pm.addReference(channel.getChannelID(), ref1, null);      pm.addReference(channel.getChannelID(), ref2, null);            //check they're there      List refs = pm.messageRefs(ms.getStoreID(), channel.getChannelID());      assertNotNull(refs);      assertEquals(2, refs.size());      assertTrue(refs.contains(ref1.getMessageID()));      assertTrue(refs.contains(ref2.getMessageID()));                  //Add the next 3 refs transactionally      pm.addReference(channel.getChannelID(), ref3, tx);      pm.addReference(channel.getChannelID(), ref4, tx);      pm.addReference(channel.getChannelID(), ref5, tx);            //Remove the other 2 transactionally      pm.removeReference(channel.getChannelID(), ref1, tx);      pm.removeReference(channel.getChannelID(), ref2, tx);            //Check the changes aren't visible      refs = pm.messageRefs(ms.getStoreID(), channel.getChannelID());      assertNotNull(refs);      assertEquals(2, refs.size());      assertTrue(refs.contains(ref1.getMessageID()));      assertTrue(refs.contains(ref2.getMessageID()));              //commit transaction      pm.commitTx(tx);            //check we can see only the last 3 refs      refs = pm.messageRefs(ms.getStoreID(), channel.getChannelID());      assertNotNull(refs);      assertEquals(3, refs.size());       assertTrue(refs.contains(ref3.getMessageID()));      assertTrue(refs.contains(ref4.getMessageID()));        assertTrue(refs.contains(ref5.getMessageID()));            pm.removeAllMessageData(channel.getChannelID());         }