Subversion Repositories DevTools

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
2180 asteen 1
<?xml version="1.0" encoding="UTF-8"?>
2
 
3
<!-- $Id: hsqldb-jdbc2-service.xml,v 1.1.2.2 2003/09/03 00:12:29 ejort Exp $ -->
4
 
5
<server>
6
 
7
  <!-- ==================================================================== -->
8
  <!-- Persistence and caching using HSQLDB                                 -->
9
  <!-- See docs/examples/jms for other configurations                       -->
10
  <!-- ==================================================================== -->
11
 
12
  <!--
13
     | The destination manager is the core service within JBossMQ
14
  -->
15
  <mbean code="org.jboss.mq.server.jmx.DestinationManager" name="jboss.mq:service=DestinationManager">
16
    <depends optional-attribute-name="MessageCache">jboss.mq:service=MessageCache</depends>
17
    <depends optional-attribute-name="PersistenceManager">jboss.mq:service=PersistenceManager</depends>
18
    <depends optional-attribute-name="StateManager">jboss.mq:service=StateManager</depends>
19
  </mbean>
20
 
21
  <!--
22
     | The MessageCache decides where to put JBossMQ message that
23
     | are sitting around waiting to be consumed by a client.
24
     |
25
     | The memory marks are in Megabytes.  Once the JVM memory usage hits
26
     | the high memory mark, the old messages in the cache will start getting
27
     | stored in the DataDirectory.  As memory usage gets closer to the
28
     | Max memory mark, the amount of message kept in the memory cache aproaches 0.
29
   -->
30
  <mbean code="org.jboss.mq.server.MessageCache"
31
	 name="jboss.mq:service=MessageCache">
32
    <attribute name="HighMemoryMark">50</attribute>
33
    <attribute name="MaxMemoryMark">60</attribute>
34
    <attribute name="CacheStore">jboss.mq:service=PersistenceManager</attribute>
35
  </mbean>
36
 
37
  <!-- 
38
     | The jdbc2 PersistenceManager is the new improved JDBC implementation.
39
     | This implementation allows you to control how messages are stored in 
40
     | the database.
41
     |
42
     | Use this PM if you want the reliablity a relational database can offer
43
     | you.  The default configuration is known to work with hsqldb, other
44
     | databases will requrie teaking of the SqlProperties e.g. changing table
45
     | colum definitions to database supported types.
46
     |
47
     | Take care that the selected blob column type in jms_messages can store
48
     | all message data. Some databases (e.g. mySQL) offer blob types with
49
     | different maximum capacity (e.g. mySQL-type BLOB=64K, LONGBLOB=2G).
50
     |
51
     | If you encouter problems with the configured BLOB_TYPE try a different
52
     | setting. Valid settings are OBJECT_BLOB, BINARYSTREAM_BLOB and BYTES_BLOB.
53
   -->
54
  <mbean code="org.jboss.mq.pm.jdbc2.PersistenceManager"
55
	 name="jboss.mq:service=PersistenceManager">
56
    <depends optional-attribute-name="ConnectionManager">jboss.jca:service=LocalTxCM,name=DefaultDS</depends>
57
    <attribute name="SqlProperties">
58
      BLOB_TYPE=OBJECT_BLOB
59
      INSERT_TX = INSERT INTO JMS_TRANSACTIONS (TXID) values(?)
60
      INSERT_MESSAGE = INSERT INTO JMS_MESSAGES (MESSAGEID, DESTINATION, MESSAGEBLOB, TXID, TXOP) VALUES(?,?,?,?,?)
61
      SELECT_ALL_UNCOMMITED_TXS = SELECT TXID FROM JMS_TRANSACTIONS
62
      SELECT_MAX_TX = SELECT MAX(TXID) FROM JMS_MESSAGES
63
      SELECT_MESSAGES_IN_DEST = SELECT MESSAGEID, MESSAGEBLOB FROM JMS_MESSAGES WHERE DESTINATION=?
64
      SELECT_MESSAGE = SELECT MESSAGEID, MESSAGEBLOB FROM JMS_MESSAGES WHERE MESSAGEID=? AND DESTINATION=?
65
      MARK_MESSAGE = UPDATE JMS_MESSAGES SET TXID=?, TXOP=? WHERE MESSAGEID=? AND DESTINATION=?
66
      UPDATE_MESSAGE = UPDATE JMS_MESSAGES SET MESSAGEBLOB=? WHERE MESSAGEID=? AND DESTINATION=?
67
      UPDATE_MARKED_MESSAGES = UPDATE JMS_MESSAGES SET TXID=?, TXOP=? WHERE TXOP=?
68
      UPDATE_MARKED_MESSAGES_WITH_TX = UPDATE JMS_MESSAGES SET TXID=?, TXOP=? WHERE TXOP=? AND TXID=?
69
      DELETE_MARKED_MESSAGES_WITH_TX = DELETE FROM JMS_MESSAGES WHERE TXID IN (SELECT TXID FROM JMS_TRANSACTIONS) AND TXOP=?
70
      DELETE_TX = DELETE FROM JMS_TRANSACTIONS WHERE TXID = ?
71
      DELETE_MARKED_MESSAGES = DELETE FROM JMS_MESSAGES WHERE TXID=? AND TXOP=?
72
      DELETE_MESSAGE = DELETE FROM JMS_MESSAGES WHERE MESSAGEID=? AND DESTINATION=?
73
      CREATE_MESSAGE_TABLE = CREATE CACHED TABLE JMS_MESSAGES ( MESSAGEID INTEGER NOT NULL, \
74
         DESTINATION VARCHAR(255) NOT NULL, TXID INTEGER, TXOP CHAR(1), \
75
         MESSAGEBLOB OBJECT, PRIMARY KEY (MESSAGEID, DESTINATION) )
76
      CREATE_TX_TABLE = CREATE CACHED TABLE JMS_TRANSACTIONS ( TXID INTEGER )
77
      CREATE_TABLES_ON_STARTUP = TRUE
78
    </attribute>
79
  </mbean>
80
 
81
</server>