You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by "Christopher Cooper (JIRA)" <qp...@incubator.apache.org> on 2010/08/16 17:34:15 UTC

[jira] Created: (QPID-2804) qpid-config timeout creating large journal

qpid-config timeout creating large journal
------------------------------------------

                 Key: QPID-2804
                 URL: https://issues.apache.org/jira/browse/QPID-2804
             Project: Qpid
          Issue Type: Bug
          Components: python tools
    Affects Versions: 0.6
         Environment: C++ broker under Linux
            Reporter: Christopher Cooper


This was posted by Charles Woerner to the mailing list and I'm experiencing the same issue:


Subject: qpid-config timeout creating large journal - msg#00048
List: users-qpid.apache.org
Sign up for updates to this mailing list. email:
Date: Prev Next Index Thread: Prev Next Index
Hello,

I'm using qpid in a store and forward type topology, where the source brokers are co-located with a webserver and are pushing messages to a central broker. The queues are persistent and I'm trying to declare them with a geometry that will allow me to endure about 2 days of central broker downtime. So it would seem to me that the journal data files would need to be both large and many for the queue in question. The --file-count and --file-size arguments to qpid-config seem to work just fine, however the qpid-config tool (and the queue_declare() call in the underlying python library) seem to timeout back to the client if the time it takes to create the journal files exceeds 10 seconds.

Here's a test case:

]$ tail -f /var/log/qpid/*
]$ qpid-config add queue test8 --durable --file-count 1 --file-size 5120
2010-jan-10 22:55:24 trace RECV [127.0.0.1:58576]: Frame[BEbe; channel=1; {QueueDeclareBody: queue=test8; durable=1; arguments ={qpid.file_count:F8:int64(1),qpid.file_size:F8:int64(5120)}; }]
2010-jan-10 22:55:24 trace guest@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx: recv cmd 48: {QueueDeclareBody: queue=test8; durable=1; arguments={qpid.file_count:F8:int64(1),qpid.file_size:F8:int64(5120)}; }
2010-jan-10 22:55:24 notice Journal "test8": Created
2010-jan-10 22:55:24 debug Journal "test8": Journal directory = "/vol/ qpidd/rhm/jrnl/0008/test8/"; Base file name = "JournalData"
2010-jan-10 22:55:24 debug Journal "test8": Initialize; num_jfiles=1 jfsize_sblks=655360 wcache_pgsize_sblks=64 wcache_num_pages=32
Failed: Timeout -
]$ echo $?
1
2010-jan-10 22:55:43 debug Journal "test8": Initialization complete
2010-jan-10 22:55:43 debug Configured queue test8 with no-local=0
2010-jan-10 22:55:43 debug Configured queue test8 with qpid.trace.id='' and qpid.trace.exclude='' i.e. 0 elements
2010-jan-10 22:55:43 debug guest@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx: receiver marked completed: 48 incomplete: { } unknown-completed: { [0,48] }
2010-jan-10 22:55:43 debug DISCONNECTED [127.0.0.1:58576]
2010-jan-10 22:55:43 debug guest@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx: detached on broker.

There are no errors in the broker log and indeed the queue and journal get created, although it appears to be asynchronous with respect to the qpid-config queue_declare() call and doesn't complete until after qpid-config exits with return value 1.

My qpidd.conf file is more or less:

data-dir=/vol/qpidd
num-jfiles=20
jfile-size-pgs=5120
trace=yes

Is there some way to force qpid-config to wait as long as necessary for the requested work to complete before exiting? Or is there an alternate way to create the durable queue that sidesteps this issue altogether (it must be programmatic because this is part of a startup script).



-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


[jira] Commented: (QPID-2804) qpid-config timeout creating large journal

Posted by "Kim van der Riet (JIRA)" <qp...@incubator.apache.org>.
    [ https://issues.apache.org/jira/browse/QPID-2804?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12916445#action_12916445 ] 

Kim van der Riet commented on QPID-2804:
----------------------------------------

Use the --timeout option with a suitable value in seconds. The default is 10 seconds. All of the current qpid python tools are equipped with this option. Each tool will display all options if the --help option is used.

> qpid-config timeout creating large journal
> ------------------------------------------
>
>                 Key: QPID-2804
>                 URL: https://issues.apache.org/jira/browse/QPID-2804
>             Project: Qpid
>          Issue Type: Bug
>          Components: python tools
>    Affects Versions: 0.6
>         Environment: C++ broker under Linux
>            Reporter: Christopher Cooper
>
> This was posted by Charles Woerner to the mailing list and I'm experiencing the same issue:
> Subject: qpid-config timeout creating large journal - msg#00048
> List: users-qpid.apache.org
> Sign up for updates to this mailing list. email:
> Date: Prev Next Index Thread: Prev Next Index
> Hello,
> I'm using qpid in a store and forward type topology, where the source brokers are co-located with a webserver and are pushing messages to a central broker. The queues are persistent and I'm trying to declare them with a geometry that will allow me to endure about 2 days of central broker downtime. So it would seem to me that the journal data files would need to be both large and many for the queue in question. The --file-count and --file-size arguments to qpid-config seem to work just fine, however the qpid-config tool (and the queue_declare() call in the underlying python library) seem to timeout back to the client if the time it takes to create the journal files exceeds 10 seconds.
> Here's a test case:
> ]$ tail -f /var/log/qpid/*
> ]$ qpid-config add queue test8 --durable --file-count 1 --file-size 5120
> 2010-jan-10 22:55:24 trace RECV [127.0.0.1:58576]: Frame[BEbe; channel=1; {QueueDeclareBody: queue=test8; durable=1; arguments ={qpid.file_count:F8:int64(1),qpid.file_size:F8:int64(5120)}; }]
> 2010-jan-10 22:55:24 trace guest@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx: recv cmd 48: {QueueDeclareBody: queue=test8; durable=1; arguments={qpid.file_count:F8:int64(1),qpid.file_size:F8:int64(5120)}; }
> 2010-jan-10 22:55:24 notice Journal "test8": Created
> 2010-jan-10 22:55:24 debug Journal "test8": Journal directory = "/vol/ qpidd/rhm/jrnl/0008/test8/"; Base file name = "JournalData"
> 2010-jan-10 22:55:24 debug Journal "test8": Initialize; num_jfiles=1 jfsize_sblks=655360 wcache_pgsize_sblks=64 wcache_num_pages=32
> Failed: Timeout -
> ]$ echo $?
> 1
> 2010-jan-10 22:55:43 debug Journal "test8": Initialization complete
> 2010-jan-10 22:55:43 debug Configured queue test8 with no-local=0
> 2010-jan-10 22:55:43 debug Configured queue test8 with qpid.trace.id='' and qpid.trace.exclude='' i.e. 0 elements
> 2010-jan-10 22:55:43 debug guest@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx: receiver marked completed: 48 incomplete: { } unknown-completed: { [0,48] }
> 2010-jan-10 22:55:43 debug DISCONNECTED [127.0.0.1:58576]
> 2010-jan-10 22:55:43 debug guest@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx: detached on broker.
> There are no errors in the broker log and indeed the queue and journal get created, although it appears to be asynchronous with respect to the qpid-config queue_declare() call and doesn't complete until after qpid-config exits with return value 1.
> My qpidd.conf file is more or less:
> data-dir=/vol/qpidd
> num-jfiles=20
> jfile-size-pgs=5120
> trace=yes
> Is there some way to force qpid-config to wait as long as necessary for the requested work to complete before exiting? Or is there an alternate way to create the durable queue that sidesteps this issue altogether (it must be programmatic because this is part of a startup script).

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org