[
https://issues.apache.org/jira/browse/DERBY-4269?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13399922#comment-13399922
]
Knut Anders Hatlen commented on DERBY-4269:
-------------------------------------------
I logged DERBY-5830 for fixing DoubleProperties.propertyNames(), so we can
separate that issue from any changes that need to be done to the slave boot
code.
So far, I think we have discussed three areas that potentially need fixing:
1) Lack of thread-safety in DoubleProperties - now handled in DERBY-5830.
2) Boot code not prepared for being multi-threaded. The fix for (1) may be
sufficient, but there may be other hidden bugs caused by the slave boot process
breaking assumptions made in existing code.
3) SlaveDatabaseBootThread silently ignores runtime exceptions and leaves the
process hanging. The fix for (1) may remove the cause for the hang we've seen,
but SlaveDatabaseBootThread still doesn't handle unexpected failures gracefully.
I'm not sure what's the best way to approach (2). It's difficult to see from
the code exactly which places the Properties instance in question is used.
Maybe we could make EmbedConnection.filterProperties() return an instrumented
sub-class of Properties that logs the stack trace of all calls to
getProperty(), run some subset of the regression tests, and then manually
inspect the call sites to see if they would handle the disappearance of a
property?
> Failover did not succeed in 2 min.: testReplication_Local_3_p6_autocommit_OK
> ----------------------------------------------------------------------------
>
> Key: DERBY-4269
> URL: https://issues.apache.org/jira/browse/DERBY-4269
> Project: Derby
> Issue Type: Bug
> Components: Replication
> Affects Versions: 10.4.1.3, 10.4.2.0, 10.5.1.1, 10.5.2.0, 10.5.3.0,
> 10.6.1.0, 10.6.2.1, 10.7.1.1, 10.8.1.2, 10.8.2.2
> Environment: OS:
> Microsoft© Windows VistaT Ultimate - 6.0.6001 Service Pack 1 - WindowsNT 0 6
> JVM:
> Sun Microsystems Inc.
> java version "1.4.2_16"
> Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.2_16-b05)
> Java HotSpot(TM) Client VM (build 1.4.2_16-b05 mixed mode 32-bit)
> Reporter: Ole Solberg
> Assignee: Dag H. Wanvik
> Labels: derby_triage10_5_2
> Attachments: 4269-client-jstack.txt, 4269-master.txt,
> 4269-slave-jstack-before-failover.txt, 4269-slave.txt, DERBY-4269.diff,
> DERBY-4269.stat, DERBY-4269b.diff, db_master-derby.log,
> db_slave-derby.log.gz, derby-4269-explicit-synch-2.diff,
> derby-4269-explicit-synch-3.diff, derby-4269-explicit-synch-3.status,
> derby-4269-explicit-synch.diff, derby-4269-typo.diff, keys-only.diff
>
>
> Failover did not succeed.
> 2)
> testReplication_Local_3_p6_autocommit_OK(org.apache.derbyTesting.functionTests.tests.replicationTests.ReplicationRun_Local_3_p6)junit.framework.AssertionFailedError:
> Failover did not succeed.
> at
> org.apache.derbyTesting.functionTests.tests.replicationTests.ReplicationRun.connectPing(ReplicationRun.java:270)
> at
> org.apache.derbyTesting.functionTests.tests.replicationTests.ReplicationRun_Local_3_p6.derby_3896(ReplicationRun_Local_3_p6.java:200)
> at
> org.apache.derbyTesting.functionTests.tests.replicationTests.ReplicationRun_Local_3_p6.testReplication_Local_3_p6_autocommit_OK(ReplicationRun_Local_3_p6.java:86)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> at
> org.apache.derbyTesting.junit.BaseTestCase.runBare(BaseTestCase.java:106)
> at junit.extensions.TestDecorator.basicRun(TestDecorator.java:24)
> at junit.extensions.TestSetup$1.protect(TestSetup.java:21)
> at junit.extensions.TestSetup.run(TestSetup.java:25)
> See
> http://dbtg.thresher.com/derby/test/Daily/jvm1.4/testing/testlog/vista-64/782274-suitesAll_diff.txt
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira