[asterisk-bugs] [JIRA] Commented: (ASTERISK-20326) res_odbc blocks datastore while a transaction waits for a lock
Matt Jordan (JIRA)
noreply at issues.asterisk.org
Mon Aug 27 12:00:07 CDT 2012
[ https://issues.asterisk.org/jira/browse/ASTERISK-20326?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=196258#comment-196258 ]
Matt Jordan commented on ASTERISK-20326:
----------------------------------------
This is not a bug. How does res_odbc know that your next operation is going to work on a different row, and/or is safe to proceed before the previous transaction is finished? Its possible that the logic could be put into res_odbc to make these determinations, but that would be an improvement, and thus a feature request.
> res_odbc blocks datastore while a transaction waits for a lock
> --------------------------------------------------------------
>
> Key: ASTERISK-20326
> URL: https://issues.asterisk.org/jira/browse/ASTERISK-20326
> Project: Asterisk
> Issue Type: Bug
> Security Level: None
> Components: Resources/res_odbc
> Affects Versions: 10.7.0
> Environment: RHEL 2.6.32-220.el6.x86_64 GNU/Linux
> Reporter: Christoph Sitter
>
> I have set up res_odbc to use a pool of 10 connections per resource (oracle 11g connections) and I also wrote a C-Module which uses res_odbc for Oracle connection management.
> What I'm doing:
> - Start a transaction
> - select for update (read + lock)
> - update
> - commit/rollback
> When I now lock the row that is affected by the transaction from within another session, the "select for update" has to wait until the other session has committed it's work.
> This is an expected behaviour and res_odbc does not produce any errors here.
> The problem is to get a further connection.
> In my case, I want to read a different row from the same table, but ast_odbc_request_obj hangs until the work is committed and the transactional "select for update" stops waiting.
> I tried to find out where exactly the problem is, and I think that it is the following command:
> obj = ao2_callback(class-obj_container, 0, aoro2_obj_cb, EOR_TX); at the beginning of ast_odbc_request_obj_2
> Hopefully this problem can be fixed soon ;)
> best regards
> Christoph
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the asterisk-bugs
mailing list