Comments (4)
The -5000
is even explained in the respective RabbitMQ docs: https://www.rabbitmq.com/blog/2015/04/16/scheduling-messages-with-rabbitmq#checking-if-a-message-was-delayed.
They also mention that this property is an integer
.
Plus it is not clear how that can be a short
: #2602.
We probably can go ahead and try to resolve any Number
impl over there into an expected long.
What RabbitMQ broker version do you use?
from spring-amqp.
I understand the where -5000 is from on the queue, but it looks like when client retrieves it, it provides back a positive number, I am not sure how the spec says about this behavior.
When I trace into ContentHeaderPropertyReader#readTable, the input stream's buffer has following values:
[0, 60, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, -96, -64, 10, 116, 101, 120, 116, 47, 112, 108, 97, 105, 110, 0, 0, 0, 11, 7, 120, 45, 100, 101, 108, 97, 121, 115, 19, -120, 36, 48, 56, 54, 54, 53, 102, 52, 55, 45, 100, 100, 99, 48, 45, 52, 55, 101, 56, 45, 57, 54, 98, 56, 45, 56, 51, 56, 51, 53, 51, 100, 100, 57, 54, 49, 98, 0, 0, 0, 0, 102, 4, 104, -29]
If I print it out, I get 13, -78 after x-delay, which is 0x1388, and translate into 5000 . I am not sure why in this case in specs, but it seems like it.
`
0x0
< 0x3c
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0xf
0xa0
0xc0
0xa
t 0x74
e 0x65
x 0x78
t 0x74
/ 0x2f
p 0x70
l 0x6c
a 0x61
i 0x69
n 0x6e
0x0
0x0
0x0
� 0xb
0x7
x 0x78
- 0x2d
d 0x64
e 0x65
l 0x6c
a 0x61
y 0x79
s 0x73
0x13
0x88
$ 0x24
d 0x64
7 0x37
0 0x30
d 0x64
2 0x32
b 0x62
6 0x36
e 0x65 - 0x2d
9 0x39
9 0x39
8 0x38
9 0x39 - 0x2d
4 0x34
a 0x61
9 0x39
9 0x39 - 0x2d
8 0x38
9 0x39
f 0x66
3 0x33 - 0x2d
c 0x63
e 0x65
4 0x34
6 0x36
c 0x63
d 0x64
c 0x63
3 0x33
a 0x61
9 0x39
3 0x33
b 0x62
0x0
0x0
0x0
0x0
f 0x66
0x4
0x7f
0xd4
`
from spring-amqp.
Yeah... I'm not very good in parsing HEX, but if whatever I suggested before about Number
interaction in the DefaultMessagePropertiesConverter
makes sense for you, I'll be more than happy to provide that fix.
Thanks
from spring-amqp.
That would be great, thanks.
from spring-amqp.
Related Issues (20)
- MessageProperties setDelay maximum value problem HOT 3
- ImmediateAcknowledgeAmqpException keeps the message in the queue HOT 10
- TraceId propagation to the new thread local HOT 4
- Wrong ClassLoader is used for message deserialization when devtools are active
- Wrong ClassLoader is used for message deserialization when devtools are active HOT 1
- Kotlin suspend functions return type is incorrect HOT 3
- Kotlin suspend functions return type is incorrect HOT 1
- Channel cache leak when no answers from broker for pending confirms
- Channel cache leak when no answers from broker for pending confirms HOT 1
- Invoke RabbitListenerErrorHandler when the batch of the listener is enabled HOT 2
- Document that micrometer observations aren't started for batch listeners HOT 4
- Unable to access AMQP Channel from RabbitListenerErrorHandler in case of MessageConversionException HOT 1
- Deadlock when reaching channel limit in DirectMessageListenerContainer HOT 5
- Remove deprecated method in the `RabbitListenerErrorHandler`
- DefaultMessagePropertiesConverter#toMessageProperties should handle x-delay in Short HOT 1
- Memory leak with AsyncRabbitTemplate HOT 5
- Memory leak with AsyncRabbitTemplate HOT 1
- Use JDK `ObjectInputFilter` instead of calling `AllowedListDeserializingMessageConverter::checkAllowedList` in `ConfigurableObjectInputStream::resolveClass` HOT 1
- Fix RabbitMQ x-death header documentation HOT 7
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from spring-amqp.