Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Call methods on current Java thread #9

Open
jbalint opened this issue May 15, 2013 · 2 comments
Open

Call methods on current Java thread #9

jbalint opened this issue May 15, 2013 · 2 comments

Comments

@jbalint
Copy link
Owner

jbalint commented May 15, 2013

Don't call methods on debugger thread. This is important when dealing with data protected by locks that can't be accessed by the debugged when locked on the Java thread.....

"main" prio=10 tid=0x00007fd230008800 nid=0x615c at breakpoint[0x00007fd2385c1000]
   java.lang.Thread.State: RUNNABLE
        at com.mysql.jdbc.ResultSetImpl.getInstance(ResultSetImpl.java:374)
        at com.mysql.jdbc.MysqlIO.buildResultSetWithRows(MysqlIO.java:3220)
        at com.mysql.jdbc.MysqlIO.getResultSet(MysqlIO.java:500)
        at com.mysql.jdbc.MysqlIO.readResultsForQueryOrUpdate(MysqlIO.java:3198)
        at com.mysql.jdbc.MysqlIO.readAllResults(MysqlIO.java:2366)
        at com.mysql.jdbc.ServerPreparedStatement.serverExecute(ServerPreparedStatement.java:1500)
        - locked <0x00000000d866b158> (a com.mysql.jdbc.JDBC4Connection)
        at com.mysql.jdbc.ServerPreparedStatement.executeInternal(ServerPreparedStatement.java:857)
        - locked <0x00000000d866b158> (a com.mysql.jdbc.JDBC4Connection)
        at com.mysql.jdbc.PreparedStatement.executeQuery(PreparedStatement.java:2322)
        - locked <0x00000000d866b158> (a com.mysql.jdbc.JDBC4Connection)
        at testsuite.regression.Bug67225.testBug67225(Bug67225.java:30)
"Yellow Tree Command Interpreter" daemon prio=10 tid=0x00007fd230116000 nid=0x6165 waiting for monitor entry [0x00007fd21faf6000]
   java.lang.Thread.State: BLOCKED (on object monitor)
        at com.mysql.jdbc.ServerPreparedStatement.asSql(ServerPreparedStatement.java:471)
        - waiting to lock <0x00000000d866b158> (a com.mysql.jdbc.JDBC4Connection)
        at com.mysql.jdbc.PreparedStatement.asSql(PreparedStatement.java:1051)
        at com.mysql.jdbc.ServerPreparedStatement.toString(ServerPreparedStatement.java:2825)
@jbalint
Copy link
Owner Author

jbalint commented May 15, 2013

could pass the compiled command string to the blocked thread

jbalint referenced this issue Jun 19, 2013
move event queue to separate module
disable event processor thread for now
handle breakpoints directly on thread
pass commands to suspended thread if "debugging"
@jbalint
Copy link
Owner Author

jbalint commented Jun 19, 2013

Still need to test original case before closing

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant