skyscreamer / nevado

A JMS driver for Amazon SQS.

Home Page:http://nevado.skyscreamer.org/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Unable to connect to queue with custom Visibility Timeout

kijasek opened this issue · comments

Hi,

I am facing the following problem using nevado. I know aws properties of some SQS environment and queue name to which I would like to connect. However that queue has default Visibility Timeout set to 2 hours. When trying to connect I have QueueNameExists Exception with message that VisibilityTimeout property does not match.

Is it possible to connect to such queue with nevado?

Best regards,
Tomasz Kijas

Well, Nevado is a whole JMS framework, it's not a simple SQS connector. If
we resolve this issue, your next problem is going to be that Nevado expects
the messages to be serialized in with its own format.

Assuming that's the case, I think you'd have better luck with using direct
SQS access from the Amazon AWS SDK.

On Sun, May 26, 2013 at 11:47 PM, kijasek notifications@github.com wrote:

Hi,

I am facing the following problem using nevado. I know aws properties of
some SQS environment and queue name to which I would like to connect.
However that queue has default Visibility Timeout set to 2 hours. When
trying to connect I have QueueNameExists Exception with message that
VisibilityTimeout property does not match.

Is it possible to connect to such queue with nevado?

Best regards,
Tomasz Kijas


Reply to this email directly or view it on GitHubhttps://github.com//issues/48
.

Thanks to Nevado we have managed to switch from ActiveMQ to SQS smoothly. The only problem we had was with transactions and default visibilityTimeout (30 seconds). Our JMS consumer needs more time than 30 seconds to process message and commit transaction. That collides with SQS trying to redeliver message after visibilityTimeout has passed. So we had changed the default visibilityTimeout in SQS console, but then we couldn't connect to the queue.

I have briefly scanned Nevado source code and thought about adding some optional attributes to NevadoQueue class. And then in getSQSQueueImpl method in AmazonAwsSQSConnector class just use these properties when calling createQueue method from Amazon's SDK?

Anyway. We already have some workaround in our project and I understand your point of changing just one SQS specific option. So I am closing this issue :)

Best regards.

Ah now I understand what you are saying. If you would like to submit a
pull request for the changes you suggest, it sounds like it would be a
benefit to the project. Sorry for making quick assumptions based on past
issues.

On Tue, May 28, 2013 at 9:31 PM, kijasek notifications@github.com wrote:

Thanks to Nevado we have managed to switch from ActiveMQ to SQS smoothly.
The only problem we had was with transactions and default visibilityTimeout
(30 seconds). Our JMS consumer needs more time than 30 seconds to process
message and commit transaction. That collides with SQS trying to redeliver
message after visibilityTimeout has passed. So we had changed the default
visibilityTimeout in SQS console, but then we couldn't connect to the queue.

I have briefly scanned Nevado source code and thought about adding some
optional attributes to NevadoQueue class. And then in getSQSQueueImpl
method in AmazonAwsSQSConnector class just use these properties when
calling createQueue method from Amazon's SDK?

Anyway. We already have some workaround in our project and I understand
your point of changing just one SQS specific option. So feel free to close
this issue :)

Best regards.


Reply to this email directly or view it on GitHubhttps://github.com//issues/48#issuecomment-18595596
.