Date: prev next · Thread: first prev next last
2015 Archives by date, by thread · List index


On Mon, Jun 01, 2015 at 11:54:05AM +0200, Lionel Elie Mamane wrote:
On Mon, Jun 01, 2015 at 09:55:19AM +0200, Stephan Bergmann wrote:
On 06/01/2015 09:48 AM, Lionel Elie Mamane wrote:

Interesting... I got that error on my machine, I made some changes,
and then didn't get it on three consecutive "make JunitTest_dbaccess_complex"
so I thought it gone. The operative part is

   Caught UNO exception 'URP: queryInterface request message with unknown OID received'

Anybody has a clue what this is about?

The UNO remote protocol represents each UNO object with a unique OID string.
The error means that one end of a remote connection sent a queryInterface
request with a OID representing an object that the other end claims it does
not know about.  Which sounds like a scary bug somewhere.  Any way to
reproduce that?

It seems to be linked to the *number* *of* *tests* in
dbaccess/qa/complex/dbaccess/RowSet.java

I never got it when I commented out any one of the "@Test" there.

Well, I ran it many other times (on another machine), and it is
definitely happens with some (even several) "@Test" commented out, and
even in the absence of the "uncaught exception from other thread"
phenomenon. The magic mix seems to be having at least both
testRowSet() and testRowSetEvents() active.

The exact moment where it happens varies. With the attached patch, I
get it about one out of two times. It seems to happen more often if
you uncomment more "@Test".

So, if you would like to work on that (which would make me happier),
then apply the attached patch, then:
 make JunitTest_dbaccess_complex
several times in a row, and you should get the problem. If not, try
uncommenting more "@Test" instances.

It is *not* related per se to the multithreaded test, it happens even
if that test is disabled.

Thanks in advance!

-- 
Lionel Mamane
diff --git a/dbaccess/JunitTest_dbaccess_complex.mk b/dbaccess/JunitTest_dbaccess_complex.mk
index e3f2c00..913d7aa 100644
--- a/dbaccess/JunitTest_dbaccess_complex.mk
+++ b/dbaccess/JunitTest_dbaccess_complex.mk
@@ -25,8 +25,7 @@ $(eval $(call gb_JunitTest_set_defs,dbaccess_complex,\
 ))
 
 $(eval $(call gb_JunitTest_add_classes,dbaccess_complex,\
-    complex.dbaccess.Beamer \
-    complex.dbaccess.PropertyBag \
+       complex.dbaccess.RowSet \
 ))
 
 $(eval $(call gb_JunitTest_add_sourcefiles,dbaccess_complex,\
diff --git a/dbaccess/qa/complex/dbaccess/RowSet.java b/dbaccess/qa/complex/dbaccess/RowSet.java
index 2763ac3..33c69c7 100644
--- a/dbaccess/qa/complex/dbaccess/RowSet.java
+++ b/dbaccess/qa/complex/dbaccess/RowSet.java
@@ -208,23 +208,31 @@ public class RowSet extends TestCase
         System.out.println("testing testRowSet");
         createTestCase(true);
 
+        System.out.println("testing testRowSet sequential");
         // sequential positioning
         m_resultSet.beforeFirst();
         testSequentialPositining(m_resultSet, m_row);
 
+        System.out.println("testing testRowSet absolute");
         // absolute positioning
         testAbsolutePositioning(m_resultSet, m_row);
 
+        System.out.println("testing testRowSet modify");
         // position during modify
         testModifyPosition(m_resultSet, m_row);
 
+        System.out.println("testing testRowSet 3rd");
         // 3rd test
         test3(createClone(), m_resultSet);
+        System.out.println("testing testRowSet 4th");
         // 4th test
         test4(m_resultSet);
+        System.out.println("finished testing testRowSet 4th");
 
+        // System.out.println("testing testRowSet concurrent");
         // concurrent (multi threaded) access to the row set and its clones
-        testConcurrentAccess(m_resultSet);
+        // testConcurrentAccess(m_resultSet);
+        // System.out.println("finished testRowSet concurrent");
     }
 
 
@@ -623,7 +631,7 @@ public class RowSet extends TestCase
     }
 
 
-    @Test
+    // @Test
     public void testDeleteBehavior() throws Exception
     {
         createTestCase(true);
@@ -757,7 +765,7 @@ public class RowSet extends TestCase
     /** checks whether deletions on the main RowSet properly interfere (or don't interfere) with 
the movement
      *  on a clone of the RowSet
      */
-    @Test
+    // @Test
     public void testCloneMovesPlusDeletions() throws SQLException, UnknownPropertyException, 
WrappedTargetException
     {
         createTestCase(true);
@@ -826,7 +834,7 @@ public class RowSet extends TestCase
     /** checks whether insertions on the main RowSet properly interfere (or don't interfere) with 
the movement
      *  on a clone of the RowSet
      */
-    @Test
+    // @Test
     public void testCloneMovesPlusInsertions() throws SQLException, UnknownPropertyException, 
WrappedTargetException, PropertyVetoException, com.sun.star.lang.IllegalArgumentException
     {
         createTestCase(true);
@@ -1012,7 +1020,7 @@ public class RowSet extends TestCase
 
     /** checks the XParametersSupplier functionality of a RowSet
      */
-    @Test
+    // @Test
     public void testParameters()
     {
         createTestCase(false);

Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.