public CassandraSchemeActualizer(ICassandraCluster cassandraCluster, ICassandraMetadataProvider cassandraMetadataProvider, ICassandraInitializerSettings cassandraInitializerSettings)
 {
     this.cassandraCluster             = cassandraCluster;
     this.cassandraMetadataProvider    = cassandraMetadataProvider;
     this.cassandraInitializerSettings = cassandraInitializerSettings;
     cassandraSchemaActualizer         = new CassandraSchemaActualizer(cassandraCluster, eventListener: null, Logger.Instance);
 }
        public static void SetUp()
        {
            var templateDirectory = Path.Combine(FindCassandraTemplateDirectory(AppDomain.CurrentDomain.BaseDirectory), @"v3.11.x");
            var deployDirectory   = Path.Combine(Path.GetTempPath(), "deployed_cassandra_v3.11.x");

            cassandraNode = new LocalCassandraNode(templateDirectory, deployDirectory)
            {
                RpcPort    = 9360,
                CqlPort    = 9343,
                JmxPort    = 7399,
                GossipPort = 7400,
            };
            cassandraNode.Restart(timeout: TimeSpan.FromMinutes(1));

            cassandraCluster = new CassandraCluster(cassandraNode.CreateSettings(), Logger.Instance);
            var cassandraSchemaActualizer = new CassandraSchemaActualizer(cassandraCluster, null, Logger.Instance);

            cassandraSchemaActualizer.ActualizeKeyspaces(new[]
            {
                new KeyspaceSchema
                {
                    Name          = ksName,
                    Configuration = new KeyspaceConfiguration
                    {
                        ReplicationStrategy = SimpleReplicationStrategy.Create(replicationFactor: 1),
                        ColumnFamilies      = new[]
                        {
                            new ColumnFamily
                            {
                                Name = minTicksCfName,
                                CompactionStrategy = CompactionStrategy.LeveledCompactionStrategy(sstableSizeInMb: 160),
                                Caching            = ColumnFamilyCaching.All
                            },
                            new ColumnFamily
                            {
                                Name = maxTicksCfName,
                                CompactionStrategy = CompactionStrategy.LeveledCompactionStrategy(sstableSizeInMb: 160),
                                Caching            = ColumnFamilyCaching.KeysOnly
                            }
                        }
                    }
                },
            }, changeExistingKeyspaceMetadata: false);
        }
Ejemplo n.º 3
0
        public static void SetUp()
        {
            Log4NetConfiguration.InitializeOnce();
            var templateDirectory = Path.Combine(FindCassandraTemplateDirectory(AppDomain.CurrentDomain.BaseDirectory), @"v3.11.x");
            var deployDirectory   = Path.Combine(Path.GetTempPath(), "deployed_cassandra_v3.11.x");

            node = new LocalCassandraNode(templateDirectory, deployDirectory)
            {
                RpcPort    = 9360,
                CqlPort    = 9343,
                JmxPort    = 7399,
                GossipPort = 7400,
            };
            node.Restart(timeout: TimeSpan.FromMinutes(1));

            var logger = Log4NetConfiguration.RootLogger.ForContext(nameof(SingleCassandraNodeSetUpFixture));

            cassandraCluster = new CassandraCluster(CreateCassandraClusterSettings(), logger);

            var cassandraSchemaActualizer = new CassandraSchemaActualizer(cassandraCluster, eventListener: null, logger);

            cassandraSchemaActualizer.ActualizeKeyspaces(new[]
            {
                new KeyspaceSchema
                {
                    Name          = RemoteLockKeyspace,
                    Configuration = new KeyspaceConfiguration
                    {
                        ReplicationStrategy = SimpleReplicationStrategy.Create(replicationFactor: 1),
                        ColumnFamilies      = new[]
                        {
                            new ColumnFamily
                            {
                                Name    = RemoteLockColumnFamily,
                                Caching = ColumnFamilyCaching.KeysOnly
                            }
                        }
                    }
                }
            }, changeExistingKeyspaceMetadata: false);
        }
Ejemplo n.º 4
0
        public virtual void SetUp()
        {
            KeyspaceName = $"TestKeyspace_{Guid.NewGuid():N}";
            var cassandraClusterSettings = SingleCassandraNodeSetUpFixture.Node.CreateSettings();

            cassandraClusterSettings.AllowNullTimestamp    = true;
            cassandraClusterSettings.ReadConsistencyLevel  = ConsistencyLevel.ALL;
            cassandraClusterSettings.WriteConsistencyLevel = ConsistencyLevel.ALL;
            cassandraCluster                 = new CassandraCluster(cassandraClusterSettings, Logger.Instance);
            columnFamilyConnection           = cassandraCluster.RetrieveColumnFamilyConnection(KeyspaceName, Constants.ColumnFamilyName);
            columnFamilyConnectionDefaultTtl = cassandraCluster.RetrieveColumnFamilyConnection(KeyspaceName, Constants.DefaultTtlColumnFamilyName);
            cassandraSchemaActualizer        = new CassandraSchemaActualizer(cassandraCluster, null, Logger.Instance);
            cassandraSchemaActualizer.ActualizeKeyspaces(new[]
            {
                new KeyspaceSchema
                {
                    Name          = KeyspaceName,
                    Configuration = new KeyspaceConfiguration
                    {
                        ReplicationStrategy = SimpleReplicationStrategy.Create(1),
                        ColumnFamilies      = new[]
                        {
                            new ColumnFamily
                            {
                                Name = Constants.ColumnFamilyName
                            },
                            new ColumnFamily
                            {
                                Name       = Constants.DefaultTtlColumnFamilyName,
                                DefaultTtl = 1
                            }
                        }
                    }
                }
            }, changeExistingKeyspaceMetadata: false);
        }
Ejemplo n.º 5
0
        public static void ResetCassandraState(this IContainer container, ColumnFamily[] columnFamilies)
        {
            var logger           = container.Get <ILog>();
            var cassandraCluster = container.Get <ICassandraCluster>();
            var schemaActualizer = new CassandraSchemaActualizer(cassandraCluster, eventListener: null, logger);

            schemaActualizer.ActualizeKeyspaces(new[]
            {
                new KeyspaceSchema
                {
                    Name          = TestRtqSettings.QueueKeyspaceName,
                    Configuration =
                    {
                        ReplicationStrategy = SimpleReplicationStrategy.Create(1),
                        ColumnFamilies      = columnFamilies,
                    },
                },
            },
                                                changeExistingKeyspaceMetadata: false);
            foreach (var columnFamily in columnFamilies)
            {
                cassandraCluster.RetrieveColumnFamilyConnection(TestRtqSettings.QueueKeyspaceName, columnFamily.Name).Truncate();
            }
        }
Ejemplo n.º 6
0
 public void SetUp()
 {
     cluster = new CassandraCluster(SingleCassandraNodeSetUpFixture.Node.CreateSettings(), Logger.Instance);
     cassandraActualizerEventListener = new CassandraActualizerEventListener();
     cassandraSchemaActualizer        = new CassandraSchemaActualizer(cluster, cassandraActualizerEventListener, Logger.Instance);
 }
Ejemplo n.º 7
0
 public void SetUp()
 {
     cluster = new CassandraClusterSpy(() => new CassandraCluster(SingleCassandraNodeSetUpFixture.Node.CreateSettings(), Logger.Instance));
     cassandraSchemaActualizer = new CassandraSchemaActualizer(cluster, null, Logger.Instance);
 }