From 5192ca92d9c268df28299b55edc9909abd1f0c10 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=B8=A9=E5=B0=91?= Date: Tue, 20 Mar 2012 13:46:56 +0800 Subject: [PATCH] readonly tables --- src/main/java/com/alibaba/druid/stat/TableStat.java | 2 +- src/main/java/com/alibaba/druid/wall/WallConfig.java | 11 ++++++----- .../druid/benckmark/wall/WallBenchmarkTest.java | 9 ++++++--- 3 files changed, 13 insertions(+), 9 deletions(-) diff --git a/src/main/java/com/alibaba/druid/stat/TableStat.java b/src/main/java/com/alibaba/druid/stat/TableStat.java index 5a08626756..fe9049494c 100644 --- a/src/main/java/com/alibaba/druid/stat/TableStat.java +++ b/src/main/java/com/alibaba/druid/stat/TableStat.java @@ -131,7 +131,7 @@ public class TableStat { buf.append("Update"); } if (selectCount > 0) { - buf.append("Selelct"); + buf.append("Select"); } if (deleteCount > 0) { buf.append("Delete"); diff --git a/src/main/java/com/alibaba/druid/wall/WallConfig.java b/src/main/java/com/alibaba/druid/wall/WallConfig.java index 5b7ae9ba7d..b1b559920b 100644 --- a/src/main/java/com/alibaba/druid/wall/WallConfig.java +++ b/src/main/java/com/alibaba/druid/wall/WallConfig.java @@ -81,11 +81,12 @@ public class WallConfig implements WallConfigMBean { dir = dir.substring(0, dir.length() - 1); } - loadResource(getPermitVariants(), dir + "/permit-variant.txt"); - loadResource(getPermitSchemas(), dir + "/permit-schema.txt"); - loadResource(getPermitFunctions(), dir + "/permit-function.txt"); - loadResource(getPermitTables(), dir + "/permit-table.txt"); - loadResource(getPermitObjects(), dir + "/permit-object.txt"); + loadResource(this.permitVariants, dir + "/permit-variant.txt"); + loadResource(this.permitSchemas, dir + "/permit-schema.txt"); + loadResource(this.permitFunctions, dir + "/permit-function.txt"); + loadResource(this.permitTables, dir + "/permit-table.txt"); + loadResource(this.permitObjects, dir + "/permit-object.txt"); + loadResource(this.readOnlyTables, dir + "/readonly-table.txt"); } public boolean isNoneBaseStatementAllow() { diff --git a/src/test/java/com/alibaba/druid/benckmark/wall/WallBenchmarkTest.java b/src/test/java/com/alibaba/druid/benckmark/wall/WallBenchmarkTest.java index 6d0ce5f577..44032cd50e 100644 --- a/src/test/java/com/alibaba/druid/benckmark/wall/WallBenchmarkTest.java +++ b/src/test/java/com/alibaba/druid/benckmark/wall/WallBenchmarkTest.java @@ -2,16 +2,19 @@ package com.alibaba.druid.benckmark.wall; import junit.framework.TestCase; -import com.alibaba.druid.wall.spi.MySqlWallProvider; +import com.alibaba.druid.wall.WallProvider; +import com.alibaba.druid.wall.spi.OracleWallProvider; public class WallBenchmarkTest extends TestCase { - MySqlWallProvider provider = new MySqlWallProvider(); + WallProvider provider = new OracleWallProvider(); public final static int COUNT = 1000 * 1000; public void test_0() throws Exception { - String sql = "select * from t"; + String sql = "SELECT t1.department_id, t2.*\n" + // + "FROM hr_info t1, TABLE(t1.people) t2\n" + // + "WHERE t2.department_id = t1.department_id;"; for (int i = 0; i < 10; ++i) { provider.clearCache(); long startMillis = System.currentTimeMillis();