[ 
https://issues.apache.org/jira/browse/DERBY-5530?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13206819#comment-13206819
 ] 

Jean-Yves LINET commented on DERBY-5530:
----------------------------------------

Dropping and recreating index need to have the DDL of the indexes when truncate 
is called. So the truncate call can't be generic.
I found that calling SYSCS_COMPRESS_TABLE just after the truncate was also a 
workaround.
What could be the side effects of this solution compare with dropping and 
recreating index.
                
> SQLChar.getCollationKey NPE in index-stat-thread
> ------------------------------------------------
>
>                 Key: DERBY-5530
>                 URL: https://issues.apache.org/jira/browse/DERBY-5530
>             Project: Derby
>          Issue Type: Bug
>          Components: SQL
>    Affects Versions: 10.3.3.0, 10.4.2.0, 10.5.3.0, 10.6.2.1, 10.7.1.1, 
> 10.8.2.2
>         Environment: Windows 7 - NetBeans 6.9.1
>            Reporter: Jean-Yves LINET
>            Assignee: Kristian Waagan
>         Attachments: repro-debug.log, repro.log, repro.sh, script.sh
>
>
> With this JDBC connection url is : 
> jdbc:derby:directory:db_name;territory=fr_FR;collation=TERRITORY_BASED:PRIMARY;create=true
> I get a NullPointerException in index-stat-thread
> Sun Dec 11 19:33:11 CET 2011 Thread[pool-3-thread-1,5,main] {istat} 
> "PROXIFLEX"."IDAXX_RES": update scheduled, reason=[no stats, 
> row-estimate=375] (queueSize=1)
> Sun Dec 11 19:33:11 CET 2011 Thread[index-stat-thread,5,main] 
> {istat,trace@26130360} worker thread started (xid=12049) 
> [q/p/s=1/0/1,err:k/u/c=0/0/0,rej:f/d/o=0/0/0]
> Sun Dec 11 19:33:11 CET 2011 Thread[index-stat-thread,5,main] 
> {istat,trace@26130360}     processing "PROXIFLEX"."IDAXX_RES" 
> Sun Dec 11 19:33:11 CET 2011 Thread[index-stat-thread,5,main] {istat} runtime 
> exception during normal operation
> java.lang.NullPointerException
>       at org.apache.derby.iapi.types.SQLChar.getCollationKey(Unknown Source)
>       at 
> org.apache.derby.iapi.types.WorkHorseForCollatorDatatypes.stringCompare(Unknown
>  Source)
>       at org.apache.derby.iapi.types.CollatorSQLVarchar.stringCompare(Unknown 
> Source)
>       at org.apache.derby.iapi.types.SQLChar.compare(Unknown Source)
>       at 
> org.apache.derby.impl.services.daemon.IndexStatisticsDaemonImpl$KeyComparator.compareWithPrevKey(Unknown
>  Source)
>       at 
> org.apache.derby.impl.services.daemon.IndexStatisticsDaemonImpl.updateIndexStatsMinion(Unknown
>  Source)
>       at 
> org.apache.derby.impl.services.daemon.IndexStatisticsDaemonImpl.generateStatistics(Unknown
>  Source)
>       at 
> org.apache.derby.impl.services.daemon.IndexStatisticsDaemonImpl.processingLoop(Unknown
>  Source)
>       at 
> org.apache.derby.impl.services.daemon.IndexStatisticsDaemonImpl.run(Unknown 
> Source)
>       at java.lang.Thread.run(Thread.java:662)
> Sun Dec 11 19:33:11 CET 2011 Thread[index-stat-thread,5,main] 
> {istat,trace@26130360} worker thread exit 
> [q/p/s=0/0/1,err:k/u/c=0/0/0,rej:f/d/o=0/0/0]
> If I remove territory and collation parameters I don't have the exception.
> In case you want to disable automatic statistics, set derby property : 
> derby.storage.indexStats.auto to false.

--
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

        

Reply via email to