You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Eduardo Aguinaga (JIRA)" <ji...@apache.org> on 2016/08/25 17:44:20 UTC
[jira] [Created] (CASSANDRA-12545) Portability Flaw: Locale
Dependent Comparison
Eduardo Aguinaga created CASSANDRA-12545:
--------------------------------------------
Summary: Portability Flaw: Locale Dependent Comparison
Key: CASSANDRA-12545
URL: https://issues.apache.org/jira/browse/CASSANDRA-12545
Project: Cassandra
Issue Type: Sub-task
Reporter: Eduardo Aguinaga
Overview:
In May through June of 2016 a static analysis was performed on version 3.0.5 of the Cassandra source code. The analysis included an automated analysis using HP Fortify v4.21 SCA and a manual analysis utilizing SciTools Understand v4. The results of that analysis includes the issue below.
Issue:
In the file CoalescingStrategies.java on line 502 there is a portability problem with the call to toLowerCase() because it has different locales which may lead to unexpected output. This may also circumvent custom validation routines.
{code:java}
CoalescingStrategies.java, lines 502-519:
502 String strategyCleaned = strategy.trim().toUpperCase();
503 switch(strategyCleaned)
504 {
505 case "MOVINGAVERAGE":
506 classname = MovingAverageCoalescingStrategy.class.getName();
507 break;
508 case "FIXED":
509 classname = FixedCoalescingStrategy.class.getName();
510 break;
511 case "TIMEHORIZON":
512 classname = TimeHorizonMovingAverageCoalescingStrategy.class.getName();
513 break;
514 case "DISABLED":
515 classname = DisabledCoalescingStrategy.class.getName();
516 break;
517 default:
518 classname = strategy;
519 }
{code}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)