Skip to content

Commit

Permalink
MONDRIAN-LAGUNITAS: Integrate from main @14709.
Browse files Browse the repository at this point in the history
[git-p4: depot-paths = "//open/mondrian-release/lagunitas/": change = 14859]
  • Loading branch information
julianhyde committed Dec 31, 2011
1 parent ec08e4e commit a39fe8e
Show file tree
Hide file tree
Showing 113 changed files with 3,827 additions and 1,620 deletions.
13 changes: 9 additions & 4 deletions bin/loadFoodMart.sh
Expand Up @@ -15,6 +15,7 @@ Linux|Darwin) PS=: ;;
esac

export CP="lib/mondrian.jar"
export CP="${CP}${PS}lib/olap4j.jar"
export CP="${CP}${PS}lib/log4j.jar"
export CP="${CP}${PS}lib/commons-logging.jar"
export CP="${CP}${PS}lib/eigenbase-properties.jar"
Expand Down Expand Up @@ -44,8 +45,12 @@ error() {
}

oracle() {
#export ORACLE_HOME=G:/oracle/product/10.1.0/Db_1
java -cp "${CP}${PS}${ORACLE_HOME}/jdbc/lib/ojdbc14.jar" \
# Assume ORACLE_HOME is set, e.g.:
# export ORACLE_HOME=G:/oracle/product/10.1.0/Db_1
# For JDBC driver, try 'ojdbc6.jar' on JDK1.6;
# try 'ojdbc5.jar' on JDK1.5;
# try 'ojdbc14.jar' on JDK1.4 or Oracle 10 and earlier.
java -cp "${CP}${PS}${ORACLE_HOME}/jdbc/lib/ojdbc6.jar" \
mondrian.test.loader.MondrianFoodMartLoader \
-verbose -aggregates -tables -data -indexes \
-jdbcDrivers=oracle.jdbc.OracleDriver \
Expand All @@ -56,15 +61,15 @@ oracle() {
# Load into Oracle, creating dimension tables first, then trickling data into
# fact tables.
oracleTrickle() {
java -cp "${CP}${PS}${ORACLE_HOME}/jdbc/lib/ojdbc14.jar" \
java -cp "${CP}${PS}${ORACLE_HOME}/jdbc/lib/ojdbc6.jar" \
mondrian.test.loader.MondrianFoodMartLoader \
-verbose -tables -indexes -data -exclude=sales_fact_1997 \
-jdbcDrivers=oracle.jdbc.OracleDriver \
-inputJdbcURL="jdbc:oracle:thin:foodmart/foodmart@//localhost:1521/XE" \
-outputJdbcURL="jdbc:oracle:thin:slurpmart/slurpmart@//localhost:1521/XE"

# Write 10 rows each second into the sales fact table.
java -cp "${CP}${PS}${ORACLE_HOME}/jdbc/lib/ojdbc14.jar" \
java -cp "${CP}${PS}${ORACLE_HOME}/jdbc/lib/ojdbc6.jar" \
mondrian.test.loader.MondrianFoodMartLoader \
-verbose -tables -indexes -data -pauseMillis=100 -include=sales_fact_1997 \
-jdbcDrivers=oracle.jdbc.OracleDriver \
Expand Down
42 changes: 29 additions & 13 deletions bin/megatest
Expand Up @@ -67,7 +67,7 @@ marmalade)
jdkList="jdk1.4 jdk1.5 jdk1.6 openjdk1.6"
;;
marmite)
databaseList="derby hsqldb mysql"
databaseList="derby hsqldb mysql oracle"
jdkList="jdk1.4 jdk1.5 jdk1.6 openjdk1.6 ibmjdk1.6"
;;
ATRHisv1)
Expand Down Expand Up @@ -227,19 +227,14 @@ doTest2() {
oracle)
(
#export ORACLE_HOME=G:/oracle/product/10.1.0/Db_1
if [ -n "$ORACLE_HOME" ]; then
echo driver.classpath=${ORACLE_HOME}/jdbc/lib/ojdbc14.jar
else
# If Oracle is not installed, you must copy Oracle's JDBC driver into
# testlib.
if [ ! -f testlib/ojdbc14.jar ]; then
echo "Oracle JDBC not found"
exit 1
fi
echo driver.classpath=${MONDRIAN_DIR}/testlib/ojdbc14.jar
driver="$(chooseOracleDriver $jdk)"
if [ ! -f "$driver" ]; then
echo "Oracle JDBC driver not found"
exit 1
fi
jdbcURL=jdbc:oracle:thin:foodmart/foodmart@//marmalade:1521/XE
jdbcURL=jdbc:oracle:thin:foodmart/foodmart@//$(uname -n):1521/XE
jdbcDrivers=oracle.jdbc.OracleDriver
echo driver.classpath=${driver}
echo mondrian.foodmart.jdbcURL=${jdbcURL}
echo mondrian.jdbcDrivers=${jdbcDrivers}
echo mondrian.foodmart.jdbcUser=foodmart
Expand Down Expand Up @@ -433,6 +428,28 @@ chooseJavaHome() {
esac
}

# Returns a path of an Oracle JDBC driver for a given JDK.
# E.g. "/u01/app/oracle/product/11.2.0/jdbc/lib/ojdbc6.jar"
chooseOracleDriver()
{
for b in "$ORACLE_HOME/jdbc/lib" testlib; do
case "$jdk" in
(jdk1.6|openjdk1.6|ibmjdk1.6)
files="ojdbc6.jar ojdbc5.jar ojdbc14.jar";;
(jdk1.5)
files="ojdbc5.jar ojdbc14.jar";;
(jdk1.4|*)
files="ojdbc14.jar";;
esac
for f in $files; do
if [ -f "$b/$f" ]; then
echo "$b/$f"
return
fi
done
done
}

olap4j() {
jdk=$1
driver=$2
Expand Down Expand Up @@ -1000,4 +1017,3 @@ CYGWIN*)
esac

# End megatest

4 changes: 3 additions & 1 deletion src/main/META-INF/services/mondrian.spi.Dialect
Expand Up @@ -7,7 +7,6 @@ mondrian.spi.impl.GreenplumDialect
mondrian.spi.impl.HsqldbDialect
mondrian.spi.impl.InfobrightDialect
mondrian.spi.impl.InformixDialect
mondrian.spi.impl.IngresDialect
mondrian.spi.impl.InterbaseDialect
mondrian.spi.impl.LucidDbDialect
mondrian.spi.impl.MicrosoftSqlServerDialect
Expand All @@ -19,3 +18,6 @@ mondrian.spi.impl.PostgreSqlDialect
mondrian.spi.impl.SqlStreamDialect
mondrian.spi.impl.SybaseDialect
mondrian.spi.impl.TeradataDialect
mondrian.spi.impl.VectorwiseDialect
mondrian.spi.impl.VerticaDialect
mondrian.spi.impl.IngresDialect
12 changes: 12 additions & 0 deletions src/main/mondrian/calc/impl/DelegatingTupleList.java
Expand Up @@ -74,6 +74,10 @@ public Member get(int index) {
public int size() {
return list.size();
}

public Member set(int index, Member element) {
return list.get(column).set(index, element);
};
};
}

