I have a Java application, which uses an Oracle Queue to store messages in the queue for later processing by multiple threads consuming queued messages. The messages in this queue can be related to each other, and must therefore be processed in a specific order based on the business logic of my application. Basically, I want to achieve that the dequeueing of one message A is held back as long as another message B in the queue has not been completely processed. The only weapon given by Oracle AQ I see here, are the Delay and an Priority parameters. These, however, cannot be used to achieve the scenario outlined above, since there are situations, where two related messages still can be dequeued and processed at the same time. Are there any tools that can help establishing an advanced processing order of messages?
Advanced Oracle AQ Dequeue Order
522 Views Asked by AlexLiesenfeld At
1
There are 1 best solutions below
Related Questions in MULTITHREADING
- Append git repo to original repo
- How to augment OCR output of tesstwo using user data in ANDROID?
- No such file or directory, not pointing to the right file - Rails
- bazaar remote host changed
- Bazaar version control - Multiple repositories / sub modules possible?
- Bazaar version control - github / bitbucket alike solution?
- Multiple ssh access types from a given user1/client to the same user2/server
- Create a bzr branch that selectively omits some commits from parent branch
- bzr fails on an FTP Upload
- How to export a bazaar branch into a new subversion repository and then pull/push from it
Related Questions in ORACLE
- Append git repo to original repo
- How to augment OCR output of tesstwo using user data in ANDROID?
- No such file or directory, not pointing to the right file - Rails
- bazaar remote host changed
- Bazaar version control - Multiple repositories / sub modules possible?
- Bazaar version control - github / bitbucket alike solution?
- Multiple ssh access types from a given user1/client to the same user2/server
- Create a bzr branch that selectively omits some commits from parent branch
- bzr fails on an FTP Upload
- How to export a bazaar branch into a new subversion repository and then pull/push from it
Related Questions in MESSAGE-QUEUE
- Append git repo to original repo
- How to augment OCR output of tesstwo using user data in ANDROID?
- No such file or directory, not pointing to the right file - Rails
- bazaar remote host changed
- Bazaar version control - Multiple repositories / sub modules possible?
- Bazaar version control - github / bitbucket alike solution?
- Multiple ssh access types from a given user1/client to the same user2/server
- Create a bzr branch that selectively omits some commits from parent branch
- bzr fails on an FTP Upload
- How to export a bazaar branch into a new subversion repository and then pull/push from it
Related Questions in PRIORITY-QUEUE
- Append git repo to original repo
- How to augment OCR output of tesstwo using user data in ANDROID?
- No such file or directory, not pointing to the right file - Rails
- bazaar remote host changed
- Bazaar version control - Multiple repositories / sub modules possible?
- Bazaar version control - github / bitbucket alike solution?
- Multiple ssh access types from a given user1/client to the same user2/server
- Create a bzr branch that selectively omits some commits from parent branch
- bzr fails on an FTP Upload
- How to export a bazaar branch into a new subversion repository and then pull/push from it
Related Questions in ORACLE-AQ
- Append git repo to original repo
- How to augment OCR output of tesstwo using user data in ANDROID?
- No such file or directory, not pointing to the right file - Rails
- bazaar remote host changed
- Bazaar version control - Multiple repositories / sub modules possible?
- Bazaar version control - github / bitbucket alike solution?
- Multiple ssh access types from a given user1/client to the same user2/server
- Create a bzr branch that selectively omits some commits from parent branch
- bzr fails on an FTP Upload
- How to export a bazaar branch into a new subversion repository and then pull/push from it
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular # Hahtags
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
I came to the conclusion that it is not a good idea to order these messages using the queue, because it would need a custom and very specialized dequeue strategy, which has a very bad smell to me, both, complexity and most likely performance wise. It also tries to fix communication protocol issues using the queue, which are application specific and therefore should find treatment in the application itself. Instead, the application / communication protocol should be tolerant enough to handle ordering issues.