db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Kathey Marsden <kmarsdende...@sbcglobal.net>
Subject Re: [GSOC IDEA] Derby Test and Fix
Date Thu, 07 Apr 2011 23:36:54 GMT
On 4/7/2011 10:58 AM, Houx Zhang wrote:
> Hi, all. I would like to apply for this GSOC on Derby and hope to get 
> your advice on my proposal. Thanks!
Thank you Houx for sending the proposal.  I have not looked at it 
closely but we are close to the deadline so I will throw a few things 
out there. The most important thing is to get it submitted before the 

1) Make sure you mention how many hours per week this summer you plan to 
work on Derby and if you have any other plans, travel commitments etc.
2) Include a section on your experience, not a complete resume but a 
short summary what languages you have programmed in, relevant coursework 
especially in database and Java  and any programming projects you are 
particularly proud of.
3) Include basic contact information and the name of your university and 
whether you are an undergraduate or graduate student.
4) Make sure you talk to Tiago about having an IRC interview if you have 
not already.

The ranking process is outlined at:

Unfortunately the melange tool is different this year so it will have to 
be adjusted slightly but these are the things that will be scored, so 
you want to make sure that everything there is covered.  In the past 
around the cutoff line just a point or two makes a difference.

HTH and good Luck!


> What have I done on Derby?
> I have joined Derby on March 3. In the past month, I have set up my 
> building and testing environment for Derby by the instructions in 
> wiki, read the source code and created and assigned some issues on 
> JIRA[1]. I have provided some patches for them, some of which have 
> been commited to the Deryby repository, and some others are in 
> discussion. In my work on Derby, I have received great help from other 
> developers the mailing list and JIRA, such as Kathey, Myrna, Bryan, 
> Knut..... Sometimes I actively launched a discussion in mailing list, 
> for example, "how to deal with test failure in Chinese locale" and 
> created  issues related, which is also one source of my GSOC idea.
> What will I do this GSOC?
> My Task can be divided into 3 parts, and milestones are given accordingly:
> 1.Make testcases pass in non-English locale(April 20 to June 10)
> As descripted in [2], there are a lot of derby testing depending on 
> the English locale, which will fail in a non-English locale. There is 
> a admitted way to resolve this problem. Firstly, find the junit test 
> cases that fails in non-English locale. For each of them, if it fails 
> just because the content of message is different from expected, a 
> assertion based on SQLState will be adopted; otherwise, a hard-code 
> locale will be used. If we find a test fails in non-English locale not 
> caused by locale itself, then we discover a good usage scenario.
> I have basicly finished the first step "find the junit test cases that 
> fails in non-English locale". When running test cases in Chinese 
> Locale, I have got dozes of failure. Afeter checking the output, I 
> make sure most of them are caused by non-English Locale environment. 
> They concentrate in the two 
> packages----org.apache.derbyTesting.functionTests.tests.tools and 
> org.apache.derbyTesting.functionTests.tests.lang, and each test 
> classes may throw more than 5 exceptions. They are ImportExportIJTest, 
> SysinfoCPCheckTest in 
> org.apache.derbyTesting.functionTests.tests.tools, and 
> DynamicLikeOptimizationTest, GrantRevokeTest, InbetweenTest, JoinTest, 
> LangScripts, StalePlansTest, DistinctTest, GroupByTest, ForUpdateTest, 
> ScrollCursors1Test, ErrorCodeTest, TableFunctionTest, 
> PredicatePushdownTest, XplainStatisticsTest, XplainStatisticsTest, 
> XplainStatisticsTest, NistScripts(has dozes of failure), 
> LangHarnessJavaTest, OrderByAndSortAvoidance, OptimizerOverridesTest, 
> OffsetFetchNextTest, OrderByAndOffsetFetchInSubqueries in 
> org.apache.derbyTesting.functionTests.tests.lang. I plan to make the 
> 24 test classes pass in non-English locale. The resolution is just 
> mentioned above "if it fails just because the content of message is 
> different from expected, a assertion based on SQLState will be 
> adopted; otherwise, a hard-code locale will be used."
> Though these subtasks are very similar, and not so hard, considering 
> I'm not so free before summer holiday, 7 weeks are planned for them, 
> 3-4 per week. Serial of patches will be given, each for one test 
> class, and each is in a separate issue.
> 2.Convert remaining store SQL tests into JUnit tests(June 11 to July 25)
> In the package , some sql scripts need to be converted into JUnit. 
> They are RowLockBasic.sql, TableLockBasic.sql, longColumn.sql, 
> updatelocksJDBC30.sql, and updatelocks.sql. ScriptTestCase is not so 
> suitable for the new test cases, it will be better to re-write the 
> test by hand using standard JDBC calls and the utility methods and 
> decorators available[3].
> Each of the five converting is not a easy work, so 7 weeks is planned 
> for these tasks. Issues will be created for each of them.
> 3.Converting ij[1-4].sqls to ScripTestCase (July 26-August 15)
> In the package org.apache.derbyTesting.functionTests.tests.tools, 
> there are ij.sql, ij1,sql, ij2.sql, ij3.sql, ij4.sql, ij5.sql, ij6.sql 
> and ij7.sql, which are very suitable to converted to JUnit by 
> extending ScripTestCase[4].
> Considering my experience on converting IJConnectionName.sql, the work 
> is not so easy. So 3 weeks is planned for it, and I just choose 4 of 
> them to realise. If time is OK, I will certainly try to do more.
> [1] https://issues.apache.org/jira/browse/DERBY-5084
> https://issues.apache.org/jira/browse/DERBY-5155
> https://issues.apache.org/jira/browse/DERBY-4260
> https://issues.apache.org/jira/browse/DERBY-4443
> https://issues.apache.org/jira/browse/DERBY-5155
> [2] https://issues.apache.org/jira/browse/DERBY-5155
> [3] http://wiki.apache.org/db-derby/KillDerbyTestHarness
> [4] http://wiki.apache.org/db-derby/ConvertSqlScriptTestsToJunit
> -- 
> Houx Zhang

View raw message