Expand Down Expand Up @@ -112,9 +116,17 @@ public Member get(int column) {
public int size() {
return destIndices.length;
}

public Member set(int column, Member element) {
return list.get(index).set(index, element);
};
};
}

public List<Member> set(int index, List<Member> element) {
return list.set(index, element);
};

public int size() {
return list.size();
}
Expand Down
28 changes: 27 additions & 1 deletion src/main/mondrian/gui/PropertyTableModel.java
Expand Up @@ -211,11 +211,37 @@ public void setValueAt(Object value, int rowIndex, int columnIndex) {
f2.set(target, null);
}

// } else if ((target instanceof MondrianGuiDef.UserDefinedFunction)
// && (pName.equals("script")))
// {
// ((MondrianGuiDef.UserDefinedFunction) target).script =
// (MondrianGuiDef.Script) value;
// } else if ((target instanceof MondrianGuiDef.MemberFormatter)
// && (pName.equals("script")))
// {
// ((MondrianGuiDef.MemberFormatter) target).script =
// (MondrianGuiDef.Script) value;
// } else if ((target instanceof MondrianGuiDef.CellFormatter)
// && (pName.equals("script")))
// {
// ((MondrianGuiDef.CellFormatter) target).script =
// (MondrianGuiDef.Script) value;
// } else if ((target instanceof MondrianGuiDef.PropertyFormatter)
// && (pName.equals("script")))
// {
// ((MondrianGuiDef.PropertyFormatter) target).script =
// (MondrianGuiDef.Script) value;

} else if ((target instanceof MondrianGuiDef.Level)
&& (pName.equals("ordinalExp")))
&& (pName.equals("ordinalExp")))
{
((MondrianGuiDef.Level) target).ordinalExp.expressions[0] =
(MondrianGuiDef.SQL) value;
} else if ((target instanceof MondrianGuiDef.Level)
&& (pName.equals("captionExp")))
{
((MondrianGuiDef.Level) target).captionExp.expressions[0] =
(MondrianGuiDef.SQL) value;
} else if ((target instanceof MondrianGuiDef.Table
&& pName.equals("name"))
|| (target instanceof MondrianGuiDef.Hierarchy
Expand Down

0 comments on commit a39fe8e

Please sign in to comment.