mondrian.util
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. Likewise
Id.Quoting with Quoting.
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
|
Field Summary |
static boolean |
BugMondrian1001Fixed
Whether
bug MONDRIAN-1001,
"Tests disabled due to property trigger issues" is fixed. |
static boolean |
BugMondrian207Fixed
Whether
MONDRIAN-207,
"IS EMPTY and IS NULL" is fixed. |
static boolean |
BugMondrian229Fixed
Whether
MONDRIAN-229,
"NON EMPTY when hierarchy's default member is not 'all'"
is fixed. |
static boolean |
BugMondrian313Fixed
Whether
bug MONDRIAN-313,
"Predicate references RolapStar.Column when used in AggStar"
is fixed. |
static boolean |
BugMondrian314Fixed
Whether
bug MONDRIAN-314,
"Predicate sometimes has null RolapStar.Column"
is fixed. |
static boolean |
BugMondrian328Fixed
Whether
bug MONDRIAN-328,
"CrossJoin no empty optimizer eliminates calculated member"
is fixed. |
static boolean |
BugMondrian361Fixed
Whether
bug MONDRIAN-361,
"Aggregate Tables not working with Shared Dimensions"
is fixed. |
static boolean |
BugMondrian441Fixed
Whether
bug MONDRIAN-441,
"Parent-child hierarchies: <Join> used in dimension"
is fixed. |
static boolean |
BugMondrian446Fixed
Whether
bug MONDRIAN-446,
"Make Native NonEmpty consistant with MSAS"
is fixed. |
static boolean |
BugMondrian485Fixed
Whether
bug MONDRIAN-485,
"Member key treated as member name in WHERE"
is fixed. |
static boolean |
BugMondrian486Fixed
Whether
bug MONDRIAN-486,
"HighCardinalityTest test cases disabled"
is fixed. |
static boolean |
BugMondrian495Fixed
Whether bug
MONDRIAN-495, "Table filter concept does not support dialects."
is fixed. |
static boolean |
BugMondrian503Fixed
Whether
bug MONDRIAN-503,
"RolapResultTest disabled"
is fixed. |
static boolean |
BugMondrian555Fixed
Whether
bug MONDRIAN-555,
"Compound slicer counts cells twice in certain cases" is fixed. |
static boolean |
BugMondrian584Fixed
Whether
bug MONDRIAN-584,
"Native evaluation returns enumerated members in the wrong order"
is fixed. |
static boolean |
BugMondrian641Fixed
Whether
bug MONDRIAN-641,
"Large NON EMPTY result performs poorly with ResultStyle.ITERABLE" |
static boolean |
BugMondrian648Fixed
Whether
bug MONDRIAN-648,
"AS operator has lower precedence than required by MDX specification"
is fixed. |
static boolean |
BugMondrian687Fixed
Whether
bug MONDRIAN-687,
"Format treats negative numbers differently than SSAS"
is fixed. |
static 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. |
static boolean |
BugMondrian759Fixed
Whether
bug MONDRIAN-759,
"use dynamic parameters and PreparedStatement for frequently executed SQL
patterns" is fixed. |
static boolean |
BugMondrian785Fixed
Whether
bug MONDRIAN-785,
"Native evaluation does not respect ordering" is fixed. |
static boolean |
BugSegregateRolapCubeMemberFixed
Whether RolapCubeMember and RolapMember have been fully segregated; any
piece of code should be working with one or the other, not both. |
static boolean |
Checkin7641UseOptimizer
|
static boolean |
Ssas2005Compatible
Whether Mondrian is 100% compatible with Microsoft Analysis Services
2005. |
|
Constructor Summary |
Bug()
|
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
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 is
false.
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
- Whether
bug MONDRIAN-313,
"Predicate references RolapStar.Column when used in AggStar"
is fixed.
- 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
- Whether
bug MONDRIAN-328,
"CrossJoin no empty optimizer eliminates calculated member"
is fixed.
- 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
BugMondrian485Fixed
public static final boolean BugMondrian485Fixed
- Whether
bug MONDRIAN-485,
"Member key treated as member name in WHERE"
is fixed. This bug is a placeholder for all support for keys in
member names (e.g. "[Product].[Product Name].&12345").
- 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
- Whether
bug MONDRIAN-641,
"Large NON EMPTY result performs poorly with ResultStyle.ITERABLE"
- 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
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
Bug
public Bug()
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 against
Dialect.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 at
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.