Class Bug
- java.lang.Object
-
- mondrian.util.Bug
-
public class Bug extends Object
Holder for constants which indicate whether particular issues have been fixed. Reference one of those constants in your code, and it is clear which code can be enabled when the bug is fixed. Generally a constant is removed when its bug is fixed.Cleanup items
The following is a list of cleanup items. They are not bugs per se: functionality is not wrong, just the organization of the code. If they were bugs, they would be in jira. It makes sense to have the list here, so that referenced class, method and variable names show up as uses in code searches.- Obsolete
Id.Segment
- Replace it by
IdentifierSegment
. LikewiseId.Quoting
withQuoting
. Should wait until after the mondrian 4 'big bang', because there are ~300 uses of Segment in the code.
- Since:
- Oct 11, 2006
- Author:
- jhyde
- Obsolete
-
-
Field Summary
-
Constructor Summary
Constructors Constructor Description Bug()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static boolean
avoidMemoryOverflow(Dialect dialect)
Returns whether to avoid a test because the memory monitor may cause it to fail.static boolean
avoidSlowTestOnLucidDB(Dialect dialect)
Returns true if we are running againstDialect.DatabaseProduct.LUCIDDB
and we wish to avoid slow tests.static boolean
olap4jUpgrade(String reason)
If you want to tag a piece of code in mondrian that needs to be changed when we upgrade to a future version of olap4j, reference this function.
-
-
-
Field Detail
-
Ssas2005Compatible
public static final boolean Ssas2005Compatible
Whether Mondrian is 100% compatible with Microsoft Analysis Services 2005. We know that it is not, so this constant isfalse
.Use this field to flag test cases whose behavior is intentionally different from SSAS. If the behavior is unintentionally different and something we want to fix, log a bug, add a new
BugMondrianXxxFixed
constant to this class, and make the test case conditional on that constant instead.See also the property
MondrianProperties.SsasCompatibleNaming
, which allows the user to choose certain behaviors which are compatible with SSAS 2005 but incompatible with Mondrian's previous behavior.- See Also:
- Constant Field Values
-
BugMondrian229Fixed
public static final boolean BugMondrian229Fixed
Whether MONDRIAN-229, "NON EMPTY when hierarchy's default member is not 'all'" is fixed.- See Also:
- Constant Field Values
-
Checkin7641UseOptimizer
public static final boolean Checkin7641UseOptimizer
- See Also:
- Constant Field Values
-
BugMondrian207Fixed
public static final boolean BugMondrian207Fixed
Whether MONDRIAN-207, "IS EMPTY and IS NULL" is fixed.- See Also:
- Constant Field Values
-
BugMondrian446Fixed
public static final boolean BugMondrian446Fixed
Whether bug MONDRIAN-446, "Make Native NonEmpty consistant with MSAS" is fixed.- See Also:
- Constant Field Values
-
BugMondrian313Fixed
public static final boolean BugMondrian313Fixed
- See Also:
- Constant Field Values
-
BugMondrian314Fixed
public static final boolean BugMondrian314Fixed
Whether bug MONDRIAN-314, "Predicate sometimes has null RolapStar.Column" is fixed.- See Also:
- Constant Field Values
-
BugMondrian328Fixed
public static final boolean BugMondrian328Fixed
- See Also:
- Constant Field Values
-
BugMondrian361Fixed
public static final boolean BugMondrian361Fixed
Whether bug MONDRIAN-361, "Aggregate Tables not working with Shared Dimensions" is fixed.- See Also:
- Constant Field Values
-
BugMondrian441Fixed
public static final boolean BugMondrian441Fixed
Whether bug MONDRIAN-441, "Parent-child hierarchies: <Join> used in dimension" is fixed.- See Also:
- Constant Field Values
-
BugMondrian486Fixed
public static final boolean BugMondrian486Fixed
Whether bug MONDRIAN-486, "HighCardinalityTest test cases disabled" is fixed.- See Also:
- Constant Field Values
-
BugMondrian495Fixed
public static final boolean BugMondrian495Fixed
Whether bug MONDRIAN-495, "Table filter concept does not support dialects." is fixed.- See Also:
- Constant Field Values
-
BugMondrian503Fixed
public static final boolean BugMondrian503Fixed
Whether bug MONDRIAN-503, "RolapResultTest disabled" is fixed.- See Also:
- Constant Field Values
-
BugMondrian555Fixed
public static final boolean BugMondrian555Fixed
Whether bug MONDRIAN-555, "Compound slicer counts cells twice in certain cases" is fixed. If a set in the slicer contains the same member more than once, or more generally, if the regions overlap, then mondrian counts the overlaps twice, whereas SSAS 2005 does not.- See Also:
- Constant Field Values
-
BugMondrian584Fixed
public static final boolean BugMondrian584Fixed
Whether bug MONDRIAN-584, "Native evaluation returns enumerated members in the wrong order" is fixed. A query that includes { Gender.M, Gender.F } should return results where the Gender.M values are returned before the Gender.F values.- See Also:
- Constant Field Values
-
BugMondrian641Fixed
public static final boolean BugMondrian641Fixed
- See Also:
- Constant Field Values
-
BugMondrian648Fixed
public static final boolean BugMondrian648Fixed
Whether bug MONDRIAN-648, "AS operator has lower precedence than required by MDX specification" is fixed.- See Also:
- Constant Field Values
-
BugMondrian687Fixed
public static final boolean BugMondrian687Fixed
Whether bug MONDRIAN-687, "Format treats negative numbers differently than SSAS" is fixed.- See Also:
- Constant Field Values
-
BugMondrian747Fixed
public static final boolean BugMondrian747Fixed
Whether bug bug MONDRIAN-747, "When joining a shared dimension into a cube at a level other than its leaf level, Mondrian gives wrong results" is fixed.- See Also:
- Constant Field Values
-
BugMondrian759Fixed
public static final boolean BugMondrian759Fixed
Whether bug MONDRIAN-759, "use dynamic parameters and PreparedStatement for frequently executed SQL patterns" is fixed.- See Also:
- Constant Field Values
-
BugMondrian785Fixed
public static final boolean BugMondrian785Fixed
Whether bug MONDRIAN-785, "Native evaluation does not respect ordering" is fixed.- See Also:
- Constant Field Values
-
BugMondrian1001Fixed
public static final boolean BugMondrian1001Fixed
Whether bug MONDRIAN-1001, "Tests disabled due to property trigger issues" is fixed.- See Also:
- Constant Field Values
-
BugMondrian2452Fixed
public static final boolean BugMondrian2452Fixed
Whether bug MONDRIAN-1001, "Tests disabled due to property trigger issues" is fixed.- See Also:
- Constant Field Values
-
BugMondrian2440Fixed
public static final boolean BugMondrian2440Fixed
Whether bug MONDRIAN-1001, "Error when using aggregation tables with a hierarchy that has a visible level behind restricted" is fixed.- See Also:
- Constant Field Values
-
BugSegregateRolapCubeMemberFixed
public static final boolean BugSegregateRolapCubeMemberFixed
Whether RolapCubeMember and RolapMember have been fully segregated; any piece of code should be working with one or the other, not both.- See Also:
- Constant Field Values
-
-
Method Detail
-
olap4jUpgrade
public static boolean olap4jUpgrade(String reason)
If you want to tag a piece of code in mondrian that needs to be changed when we upgrade to a future version of olap4j, reference this function. It will always return false.
-
avoidMemoryOverflow
public static boolean avoidMemoryOverflow(Dialect dialect)
Returns whether to avoid a test because the memory monitor may cause it to fail.Some tests fail if memory monitor is switched on, and Access and Derby tend to use a lot of memory because they are embedded.
- Parameters:
dialect
- Dialect- Returns:
- Whether to avoid a test
-
avoidSlowTestOnLucidDB
public static boolean avoidSlowTestOnLucidDB(Dialect dialect)
Returns true if we are running againstDialect.DatabaseProduct.LUCIDDB
and we wish to avoid slow tests.This is because some tests involving parent-child hierarchies are very slow. If we are running performance tests (indicated by the
mondrian.test.PerforceTest
logger set atorg.apache.log4j.Level#DEBUG
or higher), we expect the suite to take a long time, so we enable the tests.Fixing either
MONDRIAN-759
or FRG-400, "rewrite statements containing literals to use internally-managed dynamic parameters instead" would solve the problem.- Returns:
- Whether we are running LucidDB and we wish to avoid slow tests.
-
-