Esempio n. 1
0
 private static int GetIndexCount(
     RegressionEnvironment env,
     string statementName,
     string windowName)
 {
     return SupportInfraUtil.GetIndexCountNoContext(env, true, statementName, windowName);
 }
Esempio n. 2
0
 private static long GetCount(
     RegressionEnvironment env,
     string statementName,
     string windowName)
 {
     return SupportInfraUtil.GetDataWindowCountNoContext(env, statementName, windowName);
 }
Esempio n. 3
0
 private static int GetIndexCount(
     RegressionEnvironment env,
     bool namedWindow,
     string infraStmtName,
     string infraName)
 {
     return SupportInfraUtil.GetIndexCountNoContext(env, namedWindow, infraStmtName, infraName);
 }
Esempio n. 4
0
            public void Run(RegressionEnvironment env)
            {
                var path = new RegressionPath();
                var stmtTextCreateOne = namedWindow
                    ? "@Name('create') create window MyInfraONR#keepall as (f1 string, f2 int)"
                    : "@Name('create') create table MyInfraONR as (f1 string primary key, f2 int primary key)";
                env.CompileDeploy(stmtTextCreateOne, path);
                env.CompileDeploy(
                    "insert into MyInfraONR(f1, f2) select TheString, IntPrimitive from SupportBean",
                    path);
                env.CompileDeploy("@Name('indexOne') create index MyInfraONRIndex1 on MyInfraONR(f2)", path);
                var fields = new [] { "f1","f2" };

                env.SendEventBean(new SupportBean("E1", 1));

                env.CompileDeploy(
                        "@Name('s0') on SupportBean_S0 S0 select nw.f1 as f1, nw.f2 as f2 from MyInfraONR nw where nw.f2 = S0.Id",
                        path)
                    .AddListener("s0");
                Assert.AreEqual(namedWindow ? 1 : 2, GetIndexCount(env, namedWindow, "create", "MyInfraONR"));

                env.SendEventBean(new SupportBean_S0(1));
                EPAssertionUtil.AssertProps(
                    env.Listener("s0").AssertOneGetNewAndReset(),
                    fields,
                    new object[] {"E1", 1});

                // create second identical statement
                env.CompileDeploy(
                    "@Name('stmtTwo') on SupportBean_S0 S0 select nw.f1 as f1, nw.f2 as f2 from MyInfraONR nw where nw.f2 = S0.Id",
                    path);
                Assert.AreEqual(namedWindow ? 1 : 2, GetIndexCount(env, namedWindow, "create", "MyInfraONR"));

                env.UndeployModuleContaining("s0");
                Assert.AreEqual(namedWindow ? 1 : 2, GetIndexCount(env, namedWindow, "create", "MyInfraONR"));

                env.UndeployModuleContaining("stmtTwo");
                Assert.AreEqual(namedWindow ? 1 : 2, GetIndexCount(env, namedWindow, "create", "MyInfraONR"));

                env.UndeployModuleContaining("indexOne");

                // two-key index order test
                env.CompileDeploy("@Name('cw') create window MyInfraFour#keepall as SupportBean", path);
                env.CompileDeploy("create index Idx1 on MyInfraFour (TheString, IntPrimitive)", path);
                env.CompileDeploy(
                    "on SupportBean sb select * from MyInfraFour w where w.TheString = sb.TheString and w.IntPrimitive = sb.IntPrimitive",
                    path);
                env.CompileDeploy(
                    "on SupportBean sb select * from MyInfraFour w where w.IntPrimitive = sb.IntPrimitive and w.TheString = sb.TheString",
                    path);
                Assert.AreEqual(1, SupportInfraUtil.GetIndexCountNoContext(env, true, "cw", "MyInfraFour"));

                env.UndeployAll();
            }
Esempio n. 5
0
        private static EventTableIndexMetadata GetIndexMetaRepo(
            RegressionEnvironment env,
            bool namedWindow,
            string name)
        {
            if (namedWindow) {
                var processor = SupportInfraUtil.GetNamedWindow(env, "create", name);
                return processor.EventTableIndexMetadata;
            }

            var table = SupportInfraUtil.GetTable(env, "create", name);
            return table.EventTableIndexMetadata;
        }
Esempio n. 6
0
        private static EventTableIndexRepository GetIndexInstanceRepo(
            RegressionEnvironment env,
            bool namedWindow,
            string name)
        {
            if (namedWindow) {
                var namedWindowInstance = SupportInfraUtil.GetInstanceNoContextNW(env, "create", name);
                return namedWindowInstance.RootViewInstance.IndexRepository;
            }

            var instance = SupportInfraUtil.GetInstanceNoContextTable(env, "create", name);
            return instance.IndexRepository;
        }
        private static long GetCount(
            RegressionEnvironment env,
            RegressionPath path,
            string statementName,
            string windowName)
        {
            if (env.IsHA) {
                return env
                    .CompileExecuteFAF("select count(*) as cnt from " + windowName, path)
                    .Array[0]
                    .Get("cnt")
                    .AsInt64();
            }

            return SupportInfraUtil.GetDataWindowCountNoContext(env, statementName, windowName);
        }
Esempio n. 8
0
 private static int GetIndexCount(RegressionEnvironment env)
 {
     return SupportInfraUtil.GetIndexCountNoContext(env, true, "create", "MyWindow");
 }